@bnsights/bbsf-controls 1.0.166 → 1.0.169
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/bnsights-bbsf-controls-1.0.169.tgz +0 -0
- package/esm2022/lib/Shared/Components/app-base-component.mjs +4 -4
- package/esm2022/lib/Shared/Components/ng-tag-input.mjs +7 -7
- package/esm2022/lib/Shared/Directives/template-name.directive.mjs +6 -5
- package/esm2022/lib/Shared/Pipes/bbsf-date-time.pipe.mjs +6 -5
- package/esm2022/lib/Shared/Pipes/bbsf-date.pipe.mjs +6 -5
- package/esm2022/lib/Shared/default_intl.mjs +4 -4
- package/esm2022/lib/Shared/services/ControlUtility.mjs +4 -4
- package/esm2022/lib/Shared/services/GlobalSettings.service.mjs +4 -4
- package/esm2022/lib/Shared/services/OnPagingFiltersChange.service.mjs +4 -4
- package/esm2022/lib/Shared/services/file-upload.service.mjs +4 -4
- package/esm2022/lib/Shared/services/render-component-service.service.mjs +4 -4
- package/esm2022/lib/Shared/services/validationErrorMassage.service.mjs +4 -4
- package/esm2022/lib/controls/AutocompleteTextBox/AutocompleteTextBox.component.mjs +5 -5
- package/esm2022/lib/controls/Calendar/Calendar.component.mjs +5 -5
- package/esm2022/lib/controls/CheckBox/CheckBox.component.mjs +5 -5
- package/esm2022/lib/controls/ConfirmationModal/ConfirmationModal.component.mjs +5 -5
- package/esm2022/lib/controls/DateTimePicker/DateTimePicker.component.mjs +6 -6
- package/esm2022/lib/controls/DropdownList/DropdownList.component.mjs +5 -5
- package/esm2022/lib/controls/FileUplaod/FileUplaod.component.mjs +5 -5
- package/esm2022/lib/controls/Form/Form.component.mjs +5 -5
- package/esm2022/lib/controls/HtmlEditor/HtmlEditor.component.mjs +5 -5
- package/esm2022/lib/controls/ImageUpload/ImageUpload.component.mjs +5 -5
- package/esm2022/lib/controls/MapAutoComplete/MapAutoComplete.component.mjs +10 -7
- package/esm2022/lib/controls/MarkdownEditor/markdown-editor.component.mjs +5 -5
- package/esm2022/lib/controls/MultiLingualHtmlEditor/MultiLingualHtmlEditor.component.mjs +5 -5
- package/esm2022/lib/controls/MultiLingualTextArea/MultiLingualTextArea.component.mjs +5 -5
- package/esm2022/lib/controls/MultiLingualTextBox/MultiLingualTextBox.component.mjs +31 -14
- package/esm2022/lib/controls/Paging/JwPagination.component.mjs +6 -5
- package/esm2022/lib/controls/Paging/Paging.component.mjs +7 -7
- package/esm2022/lib/controls/Phone/Phone.component.mjs +5 -5
- package/esm2022/lib/controls/ProfileImageUploader/ProfileImageUploader.component.mjs +8 -8
- package/esm2022/lib/controls/RadioButton/RadioButton.component.mjs +5 -5
- package/esm2022/lib/controls/Recaptcha/Recaptcha.component.mjs +8 -8
- package/esm2022/lib/controls/Repeater/repeater/repeater.component.mjs +5 -5
- package/esm2022/lib/controls/Repeater/repeater-field-builder/repeater-field-builder.component.mjs +5 -5
- package/esm2022/lib/controls/Repeater/repeater-item-field/repeater-item-field.component.mjs +5 -5
- package/esm2022/lib/controls/Repeater/repeater-table/repeater-table.component.mjs +5 -5
- package/esm2022/lib/controls/TagsInput/TagsInput.component.mjs +5 -5
- package/esm2022/lib/controls/TextArea/TextArea.component.mjs +5 -5
- package/esm2022/lib/controls/TextBox/TextBox.component.mjs +9 -10
- package/esm2022/lib/controls/Toggleslide/Toggleslide.component.mjs +5 -5
- package/esm2022/lib/controls/bbsf-controls.module.mjs +30 -37
- package/esm2022/lib/controls/page-header-component/page-header-component.component.mjs +7 -7
- package/fesm2022/bnsights-bbsf-controls.mjs +236 -222
- package/fesm2022/bnsights-bbsf-controls.mjs.map +1 -1
- package/lib/controls/MapAutoComplete/MapAutoComplete.component.d.ts +1 -0
- package/lib/controls/MultiLingualTextBox/MultiLingualTextBox.component.d.ts +1 -1
- package/lib/controls/bbsf-controls.module.d.ts +29 -32
- package/package.json +13 -13
|
@@ -99,12 +99,12 @@ export class CheckBoxComponent {
|
|
|
99
99
|
this.controlUtility.patchControlValue(originalValue, this.options.patchFunction, this.options.patchPath);
|
|
100
100
|
}
|
|
101
101
|
}
|
|
102
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
103
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
102
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: CheckBoxComponent, deps: [{ token: i1.ControlUtility }, { token: i2.ControlContainer, optional: true }, { token: i2.FormGroupDirective }, { token: i3.UtilityService }, { token: i3.BBSFTranslateService }, { token: i3.ControlValidationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
103
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.6", type: CheckBoxComponent, selector: "BBSF-CheckBox", inputs: { group: "group", options: "options" }, outputs: { onChange: "onChange" }, ngImport: i0, template: "<div class=\"form-group bbsf-control bbsf-checkbox\" [formGroup]=\"group\">\r\n <div class=\"bbsf-input-container\">\r\n <!--input-->\r\n <input type=\"checkbox\" *ngIf=\"!options.isReadonly\" class=\"bbsf-checkbox-input {{options.extraClasses}}\" [dir]=\"textDir\"\r\n [checked]=\"options.value==true?true:null\" aria-describedby=\"email-error\" aria-invalid=\"true\" [formControlName]=\"options.name\"\r\n (change)=\"onValueChanged()\" [class.is-invalid]=\"checkBoxFormControl.invalid && checkBoxFormControl.touched\" [id]=\"options.name\"\r\n [value]=\"options.value==true?true:null\" [name]=\"options.name\" [(ngModel)]=\"options.value\">\r\n\r\n <div class=\"label-subtext-container\">\r\n <!--label-->\r\n <label *ngIf=\"!options.hideLabel\" class=\"bbsf-label {{options.labelExtraClasses}}\">\r\n {{options.labelValue}}\r\n <!--Asterisk-->\r\n <span *ngIf=\"((options.showAsterisk&&options.isRequired)||(options.isRequired))&&!options.isReadonly\" class=\"text-danger\">*</span>\r\n </label>\r\n <!-- readonly -->\r\n <div *ngIf=\"options.isReadonly\"><span class=\"readonly-view\">{{options.value}}</span>\r\n </div>\r\n <div class=\"subtext-container\" *ngIf=\"!options.isReadonly\">\r\n <!-- labelDescription-->\r\n <div class=\"bbsf-control-desc\" *ngIf=\"options.labelDescription!=null\">{{options.labelDescription}}</div>\r\n <!-- requiredText-->\r\n <div class=\"bbsf-validation\" *ngIf=\"(checkBoxFormControl.invalid && checkBoxFormControl.touched)\">\r\n {{getErrorValidation(checkBoxFormControl.errors|keyvalue)}}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched )||(group.untouched&&group.invalid&&group.dirty) \">\r\n {{resetError()}}</div>\r\n</div>", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i5.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { kind: "directive", type: i6.NativeElementInjectorDirective, selector: "[ngModel], [formControl], [formControlName]" }, { kind: "pipe", type: i4.KeyValuePipe, name: "keyvalue" }] }); }
|
|
104
104
|
}
|
|
105
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
105
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: CheckBoxComponent, decorators: [{
|
|
106
106
|
type: Component,
|
|
107
|
-
args: [{ selector: 'BBSF-CheckBox', template: "<div class=\"form-group bbsf-control bbsf-checkbox\" [formGroup]=\"group\">\r\n <div class=\"bbsf-input-container\">\r\n <!--input-->\r\n <input type=\"checkbox\" *ngIf=\"!options.isReadonly\" class=\"bbsf-checkbox-input {{options.extraClasses}}\" [dir]=\"textDir\"\r\n [checked]=\"options.value==true?true:null\" aria-describedby=\"email-error\" aria-invalid=\"true\" [formControlName]=\"options.name\"\r\n (change)=\"onValueChanged()\" [class.is-invalid]=\"checkBoxFormControl.invalid && checkBoxFormControl.touched\" [id]=\"options.name\"\r\n [value]=\"options.value==true?true:null\" [name]=\"options.name\" [(ngModel)]=\"options.value\">\r\n\r\n <div class=\"label-subtext-container\">\r\n <!--label-->\r\n <label *ngIf=\"!options.hideLabel\" class=\"bbsf-label {{options.labelExtraClasses}}\">\r\n {{options.labelValue}}\r\n <!--Asterisk-->\r\n <span *ngIf=\"((options.showAsterisk&&options.isRequired)||(options.isRequired))&&!options.isReadonly\" class=\"text-danger\">*</span>\r\n </label>\r\n <!-- readonly -->\r\n <div *ngIf=\"options.isReadonly\"><span class=\"readonly-view\">{{options.value}}</span>\r\n </div>\r\n <div class=\"subtext-container\" *ngIf=\"!options.isReadonly\">\r\n <!-- labelDescription-->\r\n <div class=\"bbsf-control-desc\" *ngIf=\"options.labelDescription!=null\">{{options.labelDescription}}</div>\r\n <!-- requiredText-->\r\n <div class=\"bbsf-validation\" *ngIf=\"(checkBoxFormControl.invalid && checkBoxFormControl.touched)\">\r\n {{getErrorValidation(checkBoxFormControl.errors|keyvalue)}}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched )||(group.untouched&&group.invalid&&group.dirty) \">\r\n {{resetError()}}</div>\r\n</div>" }]
|
|
107
|
+
args: [{ selector: 'BBSF-CheckBox', standalone: false, template: "<div class=\"form-group bbsf-control bbsf-checkbox\" [formGroup]=\"group\">\r\n <div class=\"bbsf-input-container\">\r\n <!--input-->\r\n <input type=\"checkbox\" *ngIf=\"!options.isReadonly\" class=\"bbsf-checkbox-input {{options.extraClasses}}\" [dir]=\"textDir\"\r\n [checked]=\"options.value==true?true:null\" aria-describedby=\"email-error\" aria-invalid=\"true\" [formControlName]=\"options.name\"\r\n (change)=\"onValueChanged()\" [class.is-invalid]=\"checkBoxFormControl.invalid && checkBoxFormControl.touched\" [id]=\"options.name\"\r\n [value]=\"options.value==true?true:null\" [name]=\"options.name\" [(ngModel)]=\"options.value\">\r\n\r\n <div class=\"label-subtext-container\">\r\n <!--label-->\r\n <label *ngIf=\"!options.hideLabel\" class=\"bbsf-label {{options.labelExtraClasses}}\">\r\n {{options.labelValue}}\r\n <!--Asterisk-->\r\n <span *ngIf=\"((options.showAsterisk&&options.isRequired)||(options.isRequired))&&!options.isReadonly\" class=\"text-danger\">*</span>\r\n </label>\r\n <!-- readonly -->\r\n <div *ngIf=\"options.isReadonly\"><span class=\"readonly-view\">{{options.value}}</span>\r\n </div>\r\n <div class=\"subtext-container\" *ngIf=\"!options.isReadonly\">\r\n <!-- labelDescription-->\r\n <div class=\"bbsf-control-desc\" *ngIf=\"options.labelDescription!=null\">{{options.labelDescription}}</div>\r\n <!-- requiredText-->\r\n <div class=\"bbsf-validation\" *ngIf=\"(checkBoxFormControl.invalid && checkBoxFormControl.touched)\">\r\n {{getErrorValidation(checkBoxFormControl.errors|keyvalue)}}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched )||(group.untouched&&group.invalid&&group.dirty) \">\r\n {{resetError()}}</div>\r\n</div>" }]
|
|
108
108
|
}], ctorParameters: () => [{ type: i1.ControlUtility }, { type: i2.ControlContainer, decorators: [{
|
|
109
109
|
type: Optional
|
|
110
110
|
}] }, { type: i2.FormGroupDirective }, { type: i3.UtilityService }, { type: i3.BBSFTranslateService }, { type: i3.ControlValidationService }], propDecorators: { group: [{
|
|
@@ -114,4 +114,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
114
114
|
}], onChange: [{
|
|
115
115
|
type: Output
|
|
116
116
|
}] } });
|
|
117
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hlY2tCb3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1jb250cm9scy9zcmMvbGliL2NvbnRyb2xzL0NoZWNrQm94L0NoZWNrQm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtY29udHJvbHMvc3JjL2xpYi9jb250cm9scy9DaGVja0JveC9DaGVja0JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBVyxRQUFRLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBb0UsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUFXM0gsTUFBTSxPQUFPLGlCQUFpQjthQUdyQiwyQkFBc0IsR0FBRyxJQUFJLEFBQVAsQ0FBUTtJQUNyQyw0Q0FBNEM7SUFDNUMsWUFBb0IsY0FBOEIsRUFBc0IsZ0JBQWtDLEVBQVMsbUJBQXVDLEVBQVUsY0FBOEIsRUFBVSxTQUErQixFQUFVLHdCQUFrRDtRQUFuUixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFBc0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUFTLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBb0I7UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFBVSxjQUFTLEdBQVQsU0FBUyxDQUFzQjtRQUFVLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFLN1IsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHeEMscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBQ2xDLG9CQUFlLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLHlCQUFvQixHQUFHLEVBQUUsQ0FBQztRQWtEMUIsZUFBVSxHQUFHLEdBQUcsRUFBRTtZQUNoQixJQUFJLENB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aywgT3B0aW9uYWwsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sLCBWYWxpZGF0b3JzLCBGb3JtR3JvdXAsIEFic3RyYWN0Q29udHJvbCwgQ29udHJvbENvbnRhaW5lciwgRm9ybUdyb3VwRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBFcnJvck1hc3NhZ2VWYWxpZGF0aW9uIH0gZnJvbSAnLi4vLi4vU2hhcmVkL3NlcnZpY2VzL3ZhbGlkYXRpb25FcnJvck1hc3NhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbnRyb2xVdGlsaXR5IH0gZnJvbSAnLi4vLi4vU2hhcmVkL3NlcnZpY2VzL0NvbnRyb2xVdGlsaXR5JztcclxuaW1wb3J0IHsgQ2hlY2tCb3hPcHRpb25zIH0gZnJvbSAnLi4vLi4vU2hhcmVkL01vZGVscy9DaGVja0JveE9wdGlvbnMnO1xyXG5pbXBvcnQgeyBCQlNGVHJhbnNsYXRlU2VydmljZSwgQ29udHJvbFZhbGlkYXRpb25TZXJ2aWNlLCBVdGlsaXR5U2VydmljZSB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLXV0aWxpdGllcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IGNvbXBvbmVudC1zZWxlY3RvclxyXG4gIHNlbGVjdG9yOiAnQkJTRi1DaGVja0JveCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL0NoZWNrQm94LmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hlY2tCb3hDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuXHJcbiAgc3RhdGljIGNvbnRyb2xDb250YWluZXJzdGF0aWMgPSBudWxsO1xyXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbWF4LWxpbmUtbGVuZ3RoXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb250cm9sVXRpbGl0eTogQ29udHJvbFV0aWxpdHksIEBPcHRpb25hbCgpIHByaXZhdGUgY29udHJvbENvbnRhaW5lcjogQ29udHJvbENvbnRhaW5lciwgcHVibGljIENoZWNrQm94Q29udHJvbEhvc3Q6IEZvcm1Hcm91cERpcmVjdGl2ZSwgcHJpdmF0ZSB1dGlsaXR5U2VydmljZTogVXRpbGl0eVNlcnZpY2UsIHByaXZhdGUgdHJhbnNsYXRlOiBCQlNGVHJhbnNsYXRlU2VydmljZSwgcHJpdmF0ZSBjb250cm9sVmFsaWRhdGlvblNlcnZpY2U6IENvbnRyb2xWYWxpZGF0aW9uU2VydmljZSkge1xyXG4gICAgQ2hlY2tCb3hDb21wb25lbnQuY29udHJvbENvbnRhaW5lcnN0YXRpYyA9IHRoaXMuY29udHJvbENvbnRhaW5lcjtcclxuICB9XHJcbiAgQElucHV0KCkgZ3JvdXA6IEZvcm1Hcm91cDtcclxuICBASW5wdXQoKSBvcHRpb25zOiBDaGVja0JveE9wdGlvbnM7XHJcbiAgQE91dHB1dCgpIG9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBjaGVja0JveEZvcm1Db250cm9sOiBBYnN0cmFjdENvbnRyb2w7XHJcbiAgbWFya0FsbEFzVG91Y2hlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHZhbGlkYXRpb25SdWxlcyA9IFtdO1xyXG4gIHZhbGlkYXRpb25SdWxlc2FzeW5jID0gW107XHJcbiAgdGV4dERpcjtcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZiAodGhpcy5vcHRpb25zLmZvcmNlRGlyZWN0aW9uKVxyXG4gICAgICB0aGlzLnRleHREaXIgPSB0aGlzLm9wdGlvbnMuZm9yY2VEaXJlY3Rpb24gPT0gMiA/ICdydGwnIDogJ2x0cic7XHJcbiAgICBlbHNlXHJcbiAgICAgIHRoaXMudGV4dERpciA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYW5ndWFnZScpID09ICdhcicgPyAncnRsJyA6ICdsdHInO1xyXG4gICAgdGhpcy5jb250cm9sVmFsaWRhdGlvblNlcnZpY2UuaXNDcmVhdGVkQmVmb3IgPSBmYWxzZTtcclxuICAgIHRoaXMuZ3JvdXAuYWRkQ29udHJvbCh0aGlzLm9wdGlvbnMubmFtZSwgbmV3IEZvcm1Db250cm9sKCcnKSk7XHJcbiAgICB0aGlzLmNoZWNrQm94Rm9ybUNvbnRyb2wgPSB0aGlzLmdyb3VwLmNvbnRyb2xzW3RoaXMub3B0aW9ucy5uYW1lXTsgLy8gIG5ldyBGb3JtQ29udHJvbCgnJyx2YWxpZGF0aW9uUnVsZXMpO1xyXG4gICAgdGhpcy52YWxpZGF0aW9uUnVsZXMgPSBbXTtcclxuICAgIHRoaXMudmFsaWRhdGlvblJ1bGVzYXN5bmMgPSBbXTtcclxuICAgIHRoaXMuY2hlY2tCb3hGb3JtQ29udHJvbC5zZXRWYWx1ZSh0aGlzLm9wdGlvbnMudmFsdWUpO1xyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5sYWJlbEtleSAhPSBudWxsICYmIHRoaXMub3B0aW9ucy5sYWJlbEtleSAhPSBcIlwiKVxyXG4gICAgICB0aGlzLm9wdGlvbnMubGFiZWxWYWx1ZSA9IHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZSh0aGlzLm9wdGlvbnMubGFiZWxLZXkpO1xyXG5cclxuXHJcbiAgICBpZiAodGhpcy5vcHRpb25zLmlzUmVxdWlyZWQpIHtcclxuICAgICAgdGhpcy52YWxpZGF0aW9uUnVsZXMucHVzaChWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLm9wdGlvbnMuY3VzdG9tVmFsaWRhdGlvbi5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGxldCBWYWxpZGF0aW9ucyA9IHRoaXMub3B0aW9ucy5jdXN0b21WYWxpZGF0aW9uO1xyXG4gICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgVmFsaWRhdGlvbnMubGVuZ3RoOyBpbmRleCsrKSB7XHJcbiAgICAgICAgY29uc3QgVmFsaWRhdGlvbiA9IFZhbGlkYXRpb25zW2luZGV4XTtcclxuICAgICAgICB0aGlzLnZhbGlkYXRpb25SdWxlcy5wdXNoKFZhbGlkYXRpb24uZnVuY3Rpb25Cb2R5KTtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcblxyXG4gICAgdGhpcy5jaGVja0JveEZvcm1Db250cm9sLnNldFZhbGlkYXRvcnModGhpcy52YWxpZGF0aW9uUnVsZXMpO1xyXG4gICAgdGhpcy5jaGVja0JveEZvcm1Db250cm9sLnNldEFzeW5jVmFsaWRhdG9ycyh0aGlzLnZhbGlkYXRpb25SdWxlc2FzeW5jKTtcclxuICAgIGlmICh0aGlzLm9wdGlvbnMuaXNEaXNhYmxlZCkge1xyXG4gICAgICB0aGlzLmNoZWNrQm94Rm9ybUNvbnRyb2wuZGlzYWJsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuQ2hlY2tCb3hDb250cm9sSG9zdC5uZ1N1Ym1pdC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XHJcbiAgICAgIHRoaXMuZ3JvdXAubWFya0FsbEFzVG91Y2hlZCgpO1xyXG4gICAgICB0aGlzLm1hcmtBbGxBc1RvdWNoZWQgPSB0cnVlO1xyXG4gICAgfSk7XHJcblxyXG5cclxuICB9XHJcblxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbnRyb2xVdGlsaXR5LnNldEF0dHJpYnV0ZUZvckNvbnRyb2wodGhpcy5vcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHJlc2V0RXJyb3IgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmNvbnRyb2xWYWxpZGF0aW9uU2VydmljZS5yZW1vdmVHbG9iYWxFcnJvcigpO1xyXG4gIH07XHJcblxyXG5cclxuXHJcbiAgc2hvd0dsb2JhbEVycm9yKCkge1xyXG4gICAgdGhpcy5jb250cm9sVXRpbGl0eS5zaG93R2xvYmFsRXJyb3IoKTtcclxuICB9XHJcblxyXG4gIGdldEVycm9yVmFsaWRhdGlvbihFcnJvckxpc3QpIHtcclxuICAgIGlmICh0aGlzLm1hcmtBbGxBc1RvdWNoZWQgJiYgdGhpcy5ncm91cC5pbnZhbGlkKSB7XHJcbiAgICAgIHRoaXMuc2hvd0dsb2JhbEVycm9yKCk7XHJcbiAgICAgIHRoaXMubWFya0FsbEFzVG91Y2hlZCA9IGZhbHNlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuY29udHJvbFV0aWxpdHkuZ2V0RXJyb3JWYWxpZGF0aW9uTWFzc2FnZShFcnJvckxpc3QsIHRoaXMuZ3JvdXAsIHRoaXMub3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBvblZhbHVlQ2hhbmdlZCgpIHtcclxuICAgIHRoaXMub25DaGFuZ2UuZW1pdCh0aGlzLmNoZWNrQm94Rm9ybUNvbnRyb2wudmFsdWUpO1xyXG4gICAgbGV0IG9yaWdpbmFsVmFsdWUgPSB0aGlzLmNoZWNrQm94Rm9ybUNvbnRyb2wudmFsdWU7XHJcbiAgICBpZiAodGhpcy5vcHRpb25zLnBhdGNoRnVuY3Rpb24gJiYgdGhpcy5vcHRpb25zLnBhdGNoUGF0aCAmJiB0aGlzLmdyb3VwLmdldCh0aGlzLm9wdGlvbnMubmFtZSkudmFsaWQpIHtcclxuICAgICAgdGhpcy5jb250cm9sVXRpbGl0eS5wYXRjaENvbnRyb2xWYWx1ZShvcmlnaW5hbFZhbHVlLCB0aGlzLm9wdGlvbnMucGF0Y2hGdW5jdGlvbiwgdGhpcy5vcHRpb25zLnBhdGNoUGF0aCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvL0V4dGVybmFsIE1ldGhvZFxyXG4gIHJlbW92ZVJlcXVpcmVkVmFsaWRhdGlvbiA9ICgpID0+IHtcclxuICAgIHRoaXMuY29udHJvbFV0aWxpdHkucmVtb3ZlUmVxdWlyZWRWYWxpZGF0aW9uKHRoaXMuY2hlY2tCb3hGb3JtQ29udHJvbCwgdGhpcy52YWxpZGF0aW9uUnVsZXMsIHRoaXMub3B0aW9ucyk7XHJcbiAgfTtcclxuICAvL0V4dGVybmFsIE1ldGhvZFxyXG4gIGFkZFJlcXVpcmVkVmFsaWRhdGlvbiA9ICgpID0+IHtcclxuICAgIHRoaXMuY29udHJvbFV0aWxpdHkuYWRkUmVxdWlyZWRWYWxpZGF0aW9uKHRoaXMuY2hlY2tCb3hGb3JtQ29udHJvbCwgdGhpcy52YWxpZGF0aW9uUnVsZXMsIHRoaXMub3B0aW9ucyk7XHJcbiAgfTtcclxuXHJcbiAgLy9FeHRlcm5hbCBNZXRob2RcclxuICByZW1vdmVDdXN0b21WYWxpZGF0aW9uID0gKGN1c3RvbVZhbGlkYXRpb24pID0+IHtcclxuICAgIHRoaXMuY29udHJvbFV0aWxpdHkucmVtb3ZlQ3VzdG9tVmFsaWRhdGlvbih0aGlzLmNoZWNrQm94Rm9ybUNvbnRyb2wsIHRoaXMudmFsaWRhdGlvblJ1bGVzLCBjdXN0b21WYWxpZGF0aW9uKTtcclxuICB9O1xyXG4gIC8vRXh0ZXJuYWwgTWV0aG9kXHJcbiAgYWRkQ3VzdG9tVmFsaWRhdGlvbiA9IChjdXN0b21WYWxpZGF0aW9uKSA9PiB7XHJcbiAgICB0aGlzLmNvbnRyb2xVdGlsaXR5LmFkZEN1c3RvbVZhbGlkYXRpb24odGhpcy5jaGVja0JveEZvcm1Db250cm9sLCB0aGlzLnZhbGlkYXRpb25SdWxlcywgY3VzdG9tVmFsaWRhdGlvbik7XHJcbiAgfTtcclxuXHJcbiAgLy9FeHRlcm5hbCBNZXRob2RcclxuICBpc1ZhbGlkID0gKCkgPT4ge1xyXG4gICAgdGhpcy5jb250cm9sVXRpbGl0eS5pc1ZhbGlkKHRoaXMuY2hlY2tCb3hGb3JtQ29udHJvbCk7XHJcbiAgfTtcclxuXHJcbn1cclxuXHJcbiIsIjxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGJic2YtY29udHJvbCBiYnNmLWNoZWNrYm94XCIgW2Zvcm1Hcm91cF09XCJncm91cFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJiYnNmLWlucHV0LWNvbnRhaW5lclwiPlxyXG4gICAgPCEtLWlucHV0LS0+XHJcbiAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgKm5nSWY9XCIhb3B0aW9ucy5pc1JlYWRvbmx5XCIgY2xhc3M9XCJiYnNmLWNoZWNrYm94LWlucHV0IHt7b3B0aW9ucy5leHRyYUNsYXNzZXN9fVwiIFtkaXJdPVwidGV4dERpclwiXHJcbiAgICAgIFtjaGVja2VkXT1cIm9wdGlvbnMudmFsdWU9PXRydWU/dHJ1ZTpudWxsXCIgYXJpYS1kZXNjcmliZWRieT1cImVtYWlsLWVycm9yXCIgYXJpYS1pbnZhbGlkPVwidHJ1ZVwiIFtmb3JtQ29udHJvbE5hbWVdPVwib3B0aW9ucy5uYW1lXCJcclxuICAgICAgKGNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlZCgpXCIgW2NsYXNzLmlzLWludmFsaWRdPVwiY2hlY2tCb3hGb3JtQ29udHJvbC5pbnZhbGlkICYmIGNoZWNrQm94Rm9ybUNvbnRyb2wudG91Y2hlZFwiIFtpZF09XCJvcHRpb25zLm5hbWVcIlxyXG4gICAgICBbdmFsdWVdPVwib3B0aW9ucy52YWx1ZT09dHJ1ZT90cnVlOm51bGxcIiBbbmFtZV09XCJvcHRpb25zLm5hbWVcIiBbKG5nTW9kZWwpXT1cIm9wdGlvbnMudmFsdWVcIj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwibGFiZWwtc3VidGV4dC1jb250YWluZXJcIj5cclxuICAgICAgPCEtLWxhYmVsLS0+XHJcbiAgICAgIDxsYWJlbCAqbmdJZj1cIiFvcHRpb25zLmhpZGVMYWJlbFwiIGNsYXNzPVwiYmJzZi1sYWJlbCB7e29wdGlvbnMubGFiZWxFeHRyYUNsYXNzZXN9fVwiPlxyXG4gICAgICAgIHt7b3B0aW9ucy5sYWJlbFZhbHVlfX1cclxuICAgICAgICA8IS0tQXN0ZXJpc2stLT5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cIigob3B0aW9ucy5zaG93QXN0ZXJpc2smJm9wdGlvbnMuaXNSZXF1aXJlZCl8fChvcHRpb25zLmlzUmVxdWlyZWQpKSYmIW9wdGlvbnMuaXNSZWFkb25seVwiIGNsYXNzPVwidGV4dC1kYW5nZXJcIj4qPC9zcGFuPlxyXG4gICAgICA8L2xhYmVsPlxyXG4gICAgICA8IS0tIHJlYWRvbmx5IC0tPlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwib3B0aW9ucy5pc1JlYWRvbmx5XCI+PHNwYW4gY2xhc3M9XCJyZWFkb25seS12aWV3XCI+e3tvcHRpb25zLnZhbHVlfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic3VidGV4dC1jb250YWluZXJcIiAqbmdJZj1cIiFvcHRpb25zLmlzUmVhZG9ubHlcIj5cclxuICAgICAgICA8IS0tIGxhYmVsRGVzY3JpcHRpb24tLT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYmJzZi1jb250cm9sLWRlc2NcIiAqbmdJZj1cIm9wdGlvbnMubGFiZWxEZXNjcmlwdGlvbiE9bnVsbFwiPnt7b3B0aW9ucy5sYWJlbERlc2NyaXB0aW9ufX08L2Rpdj5cclxuICAgICAgICA8IS0tIHJlcXVpcmVkVGV4dC0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJiYnNmLXZhbGlkYXRpb25cIiAqbmdJZj1cIihjaGVja0JveEZvcm1Db250cm9sLmludmFsaWQgJiYgY2hlY2tCb3hGb3JtQ29udHJvbC50b3VjaGVkKVwiPlxyXG4gICAgICAgICAge3tnZXRFcnJvclZhbGlkYXRpb24oY2hlY2tCb3hGb3JtQ29udHJvbC5lcnJvcnN8a2V5dmFsdWUpfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpuZ0lmPVwiKGdyb3VwLnZhbGlkJiZncm91cC5kaXJ0eSYmZ3JvdXAudG91Y2hlZCApfHwoZ3JvdXAudW50b3VjaGVkJiZncm91cC5pbnZhbGlkJiZncm91cC5kaXJ0eSkgXCI+XHJcbiAgICB7e3Jlc2V0RXJyb3IoKX19PC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hlY2tCb3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1jb250cm9scy9zcmMvbGliL2NvbnRyb2xzL0NoZWNrQm94L0NoZWNrQm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtY29udHJvbHMvc3JjL2xpYi9jb250cm9scy9DaGVja0JveC9DaGVja0JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBVyxRQUFRLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBb0UsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUFXM0gsTUFBTSxPQUFPLGlCQUFpQjthQUdyQiwyQkFBc0IsR0FBRyxJQUFJLEFBQVAsQ0FBUTtJQUNyQyw0Q0FBNEM7SUFDNUMsWUFBb0IsY0FBOEIsRUFBc0IsZ0JBQWtDLEVBQVMsbUJBQXVDLEVBQVUsY0FBOEIsRUFBVSxTQUErQixFQUFVLHdCQUFrRDtRQUFuUixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFBc0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUFTLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBb0I7UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFBVSxjQUFTLEdBQVQsU0FBUyxDQUFzQjtRQUFVLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFLN1IsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHeEMscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBQ2xDLG9CQUFlLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLHlCQUFvQixHQUFHLEVBQUUsQ0FBQztRQWtEMUIsZUFBVSxHQUFHLEdBQUcsRUFBRTtZQUNoQixJQUFJLENB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dXQsIERvQ2hlY2ssIE9wdGlvbmFsLCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgVmFsaWRhdG9ycywgRm9ybUdyb3VwLCBBYnN0cmFjdENvbnRyb2wsIENvbnRyb2xDb250YWluZXIsIEZvcm1Hcm91cERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRXJyb3JNYXNzYWdlVmFsaWRhdGlvbiB9IGZyb20gJy4uLy4uL1NoYXJlZC9zZXJ2aWNlcy92YWxpZGF0aW9uRXJyb3JNYXNzYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb250cm9sVXRpbGl0eSB9IGZyb20gJy4uLy4uL1NoYXJlZC9zZXJ2aWNlcy9Db250cm9sVXRpbGl0eSc7XHJcbmltcG9ydCB7IENoZWNrQm94T3B0aW9ucyB9IGZyb20gJy4uLy4uL1NoYXJlZC9Nb2RlbHMvQ2hlY2tCb3hPcHRpb25zJztcclxuaW1wb3J0IHsgQkJTRlRyYW5zbGF0ZVNlcnZpY2UsIENvbnRyb2xWYWxpZGF0aW9uU2VydmljZSwgVXRpbGl0eVNlcnZpY2UgfSBmcm9tICdAYm5zaWdodHMvYmJzZi11dGlsaXRpZXMnO1xyXG5AQ29tcG9uZW50KHtcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogY29tcG9uZW50LXNlbGVjdG9yXHJcbiAgICBzZWxlY3RvcjogJ0JCU0YtQ2hlY2tCb3gnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL0NoZWNrQm94LmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDaGVja0JveENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG5cclxuICBzdGF0aWMgY29udHJvbENvbnRhaW5lcnN0YXRpYyA9IG51bGw7XHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBtYXgtbGluZS1sZW5ndGhcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbnRyb2xVdGlsaXR5OiBDb250cm9sVXRpbGl0eSwgQE9wdGlvbmFsKCkgcHJpdmF0ZSBjb250cm9sQ29udGFpbmVyOiBDb250cm9sQ29udGFpbmVyLCBwdWJsaWMgQ2hlY2tCb3hDb250cm9sSG9zdDogRm9ybUdyb3VwRGlyZWN0aXZlLCBwcml2YXRlIHV0aWxpdHlTZXJ2aWNlOiBVdGlsaXR5U2VydmljZSwgcHJpdmF0ZSB0cmFuc2xhdGU6IEJCU0ZUcmFuc2xhdGVTZXJ2aWNlLCBwcml2YXRlIGNvbnRyb2xWYWxpZGF0aW9uU2VydmljZTogQ29udHJvbFZhbGlkYXRpb25TZXJ2aWNlKSB7XHJcbiAgICBDaGVja0JveENvbXBvbmVudC5jb250cm9sQ29udGFpbmVyc3RhdGljID0gdGhpcy5jb250cm9sQ29udGFpbmVyO1xyXG4gIH1cclxuICBASW5wdXQoKSBncm91cDogRm9ybUdyb3VwO1xyXG4gIEBJbnB1dCgpIG9wdGlvbnM6IENoZWNrQm94T3B0aW9ucztcclxuICBAT3V0cHV0KCkgb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGNoZWNrQm94Rm9ybUNvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcclxuICBtYXJrQWxsQXNUb3VjaGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgdmFsaWRhdGlvblJ1bGVzID0gW107XHJcbiAgdmFsaWRhdGlvblJ1bGVzYXN5bmMgPSBbXTtcclxuICB0ZXh0RGlyO1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGlmICh0aGlzLm9wdGlvbnMuZm9yY2VEaXJlY3Rpb24pXHJcbiAgICAgIHRoaXMudGV4dERpciA9IHRoaXMub3B0aW9ucy5mb3JjZURpcmVjdGlvbiA9PSAyID8gJ3J0bCcgOiAnbHRyJztcclxuICAgIGVsc2VcclxuICAgICAgdGhpcy50ZXh0RGlyID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmd1YWdlJykgPT0gJ2FyJyA/ICdydGwnIDogJ2x0cic7XHJcbiAgICB0aGlzLmNvbnRyb2xWYWxpZGF0aW9uU2VydmljZS5pc0NyZWF0ZWRCZWZvciA9IGZhbHNlO1xyXG4gICAgdGhpcy5ncm91cC5hZGRDb250cm9sKHRoaXMub3B0aW9ucy5uYW1lLCBuZXcgRm9ybUNvbnRyb2woJycpKTtcclxuICAgIHRoaXMuY2hlY2tCb3hGb3JtQ29udHJvbCA9IHRoaXMuZ3JvdXAuY29udHJvbHNbdGhpcy5vcHRpb25zLm5hbWVdOyAvLyAgbmV3IEZvcm1Db250cm9sKCcnLHZhbGlkYXRpb25SdWxlcyk7XHJcbiAgICB0aGlzLnZhbGlkYXRpb25SdWxlcyA9IFtdO1xyXG4gICAgdGhpcy52YWxpZGF0aW9uUnVsZXNhc3luYyA9IFtdO1xyXG4gICAgdGhpcy5jaGVja0JveEZvcm1Db250cm9sLnNldFZhbHVlKHRoaXMub3B0aW9ucy52YWx1ZSk7XHJcbiAgICBpZiAodGhpcy5vcHRpb25zLmxhYmVsS2V5ICE9IG51bGwgJiYgdGhpcy5vcHRpb25zLmxhYmVsS2V5ICE9IFwiXCIpXHJcbiAgICAgIHRoaXMub3B0aW9ucy5sYWJlbFZhbHVlID0gdGhpcy51dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKHRoaXMub3B0aW9ucy5sYWJlbEtleSk7XHJcblxyXG5cclxuICAgIGlmICh0aGlzLm9wdGlvbnMuaXNSZXF1aXJlZCkge1xyXG4gICAgICB0aGlzLnZhbGlkYXRpb25SdWxlcy5wdXNoKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5jdXN0b21WYWxpZGF0aW9uLmxlbmd0aCA+IDApIHtcclxuICAgICAgbGV0IFZhbGlkYXRpb25zID0gdGhpcy5vcHRpb25zLmN1c3RvbVZhbGlkYXRpb247XHJcbiAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBWYWxpZGF0aW9ucy5sZW5ndGg7IGluZGV4KyspIHtcclxuICAgICAgICBjb25zdCBWYWxpZGF0aW9uID0gVmFsaWRhdGlvbnNbaW5kZXhdO1xyXG4gICAgICAgIHRoaXMudmFsaWRhdGlvblJ1bGVzLnB1c2goVmFsaWRhdGlvbi5mdW5jdGlvbkJvZHkpO1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuXHJcbiAgICB0aGlzLmNoZWNrQm94Rm9ybUNvbnRyb2wuc2V0VmFsaWRhdG9ycyh0aGlzLnZhbGlkYXRpb25SdWxlcyk7XHJcbiAgICB0aGlzLmNoZWNrQm94Rm9ybUNvbnRyb2wuc2V0QXN5bmNWYWxpZGF0b3JzKHRoaXMudmFsaWRhdGlvblJ1bGVzYXN5bmMpO1xyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5pc0Rpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMuY2hlY2tCb3hGb3JtQ29udHJvbC5kaXNhYmxlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5DaGVja0JveENvbnRyb2xIb3N0Lm5nU3VibWl0LnN1YnNjcmliZSgodmFsdWUpID0+IHtcclxuICAgICAgdGhpcy5ncm91cC5tYXJrQWxsQXNUb3VjaGVkKCk7XHJcbiAgICAgIHRoaXMubWFya0FsbEFzVG91Y2hlZCA9IHRydWU7XHJcbiAgICB9KTtcclxuXHJcblxyXG4gIH1cclxuXHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY29udHJvbFV0aWxpdHkuc2V0QXR0cmlidXRlRm9yQ29udHJvbCh0aGlzLm9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgcmVzZXRFcnJvciA9ICgpID0+IHtcclxuICAgIHRoaXMuY29udHJvbFZhbGlkYXRpb25TZXJ2aWNlLnJlbW92ZUdsb2JhbEVycm9yKCk7XHJcbiAgfTtcclxuXHJcblxyXG5cclxuICBzaG93R2xvYmFsRXJyb3IoKSB7XHJcbiAgICB0aGlzLmNvbnRyb2xVdGlsaXR5LnNob3dHbG9iYWxFcnJvcigpO1xyXG4gIH1cclxuXHJcbiAgZ2V0RXJyb3JWYWxpZGF0aW9uKEVycm9yTGlzdCkge1xyXG4gICAgaWYgKHRoaXMubWFya0FsbEFzVG91Y2hlZCAmJiB0aGlzLmdyb3VwLmludmFsaWQpIHtcclxuICAgICAgdGhpcy5zaG93R2xvYmFsRXJyb3IoKTtcclxuICAgICAgdGhpcy5tYXJrQWxsQXNUb3VjaGVkID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5jb250cm9sVXRpbGl0eS5nZXRFcnJvclZhbGlkYXRpb25NYXNzYWdlKEVycm9yTGlzdCwgdGhpcy5ncm91cCwgdGhpcy5vcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9uVmFsdWVDaGFuZ2VkKCkge1xyXG4gICAgdGhpcy5vbkNoYW5nZS5lbWl0KHRoaXMuY2hlY2tCb3hGb3JtQ29udHJvbC52YWx1ZSk7XHJcbiAgICBsZXQgb3JpZ2luYWxWYWx1ZSA9IHRoaXMuY2hlY2tCb3hGb3JtQ29udHJvbC52YWx1ZTtcclxuICAgIGlmICh0aGlzLm9wdGlvbnMucGF0Y2hGdW5jdGlvbiAmJiB0aGlzLm9wdGlvbnMucGF0Y2hQYXRoICYmIHRoaXMuZ3JvdXAuZ2V0KHRoaXMub3B0aW9ucy5uYW1lKS52YWxpZCkge1xyXG4gICAgICB0aGlzLmNvbnRyb2xVdGlsaXR5LnBhdGNoQ29udHJvbFZhbHVlKG9yaWdpbmFsVmFsdWUsIHRoaXMub3B0aW9ucy5wYXRjaEZ1bmN0aW9uLCB0aGlzLm9wdGlvbnMucGF0Y2hQYXRoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vRXh0ZXJuYWwgTWV0aG9kXHJcbiAgcmVtb3ZlUmVxdWlyZWRWYWxpZGF0aW9uID0gKCkgPT4ge1xyXG4gICAgdGhpcy5jb250cm9sVXRpbGl0eS5yZW1vdmVSZXF1aXJlZFZhbGlkYXRpb24odGhpcy5jaGVja0JveEZvcm1Db250cm9sLCB0aGlzLnZhbGlkYXRpb25SdWxlcywgdGhpcy5vcHRpb25zKTtcclxuICB9O1xyXG4gIC8vRXh0ZXJuYWwgTWV0aG9kXHJcbiAgYWRkUmVxdWlyZWRWYWxpZGF0aW9uID0gKCkgPT4ge1xyXG4gICAgdGhpcy5jb250cm9sVXRpbGl0eS5hZGRSZXF1aXJlZFZhbGlkYXRpb24odGhpcy5jaGVja0JveEZvcm1Db250cm9sLCB0aGlzLnZhbGlkYXRpb25SdWxlcywgdGhpcy5vcHRpb25zKTtcclxuICB9O1xyXG5cclxuICAvL0V4dGVybmFsIE1ldGhvZFxyXG4gIHJlbW92ZUN1c3RvbVZhbGlkYXRpb24gPSAoY3VzdG9tVmFsaWRhdGlvbikgPT4ge1xyXG4gICAgdGhpcy5jb250cm9sVXRpbGl0eS5yZW1vdmVDdXN0b21WYWxpZGF0aW9uKHRoaXMuY2hlY2tCb3hGb3JtQ29udHJvbCwgdGhpcy52YWxpZGF0aW9uUnVsZXMsIGN1c3RvbVZhbGlkYXRpb24pO1xyXG4gIH07XHJcbiAgLy9FeHRlcm5hbCBNZXRob2RcclxuICBhZGRDdXN0b21WYWxpZGF0aW9uID0gKGN1c3RvbVZhbGlkYXRpb24pID0+IHtcclxuICAgIHRoaXMuY29udHJvbFV0aWxpdHkuYWRkQ3VzdG9tVmFsaWRhdGlvbih0aGlzLmNoZWNrQm94Rm9ybUNvbnRyb2wsIHRoaXMudmFsaWRhdGlvblJ1bGVzLCBjdXN0b21WYWxpZGF0aW9uKTtcclxuICB9O1xyXG5cclxuICAvL0V4dGVybmFsIE1ldGhvZFxyXG4gIGlzVmFsaWQgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmNvbnRyb2xVdGlsaXR5LmlzVmFsaWQodGhpcy5jaGVja0JveEZvcm1Db250cm9sKTtcclxuICB9O1xyXG5cclxufVxyXG5cclxuIiwiPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgYmJzZi1jb250cm9sIGJic2YtY2hlY2tib3hcIiBbZm9ybUdyb3VwXT1cImdyb3VwXCI+XHJcbiAgPGRpdiBjbGFzcz1cImJic2YtaW5wdXQtY29udGFpbmVyXCI+XHJcbiAgICA8IS0taW5wdXQtLT5cclxuICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiAqbmdJZj1cIiFvcHRpb25zLmlzUmVhZG9ubHlcIiBjbGFzcz1cImJic2YtY2hlY2tib3gtaW5wdXQge3tvcHRpb25zLmV4dHJhQ2xhc3Nlc319XCIgW2Rpcl09XCJ0ZXh0RGlyXCJcclxuICAgICAgW2NoZWNrZWRdPVwib3B0aW9ucy52YWx1ZT09dHJ1ZT90cnVlOm51bGxcIiBhcmlhLWRlc2NyaWJlZGJ5PVwiZW1haWwtZXJyb3JcIiBhcmlhLWludmFsaWQ9XCJ0cnVlXCIgW2Zvcm1Db250cm9sTmFtZV09XCJvcHRpb25zLm5hbWVcIlxyXG4gICAgICAoY2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2VkKClcIiBbY2xhc3MuaXMtaW52YWxpZF09XCJjaGVja0JveEZvcm1Db250cm9sLmludmFsaWQgJiYgY2hlY2tCb3hGb3JtQ29udHJvbC50b3VjaGVkXCIgW2lkXT1cIm9wdGlvbnMubmFtZVwiXHJcbiAgICAgIFt2YWx1ZV09XCJvcHRpb25zLnZhbHVlPT10cnVlP3RydWU6bnVsbFwiIFtuYW1lXT1cIm9wdGlvbnMubmFtZVwiIFsobmdNb2RlbCldPVwib3B0aW9ucy52YWx1ZVwiPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJsYWJlbC1zdWJ0ZXh0LWNvbnRhaW5lclwiPlxyXG4gICAgICA8IS0tbGFiZWwtLT5cclxuICAgICAgPGxhYmVsICpuZ0lmPVwiIW9wdGlvbnMuaGlkZUxhYmVsXCIgY2xhc3M9XCJiYnNmLWxhYmVsIHt7b3B0aW9ucy5sYWJlbEV4dHJhQ2xhc3Nlc319XCI+XHJcbiAgICAgICAge3tvcHRpb25zLmxhYmVsVmFsdWV9fVxyXG4gICAgICAgIDwhLS1Bc3Rlcmlzay0tPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwiKChvcHRpb25zLnNob3dBc3RlcmlzayYmb3B0aW9ucy5pc1JlcXVpcmVkKXx8KG9wdGlvbnMuaXNSZXF1aXJlZCkpJiYhb3B0aW9ucy5pc1JlYWRvbmx5XCIgY2xhc3M9XCJ0ZXh0LWRhbmdlclwiPio8L3NwYW4+XHJcbiAgICAgIDwvbGFiZWw+XHJcbiAgICAgIDwhLS0gcmVhZG9ubHkgLS0+XHJcbiAgICAgIDxkaXYgKm5nSWY9XCJvcHRpb25zLmlzUmVhZG9ubHlcIj48c3BhbiBjbGFzcz1cInJlYWRvbmx5LXZpZXdcIj57e29wdGlvbnMudmFsdWV9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzdWJ0ZXh0LWNvbnRhaW5lclwiICpuZ0lmPVwiIW9wdGlvbnMuaXNSZWFkb25seVwiPlxyXG4gICAgICAgIDwhLS0gbGFiZWxEZXNjcmlwdGlvbi0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJiYnNmLWNvbnRyb2wtZGVzY1wiICpuZ0lmPVwib3B0aW9ucy5sYWJlbERlc2NyaXB0aW9uIT1udWxsXCI+e3tvcHRpb25zLmxhYmVsRGVzY3JpcHRpb259fTwvZGl2PlxyXG4gICAgICAgIDwhLS0gcmVxdWlyZWRUZXh0LS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJic2YtdmFsaWRhdGlvblwiICpuZ0lmPVwiKGNoZWNrQm94Rm9ybUNvbnRyb2wuaW52YWxpZCAmJiBjaGVja0JveEZvcm1Db250cm9sLnRvdWNoZWQpXCI+XHJcbiAgICAgICAgICB7e2dldEVycm9yVmFsaWRhdGlvbihjaGVja0JveEZvcm1Db250cm9sLmVycm9yc3xrZXl2YWx1ZSl9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgKm5nSWY9XCIoZ3JvdXAudmFsaWQmJmdyb3VwLmRpcnR5JiZncm91cC50b3VjaGVkICl8fChncm91cC51bnRvdWNoZWQmJmdyb3VwLmludmFsaWQmJmdyb3VwLmRpcnR5KSBcIj5cclxuICAgIHt7cmVzZXRFcnJvcigpfX08L2Rpdj5cclxuPC9kaXY+Il19
|
|
@@ -125,16 +125,16 @@ export class ConfirmationModalComponent {
|
|
|
125
125
|
}
|
|
126
126
|
this.utilityService.stopBlockUI();
|
|
127
127
|
}
|
|
128
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
129
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
128
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ConfirmationModalComponent, deps: [{ token: i1.UtilityService }, { token: i2.NgbModal }, { token: i3.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
129
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.6", type: ConfirmationModalComponent, selector: "BBSF-ConfirmationModal", inputs: { options: "options" }, viewQueries: [{ propertyName: "confirmationModal", first: true, predicate: ["confirmationModal"], descendants: true }], ngImport: i0, template: "" }); }
|
|
130
130
|
}
|
|
131
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
131
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: ConfirmationModalComponent, decorators: [{
|
|
132
132
|
type: Component,
|
|
133
|
-
args: [{ selector: 'BBSF-ConfirmationModal', template: "" }]
|
|
133
|
+
args: [{ selector: 'BBSF-ConfirmationModal', standalone: false, template: "" }]
|
|
134
134
|
}], ctorParameters: () => [{ type: i1.UtilityService }, { type: i2.NgbModal }, { type: i3.Router }], propDecorators: { options: [{
|
|
135
135
|
type: Input
|
|
136
136
|
}], confirmationModal: [{
|
|
137
137
|
type: ViewChild,
|
|
138
138
|
args: ['confirmationModal', { static: false }]
|
|
139
139
|
}] } });
|
|
140
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmlybWF0aW9uTW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1jb250cm9scy9zcmMvbGliL2NvbnRyb2xzL0NvbmZpcm1hdGlvbk1vZGFsL0NvbmZpcm1hdGlvbk1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtY29udHJvbHMvc3JjL2xpYi9jb250cm9scy9Db25maXJtYXRpb25Nb2RhbC9Db25maXJtYXRpb25Nb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJaEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFdkUsT0FBTyxJQUF3QixNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7OztBQU1qRixNQUFNLE9BQU8sMEJBQTBCO0lBV3JDLFlBQW1CLGNBQThCLEVBQVUsWUFBc0IsRUFBVSxNQUFjO1FBQXRGLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFVO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQVR6RyxnQkFBVyxHQUEwQixxQkFBcUIsQ0FBQyxNQUFNLENBQUM7UUFDbEUsaUJBQVksR0FBMEIscUJBQXFCLENBQUMsT0FBTyxDQUFDO1FBQ3BFLGlCQUFZLEdBQTBCLHFCQUFxQixDQUFDLE9BQU8sQ0FBQztJQU95QyxDQUFDO0lBRTlHLFFBQVE7SUFDUixDQUFDO0lBRUQsd0NBQXdDO0lBQ3hDLFNBQVM7UUFDUCxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ25DLCtCQUErQjtRQUMvQixJQUFJLENBQUMsYUFB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QyxPQUFPLEVBQUUsQ0FBQztZQUN2RixPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLHdCQUF3QjtnQkFDeEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1NBQzVDO1FBQ0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDOytHQWpJVSwwQkFBMEI7bUdBQTFCLDBCQUEwQixzTkNmdkMsRUFBQTs7NEZEZWEsMEJBQTBCO2tCQUp0QyxTQUFTOytCQUVFLHdCQUF3QjsrSEFHekIsT0FBTztzQkFBZixLQUFLO2dCQUk2QyxpQkFBaUI7c0JBQW5FLFNBQVM7dUJBQUMsbUJBQW1CLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5nYk1vZGFsIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5pbXBvcnQgeyBVdGlsaXR5U2VydmljZSB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLXV0aWxpdGllcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUGFnaW5nQWN0aW9uTW9kZSB9IGZyb20gJy4uLy4uL1NoYXJlZC9FbnVtcy9QYWdpbmdBY3Rpb25Nb2RlJztcclxuaW1wb3J0IHsgQ29uZmlybWF0aW9uTW9kYWxPcHRpb25zIH0gZnJvbSAnLi4vLi4vU2hhcmVkL01vZGVscy9Db25maXJtYXRpb25Nb2RhbE9wdGlvbnMnO1xyXG5pbXBvcnQgU3dhbCwgeyBTd2VldEFsZXJ0SWNvbiB9IGZyb20gJ3N3ZWV0YWxlcnQyL2Rpc3Qvc3dlZXRhbGVydDIuanMnO1xyXG5pbXBvcnQgeyBTdHlsZUNvbmZpcm1hdGlvbk1vZGUgfSBmcm9tICcuLi8uLi9TaGFyZWQvRW51bXMvU3R5bGVDb25maXJtYXRpb25Nb2RlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlVXJsOiAnQ29uZmlybWF0aW9uTW9kYWwuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHNlbGVjdG9yOiAnQkJTRi1Db25maXJtYXRpb25Nb2RhbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgb3B0aW9uczogQ29uZmlybWF0aW9uTW9kYWxPcHRpb25zO1xyXG4gIHN0eWxlRGFuZ2VyOiBTdHlsZUNvbmZpcm1hdGlvbk1vZGUgPSBTdHlsZUNvbmZpcm1hdGlvbk1vZGUuRGFuZ2VyO1xyXG4gIHN0eWxlV2FybmluZzogU3R5bGVDb25maXJtYXRpb25Nb2RlID0gU3R5bGVDb25maXJtYXRpb25Nb2RlLldhcm5pbmc7XHJcbiAgc3R5bGVTdWNjZXNzOiBTdHlsZUNvbmZpcm1hdGlvbk1vZGUgPSBTdHlsZUNvbmZpcm1hdGlvbk1vZGUuU3VjY2VzcztcclxuICBAVmlld0NoaWxkKCdjb25maXJtYXRpb25Nb2RhbCcsIHsgc3RhdGljOiBmYWxzZSB9KSBjb25maXJtYXRpb25Nb2RhbDogRWxlbWVudFJlZjtcclxuICBpY29uOiBTd2VldEFsZXJ0SWNvbjtcclxuICBidG5Db2xvcjogYW55O1xyXG4gIGljb25IdG1sOiBzdHJpbmc7XHJcblxyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdXRpbGl0eVNlcnZpY2U6IFV0aWxpdHlTZXJ2aWNlLCBwcml2YXRlIG1vZGFsU2VydmljZTogTmdiTW9kYWwsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIC8vTWV0aG9kIHVzZWQgdG8gc2hvdyBjb25maXJtYXRpb24gbW9kYWxcclxuICBzaG93TW9kYWwoKSB7XHJcbiAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0YXJ0QmxvY2tVSSgpO1xyXG4gICAgLy9jaGVjayBmb3Igb3B0aW9ucyB0ZXh0IHZhbHVlc1xyXG4gICAgdGhpcy5zZXRUZXh0VmFsdWVzKCk7XHJcblxyXG4gICAgLy8jcmVnaW9uIHN3ZWV0YWxlcnQgc3R5bGVzXHJcbiAgICBzd2l0Y2ggKHRoaXMub3B0aW9ucy5zdHlsZUNvbmZpcm1hdGlvbk1vZGUpIHtcclxuICAgICAgY2FzZSB0aGlzLnN0eWxlU3VjY2Vzczoge1xyXG4gICAgICAgIHRoaXMuaWNvbiA9ICdzdWNjZXNzJztcclxuICAgICAgICB0aGlzLmJ0bkNvbG9yID0gJyM1MGNkODknO1xyXG4gICAgICAgIHRoaXMuaWNvbkh0bWwgPSAnPGkgY2xhc3M9XCJmYSBmYS1jaGVja1wiPjwvaT4nO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICAgIGNhc2UgdGhpcy5zdHlsZVdhcm5pbmc6IHtcclxuICAgICAgICB0aGlzLmljb24gPSAnd2FybmluZyc7XHJcbiAgICAgICAgdGhpcy5idG5Db2xvciA9ICcjZmZjNzAwJztcclxuICAgICAgICB0aGlzLmljb25IdG1sID0gJzxpIGNsYXNzPVwiZmEgZmEtd2FybmluZ1wiPjwvaT4nO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgfVxyXG4gICAgICBjYXNlIHRoaXMuc3R5bGVEYW5nZXI6IHtcclxuICAgICAgICB0aGlzLmljb24gPSAnZXJyb3InO1xyXG4gICAgICAgIHRoaXMuYnRuQ29sb3IgPSAnI2YxNDE2Yyc7XHJcbiAgICAgICAgdGhpcy5pY29uSHRtbCA9ICc8aSBjbGFzcz1cImZhIGZhLWNsb3NlXCI+PC9pPic7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyNlbmRyZWdpb25cclxuXHJcbiAgICBTd2FsLmZpcmUoe1xyXG4gICAgICB0aXRsZTogdGhpcy51dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKHRoaXMub3B0aW9ucy5jb25maXJtYXRpb25IZWFkZXIpLFxyXG4gICAgICB0ZXh0OiB0aGlzLm9wdGlvbnMuY29uZmlybWF0aW9uQm9keSxcclxuICAgICAgaWNvbjogdGhpcy5pY29uLFxyXG4gICAgICBpY29uQ29sb3I6IHRoaXMuYnRuQ29sb3IsXHJcbiAgICAgIGNvbmZpcm1CdXR0b25Db2xvcjogdGhpcy5idG5Db2xvcixcclxuICAgICAgY2FuY2VsQnV0dG9uQ29sb3I6ICcjZjVmOGZhJyxcclxuICAgICAgY2FuY2VsQnV0dG9uVGV4dDogdGhpcy51dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFwiQ2FuY2VsTGFiZWxcIiksXHJcbiAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiB0aGlzLm9wdGlvbnMuc3VibWl0QnV0dG9uVGV4dCxcclxuICAgICAgc2hvd0NhbmNlbEJ1dHRvbjogdGhpcy5vcHRpb25zLnNob3dDYW5jZWxCdXR0b24sXHJcbiAgICAgIHNob3dDbG9zZUJ1dHRvbjogdGhpcy5vcHRpb25zLnNob3dDbG9zZUJ1dHRvbixcclxuICAgICAgYWxsb3dPdXRzaWRlQ2xpY2s6IGZhbHNlXHJcbiAgICB9KS50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgaWYgKHJlc3VsdC5pc0NvbmZpcm1lZCkge1xyXG4gICAgICAgIHRoaXMuc3VibWl0KCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgdGhpcy51dGlsaXR5U2VydmljZS5zdG9wQmxvY2tVSSgpO1xyXG4gIH1cclxuICBwcml2YXRlIHNldFRleHRWYWx1ZXMoKSB7XHJcbiAgICBpZiAoIXRoaXMub3B0aW9ucy5jb25maXJtYXRpb25IZWFkZXIpXHJcbiAgICAgIHRoaXMub3B0aW9ucy5jb25maXJtYXRpb25IZWFkZXIgPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJEZWxldGVDb25maXJtYXRpb25cIik7XHJcbiAgICBpZiAoIXRoaXMub3B0aW9ucy5jb25maXJtYXRpb25Cb2R5KVxyXG4gICAgICB0aGlzLm9wdGlvbnMuY29uZmlybWF0aW9uQm9keSA9IHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIkRlbGV0ZV9RdWVzdGlvblwiKTtcclxuICAgIGlmICghdGhpcy5vcHRpb25zLnN1Ym1pdEJ1dHRvblRleHQpXHJcbiAgICAgIHRoaXMub3B0aW9ucy5zdWJtaXRCdXR0b25UZXh0ID0gdGhpcy51dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFwiRGVsZXRlXCIpO1xyXG4gICAgaWYgKCF0aGlzLm9wdGlvbnMuc3VjY2Vzc05vdGlmaWNhdGlvbk1lc3NhZ2UpXHJcbiAgICAgIHRoaXMub3B0aW9ucy5zdWNjZXNzTm90aWZpY2F0aW9uTWVzc2FnZSA9IHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIkRlbGV0ZWRTdWNjZXNzZnVsbHlcIik7XHJcbiAgfVxyXG4gIC8vTW9kYWwgY29uZmlybWF0aW9uIHN1Ym1pdCBmdW5jdGlvblxyXG4gIHN1Ym1pdCgpIHtcclxuICAgIGxldCBzdWJtaXRNb2RlbCA9IHRoaXMub3B0aW9ucy5zZXJ2aWNlU3VibWl0TW9kZWw7XHJcblxyXG4gICAgbGV0IHN1Ym1pdHRlZFNlcnZpY2UgPSB0aGlzLm9wdGlvbnMuc2VydmljZVN1Ym1pdEZ1bmN0aW9uLmFwcGx5KG51bGwsIHN1Ym1pdE1vZGVsKSBhcyBPYnNlcnZhYmxlPGFueT47XHJcbiAgICBzdWJtaXR0ZWRTZXJ2aWNlLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IChyZXN1bHQpID0+IHtcclxuICAgICAgICBpZiAoIXRoaXMub3B0aW9ucy5kaXNhYmxlTW9kYWxEaXNtaXNzKVxyXG4gICAgICAgICAgdGhpcy5tb2RhbFNlcnZpY2UuZGlzbWlzc0FsbCgpO1xyXG4gICAgICAgIGlmICghdGhpcy5vcHRpb25zLmRpc2FibGVTdWNjZXNzTm90aWZpY2F0aW9uKSB7XHJcbiAgICAgICAgICBpZiAoIXRoaXMub3B0aW9ucy5zdWNjZXNzTm90aWZpY2F0aW9uTWVzc2FnZSlcclxuICAgICAgICAgICAgdGhpcy5vcHRpb25zLnN1Y2Nlc3NOb3RpZmljYXRpb25NZXNzYWdlID0gdGhpcy51dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFwiRGVsZXRlZFN1Y2Nlc3NmdWxseVwiKTtcclxuICAgICAgICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uubm90aWZ5U3VjY2Vzc01lc3NhZ2UodGhpcy5vcHRpb25zLnN1Y2Nlc3NOb3RpZmljYXRpb25NZXNzYWdlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMub3B0aW9ucy5vblN1Y2Nlc3NIYW5kbGVyKVxyXG4gICAgICAgICAgdGhpcy5vcHRpb25zLm9uU3VjY2Vzc0hhbmRsZXIocmVzdWx0KTtcclxuICAgICAgICBpZiAodGhpcy5vcHRpb25zLnBhZ2luZ1JlZmVyZW5jZSkge1xyXG4gICAgICAgICAgbGV0IHBhZ2luZyA9IHRoaXMub3B0aW9ucy5wYWdpbmdSZWZlcmVuY2U7XHJcbiAgICAgICAgICB0aGlzLm9wdGlvbnMucGFnaW5nQWN0aW9uTW9kZSA9PSBQYWdpbmdBY3Rpb25Nb2RlLlJlaW5pdGlhbGl6ZSA/IHBhZ2luZy5yZWluaXRpYWxpemVQYWdpbmcoKSA6IHBhZ2luZy51cGRhdGVQYWdpbmcoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy51dGlsaXR5U2VydmljZS5zdG9wQmxvY2tVSSgpO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XHJcbiAgICAgICAgaWYgKHRoaXMub3B0aW9ucy5vbkVycm9ySGFuZGxlcilcclxuICAgICAgICAgIHRoaXMub3B0aW9ucy5vbkVycm9ySGFuZGxlcihlcnJvcik7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgdGhpcy5oYW5kbGVFcnJvcihlcnJvcik7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYW5kbGVFcnJvcihlcnI6IEh0dHBFcnJvclJlc3BvbnNlKSB7XHJcbiAgICBsZXQgZXJyb3JNZXNzYWdlID0gJyc7XHJcbiAgICBpZiAoZXJyLmVycm9yIGluc3RhbmNlb2YgRXJyb3JFdmVudCkge1xyXG4gICAgICBlcnJvck1lc3NhZ2UgPSBgQW4gZXJyb3Igb2NjdXJyZWQ6ICR7ZXJyLmVycm9yLm1lc3NhZ2V9YDtcclxuICAgICAgaWYgKCF0aGlzLm9wdGlvbnMuZGlzYWJsZUVycm9yTm90aWZpY2F0aW9uKVxyXG4gICAgICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uubm90aWZ5RXJyb3JNZXNzYWdlKCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChlcnIuc3RhdHVzID09IDQwMSkge1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXCIvQWRtaW4vYWNjb3VudC9sb2dpblwiXSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChlcnIuc3RhdHVzID09IDUxMCkge1xyXG4gICAgICBlcnJvck1lc3NhZ2UgPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldEN1cnJlbnRMYW5ndWFnZSgpID09IFwiZW5cIiA/IFwiQ2FuIG5vdCBkZWxldGUgdGhpcyBpdGVtIGFzIGl0IGlzIHJlbGF0ZWQgdG8gb3RoZXJzXCIgOiBcItmE2Kcg2YrZhdmD2YYg2K3YsNmBINmH2LDYpyDYp9mE2LnZhti12LEg2YTYo9mG2Ycg2YXYsdiq2KjYtyDYqNi52YbYp9i12LEg2KPYrtix2YlcIjtcclxuICAgICAgaWYgKCF0aGlzLm9wdGlvbnMuZGlzYWJsZUVycm9yTm90aWZpY2F0aW9uKVxyXG4gICAgICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uubm90aWZ5RXJyb3JNZXNzYWdlKGVycm9yTWVzc2FnZSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgZXJyb3JNZXNzYWdlID0gYFNlcnZlciByZXR1cm5lZCBjb2RlOiAke2Vyci5zdGF0dXN9LCBlcnJvciBtZXNzYWdlIGlzOiAke2Vyci5tZXNzYWdlfWA7XHJcbiAgICAgIGNvbnNvbGUubG9nKGVycm9yTWVzc2FnZSk7XHJcbiAgICAgIGlmICghdGhpcy5vcHRpb25zLmRpc2FibGVFcnJvck5vdGlmaWNhdGlvbilcclxuICAgICAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLm5vdGlmeUVycm9yTWVzc2FnZSgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy51dGlsaXR5U2VydmljZS5zdG9wQmxvY2tVSSgpO1xyXG4gIH1cclxufVxyXG4iLCIiXX0=
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmlybWF0aW9uTW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1jb250cm9scy9zcmMvbGliL2NvbnRyb2xzL0NvbmZpcm1hdGlvbk1vZGFsL0NvbmZpcm1hdGlvbk1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtY29udHJvbHMvc3JjL2xpYi9jb250cm9scy9Db25maXJtYXRpb25Nb2RhbC9Db25maXJtYXRpb25Nb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJaEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFdkUsT0FBTyxJQUF3QixNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7OztBQU9qRixNQUFNLE9BQU8sMEJBQTBCO0lBV3JDLFlBQW1CLGNBQThCLEVBQVUsWUFBc0IsRUFBVSxNQUFjO1FBQXRGLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFVO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQVR6RyxnQkFBVyxHQUEwQixxQkFBcUIsQ0FBQyxNQUFNLENBQUM7UUFDbEUsaUJBQVksR0FBMEIscUJBQXFCLENBQUMsT0FBTyxDQUFDO1FBQ3BFLGlCQUFZLEdBQTBCLHFCQUFxQixDQUFDLE9BQU8sQ0FBQztJQU95QyxDQUFDO0lBRTlHLFFBQVE7SUFDUixDQUFDO0lBRUQsd0NBQXdDO0lBQ3hDLFNBQVM7UUFDUCxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ25DLCtCQUErQjtRQUMvQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFckIsMkJBQTJCO1FBQzNCLFFBQVEsSUFBSSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRTtZQUMxQyxLQUFLLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDdEIsSUFBSSxDQUFDLElBQUksR0FBRyxTQUFTLENBQUM7Z0JBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDO2dCQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLDZCQUE2QixDQUFDO2dCQUM5QyxNQUFNO2FBQ1A7WUFDRCxLQUFLLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDdEIsSUFBSSxDQUFDLElBQUksR0FBRyxTQUFTLENBQUM7Z0JBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDO2dCQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLCtCQUErQixDQUFDO2dCQUNoRCxNQUFNO2FBRVA7WUFDRCxLQUFLLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDckIsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDO2dCQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLDZCQUE2QixDQUFDO2dCQUM5QyxNQUFNO2FBRVA7U0FDRjtRQUNELFlBQVk7UUFFWixJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ1IsS0FBSyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQztZQUM1RSxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0I7WUFDbkMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsU0FBUyxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3hCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ2pDLGlCQUFpQixFQUFFLFNBQVM7WUFDNUIsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7WUFDckUsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0I7WUFDaEQsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0I7WUFDL0MsZUFBZSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZTtZQUM3QyxpQkFBaUIsRUFBRSxLQUFLO1NBQ3pCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNqQixJQUFJLE1BQU0sQ0FBQyxXQUFXLEVBQUU7Z0JBQ3RCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQzthQUNmO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFDTyxhQUFhO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQjtZQUNsQyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUMvRixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0I7WUFDaEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDMUYsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCO1lBQ2hDLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqRixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQywwQkFBMEI7WUFDMUMsSUFBSSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDMUcsQ0FBQztJQUNELG9DQUFvQztJQUNwQyxNQUFNO1FBQ0osSUFBSSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQztRQUVsRCxJQUFJLGdCQUFnQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxXQUFXLENBQW9CLENBQUM7UUFDdEcsZ0JBQWdCLENBQUMsU0FBUyxDQUFDO1lBQ3pCLElBQUksRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQjtvQkFDbkMsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsMEJBQTBCLEVBQUU7b0JBQzVDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLDBCQUEwQjt3QkFDMUMsSUFBSSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLENBQUM7b0JBQ3hHLElBQUksQ0FBQyxjQUFjLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO2lCQUNuRjtnQkFDRCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCO29CQUMvQixJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN4QyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFO29CQUNoQyxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQztvQkFDMUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsSUFBSSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7aUJBQ3RIO2dCQUNELElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDcEMsQ0FBQztZQUNELEtBQUssRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNmLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjO29CQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQzs7b0JBRW5DLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDNUIsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxXQUFXLENBQUMsR0FBc0I7UUFDeEMsSUFBSSxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLElBQUksR0FBRyxDQUFDLEtBQUssWUFBWSxVQUFVLEVBQUU7WUFDbkMsWUFBWSxHQUFHLHNCQUFzQixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3pELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLHdCQUF3QjtnQkFDeEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1NBQzVDO2FBQ0ksSUFBSSxHQUFHLENBQUMsTUFBTSxJQUFJLEdBQUcsRUFBRTtZQUMxQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQztTQUNoRDthQUNJLElBQUksR0FBRyxDQUFDLE1BQU0sSUFBSSxHQUFHLEVBQUU7WUFDMUIsWUFBWSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLHFEQUFxRCxDQUFDLENBQUMsQ0FBQywrQ0FBK0MsQ0FBQztZQUMxSyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyx3QkFBd0I7Z0JBQ3hDLElBQUksQ0FBQyxjQUFjLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDeEQ7YUFDSTtZQUNILFlBQVksR0FBRyx5QkFBeUIsR0FBRyxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN2RixPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLHdCQUF3QjtnQkFDeEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1NBQzVDO1FBQ0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDOzhHQWpJVSwwQkFBMEI7a0dBQTFCLDBCQUEwQixzTkNoQnZDLEVBQUE7OzJGRGdCYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBRUksd0JBQXdCLGNBQ3RCLEtBQUs7K0hBR1YsT0FBTztzQkFBZixLQUFLO2dCQUk2QyxpQkFBaUI7c0JBQW5FLFNBQVM7dUJBQUMsbUJBQW1CLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5nYk1vZGFsIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5pbXBvcnQgeyBVdGlsaXR5U2VydmljZSB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLXV0aWxpdGllcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUGFnaW5nQWN0aW9uTW9kZSB9IGZyb20gJy4uLy4uL1NoYXJlZC9FbnVtcy9QYWdpbmdBY3Rpb25Nb2RlJztcclxuaW1wb3J0IHsgQ29uZmlybWF0aW9uTW9kYWxPcHRpb25zIH0gZnJvbSAnLi4vLi4vU2hhcmVkL01vZGVscy9Db25maXJtYXRpb25Nb2RhbE9wdGlvbnMnO1xyXG5pbXBvcnQgU3dhbCwgeyBTd2VldEFsZXJ0SWNvbiB9IGZyb20gJ3N3ZWV0YWxlcnQyL2Rpc3Qvc3dlZXRhbGVydDIuanMnO1xyXG5pbXBvcnQgeyBTdHlsZUNvbmZpcm1hdGlvbk1vZGUgfSBmcm9tICcuLi8uLi9TaGFyZWQvRW51bXMvU3R5bGVDb25maXJtYXRpb25Nb2RlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgdGVtcGxhdGVVcmw6ICdDb25maXJtYXRpb25Nb2RhbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzZWxlY3RvcjogJ0JCU0YtQ29uZmlybWF0aW9uTW9kYWwnLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBvcHRpb25zOiBDb25maXJtYXRpb25Nb2RhbE9wdGlvbnM7XHJcbiAgc3R5bGVEYW5nZXI6IFN0eWxlQ29uZmlybWF0aW9uTW9kZSA9IFN0eWxlQ29uZmlybWF0aW9uTW9kZS5EYW5nZXI7XHJcbiAgc3R5bGVXYXJuaW5nOiBTdHlsZUNvbmZpcm1hdGlvbk1vZGUgPSBTdHlsZUNvbmZpcm1hdGlvbk1vZGUuV2FybmluZztcclxuICBzdHlsZVN1Y2Nlc3M6IFN0eWxlQ29uZmlybWF0aW9uTW9kZSA9IFN0eWxlQ29uZmlybWF0aW9uTW9kZS5TdWNjZXNzO1xyXG4gIEBWaWV3Q2hpbGQoJ2NvbmZpcm1hdGlvbk1vZGFsJywgeyBzdGF0aWM6IGZhbHNlIH0pIGNvbmZpcm1hdGlvbk1vZGFsOiBFbGVtZW50UmVmO1xyXG4gIGljb246IFN3ZWV0QWxlcnRJY29uO1xyXG4gIGJ0bkNvbG9yOiBhbnk7XHJcbiAgaWNvbkh0bWw6IHN0cmluZztcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB1dGlsaXR5U2VydmljZTogVXRpbGl0eVNlcnZpY2UsIHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbCwgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgLy9NZXRob2QgdXNlZCB0byBzaG93IGNvbmZpcm1hdGlvbiBtb2RhbFxyXG4gIHNob3dNb2RhbCgpIHtcclxuICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uuc3RhcnRCbG9ja1VJKCk7XHJcbiAgICAvL2NoZWNrIGZvciBvcHRpb25zIHRleHQgdmFsdWVzXHJcbiAgICB0aGlzLnNldFRleHRWYWx1ZXMoKTtcclxuXHJcbiAgICAvLyNyZWdpb24gc3dlZXRhbGVydCBzdHlsZXNcclxuICAgIHN3aXRjaCAodGhpcy5vcHRpb25zLnN0eWxlQ29uZmlybWF0aW9uTW9kZSkge1xyXG4gICAgICBjYXNlIHRoaXMuc3R5bGVTdWNjZXNzOiB7XHJcbiAgICAgICAgdGhpcy5pY29uID0gJ3N1Y2Nlc3MnO1xyXG4gICAgICAgIHRoaXMuYnRuQ29sb3IgPSAnIzUwY2Q4OSc7XHJcbiAgICAgICAgdGhpcy5pY29uSHRtbCA9ICc8aSBjbGFzcz1cImZhIGZhLWNoZWNrXCI+PC9pPic7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgICAgY2FzZSB0aGlzLnN0eWxlV2FybmluZzoge1xyXG4gICAgICAgIHRoaXMuaWNvbiA9ICd3YXJuaW5nJztcclxuICAgICAgICB0aGlzLmJ0bkNvbG9yID0gJyNmZmM3MDAnO1xyXG4gICAgICAgIHRoaXMuaWNvbkh0bWwgPSAnPGkgY2xhc3M9XCJmYSBmYS13YXJuaW5nXCI+PC9pPic7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICB9XHJcbiAgICAgIGNhc2UgdGhpcy5zdHlsZURhbmdlcjoge1xyXG4gICAgICAgIHRoaXMuaWNvbiA9ICdlcnJvcic7XHJcbiAgICAgICAgdGhpcy5idG5Db2xvciA9ICcjZjE0MTZjJztcclxuICAgICAgICB0aGlzLmljb25IdG1sID0gJzxpIGNsYXNzPVwiZmEgZmEtY2xvc2VcIj48L2k+JztcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vI2VuZHJlZ2lvblxyXG5cclxuICAgIFN3YWwuZmlyZSh7XHJcbiAgICAgIHRpdGxlOiB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUodGhpcy5vcHRpb25zLmNvbmZpcm1hdGlvbkhlYWRlciksXHJcbiAgICAgIHRleHQ6IHRoaXMub3B0aW9ucy5jb25maXJtYXRpb25Cb2R5LFxyXG4gICAgICBpY29uOiB0aGlzLmljb24sXHJcbiAgICAgIGljb25Db2xvcjogdGhpcy5idG5Db2xvcixcclxuICAgICAgY29uZmlybUJ1dHRvbkNvbG9yOiB0aGlzLmJ0bkNvbG9yLFxyXG4gICAgICBjYW5jZWxCdXR0b25Db2xvcjogJyNmNWY4ZmEnLFxyXG4gICAgICBjYW5jZWxCdXR0b25UZXh0OiB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJDYW5jZWxMYWJlbFwiKSxcclxuICAgICAgY29uZmlybUJ1dHRvblRleHQ6IHRoaXMub3B0aW9ucy5zdWJtaXRCdXR0b25UZXh0LFxyXG4gICAgICBzaG93Q2FuY2VsQnV0dG9uOiB0aGlzLm9wdGlvbnMuc2hvd0NhbmNlbEJ1dHRvbixcclxuICAgICAgc2hvd0Nsb3NlQnV0dG9uOiB0aGlzLm9wdGlvbnMuc2hvd0Nsb3NlQnV0dG9uLFxyXG4gICAgICBhbGxvd091dHNpZGVDbGljazogZmFsc2VcclxuICAgIH0pLnRoZW4oKHJlc3VsdCkgPT4ge1xyXG4gICAgICBpZiAocmVzdWx0LmlzQ29uZmlybWVkKSB7XHJcbiAgICAgICAgdGhpcy5zdWJtaXQoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0b3BCbG9ja1VJKCk7XHJcbiAgfVxyXG4gIHByaXZhdGUgc2V0VGV4dFZhbHVlcygpIHtcclxuICAgIGlmICghdGhpcy5vcHRpb25zLmNvbmZpcm1hdGlvbkhlYWRlcilcclxuICAgICAgdGhpcy5vcHRpb25zLmNvbmZpcm1hdGlvbkhlYWRlciA9IHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShcIkRlbGV0ZUNvbmZpcm1hdGlvblwiKTtcclxuICAgIGlmICghdGhpcy5vcHRpb25zLmNvbmZpcm1hdGlvbkJvZHkpXHJcbiAgICAgIHRoaXMub3B0aW9ucy5jb25maXJtYXRpb25Cb2R5ID0gdGhpcy51dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFwiRGVsZXRlX1F1ZXN0aW9uXCIpO1xyXG4gICAgaWYgKCF0aGlzLm9wdGlvbnMuc3VibWl0QnV0dG9uVGV4dClcclxuICAgICAgdGhpcy5vcHRpb25zLnN1Ym1pdEJ1dHRvblRleHQgPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJEZWxldGVcIik7XHJcbiAgICBpZiAoIXRoaXMub3B0aW9ucy5zdWNjZXNzTm90aWZpY2F0aW9uTWVzc2FnZSlcclxuICAgICAgdGhpcy5vcHRpb25zLnN1Y2Nlc3NOb3RpZmljYXRpb25NZXNzYWdlID0gdGhpcy51dGlsaXR5U2VydmljZS5nZXRSZXNvdXJjZVZhbHVlKFwiRGVsZXRlZFN1Y2Nlc3NmdWxseVwiKTtcclxuICB9XHJcbiAgLy9Nb2RhbCBjb25maXJtYXRpb24gc3VibWl0IGZ1bmN0aW9uXHJcbiAgc3VibWl0KCkge1xyXG4gICAgbGV0IHN1Ym1pdE1vZGVsID0gdGhpcy5vcHRpb25zLnNlcnZpY2VTdWJtaXRNb2RlbDtcclxuXHJcbiAgICBsZXQgc3VibWl0dGVkU2VydmljZSA9IHRoaXMub3B0aW9ucy5zZXJ2aWNlU3VibWl0RnVuY3Rpb24uYXBwbHkobnVsbCwgc3VibWl0TW9kZWwpIGFzIE9ic2VydmFibGU8YW55PjtcclxuICAgIHN1Ym1pdHRlZFNlcnZpY2Uuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgIGlmICghdGhpcy5vcHRpb25zLmRpc2FibGVNb2RhbERpc21pc3MpXHJcbiAgICAgICAgICB0aGlzLm1vZGFsU2VydmljZS5kaXNtaXNzQWxsKCk7XHJcbiAgICAgICAgaWYgKCF0aGlzLm9wdGlvbnMuZGlzYWJsZVN1Y2Nlc3NOb3RpZmljYXRpb24pIHtcclxuICAgICAgICAgIGlmICghdGhpcy5vcHRpb25zLnN1Y2Nlc3NOb3RpZmljYXRpb25NZXNzYWdlKVxyXG4gICAgICAgICAgICB0aGlzLm9wdGlvbnMuc3VjY2Vzc05vdGlmaWNhdGlvbk1lc3NhZ2UgPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoXCJEZWxldGVkU3VjY2Vzc2Z1bGx5XCIpO1xyXG4gICAgICAgICAgdGhpcy51dGlsaXR5U2VydmljZS5ub3RpZnlTdWNjZXNzTWVzc2FnZSh0aGlzLm9wdGlvbnMuc3VjY2Vzc05vdGlmaWNhdGlvbk1lc3NhZ2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5vcHRpb25zLm9uU3VjY2Vzc0hhbmRsZXIpXHJcbiAgICAgICAgICB0aGlzLm9wdGlvbnMub25TdWNjZXNzSGFuZGxlcihyZXN1bHQpO1xyXG4gICAgICAgIGlmICh0aGlzLm9wdGlvbnMucGFnaW5nUmVmZXJlbmNlKSB7XHJcbiAgICAgICAgICBsZXQgcGFnaW5nID0gdGhpcy5vcHRpb25zLnBhZ2luZ1JlZmVyZW5jZTtcclxuICAgICAgICAgIHRoaXMub3B0aW9ucy5wYWdpbmdBY3Rpb25Nb2RlID09IFBhZ2luZ0FjdGlvbk1vZGUuUmVpbml0aWFsaXplID8gcGFnaW5nLnJlaW5pdGlhbGl6ZVBhZ2luZygpIDogcGFnaW5nLnVwZGF0ZVBhZ2luZygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0b3BCbG9ja1VJKCk7XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcclxuICAgICAgICBpZiAodGhpcy5vcHRpb25zLm9uRXJyb3JIYW5kbGVyKVxyXG4gICAgICAgICAgdGhpcy5vcHRpb25zLm9uRXJyb3JIYW5kbGVyKGVycm9yKTtcclxuICAgICAgICBlbHNlXHJcbiAgICAgICAgICB0aGlzLmhhbmRsZUVycm9yKGVycm9yKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhbmRsZUVycm9yKGVycjogSHR0cEVycm9yUmVzcG9uc2UpIHtcclxuICAgIGxldCBlcnJvck1lc3NhZ2UgPSAnJztcclxuICAgIGlmIChlcnIuZXJyb3IgaW5zdGFuY2VvZiBFcnJvckV2ZW50KSB7XHJcbiAgICAgIGVycm9yTWVzc2FnZSA9IGBBbiBlcnJvciBvY2N1cnJlZDogJHtlcnIuZXJyb3IubWVzc2FnZX1gO1xyXG4gICAgICBpZiAoIXRoaXMub3B0aW9ucy5kaXNhYmxlRXJyb3JOb3RpZmljYXRpb24pXHJcbiAgICAgICAgdGhpcy51dGlsaXR5U2VydmljZS5ub3RpZnlFcnJvck1lc3NhZ2UoKTtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKGVyci5zdGF0dXMgPT0gNDAxKSB7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtcIi9BZG1pbi9hY2NvdW50L2xvZ2luXCJdKTtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKGVyci5zdGF0dXMgPT0gNTEwKSB7XHJcbiAgICAgIGVycm9yTWVzc2FnZSA9IHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0Q3VycmVudExhbmd1YWdlKCkgPT0gXCJlblwiID8gXCJDYW4gbm90IGRlbGV0ZSB0aGlzIGl0ZW0gYXMgaXQgaXMgcmVsYXRlZCB0byBvdGhlcnNcIiA6IFwi2YTYpyDZitmF2YPZhiDYrdiw2YEg2YfYsNinINin2YTYudmG2LXYsSDZhNij2YbZhyDZhdix2KrYqNi3INio2LnZhtin2LXYsSDYo9iu2LHZiVwiO1xyXG4gICAgICBpZiAoIXRoaXMub3B0aW9ucy5kaXNhYmxlRXJyb3JOb3RpZmljYXRpb24pXHJcbiAgICAgICAgdGhpcy51dGlsaXR5U2VydmljZS5ub3RpZnlFcnJvck1lc3NhZ2UoZXJyb3JNZXNzYWdlKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBlcnJvck1lc3NhZ2UgPSBgU2VydmVyIHJldHVybmVkIGNvZGU6ICR7ZXJyLnN0YXR1c30sIGVycm9yIG1lc3NhZ2UgaXM6ICR7ZXJyLm1lc3NhZ2V9YDtcclxuICAgICAgY29uc29sZS5sb2coZXJyb3JNZXNzYWdlKTtcclxuICAgICAgaWYgKCF0aGlzLm9wdGlvbnMuZGlzYWJsZUVycm9yTm90aWZpY2F0aW9uKVxyXG4gICAgICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uubm90aWZ5RXJyb3JNZXNzYWdlKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0b3BCbG9ja1VJKCk7XHJcbiAgfVxyXG59XHJcbiIsIiJdfQ==
|
|
@@ -194,22 +194,22 @@ export class DateInputComponent {
|
|
|
194
194
|
translateByKey(key) {
|
|
195
195
|
return this.utilityService.getResourceValue(key);
|
|
196
196
|
}
|
|
197
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
198
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
197
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: DateInputComponent, deps: [{ token: i1.OnPagingFiltersChangeService }, { token: i2.ControlUtility }, { token: i3.ControlContainer, optional: true }, { token: i3.FormGroupDirective }, { token: i4.UtilityService }, { token: i4.ControlValidationService }, { token: i5.DateTimeAdapter }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
198
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.6", type: DateInputComponent, selector: "BBSF-DateTimePicker", inputs: { group: "group", options: "options", DropdownTemplateVariable: "DropdownTemplateVariable" }, outputs: { onChange: "onChange" }, providers: [
|
|
199
199
|
{
|
|
200
200
|
provide: OwlDateTimeIntl,
|
|
201
201
|
useClass: DefaultIntl
|
|
202
202
|
}
|
|
203
|
-
], ngImport: i0, template: "<div class=\"form-group bbsf-control bbsf-datetime-picker\" [formGroup]=\"group\">\r\n <div [ngClass]=\"(options.viewType==1)?'bbsf-vertical':'bbsf-horizontal'\">\r\n <!--label-->\r\n <label *ngIf=\"!options.hideLabel\" class=\"bbsf-label\r\n {{options.labelExtraClasses}}\">\r\n {{options.labelValue}}\r\n <!--Asterisk-->\r\n <span *ngIf=\"((options.showAsterisk&&options.isRequired)||(options.isRequired))&&!options.isReadonly\"\r\n class=\"text-danger\" aria-required=\"true\">*</span>\r\n </label>\r\n <div *ngIf=\"!options.isReadonly\" class=\"bbsf-input-container\">\r\n <!--input-->\r\n <input autocomplete=\"off\" [readonly]=\"true\" (dateTimeChange)=\"onDateSelect($event)\" [dir]=\"textDir\" class=\"form-control bnsights-control\r\n {{options.extraClasses}} \" [ngClass]=\"(options.viewType==1)?'':'col-md-9'\" aria-describedby=\"email-error\"\r\n aria-invalid=\"true\" formControlName=\"{{options.name}}\" [owlDateTime]=\"dt1\" [owlDateTimeTrigger]=\"dt1\"\r\n [class.is-invalid]=\"datePickerFormControl.invalid &&\r\n datePickerFormControl.touched\" [min]=\"options.startDate\" [max]=\"options.endDate\"\r\n [hour12Timer]=\"options.hour12Timer\" [selectMode]=\"getSelectMode(options.selectMode)\"\r\n placeholder=\"{{options.placeholder}}\" id=\"{{options.name}}\" #Dateinput>\r\n\r\n <owl-date-time [pickerType]=\"getPickerType(options.pickerType)\" (afterPickerClosed)=\"checkIsPickerInFilter()\"\r\n [startView]=\"startView\" [firstDayOfWeek]=\"options.firstDayOfWeek\" [hour12Timer]=\"options.hour12Timer\"\r\n #dt1></owl-date-time>\r\n <!--icon-->\r\n <span class=\"copy-clipboard\" [owlDateTimeTrigger]=\"dt1\">\r\n <span class=\"svg-icon\">\r\n <svg id=\"Group_356\" data-name=\"Group 356\" xmlns=\"http://www.w3.org/2000/svg\" width=\"15\" height=\"15\" viewBox=\"0\r\n 0 48 48\">\r\n <path id=\"Path_6737\" data-name=\"Path 6737\" d=\"M11.583,1a1,1,0,0,0-2,0V5.7h2Z\"></path>\r\n <path id=\"Path_6738\" data-name=\"Path 6738\" d=\"M38.417,1a1,1,0,0,0-2,0V5.7h2Z\"></path>\r\n <path id=\"Path_6739\" data-name=\"Path 6739\"\r\n d=\"M0,43.146C0,45.822,1.826,48,4.07,48H43.928C46.174,48,48,45.822,48,43.146V17.121H0Z\" fill=\"#d5d5d5\">\r\n </path>\r\n <path id=\"Path_6740\" data-name=\"Path 6740\"\r\n d=\"M43.929,5.7H38.417v5.512a1,1,0,1,1-2,0V5.7H11.583v5.512a1,1,0,1,1-2,0V5.7H4.07C1.826,5.7,0,7.877,0,10.555v4.566H48V10.555C48,7.877,46.174,5.7,43.929,5.7Z\"\r\n fill=\"#595959\"></path>\r\n </svg>\r\n </span>\r\n </span>\r\n </div>\r\n <!-- readonly -->\r\n <div *ngIf=\"options.isReadonly\">\r\n <span class=\"readonly-view\">{{options.value ? (options.value|date:'MMM d, y, h:mm a') :\r\n translateByKey('NA')}}</span>\r\n </div>\r\n </div>\r\n <div class=\"subtext-container\" *ngIf=\"!options.isReadonly\">\r\n <!-- labelDescription-->\r\n <div class=\"bbsf-control-desc\" *ngIf=\"options.labelDescription!=null\">{{options.labelDescription}}</div>\r\n <!-- requiredText-->\r\n <div class=\"bbsf-validation\" *ngIf=\"(datePickerFormControl.invalid &&\r\n datePickerFormControl.touched)\">\r\n {{getErrorValidation(datePickerFormControl.errors|keyvalue)}}\r\n </div>\r\n </div>\r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched\r\n )||(group.untouched&&group.invalid&&group.dirty) \">{{resetError()}}</div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type:
|
|
203
|
+
], ngImport: i0, template: "<div class=\"form-group bbsf-control bbsf-datetime-picker\" [formGroup]=\"group\">\r\n <div [ngClass]=\"(options.viewType==1)?'bbsf-vertical':'bbsf-horizontal'\">\r\n <!--label-->\r\n <label *ngIf=\"!options.hideLabel\" class=\"bbsf-label\r\n {{options.labelExtraClasses}}\">\r\n {{options.labelValue}}\r\n <!--Asterisk-->\r\n <span *ngIf=\"((options.showAsterisk&&options.isRequired)||(options.isRequired))&&!options.isReadonly\"\r\n class=\"text-danger\" aria-required=\"true\">*</span>\r\n </label>\r\n <div *ngIf=\"!options.isReadonly\" class=\"bbsf-input-container\">\r\n <!--input-->\r\n <input autocomplete=\"off\" [readonly]=\"true\" (dateTimeChange)=\"onDateSelect($event)\" [dir]=\"textDir\" class=\"form-control bnsights-control\r\n {{options.extraClasses}} \" [ngClass]=\"(options.viewType==1)?'':'col-md-9'\" aria-describedby=\"email-error\"\r\n aria-invalid=\"true\" formControlName=\"{{options.name}}\" [owlDateTime]=\"dt1\" [owlDateTimeTrigger]=\"dt1\"\r\n [class.is-invalid]=\"datePickerFormControl.invalid &&\r\n datePickerFormControl.touched\" [min]=\"options.startDate\" [max]=\"options.endDate\"\r\n [hour12Timer]=\"options.hour12Timer\" [selectMode]=\"getSelectMode(options.selectMode)\"\r\n placeholder=\"{{options.placeholder}}\" id=\"{{options.name}}\" #Dateinput>\r\n\r\n <owl-date-time [pickerType]=\"getPickerType(options.pickerType)\" (afterPickerClosed)=\"checkIsPickerInFilter()\"\r\n [startView]=\"startView\" [firstDayOfWeek]=\"options.firstDayOfWeek\" [hour12Timer]=\"options.hour12Timer\"\r\n #dt1></owl-date-time>\r\n <!--icon-->\r\n <span class=\"copy-clipboard\" [owlDateTimeTrigger]=\"dt1\">\r\n <span class=\"svg-icon\">\r\n <svg id=\"Group_356\" data-name=\"Group 356\" xmlns=\"http://www.w3.org/2000/svg\" width=\"15\" height=\"15\" viewBox=\"0\r\n 0 48 48\">\r\n <path id=\"Path_6737\" data-name=\"Path 6737\" d=\"M11.583,1a1,1,0,0,0-2,0V5.7h2Z\"></path>\r\n <path id=\"Path_6738\" data-name=\"Path 6738\" d=\"M38.417,1a1,1,0,0,0-2,0V5.7h2Z\"></path>\r\n <path id=\"Path_6739\" data-name=\"Path 6739\"\r\n d=\"M0,43.146C0,45.822,1.826,48,4.07,48H43.928C46.174,48,48,45.822,48,43.146V17.121H0Z\" fill=\"#d5d5d5\">\r\n </path>\r\n <path id=\"Path_6740\" data-name=\"Path 6740\"\r\n d=\"M43.929,5.7H38.417v5.512a1,1,0,1,1-2,0V5.7H11.583v5.512a1,1,0,1,1-2,0V5.7H4.07C1.826,5.7,0,7.877,0,10.555v4.566H48V10.555C48,7.877,46.174,5.7,43.929,5.7Z\"\r\n fill=\"#595959\"></path>\r\n </svg>\r\n </span>\r\n </span>\r\n </div>\r\n <!-- readonly -->\r\n <div *ngIf=\"options.isReadonly\">\r\n <span class=\"readonly-view\">{{options.value ? (options.value|date:'MMM d, y, h:mm a') :\r\n translateByKey('NA')}}</span>\r\n </div>\r\n </div>\r\n <div class=\"subtext-container\" *ngIf=\"!options.isReadonly\">\r\n <!-- labelDescription-->\r\n <div class=\"bbsf-control-desc\" *ngIf=\"options.labelDescription!=null\">{{options.labelDescription}}</div>\r\n <!-- requiredText-->\r\n <div class=\"bbsf-validation\" *ngIf=\"(datePickerFormControl.invalid &&\r\n datePickerFormControl.touched)\">\r\n {{getErrorValidation(datePickerFormControl.errors|keyvalue)}}\r\n </div>\r\n </div>\r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched\r\n )||(group.untouched&&group.invalid&&group.dirty) \">{{resetError()}}</div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i7.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { kind: "directive", type: i8.NativeElementInjectorDirective, selector: "[ngModel], [formControl], [formControlName]" }, { kind: "directive", type: i5.OwlDateTimeTriggerDirective, selector: "[owlDateTimeTrigger]", inputs: ["owlDateTimeTrigger", "disabled"] }, { kind: "directive", type: i5.OwlDateTimeInputDirective, selector: "input[owlDateTime]", inputs: ["required", "owlDateTime", "owlDateTimeFilter", "_disabled", "min", "max", "selectMode", "rangeSeparator", "value", "values"], outputs: ["dateTimeChange", "dateTimeInput"], exportAs: ["owlDateTimeInput"] }, { kind: "component", type: i5.OwlDateTimeComponent, selector: "owl-date-time", inputs: ["backdropClass", "panelClass", "startAt", "endAt", "pickerType", "pickerMode", "disabled", "opened", "scrollStrategy"], outputs: ["afterPickerClosed", "beforePickerOpen", "afterPickerOpen", "yearSelected", "monthSelected", "dateSelected"], exportAs: ["owlDateTime"] }, { kind: "pipe", type: i6.DatePipe, name: "date" }, { kind: "pipe", type: i6.KeyValuePipe, name: "keyvalue" }] }); }
|
|
204
204
|
}
|
|
205
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
205
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: DateInputComponent, decorators: [{
|
|
206
206
|
type: Component,
|
|
207
207
|
args: [{ selector: 'BBSF-DateTimePicker', providers: [
|
|
208
208
|
{
|
|
209
209
|
provide: OwlDateTimeIntl,
|
|
210
210
|
useClass: DefaultIntl
|
|
211
211
|
}
|
|
212
|
-
], template: "<div class=\"form-group bbsf-control bbsf-datetime-picker\" [formGroup]=\"group\">\r\n <div [ngClass]=\"(options.viewType==1)?'bbsf-vertical':'bbsf-horizontal'\">\r\n <!--label-->\r\n <label *ngIf=\"!options.hideLabel\" class=\"bbsf-label\r\n {{options.labelExtraClasses}}\">\r\n {{options.labelValue}}\r\n <!--Asterisk-->\r\n <span *ngIf=\"((options.showAsterisk&&options.isRequired)||(options.isRequired))&&!options.isReadonly\"\r\n class=\"text-danger\" aria-required=\"true\">*</span>\r\n </label>\r\n <div *ngIf=\"!options.isReadonly\" class=\"bbsf-input-container\">\r\n <!--input-->\r\n <input autocomplete=\"off\" [readonly]=\"true\" (dateTimeChange)=\"onDateSelect($event)\" [dir]=\"textDir\" class=\"form-control bnsights-control\r\n {{options.extraClasses}} \" [ngClass]=\"(options.viewType==1)?'':'col-md-9'\" aria-describedby=\"email-error\"\r\n aria-invalid=\"true\" formControlName=\"{{options.name}}\" [owlDateTime]=\"dt1\" [owlDateTimeTrigger]=\"dt1\"\r\n [class.is-invalid]=\"datePickerFormControl.invalid &&\r\n datePickerFormControl.touched\" [min]=\"options.startDate\" [max]=\"options.endDate\"\r\n [hour12Timer]=\"options.hour12Timer\" [selectMode]=\"getSelectMode(options.selectMode)\"\r\n placeholder=\"{{options.placeholder}}\" id=\"{{options.name}}\" #Dateinput>\r\n\r\n <owl-date-time [pickerType]=\"getPickerType(options.pickerType)\" (afterPickerClosed)=\"checkIsPickerInFilter()\"\r\n [startView]=\"startView\" [firstDayOfWeek]=\"options.firstDayOfWeek\" [hour12Timer]=\"options.hour12Timer\"\r\n #dt1></owl-date-time>\r\n <!--icon-->\r\n <span class=\"copy-clipboard\" [owlDateTimeTrigger]=\"dt1\">\r\n <span class=\"svg-icon\">\r\n <svg id=\"Group_356\" data-name=\"Group 356\" xmlns=\"http://www.w3.org/2000/svg\" width=\"15\" height=\"15\" viewBox=\"0\r\n 0 48 48\">\r\n <path id=\"Path_6737\" data-name=\"Path 6737\" d=\"M11.583,1a1,1,0,0,0-2,0V5.7h2Z\"></path>\r\n <path id=\"Path_6738\" data-name=\"Path 6738\" d=\"M38.417,1a1,1,0,0,0-2,0V5.7h2Z\"></path>\r\n <path id=\"Path_6739\" data-name=\"Path 6739\"\r\n d=\"M0,43.146C0,45.822,1.826,48,4.07,48H43.928C46.174,48,48,45.822,48,43.146V17.121H0Z\" fill=\"#d5d5d5\">\r\n </path>\r\n <path id=\"Path_6740\" data-name=\"Path 6740\"\r\n d=\"M43.929,5.7H38.417v5.512a1,1,0,1,1-2,0V5.7H11.583v5.512a1,1,0,1,1-2,0V5.7H4.07C1.826,5.7,0,7.877,0,10.555v4.566H48V10.555C48,7.877,46.174,5.7,43.929,5.7Z\"\r\n fill=\"#595959\"></path>\r\n </svg>\r\n </span>\r\n </span>\r\n </div>\r\n <!-- readonly -->\r\n <div *ngIf=\"options.isReadonly\">\r\n <span class=\"readonly-view\">{{options.value ? (options.value|date:'MMM d, y, h:mm a') :\r\n translateByKey('NA')}}</span>\r\n </div>\r\n </div>\r\n <div class=\"subtext-container\" *ngIf=\"!options.isReadonly\">\r\n <!-- labelDescription-->\r\n <div class=\"bbsf-control-desc\" *ngIf=\"options.labelDescription!=null\">{{options.labelDescription}}</div>\r\n <!-- requiredText-->\r\n <div class=\"bbsf-validation\" *ngIf=\"(datePickerFormControl.invalid &&\r\n datePickerFormControl.touched)\">\r\n {{getErrorValidation(datePickerFormControl.errors|keyvalue)}}\r\n </div>\r\n </div>\r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched\r\n )||(group.untouched&&group.invalid&&group.dirty) \">{{resetError()}}</div>\r\n</div>\r\n" }]
|
|
212
|
+
], standalone: false, template: "<div class=\"form-group bbsf-control bbsf-datetime-picker\" [formGroup]=\"group\">\r\n <div [ngClass]=\"(options.viewType==1)?'bbsf-vertical':'bbsf-horizontal'\">\r\n <!--label-->\r\n <label *ngIf=\"!options.hideLabel\" class=\"bbsf-label\r\n {{options.labelExtraClasses}}\">\r\n {{options.labelValue}}\r\n <!--Asterisk-->\r\n <span *ngIf=\"((options.showAsterisk&&options.isRequired)||(options.isRequired))&&!options.isReadonly\"\r\n class=\"text-danger\" aria-required=\"true\">*</span>\r\n </label>\r\n <div *ngIf=\"!options.isReadonly\" class=\"bbsf-input-container\">\r\n <!--input-->\r\n <input autocomplete=\"off\" [readonly]=\"true\" (dateTimeChange)=\"onDateSelect($event)\" [dir]=\"textDir\" class=\"form-control bnsights-control\r\n {{options.extraClasses}} \" [ngClass]=\"(options.viewType==1)?'':'col-md-9'\" aria-describedby=\"email-error\"\r\n aria-invalid=\"true\" formControlName=\"{{options.name}}\" [owlDateTime]=\"dt1\" [owlDateTimeTrigger]=\"dt1\"\r\n [class.is-invalid]=\"datePickerFormControl.invalid &&\r\n datePickerFormControl.touched\" [min]=\"options.startDate\" [max]=\"options.endDate\"\r\n [hour12Timer]=\"options.hour12Timer\" [selectMode]=\"getSelectMode(options.selectMode)\"\r\n placeholder=\"{{options.placeholder}}\" id=\"{{options.name}}\" #Dateinput>\r\n\r\n <owl-date-time [pickerType]=\"getPickerType(options.pickerType)\" (afterPickerClosed)=\"checkIsPickerInFilter()\"\r\n [startView]=\"startView\" [firstDayOfWeek]=\"options.firstDayOfWeek\" [hour12Timer]=\"options.hour12Timer\"\r\n #dt1></owl-date-time>\r\n <!--icon-->\r\n <span class=\"copy-clipboard\" [owlDateTimeTrigger]=\"dt1\">\r\n <span class=\"svg-icon\">\r\n <svg id=\"Group_356\" data-name=\"Group 356\" xmlns=\"http://www.w3.org/2000/svg\" width=\"15\" height=\"15\" viewBox=\"0\r\n 0 48 48\">\r\n <path id=\"Path_6737\" data-name=\"Path 6737\" d=\"M11.583,1a1,1,0,0,0-2,0V5.7h2Z\"></path>\r\n <path id=\"Path_6738\" data-name=\"Path 6738\" d=\"M38.417,1a1,1,0,0,0-2,0V5.7h2Z\"></path>\r\n <path id=\"Path_6739\" data-name=\"Path 6739\"\r\n d=\"M0,43.146C0,45.822,1.826,48,4.07,48H43.928C46.174,48,48,45.822,48,43.146V17.121H0Z\" fill=\"#d5d5d5\">\r\n </path>\r\n <path id=\"Path_6740\" data-name=\"Path 6740\"\r\n d=\"M43.929,5.7H38.417v5.512a1,1,0,1,1-2,0V5.7H11.583v5.512a1,1,0,1,1-2,0V5.7H4.07C1.826,5.7,0,7.877,0,10.555v4.566H48V10.555C48,7.877,46.174,5.7,43.929,5.7Z\"\r\n fill=\"#595959\"></path>\r\n </svg>\r\n </span>\r\n </span>\r\n </div>\r\n <!-- readonly -->\r\n <div *ngIf=\"options.isReadonly\">\r\n <span class=\"readonly-view\">{{options.value ? (options.value|date:'MMM d, y, h:mm a') :\r\n translateByKey('NA')}}</span>\r\n </div>\r\n </div>\r\n <div class=\"subtext-container\" *ngIf=\"!options.isReadonly\">\r\n <!-- labelDescription-->\r\n <div class=\"bbsf-control-desc\" *ngIf=\"options.labelDescription!=null\">{{options.labelDescription}}</div>\r\n <!-- requiredText-->\r\n <div class=\"bbsf-validation\" *ngIf=\"(datePickerFormControl.invalid &&\r\n datePickerFormControl.touched)\">\r\n {{getErrorValidation(datePickerFormControl.errors|keyvalue)}}\r\n </div>\r\n </div>\r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched\r\n )||(group.untouched&&group.invalid&&group.dirty) \">{{resetError()}}</div>\r\n</div>\r\n" }]
|
|
213
213
|
}], ctorParameters: () => [{ type: i1.OnPagingFiltersChangeService }, { type: i2.ControlUtility }, { type: i3.ControlContainer, decorators: [{
|
|
214
214
|
type: Optional
|
|
215
215
|
}] }, { type: i3.FormGroupDirective }, { type: i4.UtilityService }, { type: i4.ControlValidationService }, { type: i5.DateTimeAdapter }], propDecorators: { group: [{
|
|
@@ -221,4 +221,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
221
221
|
}], onChange: [{
|
|
222
222
|
type: Output
|
|
223
223
|
}] } });
|
|
224
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZVRpbWVQaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1jb250cm9scy9zcmMvbGliL2NvbnRyb2xzL0RhdGVUaW1lUGlja2VyL0RhdGVUaW1lUGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtY29udHJvbHMvc3JjL2xpYi9jb250cm9scy9EYXRlVGltZVBpY2tlci9EYXRlVGltZVBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBb0UsTUFBTSxnQkFBZ0IsQ0FBQztBQUczSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUczRCxPQUFPLEVBQWlDLGVBQWUsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRXhHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFbkUsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDOzs7Ozs7Ozs7O0FBYTVCLE1BQU0sT0FBTyxrQkFBa0I7YUFDdEIsMkJBQXNCLEdBQUcsSUFBSSxBQUFQLENBQVE7SUFFckMsWUFBb0IsZUFBNkMsRUFBVSxjQUE4QixFQUFzQixnQkFBa0MsRUFBUyxvQkFBd0MsRUFBVSxjQUE4QixFQUFVLHdCQUFrRCxFQUFVLGVBQXFDO1FBQWpWLG9CQUFlLEdBQWYsZUFBZSxDQUE4QjtRQUFVLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUFzQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQVMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFvQjtRQUFVLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUFVLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFBVSxvQkFBZSxHQUFmLGVBQWUsQ0FBc0I7UUFPM1YsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHeEMscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBQ2xDLG9CQUFlLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLHlCQUFvQixHQUFHLEVBQUUsQ0FBQztRQUMxQixvQkFBZSxHQUFvQixJQUFJLENBQUM7UUFDeEMsY0FBUyxHQUFZLEtBQUssQ0FBQztRQXNEM0IsWUFBWTtRQUdaLGVBQVUsR0FBRyxHQUFHLEVBQUU7WUFDaEIsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDcEQsQ0FBQyxDQUFDO1FBZ0ZGLGlDQUE0QixHQUFHLEdBQUcsRUFBRTtZQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRTtnQkFDM0UsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUNELElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUM1RixJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDckMsT0FBTyxJQUFJLENBQUM7YUFDYjtpQkFDSTtnQkFDSCxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDckMsT0FBTyxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsQ0FBQzthQUNqQztRQUNILENBQUMsQ0FBQztRQUVGLGlDQUE0QixHQUFHLEdBQUcsRUFBRTtZQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRTtnQkFDM0UsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUNELElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUM1RixJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDbEQsT0FBTyxJQUFJLENBQUM7YUFDYjtpQkFDSTtnQkFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxDQUFDO2FBQ25DO1FBQ0gsQ0FBQyxDQUFDO1FBZUYsNkJBQXdCLEdBQUcsR0FBRyxFQUFFO1lBQzlCLElBQUksQ0FBQyxjQUFjLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9HLENBQUMsQ0FBQztRQUNGLDBCQUFxQixHQUFHLEdBQUcsRUFBRTtZQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1RyxDQUFDLENBQUM7UUFDRiwyQkFBc0IsR0FBRyxDQUFDLGdCQUFnQixFQUFFLEVBQUU7WUFDNUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLGVBQWUsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2pILENBQUMsQ0FBQztRQUNGLHdCQUFtQixHQUFHLENBQUMsZ0JBQWdCLEVBQUUsRUFBRTtZQUN6QyxJQUFJLENBQUMsY0FBYyxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFDOUcsQ0FBQyxDQUFDO1FBQ0YsWUFBTyxHQUFHLEdBQUcsRUFBRTtZQUNiLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQzFELENBQUMsQ0FBQztRQS9NQSxrQkFBa0IsQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDcEUsQ0FBQztJQWdCRCxnQkFBZ0I7SUFDaEIsUUFBUTtRQUVOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLElBQUksY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqTCxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLElBQUksU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBRSxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBaUIsQ0FBQztRQUU5Six1RUFBdUU7UUFDdkUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNsRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztRQUNyRCxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV4RCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUM1QyxJQUFJLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDO1lBQ2hELEtBQUssSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBRyxXQUFXLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO2dCQUN2RCxNQUFNLFVBQVUsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3RDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsQ0FBQzthQUNwRDtTQUNGO1FBRUQsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVU7WUFDekIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWpELElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxJQUFJLEVBQUU7WUFDOUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBR3hGLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVO1lBQ3pCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUV2QyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMseUJBQXlCLEVBQUU7WUFDMUMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLHlCQUF5QixDQUFDLEVBQUU7Z0JBQzFELElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO2dCQUM5RSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQzthQUM3QjtTQUNGO1FBRUQsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDL0QsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDckQsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDL0IsQ0FBQyxDQUFDLENBQUM7SUFFTCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxjQUFjLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFRRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRUQsa0JBQWtCLENBQUMsU0FBUztRQUMxQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRTtZQUMvQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztTQUMvQjtRQUNELE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyx5QkFBeUIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUYsQ0FBQztJQUVELGdCQUFnQixDQUFDLFlBQVk7UUFDM0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsYUFBYSxDQUFDLElBQVk7UUFDeEIsSUFBSSxLQUFLLEdBQUksVUFBVSxDQUFDLElBQUksQ0FBWSxDQUFDO1FBQ3pDLE9BQU8sS0FBSyxDQUFDLFdBQVcsRUFBOEIsQ0FBQztJQUN6RCxDQUFDO0lBRUQsYUFBYSxDQUFDLElBQVk7UUFDeEIsSUFBSSxLQUFLLEdBQUksVUFBVSxDQUFDLElBQUksQ0FBWSxDQUFDO1FBQ3pDLE9BQU8sS0FBSyxDQUFDLFdBQVcsRUFBOEIsQ0FBQztJQUN6RCxDQUFDO0lBRUQsWUFBWSxDQUFDLElBQVk7UUFDdkIsSUFBSSxJQUFJLElBQUksQ0FBQztZQUNYLE9BQU8sWUFBWSxDQUFDO2FBQ2pCO1lBQ0gsTUFBTSxLQUFLLEdBQUksU0FBUyxDQUFDLElBQUksQ0FBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3hELE9BQU8sS0FBSyxDQUFDO1NBQ2Q7SUFDSCxDQUFDO0lBRUQsWUFBWSxDQUFDLElBQVM7UUFDcEIsSUFBSSxDQUFDLElBQUk7WUFDUCxPQUFPO1FBRVQsSUFBSSxTQUFTLEdBQVEsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTFDLG9GQUFvRjtRQUNwRixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxJQUFJLFVBQVUsQ0FBQyxLQUFLLEVBQUU7WUFDL0MsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO2dCQUN0RCx5RkFBeUY7Z0JBQ3pGLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQzthQUNqRjtZQUNELFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQ3hCOztZQUVDLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBRW5FLDBFQUEwRTtRQUUxRSxJQUFJLENBQUMscUJBQXFCLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEQsSUFBSSxhQUFhLEdBQUcsU0FBUyxDQUFDO1FBQzlCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUU7WUFDbkcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUMxRztRQUNELDBDQUEwQztRQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxhQUFhLENBQUM7UUFDbkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELG9CQUFvQjtRQUNsQixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDO1FBQzNELE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsWUFBWSxDQUFDO1FBQ3RFLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNqQyxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsQ0FBQztZQUN0RSxJQUFJLENBQUMsZUFBZSxDQUFDLHNCQUFzQixFQUFFLENBQUM7UUFDaEQsQ0FBQyxDQUFDLENBQUM7UUFDSCxjQUFjLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzdCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLENBQUM7WUFDNUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLHNCQUFzQixFQUFFLENBQUM7UUFDdEQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBOEJELHFCQUFxQjtRQUNuQixJQUFJLElBQUksQ0FBQyx3QkFBd0IsRUFBRTtZQUNqQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ3hDO0lBQ0gsQ0FBQztJQUVELGlCQUFpQjtJQUVqQixjQUFjLENBQUMsR0FBVztRQUN4QixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkQsQ0FBQzsrR0FuTVUsa0JBQWtCO21HQUFsQixrQkFBa0IsdUxBUGxCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGVBQWU7Z0JBQ3hCLFFBQVEsRUFBRSxXQUFXO2FBQ3RCO1NBQ0YsMEJDekJILDAvR0EwREE7OzRGRC9CYSxrQkFBa0I7a0JBVjlCLFNBQVM7K0JBQ0UscUJBQXFCLGFBRXBCO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxlQUFlOzRCQUN4QixRQUFRLEVBQUUsV0FBVzt5QkFDdEI7cUJBQ0Y7OzBCQUsyRyxRQUFROzRLQUkzRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLHdCQUF3QjtzQkFBaEMsS0FBSztnQkFDSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBPcHRpb25hbCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMsIEZvcm1Hcm91cCwgQWJzdHJhY3RDb250cm9sLCBGb3JtR3JvdXBEaXJlY3RpdmUsIENvbnRyb2xDb250YWluZXIgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IERhdGVQaWNrZXJPcHRpb25zIH0gZnJvbSAnLi4vLi4vU2hhcmVkL01vZGVscy9EYXRlUGlja2VyT3B0aW9ucyc7XHJcbmltcG9ydCB7IENvbnRyb2xVdGlsaXR5IH0gZnJvbSAnLi4vLi4vU2hhcmVkL3NlcnZpY2VzL0NvbnRyb2xVdGlsaXR5JztcclxuaW1wb3J0IHsgUGlja2VyVHlwZSB9IGZyb20gJy4uLy4uL1NoYXJlZC9FbnVtcy9QaWNrZXJUeXBlJztcclxuaW1wb3J0IHsgU3RhcnRWaWV3IH0gZnJvbSAnLi4vLi4vU2hhcmVkL0VudW1zL1N0YXJ0Vmlldyc7XHJcbmltcG9ydCB7IFNlbGVjdE1vZGUgfSBmcm9tICcuLi8uLi9TaGFyZWQvRW51bXMvU2VsZWN0TW9kZSc7XHJcbmltcG9ydCB7IE9uUGFnaW5nRmlsdGVyc0NoYW5nZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9TaGFyZWQvc2VydmljZXMvT25QYWdpbmdGaWx0ZXJzQ2hhbmdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsaWRhdGlvblNlcnZpY2UsIFV0aWxpdHlTZXJ2aWNlIH0gZnJvbSAnQGJuc2lnaHRzL2Jic2YtdXRpbGl0aWVzJztcclxuaW1wb3J0IHsgRGF0ZVRpbWVBZGFwdGVyLCBEYXRlVmlld1R5cGUsIE93bERhdGVUaW1lSW50bCB9IGZyb20gJ0BkYW5pZWxtb25jYWRhL2FuZ3VsYXItZGF0ZXRpbWUtcGlja2VyJztcclxuaW1wb3J0ICogYXMgZGF0ZVRpbWVDbGFzcyBmcm9tICdAZGFuaWVsbW9uY2FkYS9hbmd1bGFyLWRhdGV0aW1lLXBpY2tlcic7XHJcbmltcG9ydCB7IERlZmF1bHRJbnRsIH0gZnJvbSAnLi4vLi4vU2hhcmVkL2RlZmF1bHRfaW50bCc7XHJcbmltcG9ydCB7IEZvcmNlRGlyZWN0aW9uIH0gZnJvbSAnLi4vLi4vU2hhcmVkL0VudW1zL0ZvcmNlRGlyZWN0aW9uJztcclxuaW1wb3J0IHsgRGlyZWN0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xyXG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdCQlNGLURhdGVUaW1lUGlja2VyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vRGF0ZVRpbWVQaWNrZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBPd2xEYXRlVGltZUludGwsXHJcbiAgICAgIHVzZUNsYXNzOiBEZWZhdWx0SW50bFxyXG4gICAgfVxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXRlSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHN0YXRpYyBjb250cm9sQ29udGFpbmVyU3RhdGljID0gbnVsbDtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBvbkNoYW5nZVNlcnZpY2U6IE9uUGFnaW5nRmlsdGVyc0NoYW5nZVNlcnZpY2UsIHByaXZhdGUgY29udHJvbFV0aWxpdHk6IENvbnRyb2xVdGlsaXR5LCBAT3B0aW9uYWwoKSBwcml2YXRlIGNvbnRyb2xDb250YWluZXI6IENvbnRyb2xDb250YWluZXIsIHB1YmxpYyBEYXRlSW5wdXRDb250cm9sSG9zdDogRm9ybUdyb3VwRGlyZWN0aXZlLCBwcml2YXRlIHV0aWxpdHlTZXJ2aWNlOiBVdGlsaXR5U2VydmljZSwgcHJpdmF0ZSBjb250cm9sVmFsaWRhdGlvblNlcnZpY2U6IENvbnRyb2xWYWxpZGF0aW9uU2VydmljZSwgcHJpdmF0ZSBkYXRlVGltZUFkYXB0ZXI6IERhdGVUaW1lQWRhcHRlcjxhbnk+KSB7XHJcbiAgICBEYXRlSW5wdXRDb21wb25lbnQuY29udHJvbENvbnRhaW5lclN0YXRpYyA9IHRoaXMuY29udHJvbENvbnRhaW5lcjtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIGdyb3VwOiBGb3JtR3JvdXA7XHJcbiAgQElucHV0KCkgb3B0aW9uczogRGF0ZVBpY2tlck9wdGlvbnM7XHJcbiAgQElucHV0KCkgRHJvcGRvd25UZW1wbGF0ZVZhcmlhYmxlOiBhbnk7XHJcbiAgQE91dHB1dCgpIG9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBkYXRlUGlja2VyRm9ybUNvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcclxuICBtYXJrQWxsQXNUb3VjaGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgdmFsaWRhdGlvblJ1bGVzID0gW107XHJcbiAgdmFsaWRhdGlvblJ1bGVzQXN5bmMgPSBbXTtcclxuICBjb21wYXJlZENvbnRyb2w6IEFic3RyYWN0Q29udHJvbCA9IG51bGw7XHJcbiAgZGF0ZUVycm9yOiBib29sZWFuID0gZmFsc2U7XHJcbiAgdGV4dERpcjogRGlyZWN0aW9uO1xyXG4gIHN0YXJ0VmlldzogRGF0ZVZpZXdUeXBlO1xyXG5cclxuICAvLyNyZWdpb24gZXZlbnRzXHJcbiAgbmdPbkluaXQoKSB7XHJcblxyXG4gICAgdGhpcy50ZXh0RGlyID0gdGhpcy5vcHRpb25zLmZvcmNlRGlyZWN0aW9uID8gKHRoaXMub3B0aW9ucy5mb3JjZURpcmVjdGlvbiA9PSBGb3JjZURpcmVjdGlvbi5BcmFiaWMgPyAncnRsJyA6ICdsdHInKSA6IChsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnbGFuZ3VhZ2UnKSA9PSAnYXInID8gJ3J0bCcgOiAnbHRyJyk7XHJcbiAgICB0aGlzLnN0YXJ0VmlldyA9ICh0aGlzLm9wdGlvbnMuc3RhcnRWaWV3ID09IFN0YXJ0Vmlldy5NdWx0aVllYXIgPyAnbXVsdGkteWVhcicgOiAoU3RhcnRWaWV3W3RoaXMub3B0aW9ucy5zdGFydFZpZXddIGFzIHN0cmluZykudG9Mb3dlckNhc2UoKSkgYXMgRGF0ZVZpZXdUeXBlO1xyXG5cclxuICAgIC8vIFVwZGF0ZSB0aGUgRGF0ZVRpbWVBZGFwdGVyIExhbmd1YWdlIHdpdGggdGhlIGN1cnJlbnQgdGhyZWFkIGxhbmdhdWdlXHJcbiAgICB0aGlzLmRhdGVUaW1lQWRhcHRlci5zZXRMb2NhbGUodGhpcy51dGlsaXR5U2VydmljZS5nZXRDdXJyZW50TGFuZ3VhZ2UoKSA9PSBcImFyXCIgPyBcImFyXCIgOiBcImVuLVVLXCIpO1xyXG4gICAgdGhpcy5jb250cm9sVmFsaWRhdGlvblNlcnZpY2UuaXNDcmVhdGVkQmVmb3IgPSBmYWxzZTtcclxuICAgIHRoaXMuZ3JvdXAuYWRkQ29udHJvbCh0aGlzLm9wdGlvbnMubmFtZSwgbmV3IEZvcm1Db250cm9sKCcnKSk7XHJcbiAgICB0aGlzLmRhdGVQaWNrZXJGb3JtQ29udHJvbCA9IHRoaXMuZ3JvdXAuY29udHJvbHNbdGhpcy5vcHRpb25zLm5hbWVdO1xyXG4gICAgdGhpcy5kYXRlUGlja2VyRm9ybUNvbnRyb2wuc2V0VmFsdWUodGhpcy5vcHRpb25zLnZhbHVlKTtcclxuXHJcbiAgICBpZiAodGhpcy5vcHRpb25zLmN1c3RvbVZhbGlkYXRpb24ubGVuZ3RoID4gMCkge1xyXG4gICAgICBsZXQgVmFsaWRhdGlvbnMgPSB0aGlzLm9wdGlvbnMuY3VzdG9tVmFsaWRhdGlvbjtcclxuICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IFZhbGlkYXRpb25zLmxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgICAgIGNvbnN0IFZhbGlkYXRpb24gPSBWYWxpZGF0aW9uc1tpbmRleF07XHJcbiAgICAgICAgdGhpcy52YWxpZGF0aW9uUnVsZXMucHVzaChWYWxpZGF0aW9uLmZ1bmN0aW9uQm9keSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5vcHRpb25zLmlzUmVxdWlyZWQpXHJcbiAgICAgIHRoaXMudmFsaWRhdGlvblJ1bGVzLnB1c2goVmFsaWRhdG9ycy5yZXF1aXJlZCk7XHJcblxyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5sYWJlbEtleSAhPSBudWxsICYmIHRoaXMub3B0aW9ucy5sYWJlbEtleSAhPSBcIlwiKVxyXG4gICAgICB0aGlzLm9wdGlvbnMubGFiZWxWYWx1ZSA9IHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZSh0aGlzLm9wdGlvbnMubGFiZWxLZXkpO1xyXG5cclxuXHJcbiAgICBpZiAodGhpcy5vcHRpb25zLmlzRGlzYWJsZWQpXHJcbiAgICAgIHRoaXMuZGF0ZVBpY2tlckZvcm1Db250cm9sLmRpc2FibGUoKTtcclxuXHJcbiAgICBpZiAodGhpcy5vcHRpb25zLnN0YXJ0Q29udHJvbFRvQ29tcGFyZVdpdGgpIHtcclxuICAgICAgaWYgKHRoaXMuZ3JvdXAuZ2V0KHRoaXMub3B0aW9ucy5zdGFydENvbnRyb2xUb0NvbXBhcmVXaXRoKSkge1xyXG4gICAgICAgIHRoaXMuY29tcGFyZWRDb250cm9sID0gdGhpcy5ncm91cC5nZXQodGhpcy5vcHRpb25zLnN0YXJ0Q29udHJvbFRvQ29tcGFyZVdpdGgpO1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaWJlRGF0ZUNoYW5nZXMoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZGF0ZVBpY2tlckZvcm1Db250cm9sLnNldFZhbGlkYXRvcnModGhpcy52YWxpZGF0aW9uUnVsZXMpO1xyXG4gICAgdGhpcy5kYXRlUGlja2VyRm9ybUNvbnRyb2wuc2V0QXN5bmNWYWxpZGF0b3JzKHRoaXMudmFsaWRhdGlvblJ1bGVzQXN5bmMpO1xyXG4gICAgdGhpcy5EYXRlSW5wdXRDb250cm9sSG9zdC5uZ1N1Ym1pdC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XHJcbiAgICAgIHRoaXMuZ3JvdXAubWFya0FsbEFzVG91Y2hlZCgpO1xyXG4gICAgICB0aGlzLm1hcmtBbGxBc1RvdWNoZWQgPSB0cnVlO1xyXG4gICAgfSk7XHJcblxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb250cm9sVXRpbGl0eS5zZXRBdHRyaWJ1dGVGb3JDb250cm9sKHRoaXMub3B0aW9ucyk7XHJcbiAgfVxyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxuXHJcbiAgcmVzZXRFcnJvciA9ICgpID0+IHtcclxuICAgIHRoaXMuY29udHJvbFZhbGlkYXRpb25TZXJ2aWNlLnJlbW92ZUdsb2JhbEVycm9yKCk7XHJcbiAgfTtcclxuXHJcbiAgc2hvd0dsb2JhbEVycm9yKCkge1xyXG4gICAgdGhpcy5jb250cm9sVXRpbGl0eS5zaG93R2xvYmFsRXJyb3IoKTtcclxuICB9XHJcblxyXG4gIGdldEVycm9yVmFsaWRhdGlvbihFcnJvckxpc3QpIHtcclxuICAgIGlmICh0aGlzLm1hcmtBbGxBc1RvdWNoZWQgJiYgdGhpcy5ncm91cC5pbnZhbGlkKSB7XHJcbiAgICAgIHRoaXMuc2hvd0dsb2JhbEVycm9yKCk7XHJcbiAgICAgIHRoaXMubWFya0FsbEFzVG91Y2hlZCA9IGZhbHNlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuY29udHJvbFV0aWxpdHkuZ2V0RXJyb3JWYWxpZGF0aW9uTWFzc2FnZShFcnJvckxpc3QsIHRoaXMuZ3JvdXAsIHRoaXMub3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBjb3B5SW5wdXRNZXNzYWdlKGlucHV0RWxlbWVudCkge1xyXG4gICAgdGhpcy5jb250cm9sVXRpbGl0eS5Db3B5SW5wdXRNZXNzYWdlKGlucHV0RWxlbWVudCk7XHJcbiAgfVxyXG5cclxuICBnZXRTZWxlY3RNb2RlKHR5cGU6IG51bWJlcikge1xyXG4gICAgbGV0IFZhbHVlID0gKFNlbGVjdE1vZGVbdHlwZV0gYXMgc3RyaW5nKTtcclxuICAgIHJldHVybiBWYWx1ZS50b0xvd2VyQ2FzZSgpIGFzIGRhdGVUaW1lQ2xhc3MuU2VsZWN0TW9kZTtcclxuICB9XHJcblxyXG4gIGdldFBpY2tlclR5cGUodHlwZTogbnVtYmVyKSB7XHJcbiAgICBsZXQgVmFsdWUgPSAoUGlja2VyVHlwZVt0eXBlXSBhcyBzdHJpbmcpO1xyXG4gICAgcmV0dXJuIFZhbHVlLnRvTG93ZXJDYXNlKCkgYXMgZGF0ZVRpbWVDbGFzcy5QaWNrZXJUeXBlO1xyXG4gIH1cclxuXHJcbiAgZ2V0U3RhcnRWaWV3KHR5cGU6IG51bWJlcikge1xyXG4gICAgaWYgKHR5cGUgPT0gMylcclxuICAgICAgcmV0dXJuICdtdWx0aS15ZWFyJztcclxuICAgIGVsc2Uge1xyXG4gICAgICBjb25zdCBWYWx1ZSA9IChTdGFydFZpZXdbdHlwZV0gYXMgc3RyaW5nKS50b0xvd2VyQ2FzZSgpO1xyXG4gICAgICByZXR1cm4gVmFsdWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkRhdGVTZWxlY3QoaXRlbTogYW55KSB7XHJcbiAgICBpZiAoIWl0ZW0pXHJcbiAgICAgIHJldHVybjtcclxuXHJcbiAgICBsZXQgZGF0ZVZhbHVlOiBhbnkgPSBuZXcgRGF0ZShpdGVtLnZhbHVlKTtcclxuXHJcbiAgICAvLyB2YXIgdHpPZmZzZXQgPSAobmV3IERhdGUoKSkuZ2V0VGltZXpvbmVPZmZzZXQoKSAqIDYwMDAwOyAvL29mZnNldCBpbiBtaWxsaXNlY29uZHNcclxuICAgIGlmICh0aGlzLm9wdGlvbnMuc2VsZWN0TW9kZSA9PSBTZWxlY3RNb2RlLlJhbmdlKSB7XHJcbiAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBpdGVtLnZhbHVlLmxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgICAgIC8vIGl0ZW0udmFsdWVbaW5kZXhdID0gbmV3IERhdGUoaXRlbS52YWx1ZVtpbmRleF0gLSB0ek9mZnNldCkudG9JU09TdHJpbmcoKS5zbGljZSgwLCAtMSk7XHJcbiAgICAgICAgaXRlbS52YWx1ZVtpbmRleF0gPSBtb21lbnQoaXRlbS52YWx1ZVtpbmRleF0pLmZvcm1hdCgnWVlZWS1NTS1ERFRISDptbTpzcy5TU1MnKTtcclxuICAgICAgfVxyXG4gICAgICBkYXRlVmFsdWUgPSBpdGVtLnZhbHVlO1xyXG4gICAgfVxyXG4gICAgZWxzZVxyXG4gICAgICBkYXRlVmFsdWUgPSBtb21lbnQoaXRlbS52YWx1ZSkuZm9ybWF0KCdZWVlZLU1NLUREVEhIOm1tOnNzLlNTUycpO1xyXG5cclxuICAgIC8vIERhdGVWYWx1ZSA9IG5ldyBEYXRlKGl0ZW0udmFsdWUgLSB0ek9mZnNldCkudG9JU09TdHJpbmcoKS5zbGljZSgwLCAtMSk7XHJcblxyXG4gICAgdGhpcy5kYXRlUGlja2VyRm9ybUNvbnRyb2wuc2V0VmFsdWUoZGF0ZVZhbHVlKTtcclxuICAgIHRoaXMub25DaGFuZ2VTZXJ2aWNlLkNoYW5nZVZhbHVlKHRoaXMub3B0aW9ucy5uYW1lKTtcclxuICAgIGxldCBvcmlnaW5hbFZhbHVlID0gZGF0ZVZhbHVlO1xyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5wYXRjaEZ1bmN0aW9uICYmIHRoaXMub3B0aW9ucy5wYXRjaFBhdGggJiYgdGhpcy5ncm91cC5nZXQodGhpcy5vcHRpb25zLm5hbWUpLnZhbGlkKSB7XHJcbiAgICAgIHRoaXMuY29udHJvbFV0aWxpdHkucGF0Y2hDb250cm9sVmFsdWUob3JpZ2luYWxWYWx1ZSwgdGhpcy5vcHRpb25zLnBhdGNoRnVuY3Rpb24sIHRoaXMub3B0aW9ucy5wYXRjaFBhdGgpO1xyXG4gICAgfVxyXG4gICAgLy9Vc2UgdGhpcyBsaW5lIHRvIGVuYWJsZSB0d28gd2F5IGJpbmRpbmcuXHJcbiAgICB0aGlzLm9wdGlvbnMudmFsdWUgPSBvcmlnaW5hbFZhbHVlO1xyXG4gICAgdGhpcy5vbkNoYW5nZS5lbWl0KG9yaWdpbmFsVmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgc3Vic2NyaWJlRGF0ZUNoYW5nZXMoKSB7XHJcbiAgICBjb25zdCBzdGFydERhdGVDaGFuZ2VzID0gdGhpcy5jb21wYXJlZENvbnRyb2wudmFsdWVDaGFuZ2VzO1xyXG4gICAgY29uc3QgZW5kRGF0ZUNoYW5nZXMgPSB0aGlzLmdyb3VwLmdldCh0aGlzLm9wdGlvbnMubmFtZSkudmFsdWVDaGFuZ2VzO1xyXG4gICAgc3RhcnREYXRlQ2hhbmdlcy5zdWJzY3JpYmUoc3RhcnQgPT4ge1xyXG4gICAgICB0aGlzLmNvbXBhcmVkQ29udHJvbC5hZGRWYWxpZGF0b3JzKHRoaXMuY2hlY2tJZlN0YXJ0RGF0ZUJlRm9yRW5kRGF0ZSk7XHJcbiAgICAgIHRoaXMuY29tcGFyZWRDb250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgIH0pO1xyXG4gICAgZW5kRGF0ZUNoYW5nZXMuc3Vic2NyaWJlKGVuZCA9PiB7XHJcbiAgICAgIHRoaXMuZGF0ZVBpY2tlckZvcm1Db250cm9sLmFkZFZhbGlkYXRvcnModGhpcy5jaGVja0lmRW5kRGF0ZUFmdGVyU3RhcnREYXRlKTtcclxuICAgICAgdGhpcy5kYXRlUGlja2VyRm9ybUNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBjaGVja0lmRW5kRGF0ZUFmdGVyU3RhcnREYXRlID0gKCkgPT4ge1xyXG4gICAgaWYgKCF0aGlzLmNvbXBhcmVkQ29udHJvbC52YWx1ZSB8fCAhdGhpcy5ncm91cC5nZXQodGhpcy5vcHRpb25zLm5hbWUpLnZhbHVlKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgaWYgKG5ldyBEYXRlKHRoaXMuY29tcGFyZWRDb250cm9sLnZhbHVlKSA8IG5ldyBEYXRlKHRoaXMuZ3JvdXAuZ2V0KHRoaXMub3B0aW9ucy5uYW1lKS52YWx1ZSkpIHtcclxuICAgICAgdGhpcy5jb21wYXJlZENvbnRyb2wuc2V0RXJyb3JzKG51bGwpO1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLmNvbXBhcmVkQ29udHJvbC5zZXRFcnJvcnMobnVsbCk7XHJcbiAgICAgIHJldHVybiB7IEludmFsaWRFbmREYXRlOiB0cnVlIH07XHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgY2hlY2tJZlN0YXJ0RGF0ZUJlRm9yRW5kRGF0ZSA9ICgpID0+IHtcclxuICAgIGlmICghdGhpcy5jb21wYXJlZENvbnRyb2wudmFsdWUgfHwgIXRoaXMuZ3JvdXAuZ2V0KHRoaXMub3B0aW9ucy5uYW1lKS52YWx1ZSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIGlmIChuZXcgRGF0ZSh0aGlzLmNvbXBhcmVkQ29udHJvbC52YWx1ZSkgPCBuZXcgRGF0ZSh0aGlzLmdyb3VwLmdldCh0aGlzLm9wdGlvbnMubmFtZSkudmFsdWUpKSB7XHJcbiAgICAgIHRoaXMuZ3JvdXAuZ2V0KHRoaXMub3B0aW9ucy5uYW1lKS5zZXRFcnJvcnMobnVsbCk7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuZ3JvdXAuZ2V0KHRoaXMub3B0aW9ucy5uYW1lKS5zZXRFcnJvcnMobnVsbCk7XHJcbiAgICAgIHJldHVybiB7IEludmFsaWRTdGFydERhdGU6IHRydWUgfTtcclxuICAgIH1cclxuICB9O1xyXG5cclxuICBjaGVja0lzUGlja2VySW5GaWx0ZXIoKSB7XHJcbiAgICBpZiAodGhpcy5Ecm9wZG93blRlbXBsYXRlVmFyaWFibGUpIHtcclxuICAgICAgdGhpcy5Ecm9wZG93blRlbXBsYXRlVmFyaWFibGUudG9nZ2xlKCk7XHJcbiAgICAgIHRoaXMuRHJvcGRvd25UZW1wbGF0ZVZhcmlhYmxlLnRvZ2dsZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8jcmVnaW9uIGhlbHBlcnNcclxuXHJcbiAgdHJhbnNsYXRlQnlLZXkoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0UmVzb3VyY2VWYWx1ZShrZXkpO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlUmVxdWlyZWRWYWxpZGF0aW9uID0gKCkgPT4ge1xyXG4gICAgdGhpcy5jb250cm9sVXRpbGl0eS5yZW1vdmVSZXF1aXJlZFZhbGlkYXRpb24odGhpcy5kYXRlUGlja2VyRm9ybUNvbnRyb2wsIHRoaXMudmFsaWRhdGlvblJ1bGVzLCB0aGlzLm9wdGlvbnMpO1xyXG4gIH07XHJcbiAgYWRkUmVxdWlyZWRWYWxpZGF0aW9uID0gKCkgPT4ge1xyXG4gICAgdGhpcy5jb250cm9sVXRpbGl0eS5hZGRSZXF1aXJlZFZhbGlkYXRpb24odGhpcy5kYXRlUGlja2VyRm9ybUNvbnRyb2wsIHRoaXMudmFsaWRhdGlvblJ1bGVzLCB0aGlzLm9wdGlvbnMpO1xyXG4gIH07XHJcbiAgcmVtb3ZlQ3VzdG9tVmFsaWRhdGlvbiA9IChjdXN0b21WYWxpZGF0aW9uKSA9PiB7XHJcbiAgICB0aGlzLmNvbnRyb2xVdGlsaXR5LnJlbW92ZUN1c3RvbVZhbGlkYXRpb24odGhpcy5kYXRlUGlja2VyRm9ybUNvbnRyb2wsIHRoaXMudmFsaWRhdGlvblJ1bGVzLCBjdXN0b21WYWxpZGF0aW9uKTtcclxuICB9O1xyXG4gIGFkZEN1c3RvbVZhbGlkYXRpb24gPSAoY3VzdG9tVmFsaWRhdGlvbikgPT4ge1xyXG4gICAgdGhpcy5jb250cm9sVXRpbGl0eS5hZGRDdXN0b21WYWxpZGF0aW9uKHRoaXMuZGF0ZVBpY2tlckZvcm1Db250cm9sLCB0aGlzLnZhbGlkYXRpb25SdWxlcywgY3VzdG9tVmFsaWRhdGlvbik7XHJcbiAgfTtcclxuICBpc1ZhbGlkID0gKCkgPT4ge1xyXG4gICAgdGhpcy5jb250cm9sVXRpbGl0eS5pc1ZhbGlkKHRoaXMuZGF0ZVBpY2tlckZvcm1Db250cm9sKTtcclxuICB9O1xyXG5cclxuICAvLyNlbmRyZWdpb25cclxuXHJcbn1cclxuXHJcblxyXG5cclxuIiwiPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgYmJzZi1jb250cm9sIGJic2YtZGF0ZXRpbWUtcGlja2VyXCIgW2Zvcm1Hcm91cF09XCJncm91cFwiPlxyXG4gIDxkaXYgW25nQ2xhc3NdPVwiKG9wdGlvbnMudmlld1R5cGU9PTEpPydiYnNmLXZlcnRpY2FsJzonYmJzZi1ob3Jpem9udGFsJ1wiPlxyXG4gICAgPCEtLWxhYmVsLS0+XHJcbiAgICA8bGFiZWwgKm5nSWY9XCIhb3B0aW9ucy5oaWRlTGFiZWxcIiBjbGFzcz1cImJic2YtbGFiZWxcclxuICAgICAge3tvcHRpb25zLmxhYmVsRXh0cmFDbGFzc2VzfX1cIj5cclxuICAgICAge3tvcHRpb25zLmxhYmVsVmFsdWV9fVxyXG4gICAgICA8IS0tQXN0ZXJpc2stLT5cclxuICAgICAgPHNwYW4gKm5nSWY9XCIoKG9wdGlvbnMuc2hvd0FzdGVyaXNrJiZvcHRpb25zLmlzUmVxdWlyZWQpfHwob3B0aW9ucy5pc1JlcXVpcmVkKSkmJiFvcHRpb25zLmlzUmVhZG9ubHlcIlxyXG4gICAgICAgIGNsYXNzPVwidGV4dC1kYW5nZXJcIiBhcmlhLXJlcXVpcmVkPVwidHJ1ZVwiPio8L3NwYW4+XHJcbiAgICA8L2xhYmVsPlxyXG4gICAgPGRpdiAqbmdJZj1cIiFvcHRpb25zLmlzUmVhZG9ubHlcIiBjbGFzcz1cImJic2YtaW5wdXQtY29udGFpbmVyXCI+XHJcbiAgICAgIDwhLS1pbnB1dC0tPlxyXG4gICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgW3JlYWRvbmx5XT1cInRydWVcIiAoZGF0ZVRpbWVDaGFuZ2UpPVwib25EYXRlU2VsZWN0KCRldmVudClcIiBbZGlyXT1cInRleHREaXJcIiBjbGFzcz1cImZvcm0tY29udHJvbCBibnNpZ2h0cy1jb250cm9sXHJcbiAgICAgICAge3tvcHRpb25zLmV4dHJhQ2xhc3Nlc319IFwiIFtuZ0NsYXNzXT1cIihvcHRpb25zLnZpZXdUeXBlPT0xKT8nJzonY29sLW1kLTknXCIgYXJpYS1kZXNjcmliZWRieT1cImVtYWlsLWVycm9yXCJcclxuICAgICAgICBhcmlhLWludmFsaWQ9XCJ0cnVlXCIgZm9ybUNvbnRyb2xOYW1lPVwie3tvcHRpb25zLm5hbWV9fVwiIFtvd2xEYXRlVGltZV09XCJkdDFcIiBbb3dsRGF0ZVRpbWVUcmlnZ2VyXT1cImR0MVwiXHJcbiAgICAgICAgW2NsYXNzLmlzLWludmFsaWRdPVwiZGF0ZVBpY2tlckZvcm1Db250cm9sLmludmFsaWQgJiZcclxuICAgICAgICBkYXRlUGlja2VyRm9ybUNvbnRyb2wudG91Y2hlZFwiIFttaW5dPVwib3B0aW9ucy5zdGFydERhdGVcIiBbbWF4XT1cIm9wdGlvbnMuZW5kRGF0ZVwiXHJcbiAgICAgICAgW2hvdXIxMlRpbWVyXT1cIm9wdGlvbnMuaG91cjEyVGltZXJcIiBbc2VsZWN0TW9kZV09XCJnZXRTZWxlY3RNb2RlKG9wdGlvbnMuc2VsZWN0TW9kZSlcIlxyXG4gICAgICAgIHBsYWNlaG9sZGVyPVwie3tvcHRpb25zLnBsYWNlaG9sZGVyfX1cIiBpZD1cInt7b3B0aW9ucy5uYW1lfX1cIiAjRGF0ZWlucHV0PlxyXG5cclxuICAgICAgPG93bC1kYXRlLXRpbWUgW3BpY2tlclR5cGVdPVwiZ2V0UGlja2VyVHlwZShvcHRpb25zLnBpY2tlclR5cGUpXCIgKGFmdGVyUGlja2VyQ2xvc2VkKT1cImNoZWNrSXNQaWNrZXJJbkZpbHRlcigpXCJcclxuICAgICAgICBbc3RhcnRWaWV3XT1cInN0YXJ0Vmlld1wiIFtmaXJzdERheU9mV2Vla109XCJvcHRpb25zLmZpcnN0RGF5T2ZXZWVrXCIgW2hvdXIxMlRpbWVyXT1cIm9wdGlvbnMuaG91cjEyVGltZXJcIlxyXG4gICAgICAgICNkdDE+PC9vd2wtZGF0ZS10aW1lPlxyXG4gICAgICA8IS0taWNvbi0tPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cImNvcHktY2xpcGJvYXJkXCIgW293bERhdGVUaW1lVHJpZ2dlcl09XCJkdDFcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cInN2Zy1pY29uXCI+XHJcbiAgICAgICAgICA8c3ZnIGlkPVwiR3JvdXBfMzU2XCIgZGF0YS1uYW1lPVwiR3JvdXAgMzU2XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTVcIiBoZWlnaHQ9XCIxNVwiIHZpZXdCb3g9XCIwXHJcbiAgICAgICAgICAgIDAgNDggNDhcIj5cclxuICAgICAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzY3MzdcIiBkYXRhLW5hbWU9XCJQYXRoIDY3MzdcIiBkPVwiTTExLjU4MywxYTEsMSwwLDAsMC0yLDBWNS43aDJaXCI+PC9wYXRoPlxyXG4gICAgICAgICAgICA8cGF0aCBpZD1cIlBhdGhfNjczOFwiIGRhdGEtbmFtZT1cIlBhdGggNjczOFwiIGQ9XCJNMzguNDE3LDFhMSwxLDAsMCwwLTIsMFY1LjdoMlpcIj48L3BhdGg+XHJcbiAgICAgICAgICAgIDxwYXRoIGlkPVwiUGF0aF82NzM5XCIgZGF0YS1uYW1lPVwiUGF0aCA2NzM5XCJcclxuICAgICAgICAgICAgICBkPVwiTTAsNDMuMTQ2QzAsNDUuODIyLDEuODI2LDQ4LDQuMDcsNDhINDMuOTI4QzQ2LjE3NCw0OCw0OCw0NS44MjIsNDgsNDMuMTQ2VjE3LjEyMUgwWlwiIGZpbGw9XCIjZDVkNWQ1XCI+XHJcbiAgICAgICAgICAgIDwvcGF0aD5cclxuICAgICAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzY3NDBcIiBkYXRhLW5hbWU9XCJQYXRoIDY3NDBcIlxyXG4gICAgICAgICAgICAgIGQ9XCJNNDMuOTI5LDUuN0gzOC40MTd2NS41MTJhMSwxLDAsMSwxLTIsMFY1LjdIMTEuNTgzdjUuNTEyYTEsMSwwLDEsMS0yLDBWNS43SDQuMDdDMS44MjYsNS43LDAsNy44NzcsMCwxMC41NTV2NC41NjZINDhWMTAuNTU1QzQ4LDcuODc3LDQ2LjE3NCw1LjcsNDMuOTI5LDUuN1pcIlxyXG4gICAgICAgICAgICAgIGZpbGw9XCIjNTk1OTU5XCI+PC9wYXRoPlxyXG4gICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICAgIDwhLS0gcmVhZG9ubHkgLS0+XHJcbiAgICA8ZGl2ICpuZ0lmPVwib3B0aW9ucy5pc1JlYWRvbmx5XCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwicmVhZG9ubHktdmlld1wiPnt7b3B0aW9ucy52YWx1ZSA/IChvcHRpb25zLnZhbHVlfGRhdGU6J01NTSBkLCB5LCBoOm1tIGEnKSA6XHJcbiAgICAgICAgdHJhbnNsYXRlQnlLZXkoJ05BJyl9fTwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJzdWJ0ZXh0LWNvbnRhaW5lclwiICpuZ0lmPVwiIW9wdGlvbnMuaXNSZWFkb25seVwiPlxyXG4gICAgPCEtLSBsYWJlbERlc2NyaXB0aW9uLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYmJzZi1jb250cm9sLWRlc2NcIiAqbmdJZj1cIm9wdGlvbnMubGFiZWxEZXNjcmlwdGlvbiE9bnVsbFwiPnt7b3B0aW9ucy5sYWJlbERlc2NyaXB0aW9ufX08L2Rpdj5cclxuICAgIDwhLS0gcmVxdWlyZWRUZXh0LS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYmJzZi12YWxpZGF0aW9uXCIgKm5nSWY9XCIoZGF0ZVBpY2tlckZvcm1Db250cm9sLmludmFsaWQgJiZcclxuICAgICAgZGF0ZVBpY2tlckZvcm1Db250cm9sLnRvdWNoZWQpXCI+XHJcbiAgICAgIHt7Z2V0RXJyb3JWYWxpZGF0aW9uKGRhdGVQaWNrZXJGb3JtQ29udHJvbC5lcnJvcnN8a2V5dmFsdWUpfX1cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgKm5nSWY9XCIoZ3JvdXAudmFsaWQmJmdyb3VwLmRpcnR5JiZncm91cC50b3VjaGVkXHJcbiAgICApfHwoZ3JvdXAudW50b3VjaGVkJiZncm91cC5pbnZhbGlkJiZncm91cC5kaXJ0eSkgXCI+e3tyZXNldEVycm9yKCl9fTwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
224
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZVRpbWVQaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi1jb250cm9scy9zcmMvbGliL2NvbnRyb2xzL0RhdGVUaW1lUGlja2VyL0RhdGVUaW1lUGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtY29udHJvbHMvc3JjL2xpYi9jb250cm9scy9EYXRlVGltZVBpY2tlci9EYXRlVGltZVBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBb0UsTUFBTSxnQkFBZ0IsQ0FBQztBQUczSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUczRCxPQUFPLEVBQWlDLGVBQWUsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRXhHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFbkUsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDOzs7Ozs7Ozs7O0FBWTVCLE1BQU0sT0FBTyxrQkFBa0I7YUFDdEIsMkJBQXNCLEdBQUcsSUFBSSxBQUFQLENBQVE7SUFFckMsWUFBb0IsZUFBNkMsRUFBVSxjQUE4QixFQUFzQixnQkFBa0MsRUFBUyxvQkFBd0MsRUFBVSxjQUE4QixFQUFVLHdCQUFrRCxFQUFVLGVBQXFDO1FBQWpWLG9CQUFlLEdB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Q0FBQztJQUVELGlCQUFpQjtJQUVqQixjQUFjLENBQUMsR0FBVztRQUN4QixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkQsQ0FBQzs4R0FuTVUsa0JBQWtCO2tHQUFsQixrQkFBa0IsdUxBUmhCO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLGVBQWU7Z0JBQ3hCLFFBQVEsRUFBRSxXQUFXO2FBQ3hCO1NBQ0osMEJDdkJMLDAvR0EwREE7OzJGRGhDYSxrQkFBa0I7a0JBWDlCLFNBQVM7K0JBQ0kscUJBQXFCLGFBRXBCO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxlQUFlOzRCQUN4QixRQUFRLEVBQUUsV0FBVzt5QkFDeEI7cUJBQ0osY0FDVyxLQUFLOzswQkFLeUYsUUFBUTs0S0FJM0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyx3QkFBd0I7c0JBQWhDLEtBQUs7Z0JBQ0ksUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT3B0aW9uYWwsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sLCBWYWxpZGF0b3JzLCBGb3JtR3JvdXAsIEFic3RyYWN0Q29udHJvbCwgRm9ybUdyb3VwRGlyZWN0aXZlLCBDb250cm9sQ29udGFpbmVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBEYXRlUGlja2VyT3B0aW9ucyB9IGZyb20gJy4uLy4uL1NoYXJlZC9Nb2RlbHMvRGF0ZVBpY2tlck9wdGlvbnMnO1xyXG5pbXBvcnQgeyBDb250cm9sVXRpbGl0eSB9IGZyb20gJy4uLy4uL1NoYXJlZC9zZXJ2aWNlcy9Db250cm9sVXRpbGl0eSc7XHJcbmltcG9ydCB7IFBpY2tlclR5cGUgfSBmcm9tICcuLi8uLi9TaGFyZWQvRW51bXMvUGlja2VyVHlwZSc7XHJcbmltcG9ydCB7IFN0YXJ0VmlldyB9IGZyb20gJy4uLy4uL1NoYXJlZC9FbnVtcy9TdGFydFZpZXcnO1xyXG5pbXBvcnQgeyBTZWxlY3RNb2RlIH0gZnJvbSAnLi4vLi4vU2hhcmVkL0VudW1zL1NlbGVjdE1vZGUnO1xyXG5pbXBvcnQgeyBPblBhZ2luZ0ZpbHRlcnNDaGFuZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vU2hhcmVkL3NlcnZpY2VzL09uUGFnaW5nRmlsdGVyc0NoYW5nZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbGlkYXRpb25TZXJ2aWNlLCBVdGlsaXR5U2VydmljZSB9IGZyb20gJ0BibnNpZ2h0cy9iYnNmLXV0aWxpdGllcyc7XHJcbmltcG9ydCB7IERhdGVUaW1lQWRhcHRlciwgRGF0ZVZpZXdUeXBlLCBPd2xEYXRlVGltZUludGwgfSBmcm9tICdAZGFuaWVsbW9uY2FkYS9hbmd1bGFyLWRhdGV0aW1lLXBpY2tlcic7XHJcbmltcG9ydCAqIGFzIGRhdGVUaW1lQ2xhc3MgZnJvbSAnQGRhbmllbG1vbmNhZGEvYW5ndWxhci1kYXRldGltZS1waWNrZXInO1xyXG5pbXBvcnQgeyBEZWZhdWx0SW50bCB9IGZyb20gJy4uLy4uL1NoYXJlZC9kZWZhdWx0X2ludGwnO1xyXG5pbXBvcnQgeyBGb3JjZURpcmVjdGlvbiB9IGZyb20gJy4uLy4uL1NoYXJlZC9FbnVtcy9Gb3JjZURpcmVjdGlvbic7XHJcbmltcG9ydCB7IERpcmVjdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9iaWRpJztcclxuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnQkJTRi1EYXRlVGltZVBpY2tlcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vRGF0ZVRpbWVQaWNrZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICBwcm92aWRlOiBPd2xEYXRlVGltZUludGwsXHJcbiAgICAgICAgICAgIHVzZUNsYXNzOiBEZWZhdWx0SW50bFxyXG4gICAgICAgIH1cclxuICAgIF0sXHJcbiAgICBzdGFuZGFsb25lOiBmYWxzZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGF0ZUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBzdGF0aWMgY29udHJvbENvbnRhaW5lclN0YXRpYyA9IG51bGw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgb25DaGFuZ2VTZXJ2aWNlOiBPblBhZ2luZ0ZpbHRlcnNDaGFuZ2VTZXJ2aWNlLCBwcml2YXRlIGNvbnRyb2xVdGlsaXR5OiBDb250cm9sVXRpbGl0eSwgQE9wdGlvbmFsKCkgcHJpdmF0ZSBjb250cm9sQ29udGFpbmVyOiBDb250cm9sQ29udGFpbmVyLCBwdWJsaWMgRGF0ZUlucHV0Q29udHJvbEhvc3Q6IEZvcm1Hcm91cERpcmVjdGl2ZSwgcHJpdmF0ZSB1dGlsaXR5U2VydmljZTogVXRpbGl0eVNlcnZpY2UsIHByaXZhdGUgY29udHJvbFZhbGlkYXRpb25TZXJ2aWNlOiBDb250cm9sVmFsaWRhdGlvblNlcnZpY2UsIHByaXZhdGUgZGF0ZVRpbWVBZGFwdGVyOiBEYXRlVGltZUFkYXB0ZXI8YW55Pikge1xyXG4gICAgRGF0ZUlucHV0Q29tcG9uZW50LmNvbnRyb2xDb250YWluZXJTdGF0aWMgPSB0aGlzLmNvbnRyb2xDb250YWluZXI7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBncm91cDogRm9ybUdyb3VwO1xyXG4gIEBJbnB1dCgpIG9wdGlvbnM6IERhdGVQaWNrZXJPcHRpb25zO1xyXG4gIEBJbnB1dCgpIERyb3Bkb3duVGVtcGxhdGVWYXJpYWJsZTogYW55O1xyXG4gIEBPdXRwdXQoKSBvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgZGF0ZVBpY2tlckZvcm1Db250cm9sOiBBYnN0cmFjdENvbnRyb2w7XHJcbiAgbWFya0FsbEFzVG91Y2hlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHZhbGlkYXRpb25SdWxlcyA9IFtdO1xyXG4gIHZhbGlkYXRpb25SdWxlc0FzeW5jID0gW107XHJcbiAgY29tcGFyZWRDb250cm9sOiBBYnN0cmFjdENvbnRyb2wgPSBudWxsO1xyXG4gIGRhdGVFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHRleHREaXI6IERpcmVjdGlvbjtcclxuICBzdGFydFZpZXc6IERhdGVWaWV3VHlwZTtcclxuXHJcbiAgLy8jcmVnaW9uIGV2ZW50c1xyXG4gIG5nT25Jbml0KCkge1xyXG5cclxuICAgIHRoaXMudGV4dERpciA9IHRoaXMub3B0aW9ucy5mb3JjZURpcmVjdGlvbiA/ICh0aGlzLm9wdGlvbnMuZm9yY2VEaXJlY3Rpb24gPT0gRm9yY2VEaXJlY3Rpb24uQXJhYmljID8gJ3J0bCcgOiAnbHRyJykgOiAobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmd1YWdlJykgPT0gJ2FyJyA/ICdydGwnIDogJ2x0cicpO1xyXG4gICAgdGhpcy5zdGFydFZpZXcgPSAodGhpcy5vcHRpb25zLnN0YXJ0VmlldyA9PSBTdGFydFZpZXcuTXVsdGlZZWFyID8gJ211bHRpLXllYXInIDogKFN0YXJ0Vmlld1t0aGlzLm9wdGlvbnMuc3RhcnRWaWV3XSBhcyBzdHJpbmcpLnRvTG93ZXJDYXNlKCkpIGFzIERhdGVWaWV3VHlwZTtcclxuXHJcbiAgICAvLyBVcGRhdGUgdGhlIERhdGVUaW1lQWRhcHRlciBMYW5ndWFnZSB3aXRoIHRoZSBjdXJyZW50IHRocmVhZCBsYW5nYXVnZVxyXG4gICAgdGhpcy5kYXRlVGltZUFkYXB0ZXIuc2V0TG9jYWxlKHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0Q3VycmVudExhbmd1YWdlKCkgPT0gXCJhclwiID8gXCJhclwiIDogXCJlbi1VS1wiKTtcclxuICAgIHRoaXMuY29udHJvbFZhbGlkYXRpb25TZXJ2aWNlLmlzQ3JlYXRlZEJlZm9yID0gZmFsc2U7XHJcbiAgICB0aGlzLmdyb3VwLmFkZENvbnRyb2wodGhpcy5vcHRpb25zLm5hbWUsIG5ldyBGb3JtQ29udHJvbCgnJykpO1xyXG4gICAgdGhpcy5kYXRlUGlja2VyRm9ybUNvbnRyb2wgPSB0aGlzLmdyb3VwLmNvbnRyb2xzW3RoaXMub3B0aW9ucy5uYW1lXTtcclxuICAgIHRoaXMuZGF0ZVBpY2tlckZvcm1Db250cm9sLnNldFZhbHVlKHRoaXMub3B0aW9ucy52YWx1ZSk7XHJcblxyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5jdXN0b21WYWxpZGF0aW9uLmxlbmd0aCA+IDApIHtcclxuICAgICAgbGV0IFZhbGlkYXRpb25zID0gdGhpcy5vcHRpb25zLmN1c3RvbVZhbGlkYXRpb247XHJcbiAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBWYWxpZGF0aW9ucy5sZW5ndGg7IGluZGV4KyspIHtcclxuICAgICAgICBjb25zdCBWYWxpZGF0aW9uID0gVmFsaWRhdGlvbnNbaW5kZXhdO1xyXG4gICAgICAgIHRoaXMudmFsaWRhdGlvblJ1bGVzLnB1c2goVmFsaWRhdGlvbi5mdW5jdGlvbkJvZHkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5pc1JlcXVpcmVkKVxyXG4gICAgICB0aGlzLnZhbGlkYXRpb25SdWxlcy5wdXNoKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xyXG5cclxuICAgIGlmICh0aGlzLm9wdGlvbnMubGFiZWxLZXkgIT0gbnVsbCAmJiB0aGlzLm9wdGlvbnMubGFiZWxLZXkgIT0gXCJcIilcclxuICAgICAgdGhpcy5vcHRpb25zLmxhYmVsVmFsdWUgPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUodGhpcy5vcHRpb25zLmxhYmVsS2V5KTtcclxuXHJcblxyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5pc0Rpc2FibGVkKVxyXG4gICAgICB0aGlzLmRhdGVQaWNrZXJGb3JtQ29udHJvbC5kaXNhYmxlKCk7XHJcblxyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5zdGFydENvbnRyb2xUb0NvbXBhcmVXaXRoKSB7XHJcbiAgICAgIGlmICh0aGlzLmdyb3VwLmdldCh0aGlzLm9wdGlvbnMuc3RhcnRDb250cm9sVG9Db21wYXJlV2l0aCkpIHtcclxuICAgICAgICB0aGlzLmNvbXBhcmVkQ29udHJvbCA9IHRoaXMuZ3JvdXAuZ2V0KHRoaXMub3B0aW9ucy5zdGFydENvbnRyb2xUb0NvbXBhcmVXaXRoKTtcclxuICAgICAgICB0aGlzLnN1YnNjcmliZURhdGVDaGFuZ2VzKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmRhdGVQaWNrZXJGb3JtQ29udHJvbC5zZXRWYWxpZGF0b3JzKHRoaXMudmFsaWRhdGlvblJ1bGVzKTtcclxuICAgIHRoaXMuZGF0ZVBpY2tlckZvcm1Db250cm9sLnNldEFzeW5jVmFsaWRhdG9ycyh0aGlzLnZhbGlkYXRpb25SdWxlc0FzeW5jKTtcclxuICAgIHRoaXMuRGF0ZUlucHV0Q29udHJvbEhvc3QubmdTdWJtaXQuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xyXG4gICAgICB0aGlzLmdyb3VwLm1hcmtBbGxBc1RvdWNoZWQoKTtcclxuICAgICAgdGhpcy5tYXJrQWxsQXNUb3VjaGVkID0gdHJ1ZTtcclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY29udHJvbFV0aWxpdHkuc2V0QXR0cmlidXRlRm9yQ29udHJvbCh0aGlzLm9wdGlvbnMpO1xyXG4gIH1cclxuICAvLyNlbmRyZWdpb25cclxuXHJcblxyXG4gIHJlc2V0RXJyb3IgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmNvbnRyb2xWYWxpZGF0aW9uU2VydmljZS5yZW1vdmVHbG9iYWxFcnJvcigpO1xyXG4gIH07XHJcblxyXG4gIHNob3dHbG9iYWxFcnJvcigpIHtcclxuICAgIHRoaXMuY29udHJvbFV0aWxpdHkuc2hvd0dsb2JhbEVycm9yKCk7XHJcbiAgfVxyXG5cclxuICBnZXRFcnJvclZhbGlkYXRpb24oRXJyb3JMaXN0KSB7XHJcbiAgICBpZiAodGhpcy5tYXJrQWxsQXNUb3VjaGVkICYmIHRoaXMuZ3JvdXAuaW52YWxpZCkge1xyXG4gICAgICB0aGlzLnNob3dHbG9iYWxFcnJvcigpO1xyXG4gICAgICB0aGlzLm1hcmtBbGxBc1RvdWNoZWQgPSBmYWxzZTtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmNvbnRyb2xVdGlsaXR5LmdldEVycm9yVmFsaWRhdGlvbk1hc3NhZ2UoRXJyb3JMaXN0LCB0aGlzLmdyb3VwLCB0aGlzLm9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgY29weUlucHV0TWVzc2FnZShpbnB1dEVsZW1lbnQpIHtcclxuICAgIHRoaXMuY29udHJvbFV0aWxpdHkuQ29weUlucHV0TWVzc2FnZShpbnB1dEVsZW1lbnQpO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2VsZWN0TW9kZSh0eXBlOiBudW1iZXIpIHtcclxuICAgIGxldCBWYWx1ZSA9IChTZWxlY3RNb2RlW3R5cGVdIGFzIHN0cmluZyk7XHJcbiAgICByZXR1cm4gVmFsdWUudG9Mb3dlckNhc2UoKSBhcyBkYXRlVGltZUNsYXNzLlNlbGVjdE1vZGU7XHJcbiAgfVxyXG5cclxuICBnZXRQaWNrZXJUeXBlKHR5cGU6IG51bWJlcikge1xyXG4gICAgbGV0IFZhbHVlID0gKFBpY2tlclR5cGVbdHlwZV0gYXMgc3RyaW5nKTtcclxuICAgIHJldHVybiBWYWx1ZS50b0xvd2VyQ2FzZSgpIGFzIGRhdGVUaW1lQ2xhc3MuUGlja2VyVHlwZTtcclxuICB9XHJcblxyXG4gIGdldFN0YXJ0Vmlldyh0eXBlOiBudW1iZXIpIHtcclxuICAgIGlmICh0eXBlID09IDMpXHJcbiAgICAgIHJldHVybiAnbXVsdGkteWVhcic7XHJcbiAgICBlbHNlIHtcclxuICAgICAgY29uc3QgVmFsdWUgPSAoU3RhcnRWaWV3W3R5cGVdIGFzIHN0cmluZykudG9Mb3dlckNhc2UoKTtcclxuICAgICAgcmV0dXJuIFZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25EYXRlU2VsZWN0KGl0ZW06IGFueSkge1xyXG4gICAgaWYgKCFpdGVtKVxyXG4gICAgICByZXR1cm47XHJcblxyXG4gICAgbGV0IGRhdGVWYWx1ZTogYW55ID0gbmV3IERhdGUoaXRlbS52YWx1ZSk7XHJcblxyXG4gICAgLy8gdmFyIHR6T2Zmc2V0ID0gKG5ldyBEYXRlKCkpLmdldFRpbWV6b25lT2Zmc2V0KCkgKiA2MDAwMDsgLy9vZmZzZXQgaW4gbWlsbGlzZWNvbmRzXHJcbiAgICBpZiAodGhpcy5vcHRpb25zLnNlbGVjdE1vZGUgPT0gU2VsZWN0TW9kZS5SYW5nZSkge1xyXG4gICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgaXRlbS52YWx1ZS5sZW5ndGg7IGluZGV4KyspIHtcclxuICAgICAgICAvLyBpdGVtLnZhbHVlW2luZGV4XSA9IG5ldyBEYXRlKGl0ZW0udmFsdWVbaW5kZXhdIC0gdHpPZmZzZXQpLnRvSVNPU3RyaW5nKCkuc2xpY2UoMCwgLTEpO1xyXG4gICAgICAgIGl0ZW0udmFsdWVbaW5kZXhdID0gbW9tZW50KGl0ZW0udmFsdWVbaW5kZXhdKS5mb3JtYXQoJ1lZWVktTU0tRERUSEg6bW06c3MuU1NTJyk7XHJcbiAgICAgIH1cclxuICAgICAgZGF0ZVZhbHVlID0gaXRlbS52YWx1ZTtcclxuICAgIH1cclxuICAgIGVsc2VcclxuICAgICAgZGF0ZVZhbHVlID0gbW9tZW50KGl0ZW0udmFsdWUpLmZvcm1hdCgnWVlZWS1NTS1ERFRISDptbTpzcy5TU1MnKTtcclxuXHJcbiAgICAvLyBEYXRlVmFsdWUgPSBuZXcgRGF0ZShpdGVtLnZhbHVlIC0gdHpPZmZzZXQpLnRvSVNPU3RyaW5nKCkuc2xpY2UoMCwgLTEpO1xyXG5cclxuICAgIHRoaXMuZGF0ZVBpY2tlckZvcm1Db250cm9sLnNldFZhbHVlKGRhdGVWYWx1ZSk7XHJcbiAgICB0aGlzLm9uQ2hhbmdlU2VydmljZS5DaGFuZ2VWYWx1ZSh0aGlzLm9wdGlvbnMubmFtZSk7XHJcbiAgICBsZXQgb3JpZ2luYWxWYWx1ZSA9IGRhdGVWYWx1ZTtcclxuICAgIGlmICh0aGlzLm9wdGlvbnMucGF0Y2hGdW5jdGlvbiAmJiB0aGlzLm9wdGlvbnMucGF0Y2hQYXRoICYmIHRoaXMuZ3JvdXAuZ2V0KHRoaXMub3B0aW9ucy5uYW1lKS52YWxpZCkge1xyXG4gICAgICB0aGlzLmNvbnRyb2xVdGlsaXR5LnBhdGNoQ29udHJvbFZhbHVlKG9yaWdpbmFsVmFsdWUsIHRoaXMub3B0aW9ucy5wYXRjaEZ1bmN0aW9uLCB0aGlzLm9wdGlvbnMucGF0Y2hQYXRoKTtcclxuICAgIH1cclxuICAgIC8vVXNlIHRoaXMgbGluZSB0byBlbmFibGUgdHdvIHdheSBiaW5kaW5nLlxyXG4gICAgdGhpcy5vcHRpb25zLnZhbHVlID0gb3JpZ2luYWxWYWx1ZTtcclxuICAgIHRoaXMub25DaGFuZ2UuZW1pdChvcmlnaW5hbFZhbHVlKTtcclxuICB9XHJcblxyXG4gIHN1YnNjcmliZURhdGVDaGFuZ2VzKCkge1xyXG4gICAgY29uc3Qgc3RhcnREYXRlQ2hhbmdlcyA9IHRoaXMuY29tcGFyZWRDb250cm9sLnZhbHVlQ2hhbmdlcztcclxuICAgIGNvbnN0IGVuZERhdGVDaGFuZ2VzID0gdGhpcy5ncm91cC5nZXQodGhpcy5vcHRpb25zLm5hbWUpLnZhbHVlQ2hhbmdlcztcclxuICAgIHN0YXJ0RGF0ZUNoYW5nZXMuc3Vic2NyaWJlKHN0YXJ0ID0+IHtcclxuICAgICAgdGhpcy5jb21wYXJlZENvbnRyb2wuYWRkVmFsaWRhdG9ycyh0aGlzLmNoZWNrSWZTdGFydERhdGVCZUZvckVuZERhdGUpO1xyXG4gICAgICB0aGlzLmNvbXBhcmVkQ29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICB9KTtcclxuICAgIGVuZERhdGVDaGFuZ2VzLnN1YnNjcmliZShlbmQgPT4ge1xyXG4gICAgICB0aGlzLmRhdGVQaWNrZXJGb3JtQ29udHJvbC5hZGRWYWxpZGF0b3JzKHRoaXMuY2hlY2tJZkVuZERhdGVBZnRlclN0YXJ0RGF0ZSk7XHJcbiAgICAgIHRoaXMuZGF0ZVBpY2tlckZvcm1Db250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgY2hlY2tJZkVuZERhdGVBZnRlclN0YXJ0RGF0ZSA9ICgpID0+IHtcclxuICAgIGlmICghdGhpcy5jb21wYXJlZENvbnRyb2wudmFsdWUgfHwgIXRoaXMuZ3JvdXAuZ2V0KHRoaXMub3B0aW9ucy5uYW1lKS52YWx1ZSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIGlmIChuZXcgRGF0ZSh0aGlzLmNvbXBhcmVkQ29udHJvbC52YWx1ZSkgPCBuZXcgRGF0ZSh0aGlzLmdyb3VwLmdldCh0aGlzLm9wdGlvbnMubmFtZSkudmFsdWUpKSB7XHJcbiAgICAgIHRoaXMuY29tcGFyZWRDb250cm9sLnNldEVycm9ycyhudWxsKTtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5jb21wYXJlZENvbnRyb2wuc2V0RXJyb3JzKG51bGwpO1xyXG4gICAgICByZXR1cm4geyBJbnZhbGlkRW5kRGF0ZTogdHJ1ZSB9O1xyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIGNoZWNrSWZTdGFydERhdGVCZUZvckVuZERhdGUgPSAoKSA9PiB7XHJcbiAgICBpZiAoIXRoaXMuY29tcGFyZWRDb250cm9sLnZhbHVlIHx8ICF0aGlzLmdyb3VwLmdldCh0aGlzLm9wdGlvbnMubmFtZSkudmFsdWUpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICBpZiAobmV3IERhdGUodGhpcy5jb21wYXJlZENvbnRyb2wudmFsdWUpIDwgbmV3IERhdGUodGhpcy5ncm91cC5nZXQodGhpcy5vcHRpb25zLm5hbWUpLnZhbHVlKSkge1xyXG4gICAgICB0aGlzLmdyb3VwLmdldCh0aGlzLm9wdGlvbnMubmFtZSkuc2V0RXJyb3JzKG51bGwpO1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLmdyb3VwLmdldCh0aGlzLm9wdGlvbnMubmFtZSkuc2V0RXJyb3JzKG51bGwpO1xyXG4gICAgICByZXR1cm4geyBJbnZhbGlkU3RhcnREYXRlOiB0cnVlIH07XHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgY2hlY2tJc1BpY2tlckluRmlsdGVyKCkge1xyXG4gICAgaWYgKHRoaXMuRHJvcGRvd25UZW1wbGF0ZVZhcmlhYmxlKSB7XHJcbiAgICAgIHRoaXMuRHJvcGRvd25UZW1wbGF0ZVZhcmlhYmxlLnRvZ2dsZSgpO1xyXG4gICAgICB0aGlzLkRyb3Bkb3duVGVtcGxhdGVWYXJpYWJsZS50b2dnbGUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vI3JlZ2lvbiBoZWxwZXJzXHJcblxyXG4gIHRyYW5zbGF0ZUJ5S2V5KGtleTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldFJlc291cmNlVmFsdWUoa2V5KTtcclxuICB9XHJcblxyXG4gIHJlbW92ZVJlcXVpcmVkVmFsaWRhdGlvbiA9ICgpID0+IHtcclxuICAgIHRoaXMuY29udHJvbFV0aWxpdHkucmVtb3ZlUmVxdWlyZWRWYWxpZGF0aW9uKHRoaXMuZGF0ZVBpY2tlckZvcm1Db250cm9sLCB0aGlzLnZhbGlkYXRpb25SdWxlcywgdGhpcy5vcHRpb25zKTtcclxuICB9O1xyXG4gIGFkZFJlcXVpcmVkVmFsaWRhdGlvbiA9ICgpID0+IHtcclxuICAgIHRoaXMuY29udHJvbFV0aWxpdHkuYWRkUmVxdWlyZWRWYWxpZGF0aW9uKHRoaXMuZGF0ZVBpY2tlckZvcm1Db250cm9sLCB0aGlzLnZhbGlkYXRpb25SdWxlcywgdGhpcy5vcHRpb25zKTtcclxuICB9O1xyXG4gIHJlbW92ZUN1c3RvbVZhbGlkYXRpb24gPSAoY3VzdG9tVmFsaWRhdGlvbikgPT4ge1xyXG4gICAgdGhpcy5jb250cm9sVXRpbGl0eS5yZW1vdmVDdXN0b21WYWxpZGF0aW9uKHRoaXMuZGF0ZVBpY2tlckZvcm1Db250cm9sLCB0aGlzLnZhbGlkYXRpb25SdWxlcywgY3VzdG9tVmFsaWRhdGlvbik7XHJcbiAgfTtcclxuICBhZGRDdXN0b21WYWxpZGF0aW9uID0gKGN1c3RvbVZhbGlkYXRpb24pID0+IHtcclxuICAgIHRoaXMuY29udHJvbFV0aWxpdHkuYWRkQ3VzdG9tVmFsaWRhdGlvbih0aGlzLmRhdGVQaWNrZXJGb3JtQ29udHJvbCwgdGhpcy52YWxpZGF0aW9uUnVsZXMsIGN1c3RvbVZhbGlkYXRpb24pO1xyXG4gIH07XHJcbiAgaXNWYWxpZCA9ICgpID0+IHtcclxuICAgIHRoaXMuY29udHJvbFV0aWxpdHkuaXNWYWxpZCh0aGlzLmRhdGVQaWNrZXJGb3JtQ29udHJvbCk7XHJcbiAgfTtcclxuXHJcbiAgLy8jZW5kcmVnaW9uXHJcblxyXG59XHJcblxyXG5cclxuXHJcbiIsIjxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGJic2YtY29udHJvbCBiYnNmLWRhdGV0aW1lLXBpY2tlclwiIFtmb3JtR3JvdXBdPVwiZ3JvdXBcIj5cclxuICA8ZGl2IFtuZ0NsYXNzXT1cIihvcHRpb25zLnZpZXdUeXBlPT0xKT8nYmJzZi12ZXJ0aWNhbCc6J2Jic2YtaG9yaXpvbnRhbCdcIj5cclxuICAgIDwhLS1sYWJlbC0tPlxyXG4gICAgPGxhYmVsICpuZ0lmPVwiIW9wdGlvbnMuaGlkZUxhYmVsXCIgY2xhc3M9XCJiYnNmLWxhYmVsXHJcbiAgICAgIHt7b3B0aW9ucy5sYWJlbEV4dHJhQ2xhc3Nlc319XCI+XHJcbiAgICAgIHt7b3B0aW9ucy5sYWJlbFZhbHVlfX1cclxuICAgICAgPCEtLUFzdGVyaXNrLS0+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwiKChvcHRpb25zLnNob3dBc3RlcmlzayYmb3B0aW9ucy5pc1JlcXVpcmVkKXx8KG9wdGlvbnMuaXNSZXF1aXJlZCkpJiYhb3B0aW9ucy5pc1JlYWRvbmx5XCJcclxuICAgICAgICBjbGFzcz1cInRleHQtZGFuZ2VyXCIgYXJpYS1yZXF1aXJlZD1cInRydWVcIj4qPC9zcGFuPlxyXG4gICAgPC9sYWJlbD5cclxuICAgIDxkaXYgKm5nSWY9XCIhb3B0aW9ucy5pc1JlYWRvbmx5XCIgY2xhc3M9XCJiYnNmLWlucHV0LWNvbnRhaW5lclwiPlxyXG4gICAgICA8IS0taW5wdXQtLT5cclxuICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZT1cIm9mZlwiIFtyZWFkb25seV09XCJ0cnVlXCIgKGRhdGVUaW1lQ2hhbmdlKT1cIm9uRGF0ZVNlbGVjdCgkZXZlbnQpXCIgW2Rpcl09XCJ0ZXh0RGlyXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgYm5zaWdodHMtY29udHJvbFxyXG4gICAgICAgIHt7b3B0aW9ucy5leHRyYUNsYXNzZXN9fSBcIiBbbmdDbGFzc109XCIob3B0aW9ucy52aWV3VHlwZT09MSk/Jyc6J2NvbC1tZC05J1wiIGFyaWEtZGVzY3JpYmVkYnk9XCJlbWFpbC1lcnJvclwiXHJcbiAgICAgICAgYXJpYS1pbnZhbGlkPVwidHJ1ZVwiIGZvcm1Db250cm9sTmFtZT1cInt7b3B0aW9ucy5uYW1lfX1cIiBbb3dsRGF0ZVRpbWVdPVwiZHQxXCIgW293bERhdGVUaW1lVHJpZ2dlcl09XCJkdDFcIlxyXG4gICAgICAgIFtjbGFzcy5pcy1pbnZhbGlkXT1cImRhdGVQaWNrZXJGb3JtQ29udHJvbC5pbnZhbGlkICYmXHJcbiAgICAgICAgZGF0ZVBpY2tlckZvcm1Db250cm9sLnRvdWNoZWRcIiBbbWluXT1cIm9wdGlvbnMuc3RhcnREYXRlXCIgW21heF09XCJvcHRpb25zLmVuZERhdGVcIlxyXG4gICAgICAgIFtob3VyMTJUaW1lcl09XCJvcHRpb25zLmhvdXIxMlRpbWVyXCIgW3NlbGVjdE1vZGVdPVwiZ2V0U2VsZWN0TW9kZShvcHRpb25zLnNlbGVjdE1vZGUpXCJcclxuICAgICAgICBwbGFjZWhvbGRlcj1cInt7b3B0aW9ucy5wbGFjZWhvbGRlcn19XCIgaWQ9XCJ7e29wdGlvbnMubmFtZX19XCIgI0RhdGVpbnB1dD5cclxuXHJcbiAgICAgIDxvd2wtZGF0ZS10aW1lIFtwaWNrZXJUeXBlXT1cImdldFBpY2tlclR5cGUob3B0aW9ucy5waWNrZXJUeXBlKVwiIChhZnRlclBpY2tlckNsb3NlZCk9XCJjaGVja0lzUGlja2VySW5GaWx0ZXIoKVwiXHJcbiAgICAgICAgW3N0YXJ0Vmlld109XCJzdGFydFZpZXdcIiBbZmlyc3REYXlPZldlZWtdPVwib3B0aW9ucy5maXJzdERheU9mV2Vla1wiIFtob3VyMTJUaW1lcl09XCJvcHRpb25zLmhvdXIxMlRpbWVyXCJcclxuICAgICAgICAjZHQxPjwvb3dsLWRhdGUtdGltZT5cclxuICAgICAgPCEtLWljb24tLT5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJjb3B5LWNsaXBib2FyZFwiIFtvd2xEYXRlVGltZVRyaWdnZXJdPVwiZHQxXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzdmctaWNvblwiPlxyXG4gICAgICAgICAgPHN2ZyBpZD1cIkdyb3VwXzM1NlwiIGRhdGEtbmFtZT1cIkdyb3VwIDM1NlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE1XCIgaGVpZ2h0PVwiMTVcIiB2aWV3Qm94PVwiMFxyXG4gICAgICAgICAgICAwIDQ4IDQ4XCI+XHJcbiAgICAgICAgICAgIDxwYXRoIGlkPVwiUGF0aF82NzM3XCIgZGF0YS1uYW1lPVwiUGF0aCA2NzM3XCIgZD1cIk0xMS41ODMsMWExLDEsMCwwLDAtMiwwVjUuN2gyWlwiPjwvcGF0aD5cclxuICAgICAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzY3MzhcIiBkYXRhLW5hbWU9XCJQYXRoIDY3MzhcIiBkPVwiTTM4LjQxNywxYTEsMSwwLDAsMC0yLDBWNS43aDJaXCI+PC9wYXRoPlxyXG4gICAgICAgICAgICA8cGF0aCBpZD1cIlBhdGhfNjczOVwiIGRhdGEtbmFtZT1cIlBhdGggNjczOVwiXHJcbiAgICAgICAgICAgICAgZD1cIk0wLDQzLjE0NkMwLDQ1LjgyMiwxLjgyNiw0OCw0LjA3LDQ4SDQzLjkyOEM0Ni4xNzQsNDgsNDgsNDUuODIyLDQ4LDQzLjE0NlYxNy4xMjFIMFpcIiBmaWxsPVwiI2Q1ZDVkNVwiPlxyXG4gICAgICAgICAgICA8L3BhdGg+XHJcbiAgICAgICAgICAgIDxwYXRoIGlkPVwiUGF0aF82NzQwXCIgZGF0YS1uYW1lPVwiUGF0aCA2NzQwXCJcclxuICAgICAgICAgICAgICBkPVwiTTQzLjkyOSw1LjdIMzguNDE3djUuNTEyYTEsMSwwLDEsMS0yLDBWNS43SDExLjU4M3Y1LjUxMmExLDEsMCwxLDEtMiwwVjUuN0g0LjA3QzEuODI2LDUuNywwLDcuODc3LDAsMTAuNTU1djQuNTY2SDQ4VjEwLjU1NUM0OCw3Ljg3Nyw0Ni4xNzQsNS43LDQzLjkyOSw1LjdaXCJcclxuICAgICAgICAgICAgICBmaWxsPVwiIzU5NTk1OVwiPjwvcGF0aD5cclxuICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8IS0tIHJlYWRvbmx5IC0tPlxyXG4gICAgPGRpdiAqbmdJZj1cIm9wdGlvbnMuaXNSZWFkb25seVwiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cInJlYWRvbmx5LXZpZXdcIj57e29wdGlvbnMudmFsdWUgPyAob3B0aW9ucy52YWx1ZXxkYXRlOidNTU0gZCwgeSwgaDptbSBhJykgOlxyXG4gICAgICAgIHRyYW5zbGF0ZUJ5S2V5KCdOQScpfX08L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwic3VidGV4dC1jb250YWluZXJcIiAqbmdJZj1cIiFvcHRpb25zLmlzUmVhZG9ubHlcIj5cclxuICAgIDwhLS0gbGFiZWxEZXNjcmlwdGlvbi0tPlxyXG4gICAgPGRpdiBjbGFzcz1cImJic2YtY29udHJvbC1kZXNjXCIgKm5nSWY9XCJvcHRpb25zLmxhYmVsRGVzY3JpcHRpb24hPW51bGxcIj57e29wdGlvbnMubGFiZWxEZXNjcmlwdGlvbn19PC9kaXY+XHJcbiAgICA8IS0tIHJlcXVpcmVkVGV4dC0tPlxyXG4gICAgPGRpdiBjbGFzcz1cImJic2YtdmFsaWRhdGlvblwiICpuZ0lmPVwiKGRhdGVQaWNrZXJGb3JtQ29udHJvbC5pbnZhbGlkICYmXHJcbiAgICAgIGRhdGVQaWNrZXJGb3JtQ29udHJvbC50b3VjaGVkKVwiPlxyXG4gICAgICB7e2dldEVycm9yVmFsaWRhdGlvbihkYXRlUGlja2VyRm9ybUNvbnRyb2wuZXJyb3JzfGtleXZhbHVlKX19XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpuZ0lmPVwiKGdyb3VwLnZhbGlkJiZncm91cC5kaXJ0eSYmZ3JvdXAudG91Y2hlZFxyXG4gICAgKXx8KGdyb3VwLnVudG91Y2hlZCYmZ3JvdXAuaW52YWxpZCYmZ3JvdXAuZGlydHkpIFwiPnt7cmVzZXRFcnJvcigpfX08L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|