myrta-ui 1.1.37 → 1.1.39
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/esm2020/lib/components/form/checkbox-group/checkbox-group.component.mjs +7 -5
- package/esm2020/lib/components/form/input-date-time/input-date-time.component.mjs +1 -1
- package/esm2020/lib/components/form/input-date-time/input-date-time.enum.mjs +1 -1
- package/esm2020/lib/components/form/input-date-time/models/input-date-time.model.mjs +2 -0
- package/esm2020/lib/components/form/input-datepicker/input-datepicker.component.mjs +1 -1
- package/esm2020/lib/components/form/input-datepicker/input-datepicker.enum.mjs +1 -1
- package/esm2020/lib/components/form/input-datepicker/models/input-datepicker.model.mjs +2 -0
- package/esm2020/lib/services/mrx-form-validator/helpers/get-sorting-validations.helper.mjs +2 -2
- package/esm2020/public-api.mjs +4 -1
- package/fesm2015/myrta-ui.mjs +7 -5
- package/fesm2015/myrta-ui.mjs.map +1 -1
- package/fesm2020/myrta-ui.mjs +7 -5
- package/fesm2020/myrta-ui.mjs.map +1 -1
- package/lib/components/form/checkbox-group/checkbox-group.component.d.ts +1 -1
- package/lib/components/form/input-date-time/input-date-time.component.d.ts +2 -1
- package/lib/components/form/input-date-time/input-date-time.enum.d.ts +0 -5
- package/lib/components/form/input-date-time/models/input-date-time.model.d.ts +5 -0
- package/lib/components/form/input-datepicker/input-datepicker.component.d.ts +6 -5
- package/lib/components/form/input-datepicker/input-datepicker.enum.d.ts +0 -5
- package/lib/components/form/input-datepicker/models/input-datepicker.model.d.ts +5 -0
- package/package.json +1 -1
- package/public-api.d.ts +3 -0
|
@@ -18,7 +18,6 @@ import * as i5 from "@angular/common";
|
|
|
18
18
|
export class CheckboxGroupComponent {
|
|
19
19
|
constructor(_detector) {
|
|
20
20
|
this._detector = _detector;
|
|
21
|
-
this._isInit = false;
|
|
22
21
|
this._groupItemsWrapperHeight = 0;
|
|
23
22
|
this._searchValue = '';
|
|
24
23
|
this.list = [];
|
|
@@ -55,6 +54,7 @@ export class CheckboxGroupComponent {
|
|
|
55
54
|
}
|
|
56
55
|
set items(list) {
|
|
57
56
|
this.list = list;
|
|
57
|
+
this._updateModifiedList();
|
|
58
58
|
}
|
|
59
59
|
get items() {
|
|
60
60
|
return this.filteredList;
|
|
@@ -83,11 +83,13 @@ export class CheckboxGroupComponent {
|
|
|
83
83
|
writeValue(selectedValue) {
|
|
84
84
|
if (selectedValue !== null) {
|
|
85
85
|
this.checkedList = selectedValue;
|
|
86
|
-
this.
|
|
87
|
-
this.filteredList = getSortedList(this.innerList, this.sortable);
|
|
88
|
-
this._isInit = true;
|
|
86
|
+
this._updateModifiedList();
|
|
89
87
|
}
|
|
90
88
|
}
|
|
89
|
+
_updateModifiedList() {
|
|
90
|
+
this.innerList = getInnerList(this.list, this.checkedList);
|
|
91
|
+
this.filteredList = getSortedList(this.innerList, this.sortable);
|
|
92
|
+
}
|
|
91
93
|
checkHeightGroupWrapper() {
|
|
92
94
|
this._groupItemsWrapperHeight = this.groupItemsWrapper.nativeElement.scrollHeight;
|
|
93
95
|
}
|
|
@@ -204,4 +206,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
|
|
|
204
206
|
}], modelItemChange: [{
|
|
205
207
|
type: Output
|
|
206
208
|
}] } });
|
|
207
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vY2hlY2tib3gtZ3JvdXAvY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vY2hlY2tib3gtZ3JvdXAvY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsWUFBWSxFQUNaLFVBQVUsRUFBRSxVQUFVLEVBQ3RCLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVsQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7Ozs7QUFrQi9E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QUdVLE9BQU87c0JBQXRCLEtBQUs7Z0JBQ1UsY0FBYztzQkFBN0IsS0FBSztnQkFFTyxLQUFLO3NCQUFqQixLQUFLO2dCQVEwQixpQkFBaUI7c0JBQWhELFNBQVM7dUJBQUMsbUJBQW1CO2dCQUViLE9BQU87c0JBQXZCLE1BQU07Z0JBQ1UsYUFBYTtzQkFBN0IsTUFBTTtnQkFDVSxXQUFXO3NCQUEzQixNQUFNO2dCQUNVLGdCQUFnQjtzQkFBaEMsTUFBTTtnQkFDVSxlQUFlO3NCQUEvQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGZvcndhcmRSZWYsIEluamVjdGFibGUsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENoZWNrYm94R3JvdXBJbm5lckl0ZW0sIENoZWNrYm94R3JvdXBJdGVtLCBDaGVja2JveEdyb3VwVmFsdWVXaXRoSWQgfSBmcm9tICcuL21vZGVscy9jaGVja2JveC1ncm91cC5tb2RlbCc7XHJcbmltcG9ydCB7IGNsb25lRGVlcCB9IGZyb20gJ2xvZGFzaC1lcyc7XHJcbmltcG9ydCB7IGdldFNvcnRlZExpc3QgfSBmcm9tICcuL2hlbHBlcnMvZ2V0LXNvcnRlZC1saXN0JztcclxuaW1wb3J0IHsgZmlsdGVyU2VhcmNoR3JvdXAgfSBmcm9tICcuL2hlbHBlcnMvZmlsdGVyLXNlYXJjaC1ncm91cCc7XHJcbmltcG9ydCB7IGdldEl0ZW1Jbm5lckJ5SWQgfSBmcm9tICcuL2hlbHBlcnMvZ2V0LWl0ZW0tYnktaWQnO1xyXG5pbXBvcnQgeyBjaGFuZ2VJdGVtVmFsdWUsIGNoYW5nZUxpc3RWYWx1ZSB9IGZyb20gJy4vaGVscGVycy9jaGFuZ2UtaXRlbS12YWx1ZSc7XHJcbmltcG9ydCB7IGNoYW5nZUdyb3VwVmFsdWUgfSBmcm9tICcuL2hlbHBlcnMvY2hhbmdlLWdyb3VwLXZhbHVlJztcclxuaW1wb3J0IHsgZ2V0Q2hlY2tlZEl0ZW1zIH0gZnJvbSAnLi9oZWxwZXJzL2dldC1jaGVja2VkLWl0ZW1zJztcclxuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgZ2V0SW5uZXJMaXN0IH0gZnJvbSAnLi9oZWxwZXJzL2dldC1pbm5lci1saXN0LmhlbHBlcic7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogQ2hlY2tib3hHcm91cENvbXBvbmVudFxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21yeC1jaGVja2JveC1ncm91cCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrYm94LWdyb3VwLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jaGVja2JveC1ncm91cC5jb21wb25lbnQubGVzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ2hlY2tib3hHcm91cENvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hlY2tib3hHcm91cENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICBwcml2YXRlIF9pc0luaXQgPSBmYWxzZVxyXG4gIHByaXZhdGUgX2dyb3VwSXRlbXNXcmFwcGVySGVpZ2h0ID0gMFxyXG4gIHByaXZhdGUgX3NlYXJjaFZhbHVlID0gJydcclxuXHJcbiAgcHVibGljIGxpc3Q6IENoZWNrYm94R3JvdXBJdGVtW10gPSBbXVxyXG4gIHB1YmxpYyBpbm5lckxpc3Q6IENoZWNrYm94R3JvdXBJbm5lckl0ZW1bXSA9IFtdXHJcblxyXG4gIHB1YmxpYyBjaGVja2VkTGlzdDogQ2hlY2tib3hHcm91cEl0ZW1bXSA9IFtdXHJcbiAgcHVibGljIGZpbHRlcmVkTGlzdDogQ2hlY2tib3hHcm91cElubmVySXRlbVtdID0gW11cclxuXHJcbiAgLy8gU0FWRSBTVEFURVxyXG4gIHB1YmxpYyB1dWlkOiBzdHJpbmcgPSB1dWlkKClcclxuICBASW5wdXQoKSBwdWJsaWMgZmllbGRzOiBGaWVsZFtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBzY3JvbGxNYXhIZWlnaHQgPSAyMDBcclxuICBASW5wdXQoKSBwdWJsaWMgc2VhcmNoYWJsZSA9IGZhbHNlXHJcbiAgQElucHV0KCkgcHVibGljIHNjcm9sbGFibGUgPSBmYWxzZVxyXG4gIEBJbnB1dCgpIHB1YmxpYyBzb3J0YWJsZSA9IGZhbHNlXHJcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGVuYWJsZU1lc3NhZ2UgPSAn0J3QuNGH0LXQs9C+INC90LUg0L3QsNC50LTQtdC90L4nXHJcbiAgQElucHV0KCkgcHVibGljIHNlYXJjaFBsYWNlaG9sZGVyID0gJydcclxuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tQ2xhc3NlcyA9ICcnO1xyXG5cclxuICAvLyBUT09MVElQXHJcbiAgQElucHV0KCkgdG9vbHRpcCA9ICcnXHJcblxyXG4gIC8vIExBQkVMXHJcbiAgQElucHV0KCkgbGFiZWxUZXh0ID0gJydcclxuICBASW5wdXQoKSBsaW5rVGV4dCA9ICcnXHJcblxyXG4gIC8vIFZBTElEQVRFXHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZE1lc3NhZ2U6IHN0cmluZyB8IHN0cmluZ1tdID0gJyc7XHJcblxyXG4gIEBJbnB1dCgpIHNldCBpdGVtcyhsaXN0OiBDaGVja2JveEdyb3VwSXRlbVtdKSB7XHJcbiAgICB0aGlzLmxpc3QgPSBsaXN0XHJcbiAgfVxyXG5cclxuICBnZXQgaXRlbXMoKTogQ2hlY2tib3hHcm91cElubmVySXRlbVtdIHtcclxuICAgIHJldHVybiB0aGlzLmZpbHRlcmVkTGlzdFxyXG4gIH1cclxuXHJcbiAgQFZpZXdDaGlsZCgnZ3JvdXBJdGVtc1dyYXBwZXInKSBncm91cEl0ZW1zV3JhcHBlciE6IEVsZW1lbnRSZWY7XHJcblxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgY2hhbmdlZDogRXZlbnRFbWl0dGVyPENoZWNrYm94R3JvdXBJdGVtW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxDaGVja2JveEdyb3VwSXRlbVtdPigpO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgY2hhbmdlQ2hlY2tlZDogRXZlbnRFbWl0dGVyPENoZWNrYm94R3JvdXBJdGVtW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxDaGVja2JveEdyb3VwSXRlbVtdPigpO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgbW9kZWxDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDaGVja2JveEdyb3VwVmFsdWVXaXRoSWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxDaGVja2JveEdyb3VwVmFsdWVXaXRoSWQ+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBtb2RlbENoYW5nZUlubmVyOiBFdmVudEVtaXR0ZXI8Q2hlY2tib3hHcm91cFZhbHVlV2l0aElkPiA9IG5ldyBFdmVudEVtaXR0ZXI8Q2hlY2tib3hHcm91cFZhbHVlV2l0aElkPigpO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgbW9kZWxJdGVtQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q2hlY2tib3hHcm91cEl0ZW0+ID0gbmV3IEV2ZW50RW1pdHRlcjxDaGVja2JveEdyb3VwSXRlbT4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmKSB7fVxyXG5cclxuICBwdWJsaWMgZ2V0IGlzU2VhcmNoVmFsdWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9zZWFyY2hWYWx1ZVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBkaXNwbGFjZWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5saXN0LnNvbWUoKGl0ZW06IENoZWNrYm94R3JvdXBJdGVtKSA9PiBpdGVtLml0ZW1zPy5sZW5ndGgpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldEludmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pbnZhbGlkXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldEludmFsaWRNZXNzYWdlKCk6IHN0cmluZyB8IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiB0aGlzLmludmFsaWRNZXNzYWdlXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHsgdGhpcy5jdXN0b21DbGFzc2VzIH1gO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRTaG93U2Nyb2xsKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2dyb3VwSXRlbXNXcmFwcGVySGVpZ2h0ID4gdGhpcy5zY3JvbGxNYXhIZWlnaHRcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0cmFja0J5Rm4oaW5kZXg6IG51bWJlciwgaXRlbTogQ2hlY2tib3hHcm91cElubmVySXRlbSkge1xyXG4gICAgcmV0dXJuIGl0ZW0uaWQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9uQ2hhbmdlID0gKHZhbHVlOiBDaGVja2JveEdyb3VwSXRlbVtdKSA9PiB7fTtcclxuICBwcml2YXRlIG9uVG91Y2hlZCA9ICgpID0+IHt9O1xyXG5cclxuICBwdWJsaWMgd3JpdGVWYWx1ZShzZWxlY3RlZFZhbHVlOiBDaGVja2JveEdyb3VwSXRlbVtdKTogdm9pZCB7XHJcbiAgICBpZiAoc2VsZWN0ZWRWYWx1ZSAhPT0gbnVsbCkge1xyXG4gICAgICB0aGlzLmNoZWNrZWRMaXN0ID0gc2VsZWN0ZWRWYWx1ZVxyXG4gICAgICB0aGlzLmlubmVyTGlzdCA9IGdldElubmVyTGlzdCh0aGlzLmxpc3QsIHRoaXMuY2hlY2tlZExpc3QpXHJcbiAgICAgIHRoaXMuZmlsdGVyZWRMaXN0ID0gZ2V0U29ydGVkTGlzdCh0aGlzLmlubmVyTGlzdCwgdGhpcy5zb3J0YWJsZSlcclxuICAgICAgdGhpcy5faXNJbml0ID0gdHJ1ZVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoZWNrSGVpZ2h0R3JvdXBXcmFwcGVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZ3JvdXBJdGVtc1dyYXBwZXJIZWlnaHQgPSB0aGlzLmdyb3VwSXRlbXNXcmFwcGVyLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSGVpZ2h0XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlQ2hlY2tib3hHcm91cFNlYXJjaFZhbHVlKHNlYXJjaFZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuX3NlYXJjaFZhbHVlID0gc2VhcmNoVmFsdWVcclxuICAgIHRoaXMuZmlsdGVyZWRMaXN0ID0gZmlsdGVyU2VhcmNoR3JvdXAodGhpcy5pbm5lckxpc3QsIHRoaXMuX3NlYXJjaFZhbHVlKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoZWNrYm94Q2hhbmdlZCh7IHZhbHVlLCBpdGVtIH06IHsgdmFsdWU6IGJvb2xlYW4gfCBudWxsOyBpdGVtOiBDaGVja2JveEdyb3VwSW5uZXJJdGVtIH0pIHtcclxuICAgIGNvbnN0IGNsb25lTGlzdDogQ2hlY2tib3hHcm91cElubmVySXRlbVtdID0gY2xvbmVEZWVwKHRoaXMuZmlsdGVyZWRMaXN0KVxyXG4gICAgY29uc3QgZmluZEl0ZW06IENoZWNrYm94R3JvdXBJbm5lckl0ZW0gfCBudWxsID0gZ2V0SXRlbUlubmVyQnlJZChjbG9uZUxpc3QsIGl0ZW0uaWQpXHJcbiAgICBsZXQgY2hhbmdlZEl0ZW06IENoZWNrYm94R3JvdXBJbm5lckl0ZW0gfCBudWxsID0gbnVsbFxyXG5cclxuICAgIGlmIChmaW5kSXRlbSkge1xyXG4gICAgICBjaGFuZ2VkSXRlbSA9IGNoYW5nZUl0ZW1WYWx1ZShmaW5kSXRlbSwgdmFsdWUpXHJcbiAgICAgIGNoYW5nZUdyb3VwVmFsdWUoY2xvbmVMaXN0LCBpdGVtLnBhcmVudElkLCB2YWx1ZSlcclxuICAgICAgZ2V0U29ydGVkTGlzdChjbG9uZUxpc3QsIHRoaXMuc29ydGFibGUpXHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5maWx0ZXJlZExpc3QgPSBjbG9uZUxpc3RcclxuICAgIHRoaXMuY2hlY2tlZExpc3QgPSBnZXRDaGVja2VkSXRlbXMoY2xvbmVMaXN0KVxyXG4gICAgdGhpcy51cGRhdGVWYWx1ZSh0aGlzLmZpbHRlcmVkTGlzdCwgdGhpcy5jaGVja2VkTGlzdClcclxuXHJcbiAgICBpZiAoY2hhbmdlZEl0ZW0pIHtcclxuICAgICAgdGhpcy5tb2RlbEl0ZW1DaGFuZ2UuZW1pdChjaGFuZ2VkSXRlbSlcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLl9kZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKClcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbGVhckZpbHRlcnMoKSB7XHJcbiAgICBjb25zdCBjbG9uZUxpc3Q6IENoZWNrYm94R3JvdXBJbm5lckl0ZW1bXSA9IGNsb25lRGVlcCh0aGlzLmZpbHRlcmVkTGlzdClcclxuXHJcbiAgICBjaGFuZ2VMaXN0VmFsdWUoY2xvbmVMaXN0LCBmYWxzZSlcclxuICAgIGdldFNvcnRlZExpc3QoY2xvbmVMaXN0LCB0aGlzLnNvcnRhYmxlKVxyXG5cclxuICAgIHRoaXMuZmlsdGVyZWRMaXN0ID0gY2xvbmVMaXN0XHJcbiAgICB0aGlzLmNoZWNrZWRMaXN0ID0gZ2V0Q2hlY2tlZEl0ZW1zKGNsb25lTGlzdClcclxuICAgIHRoaXMudXBkYXRlVmFsdWUodGhpcy5maWx0ZXJlZExpc3QsIHRoaXMuY2hlY2tlZExpc3QpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVWYWx1ZShsaXN0OiBDaGVja2JveEdyb3VwSXRlbVtdLCBjaGVja2VkTGlzdDogQ2hlY2tib3hHcm91cEl0ZW1bXSk6IHZvaWQge1xyXG4gICAgdGhpcy5jaGFuZ2VkLmVtaXQoY2hlY2tlZExpc3QpO1xyXG4gICAgdGhpcy5jaGFuZ2VDaGVja2VkLmVtaXQoKVxyXG4gICAgdGhpcy5tb2RlbENoYW5nZS5lbWl0KHt2YWx1ZTogY2hlY2tlZExpc3QsIGlkOiB0aGlzLnV1aWR9KVxyXG4gICAgdGhpcy5tb2RlbENoYW5nZUlubmVyLmVtaXQoe3ZhbHVlOiB0aGlzLmlubmVyTGlzdCwgaWQ6IHRoaXMudXVpZH0pXHJcbiAgICB0aGlzLm9uQ2hhbmdlKGNoZWNrZWRMaXN0KTtcclxuICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtcngtY2hlY2tib3gtZ3JvdXBcIiBbY2xhc3NdPVwiZ2V0Q2xhc3Nlc1wiPlxyXG4gIDxtcngtc2F2ZS1zdGF0ZSBbaWRdPVwidXVpZFwiIFtmaWVsZHNdPVwiZmllbGRzXCIgdHlwZT1cImNoZWNrYm94R3JvdXBcIj48L21yeC1zYXZlLXN0YXRlPlxyXG5cclxuICA8bXJ4LWNoZWNrYm94LWdyb3VwLWhlYWRlclxyXG4gICAgW3NlYXJjaGFibGVdPVwic2VhcmNoYWJsZVwiXHJcbiAgICBbc2VhcmNoUGxhY2Vob2xkZXJdPVwic2VhcmNoUGxhY2Vob2xkZXJcIlxyXG4gICAgW3Rvb2x0aXBdPVwidG9vbHRpcFwiXHJcbiAgICBbbGFiZWxUZXh0XT1cImxhYmVsVGV4dFwiXHJcbiAgICBbbGlua1RleHRdPVwibGlua1RleHRcIlxyXG4gICAgW2NoZWNrZWRJdGVtc0NvdW50XT1cImNoZWNrZWRMaXN0Lmxlbmd0aFwiXHJcbiAgICAodXBkYXRlQ2hlY2tib3hHcm91cFNlYXJjaFZhbHVlKT1cInVwZGF0ZUNoZWNrYm94R3JvdXBTZWFyY2hWYWx1ZSgkZXZlbnQpXCJcclxuICAgIChjbGVhckZpbHRlcnMpPVwiY2xlYXJGaWx0ZXJzKClcIlxyXG4gID48L21yeC1jaGVja2JveC1ncm91cC1oZWFkZXI+XHJcblxyXG4gIDxkaXZcclxuICAgICAgI2dyb3VwSXRlbXNXcmFwcGVyXHJcbiAgICAgICpuZ0lmPVwiZmlsdGVyZWRMaXN0Py5sZW5ndGg7IGVsc2UgZW5hYmxlTWVzc2FnZVRlbXBsYXRlXCJcclxuICAgICAgY2xhc3M9XCJtcngtY2hlY2tib3gtZ3JvdXAtd3JhcHBlclwiXHJcbiAgICAgIFtjbGFzcy5tcngtY2hlY2tib3gtZ3JvdXAtd3JhcHBlci0tc2Nyb2xsYWJsZV09XCJzY3JvbGxhYmxlXCJcclxuICAgICAgW2NsYXNzLi0tYWN0aXZlXT1cImdldFNob3dTY3JvbGxcIlxyXG4gICAgICBbc3R5bGUubWF4LWhlaWdodF09XCJzY3JvbGxhYmxlID8gc2Nyb2xsTWF4SGVpZ2h0ICsgJ3B4JyA6ICdhdXRvJ1wiXHJcbiAgPlxyXG4gICAgPG1yeC1jaGVja2JveC1ncm91cC1pdGVtXHJcbiAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZmlsdGVyZWRMaXN0OyB0cmFja0J5OiB0cmFja0J5Rm47IGxldCBsYXN0ID0gbGFzdFwiXHJcbiAgICAgICAgW2Rpc3BsYWNlZF09XCJkaXNwbGFjZWQgfHwgZmFsc2VcIlxyXG4gICAgICAgIFtpdGVtXT1cIml0ZW1cIlxyXG4gICAgICAgIFtpc0xhc3RdPVwibGFzdFwiXHJcbiAgICAgICAgW2FuaW1hdGlvblRyaWdnZXJdPVwiISFpc1NlYXJjaFZhbHVlXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXHJcbiAgICAgICAgW2ludmFsaWRdPVwiaW52YWxpZFwiXHJcbiAgICAgICAgKGFuaW1hdGlvbkVuZCk9XCJjaGVja0hlaWdodEdyb3VwV3JhcHBlcigpXCJcclxuICAgICAgICAoY2hlY2tib3hDaGFuZ2VkKT1cImNoZWNrYm94Q2hhbmdlZCgkZXZlbnQpXCJcclxuICAgID48L21yeC1jaGVja2JveC1ncm91cC1pdGVtPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8bmctdGVtcGxhdGUgI2VuYWJsZU1lc3NhZ2VUZW1wbGF0ZT5cclxuICAgIDxwIGNsYXNzPVwibXJ4LWNoZWNrYm94LWdyb3VwX19lbXB0eS1tZXNzYWdlXCI+e3sgZW5hYmxlTWVzc2FnZSB9fTwvcD5cclxuICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICA8bXJ4LWVycm9yLW1lc3NhZ2VcclxuICAgICpuZ0lmPVwiZ2V0SW52YWxpZCAmJiBnZXRJbnZhbGlkTWVzc2FnZVwiXHJcbiAgICBbaW52YWxpZE1lc3NhZ2VdPVwiZ2V0SW52YWxpZE1lc3NhZ2VcIlxyXG4gID48L21yeC1lcnJvci1tZXNzYWdlPlxyXG48L2Rpdj5cclxuIl19
|
|
209
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vY2hlY2tib3gtZ3JvdXAvY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vY2hlY2tib3gtZ3JvdXAvY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsWUFBWSxFQUNaLFVBQVUsRUFBRSxVQUFVLEVBQ3RCLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVsQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7Ozs7QUFrQi9E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QUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFHVSxPQUFPO3NCQUF0QixLQUFLO2dCQUNVLGNBQWM7c0JBQTdCLEtBQUs7Z0JBRU8sS0FBSztzQkFBakIsS0FBSztnQkFTMEIsaUJBQWlCO3NCQUFoRCxTQUFTO3VCQUFDLG1CQUFtQjtnQkFFYixPQUFPO3NCQUF2QixNQUFNO2dCQUNVLGFBQWE7c0JBQTdCLE1BQU07Z0JBQ1UsV0FBVztzQkFBM0IsTUFBTTtnQkFDVSxnQkFBZ0I7c0JBQWhDLE1BQU07Z0JBQ1UsZUFBZTtzQkFBL0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBmb3J3YXJkUmVmLCBJbmplY3RhYmxlLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBDaGVja2JveEdyb3VwSW5uZXJJdGVtLCBDaGVja2JveEdyb3VwSXRlbSwgQ2hlY2tib3hHcm91cFZhbHVlV2l0aElkIH0gZnJvbSAnLi9tb2RlbHMvY2hlY2tib3gtZ3JvdXAubW9kZWwnO1xyXG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICdsb2Rhc2gtZXMnO1xyXG5pbXBvcnQgeyBnZXRTb3J0ZWRMaXN0IH0gZnJvbSAnLi9oZWxwZXJzL2dldC1zb3J0ZWQtbGlzdCc7XHJcbmltcG9ydCB7IGZpbHRlclNlYXJjaEdyb3VwIH0gZnJvbSAnLi9oZWxwZXJzL2ZpbHRlci1zZWFyY2gtZ3JvdXAnO1xyXG5pbXBvcnQgeyBnZXRJdGVtSW5uZXJCeUlkIH0gZnJvbSAnLi9oZWxwZXJzL2dldC1pdGVtLWJ5LWlkJztcclxuaW1wb3J0IHsgY2hhbmdlSXRlbVZhbHVlLCBjaGFuZ2VMaXN0VmFsdWUgfSBmcm9tICcuL2hlbHBlcnMvY2hhbmdlLWl0ZW0tdmFsdWUnO1xyXG5pbXBvcnQgeyBjaGFuZ2VHcm91cFZhbHVlIH0gZnJvbSAnLi9oZWxwZXJzL2NoYW5nZS1ncm91cC12YWx1ZSc7XHJcbmltcG9ydCB7IGdldENoZWNrZWRJdGVtcyB9IGZyb20gJy4vaGVscGVycy9nZXQtY2hlY2tlZC1pdGVtcyc7XHJcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJztcclxuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IGdldElubmVyTGlzdCB9IGZyb20gJy4vaGVscGVycy9nZXQtaW5uZXItbGlzdC5oZWxwZXInO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46IENoZWNrYm94R3JvdXBDb21wb25lbnRcclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtcngtY2hlY2tib3gtZ3JvdXAnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGVja2JveC1ncm91cC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50Lmxlc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IENoZWNrYm94R3JvdXBDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENoZWNrYm94R3JvdXBDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XHJcbiAgcHJpdmF0ZSBfZ3JvdXBJdGVtc1dyYXBwZXJIZWlnaHQgPSAwXHJcbiAgcHJpdmF0ZSBfc2VhcmNoVmFsdWUgPSAnJ1xyXG5cclxuICBwdWJsaWMgbGlzdDogQ2hlY2tib3hHcm91cEl0ZW1bXSA9IFtdXHJcbiAgcHVibGljIGlubmVyTGlzdDogQ2hlY2tib3hHcm91cElubmVySXRlbVtdID0gW11cclxuXHJcbiAgcHVibGljIGNoZWNrZWRMaXN0OiBDaGVja2JveEdyb3VwSXRlbVtdID0gW11cclxuICBwdWJsaWMgZmlsdGVyZWRMaXN0OiBDaGVja2JveEdyb3VwSW5uZXJJdGVtW10gPSBbXVxyXG5cclxuICAvLyBTQVZFIFNUQVRFXHJcbiAgcHVibGljIHV1aWQ6IHN0cmluZyA9IHV1aWQoKVxyXG4gIEBJbnB1dCgpIHB1YmxpYyBmaWVsZHM6IEZpZWxkW10gPSBbXTtcclxuXHJcbiAgQElucHV0KCkgcHVibGljIHNjcm9sbE1heEhlaWdodCA9IDIwMFxyXG4gIEBJbnB1dCgpIHB1YmxpYyBzZWFyY2hhYmxlID0gZmFsc2VcclxuICBASW5wdXQoKSBwdWJsaWMgc2Nyb2xsYWJsZSA9IGZhbHNlXHJcbiAgQElucHV0KCkgcHVibGljIHNvcnRhYmxlID0gZmFsc2VcclxuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgZW5hYmxlTWVzc2FnZSA9ICfQndC40YfQtdCz0L4g0L3QtSDQvdCw0LnQtNC10L3QvidcclxuICBASW5wdXQoKSBwdWJsaWMgc2VhcmNoUGxhY2Vob2xkZXIgPSAnJ1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21DbGFzc2VzID0gJyc7XHJcblxyXG4gIC8vIFRPT0xUSVBcclxuICBASW5wdXQoKSB0b29sdGlwID0gJydcclxuXHJcbiAgLy8gTEFCRUxcclxuICBASW5wdXQoKSBsYWJlbFRleHQgPSAnJ1xyXG4gIEBJbnB1dCgpIGxpbmtUZXh0ID0gJydcclxuXHJcbiAgLy8gVkFMSURBVEVcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpbnZhbGlkTWVzc2FnZTogc3RyaW5nIHwgc3RyaW5nW10gPSAnJztcclxuXHJcbiAgQElucHV0KCkgc2V0IGl0ZW1zKGxpc3Q6IENoZWNrYm94R3JvdXBJdGVtW10pIHtcclxuICAgIHRoaXMubGlzdCA9IGxpc3RcclxuICAgIHRoaXMuX3VwZGF0ZU1vZGlmaWVkTGlzdCgpXHJcbiAgfVxyXG5cclxuICBnZXQgaXRlbXMoKTogQ2hlY2tib3hHcm91cElubmVySXRlbVtdIHtcclxuICAgIHJldHVybiB0aGlzLmZpbHRlcmVkTGlzdFxyXG4gIH1cclxuXHJcbiAgQFZpZXdDaGlsZCgnZ3JvdXBJdGVtc1dyYXBwZXInKSBncm91cEl0ZW1zV3JhcHBlciE6IEVsZW1lbnRSZWY7XHJcblxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgY2hhbmdlZDogRXZlbnRFbWl0dGVyPENoZWNrYm94R3JvdXBJdGVtW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxDaGVja2JveEdyb3VwSXRlbVtdPigpO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgY2hhbmdlQ2hlY2tlZDogRXZlbnRFbWl0dGVyPENoZWNrYm94R3JvdXBJdGVtW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxDaGVja2JveEdyb3VwSXRlbVtdPigpO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgbW9kZWxDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDaGVja2JveEdyb3VwVmFsdWVXaXRoSWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxDaGVja2JveEdyb3VwVmFsdWVXaXRoSWQ+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBtb2RlbENoYW5nZUlubmVyOiBFdmVudEVtaXR0ZXI8Q2hlY2tib3hHcm91cFZhbHVlV2l0aElkPiA9IG5ldyBFdmVudEVtaXR0ZXI8Q2hlY2tib3hHcm91cFZhbHVlV2l0aElkPigpO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgbW9kZWxJdGVtQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q2hlY2tib3hHcm91cEl0ZW0+ID0gbmV3IEV2ZW50RW1pdHRlcjxDaGVja2JveEdyb3VwSXRlbT4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmKSB7fVxyXG5cclxuICBwdWJsaWMgZ2V0IGlzU2VhcmNoVmFsdWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9zZWFyY2hWYWx1ZVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBkaXNwbGFjZWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5saXN0LnNvbWUoKGl0ZW06IENoZWNrYm94R3JvdXBJdGVtKSA9PiBpdGVtLml0ZW1zPy5sZW5ndGgpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldEludmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pbnZhbGlkXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldEludmFsaWRNZXNzYWdlKCk6IHN0cmluZyB8IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiB0aGlzLmludmFsaWRNZXNzYWdlXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHsgdGhpcy5jdXN0b21DbGFzc2VzIH1gO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRTaG93U2Nyb2xsKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2dyb3VwSXRlbXNXcmFwcGVySGVpZ2h0ID4gdGhpcy5zY3JvbGxNYXhIZWlnaHRcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0cmFja0J5Rm4oaW5kZXg6IG51bWJlciwgaXRlbTogQ2hlY2tib3hHcm91cElubmVySXRlbSkge1xyXG4gICAgcmV0dXJuIGl0ZW0uaWQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9uQ2hhbmdlID0gKHZhbHVlOiBDaGVja2JveEdyb3VwSXRlbVtdKSA9PiB7fTtcclxuICBwcml2YXRlIG9uVG91Y2hlZCA9ICgpID0+IHt9O1xyXG5cclxuICBwdWJsaWMgd3JpdGVWYWx1ZShzZWxlY3RlZFZhbHVlOiBDaGVja2JveEdyb3VwSXRlbVtdKTogdm9pZCB7XHJcbiAgICBpZiAoc2VsZWN0ZWRWYWx1ZSAhPT0gbnVsbCkge1xyXG4gICAgICB0aGlzLmNoZWNrZWRMaXN0ID0gc2VsZWN0ZWRWYWx1ZVxyXG4gICAgICB0aGlzLl91cGRhdGVNb2RpZmllZExpc3QoKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdXBkYXRlTW9kaWZpZWRMaXN0KCkge1xyXG4gICAgdGhpcy5pbm5lckxpc3QgPSBnZXRJbm5lckxpc3QodGhpcy5saXN0LCB0aGlzLmNoZWNrZWRMaXN0KVxyXG4gICAgdGhpcy5maWx0ZXJlZExpc3QgPSBnZXRTb3J0ZWRMaXN0KHRoaXMuaW5uZXJMaXN0LCB0aGlzLnNvcnRhYmxlKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoZWNrSGVpZ2h0R3JvdXBXcmFwcGVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZ3JvdXBJdGVtc1dyYXBwZXJIZWlnaHQgPSB0aGlzLmdyb3VwSXRlbXNXcmFwcGVyLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSGVpZ2h0XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlQ2hlY2tib3hHcm91cFNlYXJjaFZhbHVlKHNlYXJjaFZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuX3NlYXJjaFZhbHVlID0gc2VhcmNoVmFsdWVcclxuICAgIHRoaXMuZmlsdGVyZWRMaXN0ID0gZmlsdGVyU2VhcmNoR3JvdXAodGhpcy5pbm5lckxpc3QsIHRoaXMuX3NlYXJjaFZhbHVlKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoZWNrYm94Q2hhbmdlZCh7IHZhbHVlLCBpdGVtIH06IHsgdmFsdWU6IGJvb2xlYW4gfCBudWxsOyBpdGVtOiBDaGVja2JveEdyb3VwSW5uZXJJdGVtIH0pIHtcclxuICAgIGNvbnN0IGNsb25lTGlzdDogQ2hlY2tib3hHcm91cElubmVySXRlbVtdID0gY2xvbmVEZWVwKHRoaXMuZmlsdGVyZWRMaXN0KVxyXG4gICAgY29uc3QgZmluZEl0ZW06IENoZWNrYm94R3JvdXBJbm5lckl0ZW0gfCBudWxsID0gZ2V0SXRlbUlubmVyQnlJZChjbG9uZUxpc3QsIGl0ZW0uaWQpXHJcbiAgICBsZXQgY2hhbmdlZEl0ZW06IENoZWNrYm94R3JvdXBJbm5lckl0ZW0gfCBudWxsID0gbnVsbFxyXG5cclxuICAgIGlmIChmaW5kSXRlbSkge1xyXG4gICAgICBjaGFuZ2VkSXRlbSA9IGNoYW5nZUl0ZW1WYWx1ZShmaW5kSXRlbSwgdmFsdWUpXHJcbiAgICAgIGNoYW5nZUdyb3VwVmFsdWUoY2xvbmVMaXN0LCBpdGVtLnBhcmVudElkLCB2YWx1ZSlcclxuICAgICAgZ2V0U29ydGVkTGlzdChjbG9uZUxpc3QsIHRoaXMuc29ydGFibGUpXHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5maWx0ZXJlZExpc3QgPSBjbG9uZUxpc3RcclxuICAgIHRoaXMuY2hlY2tlZExpc3QgPSBnZXRDaGVja2VkSXRlbXMoY2xvbmVMaXN0KVxyXG4gICAgdGhpcy51cGRhdGVWYWx1ZSh0aGlzLmZpbHRlcmVkTGlzdCwgdGhpcy5jaGVja2VkTGlzdClcclxuXHJcbiAgICBpZiAoY2hhbmdlZEl0ZW0pIHtcclxuICAgICAgdGhpcy5tb2RlbEl0ZW1DaGFuZ2UuZW1pdChjaGFuZ2VkSXRlbSlcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLl9kZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKClcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbGVhckZpbHRlcnMoKSB7XHJcbiAgICBjb25zdCBjbG9uZUxpc3Q6IENoZWNrYm94R3JvdXBJbm5lckl0ZW1bXSA9IGNsb25lRGVlcCh0aGlzLmZpbHRlcmVkTGlzdClcclxuXHJcbiAgICBjaGFuZ2VMaXN0VmFsdWUoY2xvbmVMaXN0LCBmYWxzZSlcclxuICAgIGdldFNvcnRlZExpc3QoY2xvbmVMaXN0LCB0aGlzLnNvcnRhYmxlKVxyXG5cclxuICAgIHRoaXMuZmlsdGVyZWRMaXN0ID0gY2xvbmVMaXN0XHJcbiAgICB0aGlzLmNoZWNrZWRMaXN0ID0gZ2V0Q2hlY2tlZEl0ZW1zKGNsb25lTGlzdClcclxuICAgIHRoaXMudXBkYXRlVmFsdWUodGhpcy5maWx0ZXJlZExpc3QsIHRoaXMuY2hlY2tlZExpc3QpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVWYWx1ZShsaXN0OiBDaGVja2JveEdyb3VwSXRlbVtdLCBjaGVja2VkTGlzdDogQ2hlY2tib3hHcm91cEl0ZW1bXSk6IHZvaWQge1xyXG4gICAgdGhpcy5jaGFuZ2VkLmVtaXQoY2hlY2tlZExpc3QpO1xyXG4gICAgdGhpcy5jaGFuZ2VDaGVja2VkLmVtaXQoKVxyXG4gICAgdGhpcy5tb2RlbENoYW5nZS5lbWl0KHt2YWx1ZTogY2hlY2tlZExpc3QsIGlkOiB0aGlzLnV1aWR9KVxyXG4gICAgdGhpcy5tb2RlbENoYW5nZUlubmVyLmVtaXQoe3ZhbHVlOiB0aGlzLmlubmVyTGlzdCwgaWQ6IHRoaXMudXVpZH0pXHJcbiAgICB0aGlzLm9uQ2hhbmdlKGNoZWNrZWRMaXN0KTtcclxuICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtcngtY2hlY2tib3gtZ3JvdXBcIiBbY2xhc3NdPVwiZ2V0Q2xhc3Nlc1wiPlxyXG4gIDxtcngtc2F2ZS1zdGF0ZSBbaWRdPVwidXVpZFwiIFtmaWVsZHNdPVwiZmllbGRzXCIgdHlwZT1cImNoZWNrYm94R3JvdXBcIj48L21yeC1zYXZlLXN0YXRlPlxyXG5cclxuICA8bXJ4LWNoZWNrYm94LWdyb3VwLWhlYWRlclxyXG4gICAgW3NlYXJjaGFibGVdPVwic2VhcmNoYWJsZVwiXHJcbiAgICBbc2VhcmNoUGxhY2Vob2xkZXJdPVwic2VhcmNoUGxhY2Vob2xkZXJcIlxyXG4gICAgW3Rvb2x0aXBdPVwidG9vbHRpcFwiXHJcbiAgICBbbGFiZWxUZXh0XT1cImxhYmVsVGV4dFwiXHJcbiAgICBbbGlua1RleHRdPVwibGlua1RleHRcIlxyXG4gICAgW2NoZWNrZWRJdGVtc0NvdW50XT1cImNoZWNrZWRMaXN0Lmxlbmd0aFwiXHJcbiAgICAodXBkYXRlQ2hlY2tib3hHcm91cFNlYXJjaFZhbHVlKT1cInVwZGF0ZUNoZWNrYm94R3JvdXBTZWFyY2hWYWx1ZSgkZXZlbnQpXCJcclxuICAgIChjbGVhckZpbHRlcnMpPVwiY2xlYXJGaWx0ZXJzKClcIlxyXG4gID48L21yeC1jaGVja2JveC1ncm91cC1oZWFkZXI+XHJcblxyXG4gIDxkaXZcclxuICAgICAgI2dyb3VwSXRlbXNXcmFwcGVyXHJcbiAgICAgICpuZ0lmPVwiZmlsdGVyZWRMaXN0Py5sZW5ndGg7IGVsc2UgZW5hYmxlTWVzc2FnZVRlbXBsYXRlXCJcclxuICAgICAgY2xhc3M9XCJtcngtY2hlY2tib3gtZ3JvdXAtd3JhcHBlclwiXHJcbiAgICAgIFtjbGFzcy5tcngtY2hlY2tib3gtZ3JvdXAtd3JhcHBlci0tc2Nyb2xsYWJsZV09XCJzY3JvbGxhYmxlXCJcclxuICAgICAgW2NsYXNzLi0tYWN0aXZlXT1cImdldFNob3dTY3JvbGxcIlxyXG4gICAgICBbc3R5bGUubWF4LWhlaWdodF09XCJzY3JvbGxhYmxlID8gc2Nyb2xsTWF4SGVpZ2h0ICsgJ3B4JyA6ICdhdXRvJ1wiXHJcbiAgPlxyXG4gICAgPG1yeC1jaGVja2JveC1ncm91cC1pdGVtXHJcbiAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZmlsdGVyZWRMaXN0OyB0cmFja0J5OiB0cmFja0J5Rm47IGxldCBsYXN0ID0gbGFzdFwiXHJcbiAgICAgICAgW2Rpc3BsYWNlZF09XCJkaXNwbGFjZWQgfHwgZmFsc2VcIlxyXG4gICAgICAgIFtpdGVtXT1cIml0ZW1cIlxyXG4gICAgICAgIFtpc0xhc3RdPVwibGFzdFwiXHJcbiAgICAgICAgW2FuaW1hdGlvblRyaWdnZXJdPVwiISFpc1NlYXJjaFZhbHVlXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXHJcbiAgICAgICAgW2ludmFsaWRdPVwiaW52YWxpZFwiXHJcbiAgICAgICAgKGFuaW1hdGlvbkVuZCk9XCJjaGVja0hlaWdodEdyb3VwV3JhcHBlcigpXCJcclxuICAgICAgICAoY2hlY2tib3hDaGFuZ2VkKT1cImNoZWNrYm94Q2hhbmdlZCgkZXZlbnQpXCJcclxuICAgID48L21yeC1jaGVja2JveC1ncm91cC1pdGVtPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8bmctdGVtcGxhdGUgI2VuYWJsZU1lc3NhZ2VUZW1wbGF0ZT5cclxuICAgIDxwIGNsYXNzPVwibXJ4LWNoZWNrYm94LWdyb3VwX19lbXB0eS1tZXNzYWdlXCI+e3sgZW5hYmxlTWVzc2FnZSB9fTwvcD5cclxuICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICA8bXJ4LWVycm9yLW1lc3NhZ2VcclxuICAgICpuZ0lmPVwiZ2V0SW52YWxpZCAmJiBnZXRJbnZhbGlkTWVzc2FnZVwiXHJcbiAgICBbaW52YWxpZE1lc3NhZ2VdPVwiZ2V0SW52YWxpZE1lc3NhZ2VcIlxyXG4gID48L21yeC1lcnJvci1tZXNzYWdlPlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -410,4 +410,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
|
|
|
410
410
|
}], blurred: [{
|
|
411
411
|
type: Output
|
|
412
412
|
}] } });
|
|
413
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS10aW1lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2lucHV0LWRhdGUtdGltZS9pbnB1dC1kYXRlLXRpbWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtZGF0ZS10aW1lL2lucHV0LWRhdGUtdGltZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ1UsdUJBQXVCLEVBQ3RDLFNBQVMsRUFFVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFFTCxNQUFNLEVBRU4sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLGFBQWEsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMxQyxPQUFPLEVBRUwsa0JBQWtCLEVBSW5CLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzdHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFbEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7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LGFBQWE7c0JBQTVCLEtBQUs7Z0JBQ1UsYUFBYTtzQkFBNUIsS0FBSztnQkFFVSxlQUFlO3NCQUE5QixLQUFLO2dCQUVVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBRVUsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxjQUFjO3NCQUE3QixLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBRWtCLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVztnQkFDRSxTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVc7Z0JBRUwsT0FBTztzQkFBdkIsTUFBTTtnQkFDVSxXQUFXO3NCQUEzQixNQUFNO2dCQUNVLE9BQU87c0JBQXZCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBmb3J3YXJkUmVmLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPdXRwdXQsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgQWlyRGF0ZXBpY2tlciBmcm9tICdhaXItZGF0ZXBpY2tlcidcclxuaW1wb3J0IHtcclxuICBFeHRyYVRpbWUsXHJcbiAgSW5wdXREYXRlU2l6ZXNFbnVtLFxyXG4gIElucHV0RGF0ZVNpemVzVHlwZXMsXHJcbiAgSW5wdXREYXRlVGltZVZhbHVlVHlwZXMsXHJcbiAgSW5wdXREYXRlVGltZVZhbHVlV2l0aElkXHJcbn0gZnJvbSAnLi9pbnB1dC1kYXRlLXRpbWUuZW51bSc7XHJcbmltcG9ydCB7IERhdGVNb2RlbCwgVGltZU1vZGVsLCB2YWxpZGF0ZURhdGVNb2RlbCwgdmFsaWRhdGVUaW1lTW9kZWwgfSBmcm9tICcuL2hlbHBlcnMvdmFsaWRhdGUtdmFsdWUtbW9kZWxzJztcclxuaW1wb3J0IHsgZGF0ZU1vZGVsQ29uc3RhbnQsIHRpbWVNb2RlbENvbnN0YW50IH0gZnJvbSAnLi9jb25zdGFudHMvdmFsdWUtbW9kZWxzJztcclxuaW1wb3J0IHsgZGF0ZU1vZGVsVmFsdWVQYXJzZSwgdGltZU1vZGVsVmFsdWVQYXJzZSB9IGZyb20gJy4vaGVscGVycy92YWx1ZS1wYXJzZXInO1xyXG5pbXBvcnQgeyBtYXJrUG9zaXRpb24gfSBmcm9tICcuL2hlbHBlcnMvY3Vyc29yLXBvc2l0aW9uJztcclxuaW1wb3J0IHsgY2xlYW5EYXRlIH0gZnJvbSAnLi9oZWxwZXJzL2NsZWFuLWRhdGUnO1xyXG5pbXBvcnQgeyBmb3JtYXR0aW5nVG9Nb3Njb3dUaW1lem9uZSB9IGZyb20gJy4vaGVscGVycy9mb3JtYXR0aW5nLW1vc2Nvdy10aW1lem9uZSc7XHJcbmltcG9ydCB7IFRpbWV6b25lVHlwZSB9IGZyb20gJy4vZW51bS90aW1lem9uZSc7XHJcbmltcG9ydCB7IGZvcm1hdHRpbmdGcm9tTW9kZWxzIH0gZnJvbSAnLi9oZWxwZXJzL2Zvcm1hdHRpbmctZnJvbS1tb2RlbHMnO1xyXG5pbXBvcnQgZGF5anMgZnJvbSAnZGF5anMnO1xyXG5pbXBvcnQgeyB2NCBhcyB1dWlkdjQgfSBmcm9tICd1dWlkJztcclxuaW1wb3J0IHsgY3JlYXRlUG9wcGVyIH0gZnJvbSAnQHBvcHBlcmpzL2NvcmUnO1xyXG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlc1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtcngtaW5wdXQtZGF0ZS10aW1lJyxcclxuICB0ZW1wbGF0ZVVybDogJ2lucHV0LWRhdGUtdGltZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJ2lucHV0LWRhdGUtdGltZS5jb21wb25lbnRzLmxlc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5wdXREYXRlVGltZUNvbXBvbmVudCksIG11bHRpOiB0cnVlfVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIElucHV0RGF0ZVRpbWVDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0IHtcclxuICBwdWJsaWMgZHQ6IGFueVxyXG4gIHB1YmxpYyB2YWx1ZTogYW55ID0gJyc7XHJcbiAgcHVibGljIGRhdGVNb2RlbDogRGF0ZU1vZGVsID0gZGF0ZU1vZGVsQ29uc3RhbnRcclxuICBwdWJsaWMgdGltZU1vZGVsOiBUaW1lTW9kZWwgPSB0aW1lTW9kZWxDb25zdGFudFxyXG5cclxuICBwdWJsaWMgaW5uZXJJbnZhbGlkID0gZmFsc2U7XHJcbiAgcHVibGljIGlubmVySW52YWxpZE1lc3NhZ2UgPSAnJztcclxuXHJcbiAgLy8gU0FWRSBTVEFURVxyXG4gIHB1YmxpYyB1dWlkOiBzdHJpbmcgPSB1dWlkdjQoKVxyXG4gIEBJbnB1dCgpIHB1YmxpYyBmaWVsZHM6IEZpZWxkW10gPSBbXTtcclxuXHJcbiAgQElucHV0KCkgcHVibGljIHNpemU6IElucHV0RGF0ZVNpemVzVHlwZXMgPSAnbGFyZ2UnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21DbGFzc2VzID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGRhdGVMYWJlbCA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyB0aW1lTGFiZWwgPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgZGF0ZVBsYWNlaG9sZGVyID0gJ9C00LQu0LzQvC7Qs9Cz0LPQsyc7XHJcbiAgQElucHV0KCkgcHVibGljIHRpbWVQbGFjZWhvbGRlciA9ICcwMDowMCc7XHJcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIHJlcXVpcmVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIHRpbWVwaWNrZXIgPSBmYWxzZVxyXG4gIEBJbnB1dCgpIHB1YmxpYyByYW5nZSA9IGZhbHNlXHJcbiAgQElucHV0KCkgcHVibGljIG1pbkRhdGUgPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgbWF4RGF0ZSA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyB0aW1lem9uZTogVGltZXpvbmVUeXBlID0gJ2RlZmF1bHQnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpbmxpbmUgPSBmYWxzZVxyXG4gIEBJbnB1dCgpIHB1YmxpYyBpc01hbnVhbElucHV0ID0gdHJ1ZTtcclxuICBASW5wdXQoKSBwdWJsaWMgYWRkTWluVGltZSA9IGZhbHNlXHJcbiAgQElucHV0KCkgcHVibGljIGFkZE1heFRpbWUgPSBmYWxzZVxyXG4gIEBJbnB1dCgpIHB1YmxpYyBhZGRNaW5UaW1lT2JqITogRXh0cmFUaW1lXHJcbiAgQElucHV0KCkgcHVibGljIGFkZE1heFRpbWVPYmohOiBFeHRyYVRpbWVcclxuXHJcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVWYWxpZGF0ZSA9IGZhbHNlXHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBjb250YWluZXIgPSAnZGl2LnBhZ2Utd3JhcHBlcic7XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBpbnZhbGlkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWRNZXNzYWdlOiBzdHJpbmcgfCBzdHJpbmdbXSA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjaGVja0ludmFsaWQ6IHRydWUgfCBmYWxzZSB8IG51bGwgPSBudWxsO1xyXG5cclxuICBAVmlld0NoaWxkKCdkYXRlSW5wdXQnKSBkYXRlSW5wdXQhOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ3RpbWVJbnB1dCcpIHRpbWVJbnB1dCE6IEVsZW1lbnRSZWY7XHJcblxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgY2hhbmdlZDogRXZlbnRFbWl0dGVyPElucHV0RGF0ZVRpbWVWYWx1ZVR5cGVzPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgcHVibGljIG1vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8SW5wdXREYXRlVGltZVZhbHVlV2l0aElkPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXREYXRlVGltZVZhbHVlV2l0aElkPigpO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgYmx1cnJlZDogRXZlbnRFbWl0dGVyPElucHV0RGF0ZVRpbWVWYWx1ZVdpdGhJZD4gPSBuZXcgRXZlbnRFbWl0dGVyPElucHV0RGF0ZVRpbWVWYWx1ZVdpdGhJZD4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmR0ID0gbmV3IEFpckRhdGVwaWNrZXIodGhpcy5kYXRlSW5wdXQubmF0aXZlRWxlbWVudCwge1xyXG4gICAgICBjb250YWluZXI6IHRoaXMuY29udGFpbmVyLFxyXG4gICAgICBsb2NhbGU6IHtcclxuICAgICAgICBkYXRlRm9ybWF0OiAnZGQuTU0ueXl5eScsXHJcbiAgICAgICAgdGltZUZvcm1hdDogJ0hIOm1tJyxcclxuICAgICAgfSxcclxuICAgICAgYXV0b0Nsb3NlOiB0cnVlLFxyXG4gICAgICByYW5nZTogdGhpcy5yYW5nZSxcclxuICAgICAgbXVsdGlwbGVEYXRlc1NlcGFyYXRvcjogJyAtICcsXHJcbiAgICAgIHRpbWVwaWNrZXI6IHRoaXMudGltZXBpY2tlcixcclxuICAgICAgbWluRGF0ZTogdGhpcy5taW5EYXRlLFxyXG4gICAgICBtYXhEYXRlOiB0aGlzLm1heERhdGUsXHJcbiAgICAgIGlubGluZTogdGhpcy5pbmxpbmUsXHJcbiAgICAgIHBvc2l0aW9uKHsgJGRhdGVwaWNrZXIsICR0YXJnZXQsICRwb2ludGVyLCBkb25lIH0pIHtcclxuICAgICAgICBsZXQgcG9wcGVyID0gY3JlYXRlUG9wcGVyKCR0YXJnZXQsICRkYXRlcGlja2VyLCB7XHJcbiAgICAgICAgICBwbGFjZW1lbnQ6ICdib3R0b20tc3RhcnQnLFxyXG4gICAgICAgICAgbW9kaWZpZXJzOiBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBuYW1lOiAnZmxpcCcsXHJcbiAgICAgICAgICAgICAgb3B0aW9uczoge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzoge1xyXG4gICAgICAgICAgICAgICAgICB0b3A6IDY0XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgbmFtZTogJ29mZnNldCcsXHJcbiAgICAgICAgICAgICAgb3B0aW9uczoge1xyXG4gICAgICAgICAgICAgICAgb2Zmc2V0OiBbMCwgMTBdXHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgbmFtZTogJ2Fycm93JyxcclxuICAgICAgICAgICAgICBvcHRpb25zOiB7XHJcbiAgICAgICAgICAgICAgICBlbGVtZW50OiAkcG9pbnRlclxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgXVxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICByZXR1cm4gZnVuY3Rpb24gY29tcGxldGVIaWRlKCkge1xyXG4gICAgICAgICAgcG9wcGVyLmRlc3Ryb3koKTtcclxuICAgICAgICAgIGRvbmUoKTtcclxuICAgICAgICB9O1xyXG4gICAgICB9LFxyXG4gICAgICBvblNlbGVjdDogKHtkYXRlLCBmb3JtYXR0ZWREYXRlLCBkYXRlcGlja2VyfSkgPT4ge1xyXG4gICAgICAgIGlmIChkYXRlIGluc3RhbmNlb2YgRGF0ZSAmJiB0eXBlb2YgZm9ybWF0dGVkRGF0ZSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gdmFsaWRhdGVEYXRlTW9kZWwoZm9ybWF0dGVkRGF0ZSlcclxuICAgICAgICAgIHRoaXMudGltZU1vZGVsID0gdmFsaWRhdGVUaW1lTW9kZWwoZm9ybWF0dGVkRGF0ZSlcclxuXHJcbiAgICAgICAgICB0aGlzLl9jaGVja0V4dHJhVGltZSgpXHJcblxyXG4gICAgICAgICAgaWYgKHRoaXMuaXNWYWxpZE1vZGVscykge1xyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlTW9kZWwodGhpcy5kYXRlTW9kZWwsIHRoaXMudGltZU1vZGVsKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGZvcm1hdHRlZERhdGUgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlc0FycmF5KGRhdGUgYXMgRGF0ZVtdKVxyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5kdCkge1xyXG4gICAgICBpZiAoY2hhbmdlc1snbWF4RGF0ZSddKSB7XHJcbiAgICAgICAgdGhpcy5kdC51cGRhdGUoe21heERhdGU6IHRoaXMubWF4RGF0ZX0pXHJcbiAgICAgICAgdGhpcy52YWx1ZSAmJiB0aGlzLmR0LnNlbGVjdERhdGUoZGF5anModGhpcy52YWx1ZSkudG9EYXRlKCksIHt1cGRhdGVUaW1lOiB0aGlzLnRpbWVwaWNrZXIsIHNpbGVudDogdHJ1ZX0pXHJcblxyXG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlVmFsaWRhdGUpIHtcclxuICAgICAgICAgIGNvbnN0IGludmFsaWQgPSB0aGlzLmlubmVySW52YWxpZFxyXG4gICAgICAgICAgY29uc3QgaXNWYWxpZCA9IHRoaXMuY2hlY2tpbmdJbnZhbGlkKHRoaXMudmFsdWUsIHRoaXMubWF4RGF0ZSwgdGhpcy5taW5EYXRlKVxyXG5cclxuICAgICAgICAgIGlmIChpbnZhbGlkICYmIGlzVmFsaWQpIHtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZU1vZGVsKHRoaXMuZGF0ZU1vZGVsLCB0aGlzLnRpbWVNb2RlbClcclxuICAgICAgICAgICAgfSwgMClcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChjaGFuZ2VzWydtaW5EYXRlJ10pIHtcclxuICAgICAgICB0aGlzLmR0LnVwZGF0ZSh7bWluRGF0ZTogdGhpcy5taW5EYXRlfSlcclxuICAgICAgICB0aGlzLnZhbHVlICYmIHRoaXMuZHQuc2VsZWN0RGF0ZShkYXlqcyh0aGlzLnZhbHVlKS50b0RhdGUoKSwge3VwZGF0ZVRpbWU6IHRoaXMudGltZXBpY2tlciwgc2lsZW50OiB0cnVlfSlcclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVWYWxpZGF0ZSkge1xyXG4gICAgICAgICAgY29uc3QgaW52YWxpZCA9IHRoaXMuaW5uZXJJbnZhbGlkXHJcbiAgICAgICAgICBjb25zdCBpc1ZhbGlkID0gdGhpcy5jaGVja2luZ0ludmFsaWQodGhpcy52YWx1ZSwgdGhpcy5tYXhEYXRlLCB0aGlzLm1pbkRhdGUpXHJcblxyXG4gICAgICAgICAgaWYgKGludmFsaWQgJiYgaXNWYWxpZCkge1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlTW9kZWwodGhpcy5kYXRlTW9kZWwsIHRoaXMudGltZU1vZGVsKVxyXG4gICAgICAgICAgICB9LCAwKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXREYXRlVmFsdWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHt0aGlzLmRhdGVNb2RlbC52aWV3fSR7dGhpcy50aW1lTW9kZWwudmlldyA/ICcgJyArIHRoaXMudGltZU1vZGVsLnZpZXcgOiAnJ31gXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHtJbnB1dERhdGVTaXplc0VudW1bdGhpcy5zaXplXX0gJHt0aGlzLmN1c3RvbUNsYXNzZXN9ICR7dGhpcy5jaGVja1ZhbGlkQ2xhc3Nlc31gXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldCBpc1ZhbGlkTW9kZWxzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICF0aGlzLmRhdGVNb2RlbC5pbnZhbGlkICYmICh0aGlzLnRpbWVwaWNrZXIgPyAhdGhpcy50aW1lTW9kZWwuaW52YWxpZCA6IHRydWUpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGlzVmlld0NsZWFuSWNvbigpIHtcclxuICAgIHJldHVybiAhIXRoaXMuZGF0ZUlucHV0Py5uYXRpdmVFbGVtZW50LnZhbHVlXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGNoZWNrVmFsaWRDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5jaGVja0ludmFsaWQgPT09IGZhbHNlID9cclxuICAgICAgJ21yeC1pbnB1dC1jaGVja2VkLXN1Y2Nlc3MnIDpcclxuICAgICAgdGhpcy5jaGVja0ludmFsaWQgPT09IHRydWUgPyAnbXJ4LWlucHV0LWNoZWNrZWQtZXJyb3InIDogJydcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2NoZWNrRXh0cmFUaW1lKCkge1xyXG4gICAgaWYgKHRoaXMuYWRkTWF4VGltZSAmJiAhdGhpcy50aW1lcGlja2VyKSB7XHJcbiAgICAgIHRoaXMudGltZU1vZGVsLmhvdXIgPSAnMjMnXHJcbiAgICAgIHRoaXMudGltZU1vZGVsLm1pbnV0ZSA9ICc1OSdcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmFkZE1pblRpbWUgJiYgIXRoaXMudGltZXBpY2tlcikge1xyXG4gICAgICB0aGlzLnRpbWVNb2RlbC5ob3VyID0gJzAwJ1xyXG4gICAgICB0aGlzLnRpbWVNb2RlbC5taW51dGUgPSAnMDAnXHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5hZGRNYXhUaW1lT2JqICYmICF0aGlzLnRpbWVwaWNrZXIpIHtcclxuICAgICAgdGhpcy50aW1lTW9kZWwuaG91ciA9IHRoaXMuYWRkTWF4VGltZU9iai5ob3VyXHJcbiAgICAgIHRoaXMudGltZU1vZGVsLm1pbnV0ZSA9IHRoaXMuYWRkTWF4VGltZU9iai5taW51dGVcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmFkZE1pblRpbWVPYmogJiYgIXRoaXMudGltZXBpY2tlcikge1xyXG4gICAgICB0aGlzLnRpbWVNb2RlbC5ob3VyID0gdGhpcy5hZGRNaW5UaW1lT2JqLmhvdXJcclxuICAgICAgdGhpcy50aW1lTW9kZWwubWludXRlID0gdGhpcy5hZGRNaW5UaW1lT2JqLm1pbnV0ZVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsaWNrVG9JY29uQ2FsZW5kYXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLmRhdGVJbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKClcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbGlja1RvSWNvbkNsZWFyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5kdC5zZXRWaWV3RGF0ZShuZXcgRGF0ZSgpKVxyXG4gICAgdGhpcy5kdCAmJiB0aGlzLmR0LmNsZWFyKClcclxuICAgIHRoaXMuZGF0ZU1vZGVsID0gZGF0ZU1vZGVsQ29uc3RhbnRcclxuICAgIHRoaXMudGltZU1vZGVsID0gdGltZU1vZGVsQ29uc3RhbnRcclxuXHJcbiAgICBpZiAoIXRoaXMucmFuZ2UpIHtcclxuICAgICAgdGhpcy51cGRhdGVWYWx1ZSgnJylcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmlubmVySW52YWxpZCA9IGZhbHNlXHJcbiAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSAnJ1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVWYWx1ZU1vZGVsKGRhdGVNb2RlbDogRGF0ZU1vZGVsLCB0aW1lTW9kZWw6IFRpbWVNb2RlbCwgYm9sOiBib29sZWFuID0gZmFsc2UpIHtcclxuICAgIGlmIChkYXRlTW9kZWwudmlldyA9PT0gJycpIHtcclxuICAgICAgdGhpcy5jbGlja1RvSWNvbkNsZWFyKClcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnN0IGRhdGUgPSBmb3JtYXR0aW5nRnJvbU1vZGVscyhkYXRlTW9kZWwsIHRpbWVNb2RlbCwgdGhpcy50aW1lcGlja2VyIHx8IHRoaXMuYWRkTWF4VGltZSB8fCB0aGlzLmFkZE1pblRpbWUpXHJcblxyXG4gICAgICBjb25zdCBmb3JtYXR0aW5nRGF0ZSA9IGZvcm1hdHRpbmdUb01vc2Nvd1RpbWV6b25lKGRhdGUudG9JU09TdHJpbmcoKSwgdGhpcy50aW1lem9uZSlcclxuXHJcbiAgICAgIGNvbnN0IGlzVmFsaWQgPSB0aGlzLmNoZWNraW5nSW52YWxpZChmb3JtYXR0aW5nRGF0ZSwgdGhpcy5tYXhEYXRlLCB0aGlzLm1pbkRhdGUpXHJcblxyXG4gICAgICBpZiAoZGF0ZS5pc1ZhbGlkKCkgJiYgaXNWYWxpZCkge1xyXG4gICAgICAgIHRoaXMuZHQuc2VsZWN0RGF0ZShmb3JtYXR0aW5nRnJvbU1vZGVscyhkYXRlTW9kZWwsIHRpbWVNb2RlbCwgdGhpcy50aW1lcGlja2VyKS50b0lTT1N0cmluZygpLCB7XHJcbiAgICAgICAgICB1cGRhdGVUaW1lOiB0aGlzLnRpbWVwaWNrZXIsXHJcbiAgICAgICAgICBzaWxlbnQ6IHRydWVcclxuICAgICAgICB9KVxyXG4gICAgICAgIHRoaXMuZHQuc2V0Vmlld0RhdGUoZm9ybWF0dGluZ0Zyb21Nb2RlbHMoZGF0ZU1vZGVsLCB0aW1lTW9kZWwsIHRoaXMudGltZXBpY2tlcikudG9JU09TdHJpbmcoKSlcclxuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKGZvcm1hdHRpbmdEYXRlKVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVZhbHVlc0FycmF5ID0gKHZhbHVlczogYW55W10pID0+IHtcclxuICAgICAgY29uc3QgZGF0ZXMgPSB2YWx1ZXMubWFwKGRhdGUgPT4ge1xyXG4gICAgICAgIHJldHVybiAgZm9ybWF0dGluZ1RvTW9zY293VGltZXpvbmUoZGF0ZS50b0lTT1N0cmluZygpLCB0aGlzLnRpbWV6b25lKVxyXG4gICAgICB9KVxyXG5cclxuICAgIHRoaXMudXBkYXRlVmFsdWUoZGF0ZXMpXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGRhdGVGb3JtYXR0aW5nT3V0cHV0KHZhbHVlOiBEYXRlKTogc3RyaW5nIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICByZXR1cm4gZGF5anModmFsdWUpLnRvSVNPU3RyaW5nKClcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAnJ1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbnZhbGlkTWVzc2FnZU9uKG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5pbm5lckludmFsaWQgPSB0cnVlXHJcbiAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSBtZXNzYWdlXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGludmFsaWRNZXNzYWdlT2ZmKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pbm5lckludmFsaWQgPSBmYWxzZVxyXG4gICAgdGhpcy5pbm5lckludmFsaWRNZXNzYWdlID0gJydcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVEYXRlVmFsdWUoZGF0ZUlucHV0OiBIVE1MSW5wdXRFbGVtZW50KTogdm9pZCB7XHJcbiAgICBjb25zdCBzZWxlY3Rpb25TdGFydCA9IGRhdGVJbnB1dC5zZWxlY3Rpb25TdGFydFxyXG4gICAgdGhpcy5kYXRlTW9kZWwgPSB2YWxpZGF0ZURhdGVNb2RlbChkYXRlSW5wdXQudmFsdWUpXHJcbiAgICB0aGlzLnRpbWVNb2RlbCA9IHZhbGlkYXRlVGltZU1vZGVsKGRhdGVJbnB1dC52YWx1ZSlcclxuXHJcbiAgICBkYXRlSW5wdXQudmFsdWUgPSB0aGlzLmdldERhdGVWYWx1ZVxyXG4gICAgZGF0ZUlucHV0LnNlbGVjdGlvblN0YXJ0ID0gc2VsZWN0aW9uU3RhcnRcclxuICAgIGRhdGVJbnB1dC5zZWxlY3Rpb25FbmQgPSBkYXRlSW5wdXQuc2VsZWN0aW9uU3RhcnRcclxuXHJcbiAgICB0aGlzLl9jaGVja0V4dHJhVGltZSgpXHJcblxyXG4gICAgaWYgKHRoaXMuaXNWYWxpZE1vZGVscyB8fCB0aGlzLmRhdGVNb2RlbC52aWV3ID09PSAnJykge1xyXG4gICAgICB0aGlzLnVwZGF0ZVZhbHVlTW9kZWwodGhpcy5kYXRlTW9kZWwsIHRoaXMudGltZU1vZGVsKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsaWNrVG9JbnB1dChpbnB1dDogSFRNTElucHV0RWxlbWVudCk6IHZvaWQge1xyXG4gICAgaWYgKGlucHV0LnNlbGVjdGlvblN0YXJ0ID09PSBpbnB1dC5zZWxlY3Rpb25FbmQgJiYgKGlucHV0LnNlbGVjdGlvblN0YXJ0ICYmIGlucHV0LnNlbGVjdGlvblN0YXJ0ID4gMCkpIHtcclxuICAgICAgY29uc3Qge3N0YXJ0LCBlbmR9ID0gbWFya1Bvc2l0aW9uKGlucHV0LnNlbGVjdGlvblN0YXJ0LCBpbnB1dC5zZWxlY3Rpb25FbmQpXHJcbiAgICAgIGlucHV0LnNlbGVjdGlvblN0YXJ0ID0gc3RhcnRcclxuICAgICAgaW5wdXQuc2VsZWN0aW9uRW5kID0gZW5kXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNoZWNraW5nSW52YWxpZCh2YWx1ZTogc3RyaW5nLCBtYXhEYXRlOiBzdHJpbmcsIG1pbkRhdGU6IHN0cmluZykge1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZVZhbGlkYXRlKSB7XHJcbiAgICAgIHRoaXMuaW52YWxpZE1lc3NhZ2VPZmYoKVxyXG4gICAgICByZXR1cm4gdHJ1ZVxyXG4gICAgfVxyXG4gICAgaWYgKG1heERhdGUgJiYgKGRheWpzKHZhbHVlKS5kaWZmKGRheWpzKG1heERhdGUpKSA9PT0gMCkpIHtcclxuICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZU9uKCfQlNCw0YLQsCDQuCDQstGA0LXQvNGPINC+0LrQvtC90YfQsNC90LjRjyDQvdC1INC80L7QttC10YIg0LHRi9GC0Ywg0YDQsNCy0L3QsCDQtNCw0YLQtSDQuCDQstGA0LXQvNC10L3QuCDQvdCw0YfQsNC70LAnKVxyXG4gICAgICByZXR1cm4gZmFsc2VcclxuICAgIH0gZWxzZSBpZiAobWF4RGF0ZSAmJiAoZGF5anModmFsdWUpLmRpZmYoZGF5anMobWF4RGF0ZSkpID4gMCkpIHtcclxuICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZU9uKCfQlNCw0YLQsCDQvtC60L7QvdGH0LDQvdC40Y8g0L3QtSDQvNC+0LbQtdGCINCx0YvRgtGMINGA0LDQvdGM0YjQtSDQtNCw0YLRiyDQvdCw0YfQsNC70LAnKVxyXG4gICAgICByZXR1cm4gZmFsc2VcclxuICAgIH0gZWxzZSBpZiAobWluRGF0ZSAmJiAoZGF5anModmFsdWUpLmRpZmYoZGF5anMobWluRGF0ZSkpID09PSAwKSkge1xyXG4gICAgICB0aGlzLmludmFsaWRNZXNzYWdlT24oJ9CU0LDRgtCwINC4INCy0YDQtdC80Y8g0L7QutC+0L3Rh9Cw0L3QuNGPINC90LUg0LzQvtC20LXRgiDQsdGL0YLRjCDRgNCw0LLQvdCwINC00LDRgtC1INC4INCy0YDQtdC80LXQvdC4INC90LDRh9Cw0LvQsCcpXHJcbiAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgfSBlbHNlIGlmIChtaW5EYXRlICYmIGRheWpzKHZhbHVlKS5kaWZmKGRheWpzKG1pbkRhdGUpKSA8IDApIHtcclxuICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZU9uKCfQlNCw0YLQsCDQvtC60L7QvdGH0LDQvdC40Y8g0L3QtSDQvNC+0LbQtdGCINCx0YvRgtGMINGA0LDQvdGM0YjQtSDQtNCw0YLRiyDQvdCw0YfQsNC70LAnKVxyXG4gICAgICByZXR1cm4gZmFsc2VcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuaW52YWxpZE1lc3NhZ2VPZmYoKVxyXG4gICAgICByZXR1cm4gdHJ1ZVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHdyaXRlVmFsdWUob3V0c2lkZVZhbHVlOiBJbnB1dERhdGVUaW1lVmFsdWVUeXBlcykge1xyXG4gICAgaWYgKG91dHNpZGVWYWx1ZSkge1xyXG4gICAgICBpZiAodHlwZW9mIG91dHNpZGVWYWx1ZSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICB0aGlzLnZhbHVlID0gY2xlYW5EYXRlKG91dHNpZGVWYWx1ZSk7XHJcbiAgICAgICAgdGhpcy5kYXRlTW9kZWwgPSBkYXRlTW9kZWxWYWx1ZVBhcnNlKG91dHNpZGVWYWx1ZSwgdGhpcy50aW1lem9uZSlcclxuICAgICAgICB0aGlzLnRpbWVNb2RlbCA9IHRpbWVNb2RlbFZhbHVlUGFyc2Uob3V0c2lkZVZhbHVlLCB0aGlzLnRpbWV6b25lKVxyXG5cclxuICAgICAgICB0aGlzLmNoZWNraW5nSW52YWxpZChvdXRzaWRlVmFsdWUsIHRoaXMubWF4RGF0ZSwgdGhpcy5taW5EYXRlKVxyXG5cclxuICAgICAgICB0aGlzLmR0LnNlbGVjdERhdGUoZm9ybWF0dGluZ0Zyb21Nb2RlbHModGhpcy5kYXRlTW9kZWwsIHRoaXMudGltZU1vZGVsLCB0aGlzLnRpbWVwaWNrZXIpLnRvSVNPU3RyaW5nKCksIHtcclxuICAgICAgICAgIHVwZGF0ZVRpbWU6IHRoaXMudGltZXBpY2tlcixcclxuICAgICAgICAgIHNpbGVudDogdHJ1ZVxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgdGhpcy5kdC5zZXRWaWV3RGF0ZShmb3JtYXR0aW5nRnJvbU1vZGVscyh0aGlzLmRhdGVNb2RlbCwgdGhpcy50aW1lTW9kZWwsIHRoaXMudGltZXBpY2tlcikudG9JU09TdHJpbmcoKSlcclxuICAgICAgfSBlbHNlIGlmICh0eXBlb2Ygb3V0c2lkZVZhbHVlID09PSAnb2JqZWN0Jykge1xyXG4gICAgICAgIHRoaXMudmFsdWUgPSBvdXRzaWRlVmFsdWUubWFwKGRhdGUgPT4gY2xlYW5EYXRlKGRhdGUpKVxyXG5cclxuICAgICAgICB0aGlzLmR0LnNlbGVjdERhdGUodGhpcy52YWx1ZSwge1xyXG4gICAgICAgICAgdXBkYXRlVGltZTogdGhpcy50aW1lcGlja2VyLFxyXG4gICAgICAgICAgc2lsZW50OiB0cnVlXHJcbiAgICAgICAgfSlcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKHRoaXMuZHQpIHtcclxuICAgICAgICB0aGlzLmR0LmNsZWFyKHtzaWxlbnQ6IHRydWV9KVxyXG4gICAgICAgIHRoaXMudmFsdWUgPSAnJ1xyXG4gICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gZGF0ZU1vZGVsQ29uc3RhbnRcclxuICAgICAgICB0aGlzLnRpbWVNb2RlbCA9IHRpbWVNb2RlbENvbnN0YW50XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DaGFuZ2UgPSAodmFsdWU6IGFueSkgPT4ge1xyXG4gIH07XHJcbiAgcHJpdmF0ZSBvblRvdWNoZWQgPSAoKSA9PiB7XHJcbiAgfTtcclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xyXG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB7fSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZVZhbHVlKGluc2lkZVZhbHVlOiBJbnB1dERhdGVUaW1lVmFsdWVUeXBlcykge1xyXG4gICAgdGhpcy52YWx1ZSA9IGluc2lkZVZhbHVlXHJcbiAgICB0aGlzLmNoYW5nZWQuZW1pdChpbnNpZGVWYWx1ZSk7XHJcbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQoe3ZhbHVlOiBpbnNpZGVWYWx1ZSwgaWQ6IHRoaXMudXVpZH0pXHJcbiAgICB0aGlzLm9uQ2hhbmdlKGluc2lkZVZhbHVlKTtcclxuICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25CbHVyKGV2ZW50OiBFdmVudCkge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuYmx1cnJlZC5lbWl0KHsgdmFsdWU6IHRoaXMudmFsdWUsIGlkOiB0aGlzLnV1aWQgfSlcclxuICAgIH0pXHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICAgIGNsYXNzPVwibXJ4LWlucHV0LWRhdGVcIlxyXG4gICAgW2NsYXNzLm1yeC1pbnB1dC1lcnJvcl09XCJpbnZhbGlkIHx8IGlubmVySW52YWxpZFwiXHJcbiAgICBbY2xhc3MubXJ4LWlucHV0LXJlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgIFtjbGFzc109XCJnZXRDbGFzc2VzXCJcclxuPlxyXG4gIDxkaXYgY2xhc3M9XCJcIj5cclxuICAgIDxtcngtbGFiZWwgKm5nSWY9XCJ0aW1lTGFiZWwgfHwgZGF0ZUxhYmVsXCI+e3sgZGF0ZUxhYmVsIH19PC9tcngtbGFiZWw+XHJcbiAgICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LWRhdGVfX3dyYXBwZXJcIj5cclxuICAgICAgPGlucHV0XHJcbiAgICAgICAgICAjZGF0ZUlucHV0XHJcbiAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICBhdXRvY29tcGxldGU9XCJub3BlXCJcclxuICAgICAgICAgIGNsYXNzPVwibXJ4LWlucHV0LWRhdGVfX2lucHV0IG1yeC1pbnB1dC1kYXRlX19kYXRlXCJcclxuICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJkYXRlUGxhY2Vob2xkZXJcIlxyXG4gICAgICAgICAgW25nTW9kZWxdPVwiZ2V0RGF0ZVZhbHVlXCJcclxuICAgICAgICAgIFttYXNrXT1cIicwMC4wMC4wMDAwIDAwOm0wJ1wiXHJcbiAgICAgICAgICBbbGVhZFplcm9EYXRlVGltZV09XCJ0cnVlXCJcclxuICAgICAgICAgIFt2YWxpZGF0aW9uXT1cImZhbHNlXCJcclxuICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgICAgICBbcmVhZE9ubHldPVwiIWlzTWFudWFsSW5wdXRcIlxyXG4gICAgICAgICAgKGlucHV0KT1cInVwZGF0ZURhdGVWYWx1ZShkYXRlSW5wdXQpXCJcclxuICAgICAgICAgIChjbGljayk9XCJjbGlja1RvSW5wdXQoZGF0ZUlucHV0KVwiXHJcbiAgICAgICAgICAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiXHJcbiAgICAgIC8+XHJcblxyXG4gICAgICA8ZGl2ICpuZ0lmPVwiIWRpc2FibGVkXCIgY2xhc3M9XCJtcngtaW5wdXQtZGF0ZV9faWNvbnNcIj5cclxuICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJtcngtaWNvbiBpY29uLWNsb3NlXCJcclxuICAgICAgICAgICAgICAqbmdJZj1cImlzVmlld0NsZWFuSWNvblwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImNsaWNrVG9JY29uQ2xlYXIoKVwiXHJcbiAgICAgICAgICAgICAgW2NsYXNzLmljb24tZm9udC0xNl09XCJzaXplID09PSAnc21hbGwnXCJcclxuICAgICAgICAgICAgICBbY2xhc3MuaWNvbi1mb250LTI0XT1cInNpemUgPT09ICdtZWRpdW0nIHx8IHNpemUgPT09ICdsYXJnZSdcIlxyXG4gICAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICBjbGFzcz1cIm1yeC1pY29uIGljb24tY2FsZW5kYXJcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiY2xpY2tUb0ljb25DYWxlbmRhcigpXCJcclxuICAgICAgICAgICAgW2NsYXNzLmljb24tZm9udC0xNl09XCJzaXplID09PSAnc21hbGwnXCJcclxuICAgICAgICAgICAgW2NsYXNzLmljb24tZm9udC0yNF09XCJzaXplID09PSAnbWVkaXVtJyB8fCBzaXplID09PSAnbGFyZ2UnXCJcclxuICAgICAgICA+PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICAgIDxtcngtZXJyb3ItbWVzc2FnZVxyXG4gICAgICAgICpuZ0lmPVwiaW52YWxpZDsgZWxzZSBpbm5lckludmFsaWRUZW1wbGF0ZVwiXHJcbiAgICAgICAgW2ludmFsaWRNZXNzYWdlXT1cImludmFsaWRNZXNzYWdlXCJcclxuICAgID48L21yeC1lcnJvci1tZXNzYWdlPlxyXG5cclxuICA8bmctdGVtcGxhdGUgI2lubmVySW52YWxpZFRlbXBsYXRlPlxyXG4gICAgPG1yeC1lcnJvci1tZXNzYWdlXHJcbiAgICAgICAgKm5nSWY9XCJpbm5lckludmFsaWRcIlxyXG4gICAgICAgIFtpbnZhbGlkTWVzc2FnZV09XCJpbm5lckludmFsaWRNZXNzYWdlXCJcclxuICAgID48L21yeC1lcnJvci1tZXNzYWdlPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIDxtcngtc2F2ZS1zdGF0ZSBbaWRdPVwidXVpZFwiIFtmaWVsZHNdPVwiZmllbGRzXCI+PC9tcngtc2F2ZS1zdGF0ZT5cclxuPC9kaXY+XHJcblxyXG5cclxuXHJcbiJdfQ==
|
|
413
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS10aW1lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2lucHV0LWRhdGUtdGltZS9pbnB1dC1kYXRlLXRpbWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtZGF0ZS10aW1lL2lucHV0LWRhdGUtdGltZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ1UsdUJBQXVCLEVBQ3RDLFNBQVMsRUFFVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFFTCxNQUFNLEVBRU4sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLGFBQWEsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMxQyxPQUFPLEVBRUwsa0JBQWtCLEVBRW5CLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzdHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFbEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7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LGFBQWE7c0JBQTVCLEtBQUs7Z0JBQ1UsYUFBYTtzQkFBNUIsS0FBSztnQkFFVSxlQUFlO3NCQUE5QixLQUFLO2dCQUVVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBRVUsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxjQUFjO3NCQUE3QixLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBRWtCLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVztnQkFDRSxTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVc7Z0JBRUwsT0FBTztzQkFBdkIsTUFBTTtnQkFDVSxXQUFXO3NCQUEzQixNQUFNO2dCQUNVLE9BQU87c0JBQXZCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBmb3J3YXJkUmVmLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPdXRwdXQsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgQWlyRGF0ZXBpY2tlciBmcm9tICdhaXItZGF0ZXBpY2tlcidcclxuaW1wb3J0IHtcclxuICBFeHRyYVRpbWUsXHJcbiAgSW5wdXREYXRlU2l6ZXNFbnVtLFxyXG4gIElucHV0RGF0ZVNpemVzVHlwZXNcclxufSBmcm9tICcuL2lucHV0LWRhdGUtdGltZS5lbnVtJztcclxuaW1wb3J0IHsgRGF0ZU1vZGVsLCBUaW1lTW9kZWwsIHZhbGlkYXRlRGF0ZU1vZGVsLCB2YWxpZGF0ZVRpbWVNb2RlbCB9IGZyb20gJy4vaGVscGVycy92YWxpZGF0ZS12YWx1ZS1tb2RlbHMnO1xyXG5pbXBvcnQgeyBkYXRlTW9kZWxDb25zdGFudCwgdGltZU1vZGVsQ29uc3RhbnQgfSBmcm9tICcuL2NvbnN0YW50cy92YWx1ZS1tb2RlbHMnO1xyXG5pbXBvcnQgeyBkYXRlTW9kZWxWYWx1ZVBhcnNlLCB0aW1lTW9kZWxWYWx1ZVBhcnNlIH0gZnJvbSAnLi9oZWxwZXJzL3ZhbHVlLXBhcnNlcic7XHJcbmltcG9ydCB7IG1hcmtQb3NpdGlvbiB9IGZyb20gJy4vaGVscGVycy9jdXJzb3ItcG9zaXRpb24nO1xyXG5pbXBvcnQgeyBjbGVhbkRhdGUgfSBmcm9tICcuL2hlbHBlcnMvY2xlYW4tZGF0ZSc7XHJcbmltcG9ydCB7IGZvcm1hdHRpbmdUb01vc2Nvd1RpbWV6b25lIH0gZnJvbSAnLi9oZWxwZXJzL2Zvcm1hdHRpbmctbW9zY293LXRpbWV6b25lJztcclxuaW1wb3J0IHsgVGltZXpvbmVUeXBlIH0gZnJvbSAnLi9lbnVtL3RpbWV6b25lJztcclxuaW1wb3J0IHsgZm9ybWF0dGluZ0Zyb21Nb2RlbHMgfSBmcm9tICcuL2hlbHBlcnMvZm9ybWF0dGluZy1mcm9tLW1vZGVscyc7XHJcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XHJcbmltcG9ydCB7IHY0IGFzIHV1aWR2NCB9IGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQgeyBjcmVhdGVQb3BwZXIgfSBmcm9tICdAcG9wcGVyanMvY29yZSc7XHJcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2VzXCI7XHJcbmltcG9ydCB7IElucHV0RGF0ZVRpbWVWYWx1ZVR5cGVzLCBJbnB1dERhdGVUaW1lVmFsdWVXaXRoSWQgfSBmcm9tICcuL21vZGVscy9pbnB1dC1kYXRlLXRpbWUubW9kZWwnXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21yeC1pbnB1dC1kYXRlLXRpbWUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnaW5wdXQtZGF0ZS10aW1lLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnaW5wdXQtZGF0ZS10aW1lLmNvbXBvbmVudHMubGVzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge3Byb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dERhdGVUaW1lQ29tcG9uZW50KSwgbXVsdGk6IHRydWV9XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5wdXREYXRlVGltZUNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQge1xyXG4gIHB1YmxpYyBkdDogYW55XHJcbiAgcHVibGljIHZhbHVlOiBhbnkgPSAnJztcclxuICBwdWJsaWMgZGF0ZU1vZGVsOiBEYXRlTW9kZWwgPSBkYXRlTW9kZWxDb25zdGFudFxyXG4gIHB1YmxpYyB0aW1lTW9kZWw6IFRpbWVNb2RlbCA9IHRpbWVNb2RlbENvbnN0YW50XHJcblxyXG4gIHB1YmxpYyBpbm5lckludmFsaWQgPSBmYWxzZTtcclxuICBwdWJsaWMgaW5uZXJJbnZhbGlkTWVzc2FnZSA9ICcnO1xyXG5cclxuICAvLyBTQVZFIFNUQVRFXHJcbiAgcHVibGljIHV1aWQ6IHN0cmluZyA9IHV1aWR2NCgpXHJcbiAgQElucHV0KCkgcHVibGljIGZpZWxkczogRmllbGRbXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgc2l6ZTogSW5wdXREYXRlU2l6ZXNUeXBlcyA9ICdsYXJnZSc7XHJcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbUNsYXNzZXMgPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgZGF0ZUxhYmVsID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIHRpbWVMYWJlbCA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBkYXRlUGxhY2Vob2xkZXIgPSAn0LTQtC7QvNC8LtCz0LPQs9CzJztcclxuICBASW5wdXQoKSBwdWJsaWMgdGltZVBsYWNlaG9sZGVyID0gJzAwOjAwJztcclxuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVxdWlyZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgdGltZXBpY2tlciA9IGZhbHNlXHJcbiAgQElucHV0KCkgcHVibGljIHJhbmdlID0gZmFsc2VcclxuICBASW5wdXQoKSBwdWJsaWMgbWluRGF0ZSA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhEYXRlID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIHRpbWV6b25lOiBUaW1lem9uZVR5cGUgPSAnZGVmYXVsdCc7XHJcbiAgQElucHV0KCkgcHVibGljIGlubGluZSA9IGZhbHNlXHJcbiAgQElucHV0KCkgcHVibGljIGlzTWFudWFsSW5wdXQgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBhZGRNaW5UaW1lID0gZmFsc2VcclxuICBASW5wdXQoKSBwdWJsaWMgYWRkTWF4VGltZSA9IGZhbHNlXHJcbiAgQElucHV0KCkgcHVibGljIGFkZE1pblRpbWVPYmohOiBFeHRyYVRpbWVcclxuICBASW5wdXQoKSBwdWJsaWMgYWRkTWF4VGltZU9iaiE6IEV4dHJhVGltZVxyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZVZhbGlkYXRlID0gZmFsc2VcclxuXHJcbiAgQElucHV0KCkgcHVibGljIGNvbnRhaW5lciA9ICdkaXYucGFnZS13cmFwcGVyJztcclxuXHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZE1lc3NhZ2U6IHN0cmluZyB8IHN0cmluZ1tdID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGNoZWNrSW52YWxpZDogdHJ1ZSB8IGZhbHNlIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2RhdGVJbnB1dCcpIGRhdGVJbnB1dCE6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZCgndGltZUlucHV0JykgdGltZUlucHV0ITogRWxlbWVudFJlZjtcclxuXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBjaGFuZ2VkOiBFdmVudEVtaXR0ZXI8SW5wdXREYXRlVGltZVZhbHVlVHlwZXM+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgbW9kZWxDaGFuZ2U6IEV2ZW50RW1pdHRlcjxJbnB1dERhdGVUaW1lVmFsdWVXaXRoSWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxJbnB1dERhdGVUaW1lVmFsdWVXaXRoSWQ+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBibHVycmVkOiBFdmVudEVtaXR0ZXI8SW5wdXREYXRlVGltZVZhbHVlV2l0aElkPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXREYXRlVGltZVZhbHVlV2l0aElkPigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZHQgPSBuZXcgQWlyRGF0ZXBpY2tlcih0aGlzLmRhdGVJbnB1dC5uYXRpdmVFbGVtZW50LCB7XHJcbiAgICAgIGNvbnRhaW5lcjogdGhpcy5jb250YWluZXIsXHJcbiAgICAgIGxvY2FsZToge1xyXG4gICAgICAgIGRhdGVGb3JtYXQ6ICdkZC5NTS55eXl5JyxcclxuICAgICAgICB0aW1lRm9ybWF0OiAnSEg6bW0nLFxyXG4gICAgICB9LFxyXG4gICAgICBhdXRvQ2xvc2U6IHRydWUsXHJcbiAgICAgIHJhbmdlOiB0aGlzLnJhbmdlLFxyXG4gICAgICBtdWx0aXBsZURhdGVzU2VwYXJhdG9yOiAnIC0gJyxcclxuICAgICAgdGltZXBpY2tlcjogdGhpcy50aW1lcGlja2VyLFxyXG4gICAgICBtaW5EYXRlOiB0aGlzLm1pbkRhdGUsXHJcbiAgICAgIG1heERhdGU6IHRoaXMubWF4RGF0ZSxcclxuICAgICAgaW5saW5lOiB0aGlzLmlubGluZSxcclxuICAgICAgcG9zaXRpb24oeyAkZGF0ZXBpY2tlciwgJHRhcmdldCwgJHBvaW50ZXIsIGRvbmUgfSkge1xyXG4gICAgICAgIGxldCBwb3BwZXIgPSBjcmVhdGVQb3BwZXIoJHRhcmdldCwgJGRhdGVwaWNrZXIsIHtcclxuICAgICAgICAgIHBsYWNlbWVudDogJ2JvdHRvbS1zdGFydCcsXHJcbiAgICAgICAgICBtb2RpZmllcnM6IFtcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIG5hbWU6ICdmbGlwJyxcclxuICAgICAgICAgICAgICBvcHRpb25zOiB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB7XHJcbiAgICAgICAgICAgICAgICAgIHRvcDogNjRcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBuYW1lOiAnb2Zmc2V0JyxcclxuICAgICAgICAgICAgICBvcHRpb25zOiB7XHJcbiAgICAgICAgICAgICAgICBvZmZzZXQ6IFswLCAxMF1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBuYW1lOiAnYXJyb3cnLFxyXG4gICAgICAgICAgICAgIG9wdGlvbnM6IHtcclxuICAgICAgICAgICAgICAgIGVsZW1lbnQ6ICRwb2ludGVyXHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICBdXHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHJldHVybiBmdW5jdGlvbiBjb21wbGV0ZUhpZGUoKSB7XHJcbiAgICAgICAgICBwb3BwZXIuZGVzdHJveSgpO1xyXG4gICAgICAgICAgZG9uZSgpO1xyXG4gICAgICAgIH07XHJcbiAgICAgIH0sXHJcbiAgICAgIG9uU2VsZWN0OiAoe2RhdGUsIGZvcm1hdHRlZERhdGUsIGRhdGVwaWNrZXJ9KSA9PiB7XHJcbiAgICAgICAgaWYgKGRhdGUgaW5zdGFuY2VvZiBEYXRlICYmIHR5cGVvZiBmb3JtYXR0ZWREYXRlID09PSAnc3RyaW5nJykge1xyXG4gICAgICAgICAgdGhpcy5kYXRlTW9kZWwgPSB2YWxpZGF0ZURhdGVNb2RlbChmb3JtYXR0ZWREYXRlKVxyXG4gICAgICAgICAgdGhpcy50aW1lTW9kZWwgPSB2YWxpZGF0ZVRpbWVNb2RlbChmb3JtYXR0ZWREYXRlKVxyXG5cclxuICAgICAgICAgIHRoaXMuX2NoZWNrRXh0cmFUaW1lKClcclxuXHJcbiAgICAgICAgICBpZiAodGhpcy5pc1ZhbGlkTW9kZWxzKSB7XHJcbiAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWVNb2RlbCh0aGlzLmRhdGVNb2RlbCwgdGhpcy50aW1lTW9kZWwpXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgZm9ybWF0dGVkRGF0ZSA9PT0gJ29iamVjdCcpIHtcclxuICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWVzQXJyYXkoZGF0ZSBhcyBEYXRlW10pXHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmR0KSB7XHJcbiAgICAgIGlmIChjaGFuZ2VzWydtYXhEYXRlJ10pIHtcclxuICAgICAgICB0aGlzLmR0LnVwZGF0ZSh7bWF4RGF0ZTogdGhpcy5tYXhEYXRlfSlcclxuICAgICAgICB0aGlzLnZhbHVlICYmIHRoaXMuZHQuc2VsZWN0RGF0ZShkYXlqcyh0aGlzLnZhbHVlKS50b0RhdGUoKSwge3VwZGF0ZVRpbWU6IHRoaXMudGltZXBpY2tlciwgc2lsZW50OiB0cnVlfSlcclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVWYWxpZGF0ZSkge1xyXG4gICAgICAgICAgY29uc3QgaW52YWxpZCA9IHRoaXMuaW5uZXJJbnZhbGlkXHJcbiAgICAgICAgICBjb25zdCBpc1ZhbGlkID0gdGhpcy5jaGVja2luZ0ludmFsaWQodGhpcy52YWx1ZSwgdGhpcy5tYXhEYXRlLCB0aGlzLm1pbkRhdGUpXHJcblxyXG4gICAgICAgICAgaWYgKGludmFsaWQgJiYgaXNWYWxpZCkge1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlTW9kZWwodGhpcy5kYXRlTW9kZWwsIHRoaXMudGltZU1vZGVsKVxyXG4gICAgICAgICAgICB9LCAwKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKGNoYW5nZXNbJ21pbkRhdGUnXSkge1xyXG4gICAgICAgIHRoaXMuZHQudXBkYXRlKHttaW5EYXRlOiB0aGlzLm1pbkRhdGV9KVxyXG4gICAgICAgIHRoaXMudmFsdWUgJiYgdGhpcy5kdC5zZWxlY3REYXRlKGRheWpzKHRoaXMudmFsdWUpLnRvRGF0ZSgpLCB7dXBkYXRlVGltZTogdGhpcy50aW1lcGlja2VyLCBzaWxlbnQ6IHRydWV9KVxyXG5cclxuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZVZhbGlkYXRlKSB7XHJcbiAgICAgICAgICBjb25zdCBpbnZhbGlkID0gdGhpcy5pbm5lckludmFsaWRcclxuICAgICAgICAgIGNvbnN0IGlzVmFsaWQgPSB0aGlzLmNoZWNraW5nSW52YWxpZCh0aGlzLnZhbHVlLCB0aGlzLm1heERhdGUsIHRoaXMubWluRGF0ZSlcclxuXHJcbiAgICAgICAgICBpZiAoaW52YWxpZCAmJiBpc1ZhbGlkKSB7XHJcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWVNb2RlbCh0aGlzLmRhdGVNb2RlbCwgdGhpcy50aW1lTW9kZWwpXHJcbiAgICAgICAgICAgIH0sIDApXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldERhdGVWYWx1ZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAke3RoaXMuZGF0ZU1vZGVsLnZpZXd9JHt0aGlzLnRpbWVNb2RlbC52aWV3ID8gJyAnICsgdGhpcy50aW1lTW9kZWwudmlldyA6ICcnfWBcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0Q2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAke0lucHV0RGF0ZVNpemVzRW51bVt0aGlzLnNpemVdfSAke3RoaXMuY3VzdG9tQ2xhc3Nlc30gJHt0aGlzLmNoZWNrVmFsaWRDbGFzc2VzfWBcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0IGlzVmFsaWRNb2RlbHMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gIXRoaXMuZGF0ZU1vZGVsLmludmFsaWQgJiYgKHRoaXMudGltZXBpY2tlciA/ICF0aGlzLnRpbWVNb2RlbC5pbnZhbGlkIDogdHJ1ZSlcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgaXNWaWV3Q2xlYW5JY29uKCkge1xyXG4gICAgcmV0dXJuICEhdGhpcy5kYXRlSW5wdXQ/Lm5hdGl2ZUVsZW1lbnQudmFsdWVcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY2hlY2tWYWxpZENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmNoZWNrSW52YWxpZCA9PT0gZmFsc2UgP1xyXG4gICAgICAnbXJ4LWlucHV0LWNoZWNrZWQtc3VjY2VzcycgOlxyXG4gICAgICB0aGlzLmNoZWNrSW52YWxpZCA9PT0gdHJ1ZSA/ICdtcngtaW5wdXQtY2hlY2tlZC1lcnJvcicgOiAnJ1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfY2hlY2tFeHRyYVRpbWUoKSB7XHJcbiAgICBpZiAodGhpcy5hZGRNYXhUaW1lICYmICF0aGlzLnRpbWVwaWNrZXIpIHtcclxuICAgICAgdGhpcy50aW1lTW9kZWwuaG91ciA9ICcyMydcclxuICAgICAgdGhpcy50aW1lTW9kZWwubWludXRlID0gJzU5J1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuYWRkTWluVGltZSAmJiAhdGhpcy50aW1lcGlja2VyKSB7XHJcbiAgICAgIHRoaXMudGltZU1vZGVsLmhvdXIgPSAnMDAnXHJcbiAgICAgIHRoaXMudGltZU1vZGVsLm1pbnV0ZSA9ICcwMCdcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmFkZE1heFRpbWVPYmogJiYgIXRoaXMudGltZXBpY2tlcikge1xyXG4gICAgICB0aGlzLnRpbWVNb2RlbC5ob3VyID0gdGhpcy5hZGRNYXhUaW1lT2JqLmhvdXJcclxuICAgICAgdGhpcy50aW1lTW9kZWwubWludXRlID0gdGhpcy5hZGRNYXhUaW1lT2JqLm1pbnV0ZVxyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuYWRkTWluVGltZU9iaiAmJiAhdGhpcy50aW1lcGlja2VyKSB7XHJcbiAgICAgIHRoaXMudGltZU1vZGVsLmhvdXIgPSB0aGlzLmFkZE1pblRpbWVPYmouaG91clxyXG4gICAgICB0aGlzLnRpbWVNb2RlbC5taW51dGUgPSB0aGlzLmFkZE1pblRpbWVPYmoubWludXRlXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2xpY2tUb0ljb25DYWxlbmRhcigpOiB2b2lkIHtcclxuICAgIHRoaXMuZGF0ZUlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsaWNrVG9JY29uQ2xlYXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLmR0LnNldFZpZXdEYXRlKG5ldyBEYXRlKCkpXHJcbiAgICB0aGlzLmR0ICYmIHRoaXMuZHQuY2xlYXIoKVxyXG4gICAgdGhpcy5kYXRlTW9kZWwgPSBkYXRlTW9kZWxDb25zdGFudFxyXG4gICAgdGhpcy50aW1lTW9kZWwgPSB0aW1lTW9kZWxDb25zdGFudFxyXG5cclxuICAgIGlmICghdGhpcy5yYW5nZSkge1xyXG4gICAgICB0aGlzLnVwZGF0ZVZhbHVlKCcnKVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuaW5uZXJJbnZhbGlkID0gZmFsc2VcclxuICAgIHRoaXMuaW5uZXJJbnZhbGlkTWVzc2FnZSA9ICcnXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVZhbHVlTW9kZWwoZGF0ZU1vZGVsOiBEYXRlTW9kZWwsIHRpbWVNb2RlbDogVGltZU1vZGVsLCBib2w6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG4gICAgaWYgKGRhdGVNb2RlbC52aWV3ID09PSAnJykge1xyXG4gICAgICB0aGlzLmNsaWNrVG9JY29uQ2xlYXIoKVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgZGF0ZSA9IGZvcm1hdHRpbmdGcm9tTW9kZWxzKGRhdGVNb2RlbCwgdGltZU1vZGVsLCB0aGlzLnRpbWVwaWNrZXIgfHwgdGhpcy5hZGRNYXhUaW1lIHx8IHRoaXMuYWRkTWluVGltZSlcclxuXHJcbiAgICAgIGNvbnN0IGZvcm1hdHRpbmdEYXRlID0gZm9ybWF0dGluZ1RvTW9zY293VGltZXpvbmUoZGF0ZS50b0lTT1N0cmluZygpLCB0aGlzLnRpbWV6b25lKVxyXG5cclxuICAgICAgY29uc3QgaXNWYWxpZCA9IHRoaXMuY2hlY2tpbmdJbnZhbGlkKGZvcm1hdHRpbmdEYXRlLCB0aGlzLm1heERhdGUsIHRoaXMubWluRGF0ZSlcclxuXHJcbiAgICAgIGlmIChkYXRlLmlzVmFsaWQoKSAmJiBpc1ZhbGlkKSB7XHJcbiAgICAgICAgdGhpcy5kdC5zZWxlY3REYXRlKGZvcm1hdHRpbmdGcm9tTW9kZWxzKGRhdGVNb2RlbCwgdGltZU1vZGVsLCB0aGlzLnRpbWVwaWNrZXIpLnRvSVNPU3RyaW5nKCksIHtcclxuICAgICAgICAgIHVwZGF0ZVRpbWU6IHRoaXMudGltZXBpY2tlcixcclxuICAgICAgICAgIHNpbGVudDogdHJ1ZVxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgdGhpcy5kdC5zZXRWaWV3RGF0ZShmb3JtYXR0aW5nRnJvbU1vZGVscyhkYXRlTW9kZWwsIHRpbWVNb2RlbCwgdGhpcy50aW1lcGlja2VyKS50b0lTT1N0cmluZygpKVxyXG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoZm9ybWF0dGluZ0RhdGUpXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlVmFsdWVzQXJyYXkgPSAodmFsdWVzOiBhbnlbXSkgPT4ge1xyXG4gICAgICBjb25zdCBkYXRlcyA9IHZhbHVlcy5tYXAoZGF0ZSA9PiB7XHJcbiAgICAgICAgcmV0dXJuICBmb3JtYXR0aW5nVG9Nb3Njb3dUaW1lem9uZShkYXRlLnRvSVNPU3RyaW5nKCksIHRoaXMudGltZXpvbmUpXHJcbiAgICAgIH0pXHJcblxyXG4gICAgdGhpcy51cGRhdGVWYWx1ZShkYXRlcylcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZGF0ZUZvcm1hdHRpbmdPdXRwdXQodmFsdWU6IERhdGUpOiBzdHJpbmcge1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHJldHVybiBkYXlqcyh2YWx1ZSkudG9JU09TdHJpbmcoKVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuICcnXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGludmFsaWRNZXNzYWdlT24obWVzc2FnZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLmlubmVySW52YWxpZCA9IHRydWVcclxuICAgIHRoaXMuaW5uZXJJbnZhbGlkTWVzc2FnZSA9IG1lc3NhZ2VcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaW52YWxpZE1lc3NhZ2VPZmYoKTogdm9pZCB7XHJcbiAgICB0aGlzLmlubmVySW52YWxpZCA9IGZhbHNlXHJcbiAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSAnJ1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZURhdGVWYWx1ZShkYXRlSW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnQpOiB2b2lkIHtcclxuICAgIGNvbnN0IHNlbGVjdGlvblN0YXJ0ID0gZGF0ZUlucHV0LnNlbGVjdGlvblN0YXJ0XHJcbiAgICB0aGlzLmRhdGVNb2RlbCA9IHZhbGlkYXRlRGF0ZU1vZGVsKGRhdGVJbnB1dC52YWx1ZSlcclxuICAgIHRoaXMudGltZU1vZGVsID0gdmFsaWRhdGVUaW1lTW9kZWwoZGF0ZUlucHV0LnZhbHVlKVxyXG5cclxuICAgIGRhdGVJbnB1dC52YWx1ZSA9IHRoaXMuZ2V0RGF0ZVZhbHVlXHJcbiAgICBkYXRlSW5wdXQuc2VsZWN0aW9uU3RhcnQgPSBzZWxlY3Rpb25TdGFydFxyXG4gICAgZGF0ZUlucHV0LnNlbGVjdGlvbkVuZCA9IGRhdGVJbnB1dC5zZWxlY3Rpb25TdGFydFxyXG5cclxuICAgIHRoaXMuX2NoZWNrRXh0cmFUaW1lKClcclxuXHJcbiAgICBpZiAodGhpcy5pc1ZhbGlkTW9kZWxzIHx8IHRoaXMuZGF0ZU1vZGVsLnZpZXcgPT09ICcnKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlVmFsdWVNb2RlbCh0aGlzLmRhdGVNb2RlbCwgdGhpcy50aW1lTW9kZWwpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2xpY2tUb0lucHV0KGlucHV0OiBIVE1MSW5wdXRFbGVtZW50KTogdm9pZCB7XHJcbiAgICBpZiAoaW5wdXQuc2VsZWN0aW9uU3RhcnQgPT09IGlucHV0LnNlbGVjdGlvbkVuZCAmJiAoaW5wdXQuc2VsZWN0aW9uU3RhcnQgJiYgaW5wdXQuc2VsZWN0aW9uU3RhcnQgPiAwKSkge1xyXG4gICAgICBjb25zdCB7c3RhcnQsIGVuZH0gPSBtYXJrUG9zaXRpb24oaW5wdXQuc2VsZWN0aW9uU3RhcnQsIGlucHV0LnNlbGVjdGlvbkVuZClcclxuICAgICAgaW5wdXQuc2VsZWN0aW9uU3RhcnQgPSBzdGFydFxyXG4gICAgICBpbnB1dC5zZWxlY3Rpb25FbmQgPSBlbmRcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2hlY2tpbmdJbnZhbGlkKHZhbHVlOiBzdHJpbmcsIG1heERhdGU6IHN0cmluZywgbWluRGF0ZTogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlVmFsaWRhdGUpIHtcclxuICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZU9mZigpXHJcbiAgICAgIHJldHVybiB0cnVlXHJcbiAgICB9XHJcbiAgICBpZiAobWF4RGF0ZSAmJiAoZGF5anModmFsdWUpLmRpZmYoZGF5anMobWF4RGF0ZSkpID09PSAwKSkge1xyXG4gICAgICB0aGlzLmludmFsaWRNZXNzYWdlT24oJ9CU0LDRgtCwINC4INCy0YDQtdC80Y8g0L7QutC+0L3Rh9Cw0L3QuNGPINC90LUg0LzQvtC20LXRgiDQsdGL0YLRjCDRgNCw0LLQvdCwINC00LDRgtC1INC4INCy0YDQtdC80LXQvdC4INC90LDRh9Cw0LvQsCcpXHJcbiAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgfSBlbHNlIGlmIChtYXhEYXRlICYmIChkYXlqcyh2YWx1ZSkuZGlmZihkYXlqcyhtYXhEYXRlKSkgPiAwKSkge1xyXG4gICAgICB0aGlzLmludmFsaWRNZXNzYWdlT24oJ9CU0LDRgtCwINC+0LrQvtC90YfQsNC90LjRjyDQvdC1INC80L7QttC10YIg0LHRi9GC0Ywg0YDQsNC90YzRiNC1INC00LDRgtGLINC90LDRh9Cw0LvQsCcpXHJcbiAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgfSBlbHNlIGlmIChtaW5EYXRlICYmIChkYXlqcyh2YWx1ZSkuZGlmZihkYXlqcyhtaW5EYXRlKSkgPT09IDApKSB7XHJcbiAgICAgIHRoaXMuaW52YWxpZE1lc3NhZ2VPbign0JTQsNGC0LAg0Lgg0LLRgNC10LzRjyDQvtC60L7QvdGH0LDQvdC40Y8g0L3QtSDQvNC+0LbQtdGCINCx0YvRgtGMINGA0LDQstC90LAg0LTQsNGC0LUg0Lgg0LLRgNC10LzQtdC90Lgg0L3QsNGH0LDQu9CwJylcclxuICAgICAgcmV0dXJuIGZhbHNlXHJcbiAgICB9IGVsc2UgaWYgKG1pbkRhdGUgJiYgZGF5anModmFsdWUpLmRpZmYoZGF5anMobWluRGF0ZSkpIDwgMCkge1xyXG4gICAgICB0aGlzLmludmFsaWRNZXNzYWdlT24oJ9CU0LDRgtCwINC+0LrQvtC90YfQsNC90LjRjyDQvdC1INC80L7QttC10YIg0LHRi9GC0Ywg0YDQsNC90YzRiNC1INC00LDRgtGLINC90LDRh9Cw0LvQsCcpXHJcbiAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZU9mZigpXHJcbiAgICAgIHJldHVybiB0cnVlXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgd3JpdGVWYWx1ZShvdXRzaWRlVmFsdWU6IElucHV0RGF0ZVRpbWVWYWx1ZVR5cGVzKSB7XHJcbiAgICBpZiAob3V0c2lkZVZhbHVlKSB7XHJcbiAgICAgIGlmICh0eXBlb2Ygb3V0c2lkZVZhbHVlID09PSAnc3RyaW5nJykge1xyXG4gICAgICAgIHRoaXMudmFsdWUgPSBjbGVhbkRhdGUob3V0c2lkZVZhbHVlKTtcclxuICAgICAgICB0aGlzLmRhdGVNb2RlbCA9IGRhdGVNb2RlbFZhbHVlUGFyc2Uob3V0c2lkZVZhbHVlLCB0aGlzLnRpbWV6b25lKVxyXG4gICAgICAgIHRoaXMudGltZU1vZGVsID0gdGltZU1vZGVsVmFsdWVQYXJzZShvdXRzaWRlVmFsdWUsIHRoaXMudGltZXpvbmUpXHJcblxyXG4gICAgICAgIHRoaXMuY2hlY2tpbmdJbnZhbGlkKG91dHNpZGVWYWx1ZSwgdGhpcy5tYXhEYXRlLCB0aGlzLm1pbkRhdGUpXHJcblxyXG4gICAgICAgIHRoaXMuZHQuc2VsZWN0RGF0ZShmb3JtYXR0aW5nRnJvbU1vZGVscyh0aGlzLmRhdGVNb2RlbCwgdGhpcy50aW1lTW9kZWwsIHRoaXMudGltZXBpY2tlcikudG9JU09TdHJpbmcoKSwge1xyXG4gICAgICAgICAgdXBkYXRlVGltZTogdGhpcy50aW1lcGlja2VyLFxyXG4gICAgICAgICAgc2lsZW50OiB0cnVlXHJcbiAgICAgICAgfSlcclxuICAgICAgICB0aGlzLmR0LnNldFZpZXdEYXRlKGZvcm1hdHRpbmdGcm9tTW9kZWxzKHRoaXMuZGF0ZU1vZGVsLCB0aGlzLnRpbWVNb2RlbCwgdGhpcy50aW1lcGlja2VyKS50b0lTT1N0cmluZygpKVxyXG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBvdXRzaWRlVmFsdWUgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgdGhpcy52YWx1ZSA9IG91dHNpZGVWYWx1ZS5tYXAoZGF0ZSA9PiBjbGVhbkRhdGUoZGF0ZSkpXHJcblxyXG4gICAgICAgIHRoaXMuZHQuc2VsZWN0RGF0ZSh0aGlzLnZhbHVlLCB7XHJcbiAgICAgICAgICB1cGRhdGVUaW1lOiB0aGlzLnRpbWVwaWNrZXIsXHJcbiAgICAgICAgICBzaWxlbnQ6IHRydWVcclxuICAgICAgICB9KVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy5kdCkge1xyXG4gICAgICAgIHRoaXMuZHQuY2xlYXIoe3NpbGVudDogdHJ1ZX0pXHJcbiAgICAgICAgdGhpcy52YWx1ZSA9ICcnXHJcbiAgICAgICAgdGhpcy5kYXRlTW9kZWwgPSBkYXRlTW9kZWxDb25zdGFudFxyXG4gICAgICAgIHRoaXMudGltZU1vZGVsID0gdGltZU1vZGVsQ29uc3RhbnRcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvbkNoYW5nZSA9ICh2YWx1ZTogYW55KSA9PiB7XHJcbiAgfTtcclxuICBwcml2YXRlIG9uVG91Y2hlZCA9ICgpID0+IHtcclxuICB9O1xyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHt9KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xyXG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlVmFsdWUoaW5zaWRlVmFsdWU6IElucHV0RGF0ZVRpbWVWYWx1ZVR5cGVzKSB7XHJcbiAgICB0aGlzLnZhbHVlID0gaW5zaWRlVmFsdWVcclxuICAgIHRoaXMuY2hhbmdlZC5lbWl0KGluc2lkZVZhbHVlKTtcclxuICAgIHRoaXMubW9kZWxDaGFuZ2UuZW1pdCh7dmFsdWU6IGluc2lkZVZhbHVlLCBpZDogdGhpcy51dWlkfSlcclxuICAgIHRoaXMub25DaGFuZ2UoaW5zaWRlVmFsdWUpO1xyXG4gICAgdGhpcy5vblRvdWNoZWQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkJsdXIoZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5ibHVycmVkLmVtaXQoeyB2YWx1ZTogdGhpcy52YWx1ZSwgaWQ6IHRoaXMudXVpZCB9KVxyXG4gICAgfSlcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gICAgY2xhc3M9XCJtcngtaW5wdXQtZGF0ZVwiXHJcbiAgICBbY2xhc3MubXJ4LWlucHV0LWVycm9yXT1cImludmFsaWQgfHwgaW5uZXJJbnZhbGlkXCJcclxuICAgIFtjbGFzcy5tcngtaW5wdXQtcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgW2NsYXNzXT1cImdldENsYXNzZXNcIlxyXG4+XHJcbiAgPGRpdiBjbGFzcz1cIlwiPlxyXG4gICAgPG1yeC1sYWJlbCAqbmdJZj1cInRpbWVMYWJlbCB8fCBkYXRlTGFiZWxcIj57eyBkYXRlTGFiZWwgfX08L21yeC1sYWJlbD5cclxuICAgIDxkaXYgY2xhc3M9XCJtcngtaW5wdXQtZGF0ZV9fd3JhcHBlclwiPlxyXG4gICAgICA8aW5wdXRcclxuICAgICAgICAgICNkYXRlSW5wdXRcclxuICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgIGF1dG9jb21wbGV0ZT1cIm5vcGVcIlxyXG4gICAgICAgICAgY2xhc3M9XCJtcngtaW5wdXQtZGF0ZV9faW5wdXQgbXJ4LWlucHV0LWRhdGVfX2RhdGVcIlxyXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImRhdGVQbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICBbbmdNb2RlbF09XCJnZXREYXRlVmFsdWVcIlxyXG4gICAgICAgICAgW21hc2tdPVwiJzAwLjAwLjAwMDAgMDA6bTAnXCJcclxuICAgICAgICAgIFtsZWFkWmVyb0RhdGVUaW1lXT1cInRydWVcIlxyXG4gICAgICAgICAgW3ZhbGlkYXRpb25dPVwiZmFsc2VcIlxyXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICAgIFtyZWFkT25seV09XCIhaXNNYW51YWxJbnB1dFwiXHJcbiAgICAgICAgICAoaW5wdXQpPVwidXBkYXRlRGF0ZVZhbHVlKGRhdGVJbnB1dClcIlxyXG4gICAgICAgICAgKGNsaWNrKT1cImNsaWNrVG9JbnB1dChkYXRlSW5wdXQpXCJcclxuICAgICAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCJcclxuICAgICAgLz5cclxuXHJcbiAgICAgIDxkaXYgKm5nSWY9XCIhZGlzYWJsZWRcIiBjbGFzcz1cIm1yeC1pbnB1dC1kYXRlX19pY29uc1wiPlxyXG4gICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICBjbGFzcz1cIm1yeC1pY29uIGljb24tY2xvc2VcIlxyXG4gICAgICAgICAgICAgICpuZ0lmPVwiaXNWaWV3Q2xlYW5JY29uXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwiY2xpY2tUb0ljb25DbGVhcigpXCJcclxuICAgICAgICAgICAgICBbY2xhc3MuaWNvbi1mb250LTE2XT1cInNpemUgPT09ICdzbWFsbCdcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5pY29uLWZvbnQtMjRdPVwic2l6ZSA9PT0gJ21lZGl1bScgfHwgc2l6ZSA9PT0gJ2xhcmdlJ1wiXHJcbiAgICAgICAgICA+PC9zcGFuPlxyXG4gICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgIGNsYXNzPVwibXJ4LWljb24gaWNvbi1jYWxlbmRhclwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJjbGlja1RvSWNvbkNhbGVuZGFyKClcIlxyXG4gICAgICAgICAgICBbY2xhc3MuaWNvbi1mb250LTE2XT1cInNpemUgPT09ICdzbWFsbCdcIlxyXG4gICAgICAgICAgICBbY2xhc3MuaWNvbi1mb250LTI0XT1cInNpemUgPT09ICdtZWRpdW0nIHx8IHNpemUgPT09ICdsYXJnZSdcIlxyXG4gICAgICAgID48L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gICAgPG1yeC1lcnJvci1tZXNzYWdlXHJcbiAgICAgICAgKm5nSWY9XCJpbnZhbGlkOyBlbHNlIGlubmVySW52YWxpZFRlbXBsYXRlXCJcclxuICAgICAgICBbaW52YWxpZE1lc3NhZ2VdPVwiaW52YWxpZE1lc3NhZ2VcIlxyXG4gICAgPjwvbXJ4LWVycm9yLW1lc3NhZ2U+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZSAjaW5uZXJJbnZhbGlkVGVtcGxhdGU+XHJcbiAgICA8bXJ4LWVycm9yLW1lc3NhZ2VcclxuICAgICAgICAqbmdJZj1cImlubmVySW52YWxpZFwiXHJcbiAgICAgICAgW2ludmFsaWRNZXNzYWdlXT1cImlubmVySW52YWxpZE1lc3NhZ2VcIlxyXG4gICAgPjwvbXJ4LWVycm9yLW1lc3NhZ2U+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG1yeC1zYXZlLXN0YXRlIFtpZF09XCJ1dWlkXCIgW2ZpZWxkc109XCJmaWVsZHNcIj48L21yeC1zYXZlLXN0YXRlPlxyXG48L2Rpdj5cclxuXHJcblxyXG5cclxuIl19
|
|
@@ -4,4 +4,4 @@ export var InputDateSizesEnum;
|
|
|
4
4
|
InputDateSizesEnum["medium"] = "mrx-input-date-md";
|
|
5
5
|
InputDateSizesEnum["large"] = "mrx-input-date-lg";
|
|
6
6
|
})(InputDateSizesEnum || (InputDateSizesEnum = {}));
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS10aW1lLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9pbnB1dC1kYXRlLXRpbWUvaW5wdXQtZGF0ZS10aW1lLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksa0JBSVg7QUFKRCxXQUFZLGtCQUFrQjtJQUM1QixpREFBNkIsQ0FBQTtJQUM3QixrREFBOEIsQ0FBQTtJQUM5QixpREFBNkIsQ0FBQTtBQUMvQixDQUFDLEVBSlcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQUk3QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIElucHV0RGF0ZVNpemVzRW51bSB7XHJcbiAgJ3NtYWxsJyA9ICdtcngtaW5wdXQtZGF0ZS1zbScsXHJcbiAgJ21lZGl1bScgPSAnbXJ4LWlucHV0LWRhdGUtbWQnLFxyXG4gICdsYXJnZScgPSAnbXJ4LWlucHV0LWRhdGUtbGcnLFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBJbnB1dERhdGVTaXplc1R5cGVzID0gJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJztcclxuXHJcbi8qKlxyXG4gKiDQn9GA0LjQvNC10YAg0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y8gPGJyLz5cclxuICogbWVzc2FnZT1cItCd0LUg0LHQvtC70LXQtSB7ZGlmZn0g0LTQvdC10LlcIiA8YnIvPlxyXG4gKiBAcGFyYW0gaG91ciA9IDAgLSAyM1xyXG4gKiBAcGFyYW0gbWludXRlID0gMCAtIDU5XHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIEV4dHJhVGltZSB7XHJcbiAgaG91cjogc3RyaW5nXHJcbiAgbWludXRlOiBzdHJpbmdcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS10aW1lLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtZGF0ZS10aW1lL21vZGVscy9pbnB1dC1kYXRlLXRpbWUubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIElucHV0RGF0ZVRpbWVWYWx1ZVR5cGVzID0gc3RyaW5nIHwgc3RyaW5nW107XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElucHV0RGF0ZVRpbWVWYWx1ZVdpdGhJZCB7XHJcbiAgdmFsdWU6IElucHV0RGF0ZVRpbWVWYWx1ZVR5cGVzLFxyXG4gIGlkOiBzdHJpbmdcclxufSJdfQ==
|
|
@@ -356,4 +356,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
|
|
|
356
356
|
}], modelChange: [{
|
|
357
357
|
type: Output
|
|
358
358
|
}] } });
|
|
359
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9pbnB1dC1kYXRlcGlja2VyL2lucHV0LWRhdGVwaWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtZGF0ZXBpY2tlci9pbnB1dC1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBRVQsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBRUwsTUFBTSxFQUVOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxhQUFhLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUNMLGtCQUFrQixFQUluQixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNsRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQUUsRUFBRSxJ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QXhCLEtBQUs7Z0JBRVUsY0FBYztzQkFBN0IsS0FBSztnQkFDVSxpQkFBaUI7c0JBQWhDLEtBQUs7Z0JBQ1UsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxjQUFjO3NCQUE3QixLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBRVUsY0FBYztzQkFBN0IsS0FBSztnQkFFa0IsU0FBUztzQkFBaEMsU0FBUzt1QkFBQyxXQUFXO2dCQUVMLE9BQU87c0JBQXZCLE1BQU07Z0JBQ1UsV0FBVztzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgZm9yd2FyZFJlZixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT3V0cHV0LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IEFpckRhdGVwaWNrZXIgZnJvbSAnYWlyLWRhdGVwaWNrZXInO1xyXG5pbXBvcnQge1xyXG4gIElucHV0RGF0ZVNpemVzRW51bSxcclxuICBJbnB1dERhdGVTaXplc1R5cGVzLCBJbnB1dERhdGVUaW1lVmFsaWRhdGlvbixcclxuICBJbnB1dERhdGVUaW1lVmFsdWVUeXBlcyxcclxuICBJbnB1dERhdGVUaW1lVmFsdWVXaXRoSWRcclxufSBmcm9tICcuL2lucHV0LWRhdGVwaWNrZXIuZW51bSc7XHJcbmltcG9ydCB7IERhdGVNb2RlbCwgVGltZU1vZGVsLCB2YWxpZGF0ZURhdGVNb2RlbCwgdmFsaWRhdGVUaW1lTW9kZWwgfSBmcm9tICcuL2hlbHBlcnMvdmFsaWRhdGUtdmFsdWUtbW9kZWxzJztcclxuaW1wb3J0IHsgZGF0ZU1vZGVsQ29uc3RhbnQsIHRpbWVNb2RlbENvbnN0YW50IH0gZnJvbSAnLi9jb25zdGFudHMvdmFsdWUtbW9kZWxzJztcclxuaW1wb3J0IHsgZGF0ZU1vZGVsVmFsdWVQYXJzZSwgdGltZU1vZGVsVmFsdWVQYXJzZSB9IGZyb20gJy4vaGVscGVycy92YWx1ZS1wYXJzZXInO1xyXG5pbXBvcnQgeyBtYXJrUG9zaXRpb24gfSBmcm9tICcuL2hlbHBlcnMvY3Vyc29yLXBvc2l0aW9uJztcclxuaW1wb3J0IHsgY2xlYW5EYXRlIH0gZnJvbSAnLi9oZWxwZXJzL2NsZWFuLWRhdGUnO1xyXG5pbXBvcnQgeyBnZXREYXRlRGF5anNPYmplY3QgfSBmcm9tICcuL2hlbHBlcnMvZ2V0LWRhdGUtZGF5anMtb2JqZWN0JztcclxuaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcclxuaW1wb3J0IHsgdjQgYXMgdXVpZHY0IH0gZnJvbSAndXVpZCc7XHJcbmltcG9ydCB7IGNyZWF0ZVBvcHBlciB9IGZyb20gJ0Bwb3BwZXJqcy9jb3JlJztcclxuaW1wb3J0IGxvY2FsZUVuIGZyb20gJ2Fpci1kYXRlcGlja2VyL2xvY2FsZS9lbic7XHJcbmltcG9ydCBsb2NhbGVSdSBmcm9tICdhaXItZGF0ZXBpY2tlci9sb2NhbGUvcnUnO1xyXG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgZ2V0RGF0ZU9iamVjdCB9IGZyb20gJy4vaGVscGVycy9nZXQtZGF0ZS1vYmplY3QnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtcngtaW5wdXQtZGF0ZXBpY2tlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICdpbnB1dC1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnaW5wdXQtZGF0ZXBpY2tlci5jb21wb25lbnRzLmxlc3MnXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHsgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IElucHV0RGF0ZXBpY2tlckNvbXBvbmVudCksIG11bHRpOiB0cnVlIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnB1dERhdGVwaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0IHtcclxuICBwdWJsaWMgZHQ6IGFueTtcclxuICBwdWJsaWMgdmFsdWU6IGFueSA9ICcnO1xyXG4gIHB1YmxpYyBkYXRlTW9kZWw6IERhdGVNb2RlbCA9IGRhdGVNb2RlbENvbnN0YW50O1xyXG4gIHB1YmxpYyB0aW1lTW9kZWw6IFRpbWVNb2RlbCA9IHRpbWVNb2RlbENvbnN0YW50O1xyXG5cclxuICBwdWJsaWMgaW5uZXJJbnZhbGlkID0gZmFsc2U7XHJcbiAgcHVibGljIGlubmVySW52YWxpZE1lc3NhZ2UgPSAnJztcclxuXHJcbiAgLy8gU0FWRSBTVEFURVxyXG4gIHB1YmxpYyB1dWlkOiBzdHJpbmcgPSB1dWlkdjQoKTtcclxuICBASW5wdXQoKSBwdWJsaWMgZmllbGRzOiBGaWVsZFtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBzaXplOiBJbnB1dERhdGVTaXplc1R5cGVzID0gJ2xhcmdlJztcclxuICBASW5wdXQoKSBwdWJsaWMgZm9ybWF0ID0gJ1lZWVktTU0tREQgSEg6bW0nO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBsb2NhbGU6ICdydScgfCAnZW4nID0gJ3J1JztcclxuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tQ2xhc3NlcyA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBkYXRlTGFiZWwgPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgdGltZUxhYmVsID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGRhdGVQbGFjZWhvbGRlciA9ICfQtNC0LtC80Lwu0LPQs9Cz0LMnOyAvLyBkZXByZWNhdGVkXHJcbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyID0gJ9C00LQu0LzQvC7Qs9Cz0LPQsyc7XHJcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIHJlcXVpcmVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIHRpbWVwaWNrZXIgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgbWluRGF0ZSA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhEYXRlID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGlubGluZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjbG9zYWJsZSA9IHRydWU7XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBsZWFkWmVyb0RhdGVUaW1lID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIG1hc2sgPSAnMDAuMDAuMDAwMCAwMDptMCc7XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBjb250YWluZXIgPSAnZGl2LnBhZ2Utd3JhcHBlcic7XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyB2YWxpZGF0aW9uVHlwZTogSW5wdXREYXRlVGltZVZhbGlkYXRpb24gPSAnZGVmYXVsdCc7XHJcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVWYWxpZGF0aW9uID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZE1lc3NhZ2U6IHN0cmluZyB8IHN0cmluZ1tdID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGNoZWNrSW52YWxpZDogdHJ1ZSB8IGZhbHNlIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBpc1Nob3dNZXNzYWdlcyA9IHRydWU7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2RhdGVJbnB1dCcpIGRhdGVJbnB1dCE6IEVsZW1lbnRSZWY7XHJcblxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgY2hhbmdlZDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBtb2RlbENoYW5nZTogRXZlbnRFbWl0dGVyPElucHV0RGF0ZVRpbWVWYWx1ZVdpdGhJZD4gPSBuZXcgRXZlbnRFbWl0dGVyPElucHV0RGF0ZVRpbWVWYWx1ZVdpdGhJZD4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmR0ID0gbmV3IEFpckRhdGVwaWNrZXIodGhpcy5kYXRlSW5wdXQubmF0aXZlRWxlbWVudCwge1xyXG4gICAgICBjb250YWluZXI6IHRoaXMuY29udGFpbmVyLFxyXG4gICAgICBsb2NhbGU6IHRoaXMuZ2V0TG9jYWxlLFxyXG4gICAgICBhdXRvQ2xvc2U6IHRydWUsXHJcbiAgICAgIG11bHRpcGxlRGF0ZXNTZXBhcmF0b3I6ICcgLSAnLFxyXG4gICAgICB0aW1lcGlja2VyOiB0aGlzLnRpbWVwaWNrZXIsXHJcbiAgICAgIG1pbkRhdGU6IHRoaXMubWluRGF0ZSA/IGRheWpzKHRoaXMubWluRGF0ZSwgdGhpcy5mb3JtYXQpLnRvRGF0ZSgpIDogJycsXHJcbiAgICAgIG1heERhdGU6IHRoaXMubWF4RGF0ZSA/IGRheWpzKHRoaXMubWF4RGF0ZSwgdGhpcy5mb3JtYXQpLnRvRGF0ZSgpIDogJycsXHJcbiAgICAgIGlubGluZTogdGhpcy5pbmxpbmUsXHJcbiAgICAgIHBvc2l0aW9uKHsgJGRhdGVwaWNrZXIsICR0YXJnZXQsICRwb2ludGVyLCBkb25lIH0pIHtcclxuICAgICAgICBsZXQgcG9wcGVyID0gY3JlYXRlUG9wcGVyKCR0YXJnZXQsICRkYXRlcGlja2VyLCB7XHJcbiAgICAgICAgICBwbGFjZW1lbnQ6ICdib3R0b20tc3RhcnQnLFxyXG4gICAgICAgICAgbW9kaWZpZXJzOiBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBuYW1lOiAnZmxpcCcsXHJcbiAgICAgICAgICAgICAgb3B0aW9uczoge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzoge1xyXG4gICAgICAgICAgICAgICAgICB0b3A6IDY0XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgbmFtZTogJ29mZnNldCcsXHJcbiAgICAgICAgICAgICAgb3B0aW9uczoge1xyXG4gICAgICAgICAgICAgICAgb2Zmc2V0OiBbMCwgMTBdXHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgbmFtZTogJ2Fycm93JyxcclxuICAgICAgICAgICAgICBvcHRpb25zOiB7XHJcbiAgICAgICAgICAgICAgICBlbGVtZW50OiAkcG9pbnRlclxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgXVxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICByZXR1cm4gZnVuY3Rpb24gY29tcGxldGVIaWRlKCkge1xyXG4gICAgICAgICAgcG9wcGVyLmRlc3Ryb3koKTtcclxuICAgICAgICAgIGRvbmUoKTtcclxuICAgICAgICB9O1xyXG4gICAgICB9LFxyXG4gICAgICBvblNlbGVjdDogKHsgZGF0ZSwgZm9ybWF0dGVkRGF0ZSwgZGF0ZXBpY2tlciB9KSA9PiB7XHJcblxyXG4gICAgICAgIGlmIChkYXRlIGluc3RhbmNlb2YgRGF0ZSAmJiB0eXBlb2YgZm9ybWF0dGVkRGF0ZSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gdmFsaWRhdGVEYXRlTW9kZWwoZm9ybWF0dGVkRGF0ZSk7XHJcbiAgICAgICAgICB0aGlzLnRpbWVNb2RlbCA9IHZhbGlkYXRlVGltZU1vZGVsKGZvcm1hdHRlZERhdGUpO1xyXG5cclxuICAgICAgICAgIGlmICh0aGlzLmlzVmFsaWRNb2RlbHMpIHtcclxuICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZU1vZGVsKHRoaXMuZGF0ZU1vZGVsLCB0aGlzLnRpbWVNb2RlbCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmR0KSB7XHJcbiAgICAgIGlmIChjaGFuZ2VzWydtYXhEYXRlJ10pIHtcclxuICAgICAgICBpZiAodGhpcy52YWxpZGF0aW9uVHlwZSA9PT0gJ2RvdWJsZScpIHtcclxuICAgICAgICAgIGNvbnN0IGludmFsaWQgPSB0aGlzLmlubmVySW52YWxpZDtcclxuICAgICAgICAgIHRoaXMuZHQudXBkYXRlKHsgbWF4RGF0ZTogdGhpcy5tYXhEYXRlID8gZGF5anModGhpcy5tYXhEYXRlLCB0aGlzLmZvcm1hdCkudG9EYXRlKCkgOiAnJyB9KTtcclxuICAgICAgICAgIHRoaXMudmFsdWUgJiYgdGhpcy5kdC5zZWxlY3REYXRlKGRheWpzKHRoaXMudmFsdWUsIHRoaXMuZm9ybWF0KS50b0RhdGUoKSwgeyB1cGRhdGVUaW1lOiB0aGlzLnRpbWVwaWNrZXIsIHNpbGVudDogdHJ1ZSB9KTtcclxuICAgICAgICAgIGNvbnN0IGlzVmFsaWQgPSB0aGlzLmRpc2FibGVWYWxpZGF0aW9uID8gdHJ1ZSA6IHRoaXMuY2hlY2tpbmdJbnZhbGlkKHRoaXMudmFsdWUsIHRoaXMubWF4RGF0ZSwgdGhpcy5taW5EYXRlKTtcclxuXHJcbiAgICAgICAgICBpZiAoaW52YWxpZCAmJiBpc1ZhbGlkKSB7XHJcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWVNb2RlbCh0aGlzLmRhdGVNb2RlbCwgdGhpcy50aW1lTW9kZWwpO1xyXG4gICAgICAgICAgICB9LCAwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgLy8gY29uc29sZS5sb2coY2hhbmdlc1snbWF4RGF0ZSddKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSBpZiAoY2hhbmdlc1snbWluRGF0ZSddKSB7XHJcbiAgICAgICAgaWYgKHRoaXMudmFsaWRhdGlvblR5cGUgPT09ICdkb3VibGUnKSB7XHJcbiAgICAgICAgICBjb25zdCBpbnZhbGlkID0gdGhpcy5pbm5lckludmFsaWQ7XHJcbiAgICAgICAgICB0aGlzLmR0LnVwZGF0ZSh7IG1pbkRhdGU6IHRoaXMubWluRGF0ZSA/IGRheWpzKHRoaXMubWluRGF0ZSwgdGhpcy5mb3JtYXQpLnRvRGF0ZSgpIDogJycgfSk7XHJcbiAgICAgICAgICB0aGlzLnZhbHVlICYmIHRoaXMuZHQuc2VsZWN0RGF0ZShkYXlqcyh0aGlzLnZhbHVlLCB0aGlzLmZvcm1hdCkudG9EYXRlKCksIHsgdXBkYXRlVGltZTogdGhpcy50aW1lcGlja2VyLCBzaWxlbnQ6IHRydWUgfSk7XHJcbiAgICAgICAgICBjb25zdCBpc1ZhbGlkID0gdGhpcy5kaXNhYmxlVmFsaWRhdGlvbiA/IHRydWUgOiB0aGlzLmNoZWNraW5nSW52YWxpZCh0aGlzLnZhbHVlLCB0aGlzLm1heERhdGUsIHRoaXMubWluRGF0ZSk7XHJcblxyXG4gICAgICAgICAgaWYgKGludmFsaWQgJiYgaXNWYWxpZCkge1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlTW9kZWwodGhpcy5kYXRlTW9kZWwsIHRoaXMudGltZU1vZGVsKTtcclxuICAgICAgICAgICAgfSwgMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIC8vIGNvbnNvbGUubG9nKGNoYW5nZXNbJ21pbkRhdGUnXSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldERhdGVWYWx1ZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAke3RoaXMuZGF0ZU1vZGVsLnZpZXd9JHt0aGlzLnRpbWVwaWNrZXIgJiYgdGhpcy50aW1lTW9kZWwudmlldyA/ICcgJyArIHRoaXMudGltZU1vZGVsLnZpZXcgOiAnJ31gO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYCR7SW5wdXREYXRlU2l6ZXNFbnVtW3RoaXMuc2l6ZV19ICR7dGhpcy5jdXN0b21DbGFzc2VzfSAke3RoaXMuY2hlY2tWYWxpZENsYXNzZXN9YDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0IGlzVmFsaWRNb2RlbHMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gIXRoaXMuZGF0ZU1vZGVsLmludmFsaWQgJiYgKHRoaXMudGltZXBpY2tlciA/ICF0aGlzLnRpbWVNb2RlbC5pbnZhbGlkIDogdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGlzVmlld0NsZWFuSWNvbigpIHtcclxuICAgIHJldHVybiAhIXRoaXMuZGF0ZUlucHV0Py5uYXRpdmVFbGVtZW50LnZhbHVlICYmIHRoaXMuY2xvc2FibGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGNoZWNrVmFsaWRDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5jaGVja0ludmFsaWQgPT09IGZhbHNlID9cclxuICAgICAgJ21yeC1pbnB1dC1jaGVja2VkLXN1Y2Nlc3MnIDpcclxuICAgICAgdGhpcy5jaGVja0ludmFsaWQgPT09IHRydWUgPyAnbXJ4LWlucHV0LWNoZWNrZWQtZXJyb3InIDogJyc7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldCBnZXRMb2NhbGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5sb2NhbGUgPT09ICdydScgPyB7IC4uLmxvY2FsZVJ1LCBkYXRlRm9ybWF0OiAnZGQuTU0ueXl5eScsIHRpbWVGb3JtYXQ6ICdISDptbScgfSA6IHsgLi4ubG9jYWxlRW4sIGRhdGVGb3JtYXQ6ICdkZC5NTS55eXl5JywgdGltZUZvcm1hdDogJ0hIOm1tJyB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2xpY2tUb0ljb25DYWxlbmRhcigpOiB2b2lkIHtcclxuICAgIHRoaXMuZGF0ZUlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbGlja1RvSWNvbkNsZWFyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5kdC5zZXRWaWV3RGF0ZShuZXcgRGF0ZSgpKTtcclxuICAgIHRoaXMuZHQgJiYgdGhpcy5kdC5jbGVhcigpO1xyXG4gICAgdGhpcy5kYXRlTW9kZWwgPSBkYXRlTW9kZWxDb25zdGFudDtcclxuICAgIHRoaXMudGltZU1vZGVsID0gdGltZU1vZGVsQ29uc3RhbnQ7XHJcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKCcnKTtcclxuICAgIHRoaXMuaW5uZXJJbnZhbGlkID0gZmFsc2U7XHJcbiAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSAnJztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlVmFsdWVNb2RlbChkYXRlTW9kZWw6IERhdGVNb2RlbCwgdGltZU1vZGVsOiBUaW1lTW9kZWwsIGJvbDogYm9vbGVhbiA9IGZhbHNlKSB7XHJcbiAgICBpZiAoZGF0ZU1vZGVsLnZpZXcgPT09ICcnKSB7XHJcbiAgICAgIHRoaXMuY2xpY2tUb0ljb25DbGVhcigpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgZGF0ZSA9IGdldERhdGVEYXlqc09iamVjdChkYXRlTW9kZWwsIHRpbWVNb2RlbCwgdGhpcy50aW1lcGlja2VyKTtcclxuICAgICAgY29uc3QgZm9ybWF0dGluZ0RhdGUgPSBkYXRlLmZvcm1hdCh0aGlzLmZvcm1hdCk7XHJcbiAgICAgIGNvbnN0IGlzVmFsaWQgPSB0aGlzLmRpc2FibGVWYWxpZGF0aW9uID8gdHJ1ZSA6IHRoaXMuY2hlY2tpbmdJbnZhbGlkKGZvcm1hdHRpbmdEYXRlLCB0aGlzLm1heERhdGUsIHRoaXMubWluRGF0ZSk7XHJcblxyXG4gICAgICBpZiAoZGF0ZS5pc1ZhbGlkKCkgJiYgaXNWYWxpZCkge1xyXG4gICAgICAgIHRoaXMuZHQuc2VsZWN0RGF0ZShnZXREYXRlT2JqZWN0KGRhdGVNb2RlbCwgdGltZU1vZGVsLCB0aGlzLnRpbWVwaWNrZXIpLCB7XHJcbiAgICAgICAgICB1cGRhdGVUaW1lOiB0aGlzLnRpbWVwaWNrZXIsXHJcbiAgICAgICAgICBzaWxlbnQ6IHRydWVcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLmR0LnNldFZpZXdEYXRlKGdldERhdGVPYmplY3QoZGF0ZU1vZGVsLCB0aW1lTW9kZWwsIHRoaXMudGltZXBpY2tlcikpO1xyXG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoZm9ybWF0dGluZ0RhdGUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGludmFsaWRNZXNzYWdlT24obWVzc2FnZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLmlubmVySW52YWxpZCA9IHRydWU7XHJcbiAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSBtZXNzYWdlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbnZhbGlkTWVzc2FnZU9mZigpOiB2b2lkIHtcclxuICAgIHRoaXMuaW5uZXJJbnZhbGlkID0gZmFsc2U7XHJcbiAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSAnJztcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVEYXRlVmFsdWUoZGF0ZUlucHV0OiBIVE1MSW5wdXRFbGVtZW50KTogdm9pZCB7XHJcbiAgICBjb25zdCBzZWxlY3Rpb25TdGFydCA9IGRhdGVJbnB1dC5zZWxlY3Rpb25TdGFydDtcclxuICAgIHRoaXMuZGF0ZU1vZGVsID0gdmFsaWRhdGVEYXRlTW9kZWwoZGF0ZUlucHV0LnZhbHVlKTtcclxuICAgIHRoaXMudGltZU1vZGVsID0gdmFsaWRhdGVUaW1lTW9kZWwoZGF0ZUlucHV0LnZhbHVlKTtcclxuXHJcbiAgICBkYXRlSW5wdXQudmFsdWUgPSB0aGlzLmdldERhdGVWYWx1ZTtcclxuICAgIGRhdGVJbnB1dC5zZWxlY3Rpb25TdGFydCA9IHNlbGVjdGlvblN0YXJ0O1xyXG4gICAgZGF0ZUlucHV0LnNlbGVjdGlvbkVuZCA9IGRhdGVJbnB1dC5zZWxlY3Rpb25TdGFydDtcclxuXHJcbiAgICBpZiAodGhpcy5pc1ZhbGlkTW9kZWxzIHx8IHRoaXMuZGF0ZU1vZGVsLnZpZXcgPT09ICcnKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlVmFsdWVNb2RlbCh0aGlzLmRhdGVNb2RlbCwgdGhpcy50aW1lTW9kZWwpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsaWNrVG9JbnB1dChpbnB1dDogSFRNTElucHV0RWxlbWVudCk6IHZvaWQge1xyXG4gICAgaWYgKGlucHV0LnNlbGVjdGlvblN0YXJ0ID09PSBpbnB1dC5zZWxlY3Rpb25FbmQgJiYgKGlucHV0LnNlbGVjdGlvblN0YXJ0ICYmIGlucHV0LnNlbGVjdGlvblN0YXJ0ID4gMCkpIHtcclxuICAgICAgY29uc3QgeyBzdGFydCwgZW5kIH0gPSBtYXJrUG9zaXRpb24oaW5wdXQuc2VsZWN0aW9uU3RhcnQsIGlucHV0LnNlbGVjdGlvbkVuZCk7XHJcbiAgICAgIGlucHV0LnNlbGVjdGlvblN0YXJ0ID0gc3RhcnQ7XHJcbiAgICAgIGlucHV0LnNlbGVjdGlvbkVuZCA9IGVuZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2hlY2tpbmdJbnZhbGlkKHZhbHVlOiBzdHJpbmcsIG1heERhdGU6IHN0cmluZywgbWluRGF0ZTogc3RyaW5nKSB7XHJcbiAgICBpZiAoIXRoaXMuaXNTaG93TWVzc2FnZXMpIHtcclxuICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZU9mZigpO1xyXG4gICAgICByZXR1cm4gdHJ1ZVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChtYXhEYXRlICYmIChkYXlqcyh2YWx1ZSwgdGhpcy5mb3JtYXQpLmRpZmYoZGF5anMobWF4RGF0ZSwgdGhpcy5mb3JtYXQpKSA9PT0gMCkpIHtcclxuICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZU9uKCfQlNCw0YLQsCDQuCDQstGA0LXQvNGPINC+0LrQvtC90YfQsNC90LjRjyDQvdC1INC80L7QttC10YIg0LHRi9GC0Ywg0YDQsNCy0L3QsCDQtNCw0YLQtSDQuCDQstGA0LXQvNC10L3QuCDQvdCw0YfQsNC70LAnKTtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfSBlbHNlIGlmIChtYXhEYXRlICYmIChkYXlqcyh2YWx1ZSwgdGhpcy5mb3JtYXQpLmRpZmYoZGF5anMobWF4RGF0ZSwgdGhpcy5mb3JtYXQpKSA+IDApKSB7XHJcbiAgICAgIHRoaXMuaW52YWxpZE1lc3NhZ2VPbign0JTQsNGC0LAg0L7QutC+0L3Rh9Cw0L3QuNGPINC90LUg0LzQvtC20LXRgiDQsdGL0YLRjCDRgNCw0L3RjNGI0LUg0LTQsNGC0Ysg0L3QsNGH0LDQu9CwJyk7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH0gZWxzZSBpZiAobWluRGF0ZSAmJiAoZGF5anModmFsdWUsIHRoaXMuZm9ybWF0KS5kaWZmKGRheWpzKG1pbkRhdGUsIHRoaXMuZm9ybWF0KSkgPT09IDApKSB7XHJcbiAgICAgIHRoaXMuaW52YWxpZE1lc3NhZ2VPbign0JTQsNGC0LAg0Lgg0LLRgNC10LzRjyDQvtC60L7QvdGH0LDQvdC40Y8g0L3QtSDQvNC+0LbQtdGCINCx0YvRgtGMINGA0LDQstC90LAg0LTQsNGC0LUg0Lgg0LLRgNC10LzQtdC90Lgg0L3QsNGH0LDQu9CwJyk7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH0gZWxzZSBpZiAobWluRGF0ZSAmJiBkYXlqcyh2YWx1ZSwgdGhpcy5mb3JtYXQpLmRpZmYoZGF5anMobWluRGF0ZSwgdGhpcy5mb3JtYXQpKSA8IDApIHtcclxuICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZU9uKCfQlNCw0YLQsCDQvtC60L7QvdGH0LDQvdC40Y8g0L3QtSDQvNC+0LbQtdGCINCx0YvRgtGMINGA0LDQvdGM0YjQtSDQtNCw0YLRiyDQvdCw0YfQsNC70LAnKTtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZU9mZigpO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyB3cml0ZVZhbHVlKG91dHNpZGVWYWx1ZTogSW5wdXREYXRlVGltZVZhbHVlVHlwZXMpIHtcclxuICAgIGlmIChvdXRzaWRlVmFsdWUpIHtcclxuICAgICAgdGhpcy52YWx1ZSA9IGNsZWFuRGF0ZShvdXRzaWRlVmFsdWUsIHRoaXMuZm9ybWF0KTtcclxuXHJcbiAgICAgIHRoaXMuZGF0ZU1vZGVsID0gZGF0ZU1vZGVsVmFsdWVQYXJzZShvdXRzaWRlVmFsdWUsIHRoaXMuZm9ybWF0KTtcclxuICAgICAgdGhpcy50aW1lTW9kZWwgPSB0aW1lTW9kZWxWYWx1ZVBhcnNlKG91dHNpZGVWYWx1ZSwgdGhpcy5mb3JtYXQpO1xyXG5cclxuICAgICAgaWYgKCF0aGlzLmRpc2FibGVWYWxpZGF0aW9uKSB7XHJcbiAgICAgICAgdGhpcy5jaGVja2luZ0ludmFsaWQob3V0c2lkZVZhbHVlLCB0aGlzLm1heERhdGUsIHRoaXMubWluRGF0ZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuZHQuc2VsZWN0RGF0ZShnZXREYXRlT2JqZWN0KHRoaXMuZGF0ZU1vZGVsLCB0aGlzLnRpbWVNb2RlbCwgdGhpcy50aW1lcGlja2VyKSwgeyB1cGRhdGVUaW1lOiB0aGlzLnRpbWVwaWNrZXIsIHNpbGVudDogdHJ1ZSB9KTtcclxuICAgICAgdGhpcy5kdC5zZXRWaWV3RGF0ZShnZXREYXRlT2JqZWN0KHRoaXMuZGF0ZU1vZGVsLCB0aGlzLnRpbWVNb2RlbCwgdGhpcy50aW1lcGlja2VyKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy5kdCkge1xyXG4gICAgICAgIHRoaXMuZHQuY2xlYXIoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvbkNoYW5nZSA9ICh2YWx1ZTogYW55KSA9PiB7XHJcbiAgfTtcclxuICBwcml2YXRlIG9uVG91Y2hlZCA9ICgpID0+IHtcclxuICB9O1xyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHt9KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xyXG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlVmFsdWUoaW5zaWRlVmFsdWU6IElucHV0RGF0ZVRpbWVWYWx1ZVR5cGVzKSB7XHJcbiAgICB0aGlzLnZhbHVlID0gaW5zaWRlVmFsdWU7XHJcbiAgICB0aGlzLmNoYW5nZWQuZW1pdChpbnNpZGVWYWx1ZSk7XHJcbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQoe3ZhbHVlOiBpbnNpZGVWYWx1ZSwgaWQ6IHRoaXMudXVpZH0pXHJcbiAgICB0aGlzLm9uQ2hhbmdlKGluc2lkZVZhbHVlKTtcclxuICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cIm1yeC1pbnB1dC1kYXRlXCJcclxuICBbY2xhc3MubXJ4LWlucHV0LWVycm9yXT1cImludmFsaWQgfHwgaW5uZXJJbnZhbGlkXCJcclxuICBbY2xhc3MuLWRpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICBbY2xhc3MuLXJlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICBbY2xhc3NdPVwiZ2V0Q2xhc3Nlc1wiXHJcbj5cclxuICA8ZGl2IGNsYXNzPVwiXCI+XHJcbiAgICA8bXJ4LWxhYmVsICpuZ0lmPVwidGltZUxhYmVsIHx8IGRhdGVMYWJlbFwiPnt7IGRhdGVMYWJlbCB9fTwvbXJ4LWxhYmVsPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC1kYXRlX193cmFwcGVyXCI+XHJcbiAgICAgIDxpbnB1dFxyXG4gICAgICAgICNkYXRlSW5wdXRcclxuICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgYXV0b2NvbXBsZXRlPVwibm9wZVwiXHJcbiAgICAgICAgY2xhc3M9XCJtcngtaW5wdXQtZGF0ZV9faW5wdXQgbXJ4LWlucHV0LWRhdGVfX2RhdGVcIlxyXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgICAgICAgW25nTW9kZWxdPVwiZ2V0RGF0ZVZhbHVlXCJcclxuICAgICAgICBbbWFza109XCJtYXNrXCJcclxuICAgICAgICBbbGVhZFplcm9EYXRlVGltZV09XCJsZWFkWmVyb0RhdGVUaW1lXCJcclxuICAgICAgICBbdmFsaWRhdGlvbl09XCJmYWxzZVwiXHJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkIHx8IHJlYWRvbmx5XCJcclxuICAgICAgICAoaW5wdXQpPVwidXBkYXRlRGF0ZVZhbHVlKGRhdGVJbnB1dClcIlxyXG4gICAgICAgIChjbGljayk9XCJjbGlja1RvSW5wdXQoZGF0ZUlucHV0KVwiXHJcbiAgICAgIC8+XHJcblxyXG4gICAgICA8ZGl2ICpuZ0lmPVwiIWRpc2FibGVkXCIgY2xhc3M9XCJtcngtaW5wdXQtZGF0ZV9faWNvbnNcIj5cclxuICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgIGNsYXNzPVwibXJ4LWljb24gaWNvbi1jbG9zZVwiXHJcbiAgICAgICAgICAgICpuZ0lmPVwiaXNWaWV3Q2xlYW5JY29uICYmICEoZGlzYWJsZWQgfHwgcmVhZG9ubHkpXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cImNsaWNrVG9JY29uQ2xlYXIoKVwiXHJcbiAgICAgICAgICAgIFtjbGFzcy5pY29uLWZvbnQtMTZdPVwic2l6ZSA9PT0gJ3NtYWxsJ1wiXHJcbiAgICAgICAgICAgIFtjbGFzcy5pY29uLWZvbnQtMjRdPVwic2l6ZSA9PT0gJ21lZGl1bScgfHwgc2l6ZSA9PT0gJ2xhcmdlJ1wiXHJcbiAgICAgICAgICA+PC9zcGFuPlxyXG4gICAgICAgIDxzcGFuXHJcbiAgICAgICAgICBjbGFzcz1cIm1yeC1pY29uIGljb24tY2FsZW5kYXJcIlxyXG4gICAgICAgICAgKGNsaWNrKT1cImNsaWNrVG9JY29uQ2FsZW5kYXIoKVwiXHJcbiAgICAgICAgICBbY2xhc3MuaWNvbi1mb250LTE2XT1cInNpemUgPT09ICdzbWFsbCdcIlxyXG4gICAgICAgICAgW2NsYXNzLmljb24tZm9udC0yNF09XCJzaXplID09PSAnbWVkaXVtJyB8fCBzaXplID09PSAnbGFyZ2UnXCJcclxuICAgICAgICA+PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8bXJ4LWVycm9yLW1lc3NhZ2VcclxuICAgICpuZ0lmPVwiaW52YWxpZDsgZWxzZSBpbm5lckludmFsaWRUZW1wbGF0ZVwiXHJcbiAgICBbaW52YWxpZE1lc3NhZ2VdPVwiaW52YWxpZE1lc3NhZ2VcIlxyXG4gID48L21yeC1lcnJvci1tZXNzYWdlPlxyXG5cclxuICA8bmctdGVtcGxhdGUgI2lubmVySW52YWxpZFRlbXBsYXRlPlxyXG4gICAgPG1yeC1lcnJvci1tZXNzYWdlXHJcbiAgICAgICpuZ0lmPVwiaW5uZXJJbnZhbGlkXCJcclxuICAgICAgW2ludmFsaWRNZXNzYWdlXT1cImlubmVySW52YWxpZE1lc3NhZ2VcIlxyXG4gICAgPjwvbXJ4LWVycm9yLW1lc3NhZ2U+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG1yeC1zYXZlLXN0YXRlIFtpZF09XCJ1dWlkXCIgW2ZpZWxkc109XCJmaWVsZHNcIj48L21yeC1zYXZlLXN0YXRlPlxyXG48L2Rpdj5cclxuXHJcblxyXG5cclxuIl19
|
|
359
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9pbnB1dC1kYXRlcGlja2VyL2lucHV0LWRhdGVwaWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtZGF0ZXBpY2tlci9pbnB1dC1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBRVQsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBRUwsTUFBTSxFQUVOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxhQUFhLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUNMLGtCQUFrQixFQUVuQixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNsRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQUUsRUFBRSxJ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QXhCLEtBQUs7Z0JBRVUsY0FBYztzQkFBN0IsS0FBSztnQkFDVSxpQkFBaUI7c0JBQWhDLEtBQUs7Z0JBQ1UsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxjQUFjO3NCQUE3QixLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBRVUsY0FBYztzQkFBN0IsS0FBSztnQkFFa0IsU0FBUztzQkFBaEMsU0FBUzt1QkFBQyxXQUFXO2dCQUVMLE9BQU87c0JBQXZCLE1BQU07Z0JBQ1UsV0FBVztzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgZm9yd2FyZFJlZixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT3V0cHV0LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IEFpckRhdGVwaWNrZXIgZnJvbSAnYWlyLWRhdGVwaWNrZXInO1xyXG5pbXBvcnQge1xyXG4gIElucHV0RGF0ZVNpemVzRW51bSxcclxuICBJbnB1dERhdGVTaXplc1R5cGVzLCBJbnB1dERhdGVUaW1lVmFsaWRhdGlvblxyXG59IGZyb20gJy4vaW5wdXQtZGF0ZXBpY2tlci5lbnVtJztcclxuaW1wb3J0IHsgRGF0ZU1vZGVsLCBUaW1lTW9kZWwsIHZhbGlkYXRlRGF0ZU1vZGVsLCB2YWxpZGF0ZVRpbWVNb2RlbCB9IGZyb20gJy4vaGVscGVycy92YWxpZGF0ZS12YWx1ZS1tb2RlbHMnO1xyXG5pbXBvcnQgeyBkYXRlTW9kZWxDb25zdGFudCwgdGltZU1vZGVsQ29uc3RhbnQgfSBmcm9tICcuL2NvbnN0YW50cy92YWx1ZS1tb2RlbHMnO1xyXG5pbXBvcnQgeyBkYXRlTW9kZWxWYWx1ZVBhcnNlLCB0aW1lTW9kZWxWYWx1ZVBhcnNlIH0gZnJvbSAnLi9oZWxwZXJzL3ZhbHVlLXBhcnNlcic7XHJcbmltcG9ydCB7IG1hcmtQb3NpdGlvbiB9IGZyb20gJy4vaGVscGVycy9jdXJzb3ItcG9zaXRpb24nO1xyXG5pbXBvcnQgeyBjbGVhbkRhdGUgfSBmcm9tICcuL2hlbHBlcnMvY2xlYW4tZGF0ZSc7XHJcbmltcG9ydCB7IGdldERhdGVEYXlqc09iamVjdCB9IGZyb20gJy4vaGVscGVycy9nZXQtZGF0ZS1kYXlqcy1vYmplY3QnO1xyXG5pbXBvcnQgZGF5anMgZnJvbSAnZGF5anMnO1xyXG5pbXBvcnQgeyB2NCBhcyB1dWlkdjQgfSBmcm9tICd1dWlkJztcclxuaW1wb3J0IHsgY3JlYXRlUG9wcGVyIH0gZnJvbSAnQHBvcHBlcmpzL2NvcmUnO1xyXG5pbXBvcnQgbG9jYWxlRW4gZnJvbSAnYWlyLWRhdGVwaWNrZXIvbG9jYWxlL2VuJztcclxuaW1wb3J0IGxvY2FsZVJ1IGZyb20gJ2Fpci1kYXRlcGlja2VyL2xvY2FsZS9ydSc7XHJcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBnZXREYXRlT2JqZWN0IH0gZnJvbSAnLi9oZWxwZXJzL2dldC1kYXRlLW9iamVjdCc7XHJcbmltcG9ydCB7IElucHV0RGF0ZXBpY2tlclZhbHVlVHlwZXMsIElucHV0RGF0ZXBpY2tlclZhbHVlV2l0aElkIH0gZnJvbSAnLi9tb2RlbHMvaW5wdXQtZGF0ZXBpY2tlci5tb2RlbCdcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbXJ4LWlucHV0LWRhdGVwaWNrZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnaW5wdXQtZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJ2lucHV0LWRhdGVwaWNrZXIuY29tcG9uZW50cy5sZXNzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7IHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dERhdGVwaWNrZXJDb21wb25lbnQpLCBtdWx0aTogdHJ1ZSB9XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5wdXREYXRlcGlja2VyQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgcHVibGljIGR0OiBhbnk7XHJcbiAgcHVibGljIHZhbHVlOiBhbnkgPSAnJztcclxuICBwdWJsaWMgZGF0ZU1vZGVsOiBEYXRlTW9kZWwgPSBkYXRlTW9kZWxDb25zdGFudDtcclxuICBwdWJsaWMgdGltZU1vZGVsOiBUaW1lTW9kZWwgPSB0aW1lTW9kZWxDb25zdGFudDtcclxuXHJcbiAgcHVibGljIGlubmVySW52YWxpZCA9IGZhbHNlO1xyXG4gIHB1YmxpYyBpbm5lckludmFsaWRNZXNzYWdlID0gJyc7XHJcblxyXG4gIC8vIFNBVkUgU1RBVEVcclxuICBwdWJsaWMgdXVpZDogc3RyaW5nID0gdXVpZHY0KCk7XHJcbiAgQElucHV0KCkgcHVibGljIGZpZWxkczogRmllbGRbXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgc2l6ZTogSW5wdXREYXRlU2l6ZXNUeXBlcyA9ICdsYXJnZSc7XHJcbiAgQElucHV0KCkgcHVibGljIGZvcm1hdCA9ICdZWVlZLU1NLUREIEhIOm1tJztcclxuICBASW5wdXQoKSBwdWJsaWMgbG9jYWxlOiAncnUnIHwgJ2VuJyA9ICdydSc7XHJcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbUNsYXNzZXMgPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgZGF0ZUxhYmVsID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIHRpbWVMYWJlbCA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBkYXRlUGxhY2Vob2xkZXIgPSAn0LTQtC7QvNC8LtCz0LPQs9CzJzsgLy8gZGVwcmVjYXRlZFxyXG4gIEBJbnB1dCgpIHB1YmxpYyBwbGFjZWhvbGRlciA9ICfQtNC0LtC80Lwu0LPQs9Cz0LMnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyB0aW1lcGlja2VyID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIG1pbkRhdGUgPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgbWF4RGF0ZSA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpbmxpbmUgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgY2xvc2FibGUgPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgbGVhZFplcm9EYXRlVGltZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXNrID0gJzAwLjAwLjAwMDAgMDA6bTAnO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgY29udGFpbmVyID0gJ2Rpdi5wYWdlLXdyYXBwZXInO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgdmFsaWRhdGlvblR5cGU6IElucHV0RGF0ZVRpbWVWYWxpZGF0aW9uID0gJ2RlZmF1bHQnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlVmFsaWRhdGlvbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpbnZhbGlkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWRNZXNzYWdlOiBzdHJpbmcgfCBzdHJpbmdbXSA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjaGVja0ludmFsaWQ6IHRydWUgfCBmYWxzZSB8IG51bGwgPSBudWxsO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgaXNTaG93TWVzc2FnZXMgPSB0cnVlO1xyXG5cclxuICBAVmlld0NoaWxkKCdkYXRlSW5wdXQnKSBkYXRlSW5wdXQhOiBFbGVtZW50UmVmO1xyXG5cclxuICBAT3V0cHV0KCkgcHVibGljIGNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxJbnB1dERhdGVwaWNrZXJWYWx1ZVR5cGVzPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgcHVibGljIG1vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8SW5wdXREYXRlcGlja2VyVmFsdWVXaXRoSWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxJbnB1dERhdGVwaWNrZXJWYWx1ZVdpdGhJZD4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmR0ID0gbmV3IEFpckRhdGVwaWNrZXIodGhpcy5kYXRlSW5wdXQubmF0aXZlRWxlbWVudCwge1xyXG4gICAgICBjb250YWluZXI6IHRoaXMuY29udGFpbmVyLFxyXG4gICAgICBsb2NhbGU6IHRoaXMuZ2V0TG9jYWxlLFxyXG4gICAgICBhdXRvQ2xvc2U6IHRydWUsXHJcbiAgICAgIG11bHRpcGxlRGF0ZXNTZXBhcmF0b3I6ICcgLSAnLFxyXG4gICAgICB0aW1lcGlja2VyOiB0aGlzLnRpbWVwaWNrZXIsXHJcbiAgICAgIG1pbkRhdGU6IHRoaXMubWluRGF0ZSA/IGRheWpzKHRoaXMubWluRGF0ZSwgdGhpcy5mb3JtYXQpLnRvRGF0ZSgpIDogJycsXHJcbiAgICAgIG1heERhdGU6IHRoaXMubWF4RGF0ZSA/IGRheWpzKHRoaXMubWF4RGF0ZSwgdGhpcy5mb3JtYXQpLnRvRGF0ZSgpIDogJycsXHJcbiAgICAgIGlubGluZTogdGhpcy5pbmxpbmUsXHJcbiAgICAgIHBvc2l0aW9uKHsgJGRhdGVwaWNrZXIsICR0YXJnZXQsICRwb2ludGVyLCBkb25lIH0pIHtcclxuICAgICAgICBsZXQgcG9wcGVyID0gY3JlYXRlUG9wcGVyKCR0YXJnZXQsICRkYXRlcGlja2VyLCB7XHJcbiAgICAgICAgICBwbGFjZW1lbnQ6ICdib3R0b20tc3RhcnQnLFxyXG4gICAgICAgICAgbW9kaWZpZXJzOiBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBuYW1lOiAnZmxpcCcsXHJcbiAgICAgICAgICAgICAgb3B0aW9uczoge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzoge1xyXG4gICAgICAgICAgICAgICAgICB0b3A6IDY0XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgbmFtZTogJ29mZnNldCcsXHJcbiAgICAgICAgICAgICAgb3B0aW9uczoge1xyXG4gICAgICAgICAgICAgICAgb2Zmc2V0OiBbMCwgMTBdXHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgbmFtZTogJ2Fycm93JyxcclxuICAgICAgICAgICAgICBvcHRpb25zOiB7XHJcbiAgICAgICAgICAgICAgICBlbGVtZW50OiAkcG9pbnRlclxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgXVxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICByZXR1cm4gZnVuY3Rpb24gY29tcGxldGVIaWRlKCkge1xyXG4gICAgICAgICAgcG9wcGVyLmRlc3Ryb3koKTtcclxuICAgICAgICAgIGRvbmUoKTtcclxuICAgICAgICB9O1xyXG4gICAgICB9LFxyXG4gICAgICBvblNlbGVjdDogKHsgZGF0ZSwgZm9ybWF0dGVkRGF0ZSwgZGF0ZXBpY2tlciB9KSA9PiB7XHJcblxyXG4gICAgICAgIGlmIChkYXRlIGluc3RhbmNlb2YgRGF0ZSAmJiB0eXBlb2YgZm9ybWF0dGVkRGF0ZSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gdmFsaWRhdGVEYXRlTW9kZWwoZm9ybWF0dGVkRGF0ZSk7XHJcbiAgICAgICAgICB0aGlzLnRpbWVNb2RlbCA9IHZhbGlkYXRlVGltZU1vZGVsKGZvcm1hdHRlZERhdGUpO1xyXG5cclxuICAgICAgICAgIGlmICh0aGlzLmlzVmFsaWRNb2RlbHMpIHtcclxuICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZU1vZGVsKHRoaXMuZGF0ZU1vZGVsLCB0aGlzLnRpbWVNb2RlbCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmR0KSB7XHJcbiAgICAgIGlmIChjaGFuZ2VzWydtYXhEYXRlJ10pIHtcclxuICAgICAgICBpZiAodGhpcy52YWxpZGF0aW9uVHlwZSA9PT0gJ2RvdWJsZScpIHtcclxuICAgICAgICAgIGNvbnN0IGludmFsaWQgPSB0aGlzLmlubmVySW52YWxpZDtcclxuICAgICAgICAgIHRoaXMuZHQudXBkYXRlKHsgbWF4RGF0ZTogdGhpcy5tYXhEYXRlID8gZGF5anModGhpcy5tYXhEYXRlLCB0aGlzLmZvcm1hdCkudG9EYXRlKCkgOiAnJyB9KTtcclxuICAgICAgICAgIHRoaXMudmFsdWUgJiYgdGhpcy5kdC5zZWxlY3REYXRlKGRheWpzKHRoaXMudmFsdWUsIHRoaXMuZm9ybWF0KS50b0RhdGUoKSwgeyB1cGRhdGVUaW1lOiB0aGlzLnRpbWVwaWNrZXIsIHNpbGVudDogdHJ1ZSB9KTtcclxuICAgICAgICAgIGNvbnN0IGlzVmFsaWQgPSB0aGlzLmRpc2FibGVWYWxpZGF0aW9uID8gdHJ1ZSA6IHRoaXMuY2hlY2tpbmdJbnZhbGlkKHRoaXMudmFsdWUsIHRoaXMubWF4RGF0ZSwgdGhpcy5taW5EYXRlKTtcclxuXHJcbiAgICAgICAgICBpZiAoaW52YWxpZCAmJiBpc1ZhbGlkKSB7XHJcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWVNb2RlbCh0aGlzLmRhdGVNb2RlbCwgdGhpcy50aW1lTW9kZWwpO1xyXG4gICAgICAgICAgICB9LCAwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgLy8gY29uc29sZS5sb2coY2hhbmdlc1snbWF4RGF0ZSddKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSBpZiAoY2hhbmdlc1snbWluRGF0ZSddKSB7XHJcbiAgICAgICAgaWYgKHRoaXMudmFsaWRhdGlvblR5cGUgPT09ICdkb3VibGUnKSB7XHJcbiAgICAgICAgICBjb25zdCBpbnZhbGlkID0gdGhpcy5pbm5lckludmFsaWQ7XHJcbiAgICAgICAgICB0aGlzLmR0LnVwZGF0ZSh7IG1pbkRhdGU6IHRoaXMubWluRGF0ZSA/IGRheWpzKHRoaXMubWluRGF0ZSwgdGhpcy5mb3JtYXQpLnRvRGF0ZSgpIDogJycgfSk7XHJcbiAgICAgICAgICB0aGlzLnZhbHVlICYmIHRoaXMuZHQuc2VsZWN0RGF0ZShkYXlqcyh0aGlzLnZhbHVlLCB0aGlzLmZvcm1hdCkudG9EYXRlKCksIHsgdXBkYXRlVGltZTogdGhpcy50aW1lcGlja2VyLCBzaWxlbnQ6IHRydWUgfSk7XHJcbiAgICAgICAgICBjb25zdCBpc1ZhbGlkID0gdGhpcy5kaXNhYmxlVmFsaWRhdGlvbiA/IHRydWUgOiB0aGlzLmNoZWNraW5nSW52YWxpZCh0aGlzLnZhbHVlLCB0aGlzLm1heERhdGUsIHRoaXMubWluRGF0ZSk7XHJcblxyXG4gICAgICAgICAgaWYgKGludmFsaWQgJiYgaXNWYWxpZCkge1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlTW9kZWwodGhpcy5kYXRlTW9kZWwsIHRoaXMudGltZU1vZGVsKTtcclxuICAgICAgICAgICAgfSwgMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIC8vIGNvbnNvbGUubG9nKGNoYW5nZXNbJ21pbkRhdGUnXSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldERhdGVWYWx1ZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAke3RoaXMuZGF0ZU1vZGVsLnZpZXd9JHt0aGlzLnRpbWVwaWNrZXIgJiYgdGhpcy50aW1lTW9kZWwudmlldyA/ICcgJyArIHRoaXMudGltZU1vZGVsLnZpZXcgOiAnJ31gO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYCR7SW5wdXREYXRlU2l6ZXNFbnVtW3RoaXMuc2l6ZV19ICR7dGhpcy5jdXN0b21DbGFzc2VzfSAke3RoaXMuY2hlY2tWYWxpZENsYXNzZXN9YDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0IGlzVmFsaWRNb2RlbHMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gIXRoaXMuZGF0ZU1vZGVsLmludmFsaWQgJiYgKHRoaXMudGltZXBpY2tlciA/ICF0aGlzLnRpbWVNb2RlbC5pbnZhbGlkIDogdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGlzVmlld0NsZWFuSWNvbigpIHtcclxuICAgIHJldHVybiAhIXRoaXMuZGF0ZUlucHV0Py5uYXRpdmVFbGVtZW50LnZhbHVlICYmIHRoaXMuY2xvc2FibGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGNoZWNrVmFsaWRDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5jaGVja0ludmFsaWQgPT09IGZhbHNlID9cclxuICAgICAgJ21yeC1pbnB1dC1jaGVja2VkLXN1Y2Nlc3MnIDpcclxuICAgICAgdGhpcy5jaGVja0ludmFsaWQgPT09IHRydWUgPyAnbXJ4LWlucHV0LWNoZWNrZWQtZXJyb3InIDogJyc7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldCBnZXRMb2NhbGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5sb2NhbGUgPT09ICdydScgPyB7IC4uLmxvY2FsZVJ1LCBkYXRlRm9ybWF0OiAnZGQuTU0ueXl5eScsIHRpbWVGb3JtYXQ6ICdISDptbScgfSA6IHsgLi4ubG9jYWxlRW4sIGRhdGVGb3JtYXQ6ICdkZC5NTS55eXl5JywgdGltZUZvcm1hdDogJ0hIOm1tJyB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2xpY2tUb0ljb25DYWxlbmRhcigpOiB2b2lkIHtcclxuICAgIHRoaXMuZGF0ZUlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbGlja1RvSWNvbkNsZWFyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5kdC5zZXRWaWV3RGF0ZShuZXcgRGF0ZSgpKTtcclxuICAgIHRoaXMuZHQgJiYgdGhpcy5kdC5jbGVhcigpO1xyXG4gICAgdGhpcy5kYXRlTW9kZWwgPSBkYXRlTW9kZWxDb25zdGFudDtcclxuICAgIHRoaXMudGltZU1vZGVsID0gdGltZU1vZGVsQ29uc3RhbnQ7XHJcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKCcnKTtcclxuICAgIHRoaXMuaW5uZXJJbnZhbGlkID0gZmFsc2U7XHJcbiAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSAnJztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlVmFsdWVNb2RlbChkYXRlTW9kZWw6IERhdGVNb2RlbCwgdGltZU1vZGVsOiBUaW1lTW9kZWwsIGJvbDogYm9vbGVhbiA9IGZhbHNlKSB7XHJcbiAgICBpZiAoZGF0ZU1vZGVsLnZpZXcgPT09ICcnKSB7XHJcbiAgICAgIHRoaXMuY2xpY2tUb0ljb25DbGVhcigpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgZGF0ZSA9IGdldERhdGVEYXlqc09iamVjdChkYXRlTW9kZWwsIHRpbWVNb2RlbCwgdGhpcy50aW1lcGlja2VyKTtcclxuICAgICAgY29uc3QgZm9ybWF0dGluZ0RhdGUgPSBkYXRlLmZvcm1hdCh0aGlzLmZvcm1hdCk7XHJcbiAgICAgIGNvbnN0IGlzVmFsaWQgPSB0aGlzLmRpc2FibGVWYWxpZGF0aW9uID8gdHJ1ZSA6IHRoaXMuY2hlY2tpbmdJbnZhbGlkKGZvcm1hdHRpbmdEYXRlLCB0aGlzLm1heERhdGUsIHRoaXMubWluRGF0ZSk7XHJcblxyXG4gICAgICBpZiAoZGF0ZS5pc1ZhbGlkKCkgJiYgaXNWYWxpZCkge1xyXG4gICAgICAgIHRoaXMuZHQuc2VsZWN0RGF0ZShnZXREYXRlT2JqZWN0KGRhdGVNb2RlbCwgdGltZU1vZGVsLCB0aGlzLnRpbWVwaWNrZXIpLCB7XHJcbiAgICAgICAgICB1cGRhdGVUaW1lOiB0aGlzLnRpbWVwaWNrZXIsXHJcbiAgICAgICAgICBzaWxlbnQ6IHRydWVcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLmR0LnNldFZpZXdEYXRlKGdldERhdGVPYmplY3QoZGF0ZU1vZGVsLCB0aW1lTW9kZWwsIHRoaXMudGltZXBpY2tlcikpO1xyXG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoZm9ybWF0dGluZ0RhdGUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGludmFsaWRNZXNzYWdlT24obWVzc2FnZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLmlubmVySW52YWxpZCA9IHRydWU7XHJcbiAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSBtZXNzYWdlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbnZhbGlkTWVzc2FnZU9mZigpOiB2b2lkIHtcclxuICAgIHRoaXMuaW5uZXJJbnZhbGlkID0gZmFsc2U7XHJcbiAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSAnJztcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVEYXRlVmFsdWUoZGF0ZUlucHV0OiBIVE1MSW5wdXRFbGVtZW50KTogdm9pZCB7XHJcbiAgICBjb25zdCBzZWxlY3Rpb25TdGFydCA9IGRhdGVJbnB1dC5zZWxlY3Rpb25TdGFydDtcclxuICAgIHRoaXMuZGF0ZU1vZGVsID0gdmFsaWRhdGVEYXRlTW9kZWwoZGF0ZUlucHV0LnZhbHVlKTtcclxuICAgIHRoaXMudGltZU1vZGVsID0gdmFsaWRhdGVUaW1lTW9kZWwoZGF0ZUlucHV0LnZhbHVlKTtcclxuXHJcbiAgICBkYXRlSW5wdXQudmFsdWUgPSB0aGlzLmdldERhdGVWYWx1ZTtcclxuICAgIGRhdGVJbnB1dC5zZWxlY3Rpb25TdGFydCA9IHNlbGVjdGlvblN0YXJ0O1xyXG4gICAgZGF0ZUlucHV0LnNlbGVjdGlvbkVuZCA9IGRhdGVJbnB1dC5zZWxlY3Rpb25TdGFydDtcclxuXHJcbiAgICBpZiAodGhpcy5pc1ZhbGlkTW9kZWxzIHx8IHRoaXMuZGF0ZU1vZGVsLnZpZXcgPT09ICcnKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlVmFsdWVNb2RlbCh0aGlzLmRhdGVNb2RlbCwgdGhpcy50aW1lTW9kZWwpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsaWNrVG9JbnB1dChpbnB1dDogSFRNTElucHV0RWxlbWVudCk6IHZvaWQge1xyXG4gICAgaWYgKGlucHV0LnNlbGVjdGlvblN0YXJ0ID09PSBpbnB1dC5zZWxlY3Rpb25FbmQgJiYgKGlucHV0LnNlbGVjdGlvblN0YXJ0ICYmIGlucHV0LnNlbGVjdGlvblN0YXJ0ID4gMCkpIHtcclxuICAgICAgY29uc3QgeyBzdGFydCwgZW5kIH0gPSBtYXJrUG9zaXRpb24oaW5wdXQuc2VsZWN0aW9uU3RhcnQsIGlucHV0LnNlbGVjdGlvbkVuZCk7XHJcbiAgICAgIGlucHV0LnNlbGVjdGlvblN0YXJ0ID0gc3RhcnQ7XHJcbiAgICAgIGlucHV0LnNlbGVjdGlvbkVuZCA9IGVuZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2hlY2tpbmdJbnZhbGlkKHZhbHVlOiBzdHJpbmcsIG1heERhdGU6IHN0cmluZywgbWluRGF0ZTogc3RyaW5nKSB7XHJcbiAgICBpZiAoIXRoaXMuaXNTaG93TWVzc2FnZXMpIHtcclxuICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZU9mZigpO1xyXG4gICAgICByZXR1cm4gdHJ1ZVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChtYXhEYXRlICYmIChkYXlqcyh2YWx1ZSwgdGhpcy5mb3JtYXQpLmRpZmYoZGF5anMobWF4RGF0ZSwgdGhpcy5mb3JtYXQpKSA9PT0gMCkpIHtcclxuICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZU9uKCfQlNCw0YLQsCDQuCDQstGA0LXQvNGPINC+0LrQvtC90YfQsNC90LjRjyDQvdC1INC80L7QttC10YIg0LHRi9GC0Ywg0YDQsNCy0L3QsCDQtNCw0YLQtSDQuCDQstGA0LXQvNC10L3QuCDQvdCw0YfQsNC70LAnKTtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfSBlbHNlIGlmIChtYXhEYXRlICYmIChkYXlqcyh2YWx1ZSwgdGhpcy5mb3JtYXQpLmRpZmYoZGF5anMobWF4RGF0ZSwgdGhpcy5mb3JtYXQpKSA+IDApKSB7XHJcbiAgICAgIHRoaXMuaW52YWxpZE1lc3NhZ2VPbign0JTQsNGC0LAg0L7QutC+0L3Rh9Cw0L3QuNGPINC90LUg0LzQvtC20LXRgiDQsdGL0YLRjCDRgNCw0L3RjNGI0LUg0LTQsNGC0Ysg0L3QsNGH0LDQu9CwJyk7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH0gZWxzZSBpZiAobWluRGF0ZSAmJiAoZGF5anModmFsdWUsIHRoaXMuZm9ybWF0KS5kaWZmKGRheWpzKG1pbkRhdGUsIHRoaXMuZm9ybWF0KSkgPT09IDApKSB7XHJcbiAgICAgIHRoaXMuaW52YWxpZE1lc3NhZ2VPbign0JTQsNGC0LAg0Lgg0LLRgNC10LzRjyDQvtC60L7QvdGH0LDQvdC40Y8g0L3QtSDQvNC+0LbQtdGCINCx0YvRgtGMINGA0LDQstC90LAg0LTQsNGC0LUg0Lgg0LLRgNC10LzQtdC90Lgg0L3QsNGH0LDQu9CwJyk7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH0gZWxzZSBpZiAobWluRGF0ZSAmJiBkYXlqcyh2YWx1ZSwgdGhpcy5mb3JtYXQpLmRpZmYoZGF5anMobWluRGF0ZSwgdGhpcy5mb3JtYXQpKSA8IDApIHtcclxuICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZU9uKCfQlNCw0YLQsCDQvtC60L7QvdGH0LDQvdC40Y8g0L3QtSDQvNC+0LbQtdGCINCx0YvRgtGMINGA0LDQvdGM0YjQtSDQtNCw0YLRiyDQvdCw0YfQsNC70LAnKTtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZU9mZigpO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyB3cml0ZVZhbHVlKG91dHNpZGVWYWx1ZTogSW5wdXREYXRlcGlja2VyVmFsdWVUeXBlcykge1xyXG4gICAgaWYgKG91dHNpZGVWYWx1ZSkge1xyXG4gICAgICB0aGlzLnZhbHVlID0gY2xlYW5EYXRlKG91dHNpZGVWYWx1ZSwgdGhpcy5mb3JtYXQpO1xyXG5cclxuICAgICAgdGhpcy5kYXRlTW9kZWwgPSBkYXRlTW9kZWxWYWx1ZVBhcnNlKG91dHNpZGVWYWx1ZSwgdGhpcy5mb3JtYXQpO1xyXG4gICAgICB0aGlzLnRpbWVNb2RlbCA9IHRpbWVNb2RlbFZhbHVlUGFyc2Uob3V0c2lkZVZhbHVlLCB0aGlzLmZvcm1hdCk7XHJcblxyXG4gICAgICBpZiAoIXRoaXMuZGlzYWJsZVZhbGlkYXRpb24pIHtcclxuICAgICAgICB0aGlzLmNoZWNraW5nSW52YWxpZChvdXRzaWRlVmFsdWUsIHRoaXMubWF4RGF0ZSwgdGhpcy5taW5EYXRlKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5kdC5zZWxlY3REYXRlKGdldERhdGVPYmplY3QodGhpcy5kYXRlTW9kZWwsIHRoaXMudGltZU1vZGVsLCB0aGlzLnRpbWVwaWNrZXIpLCB7IHVwZGF0ZVRpbWU6IHRoaXMudGltZXBpY2tlciwgc2lsZW50OiB0cnVlIH0pO1xyXG4gICAgICB0aGlzLmR0LnNldFZpZXdEYXRlKGdldERhdGVPYmplY3QodGhpcy5kYXRlTW9kZWwsIHRoaXMudGltZU1vZGVsLCB0aGlzLnRpbWVwaWNrZXIpKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLmR0KSB7XHJcbiAgICAgICAgdGhpcy5kdC5jbGVhcigpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9uQ2hhbmdlID0gKHZhbHVlOiBhbnkpID0+IHtcclxuICB9O1xyXG4gIHByaXZhdGUgb25Ub3VjaGVkID0gKCkgPT4ge1xyXG4gIH07XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4ge30pOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVWYWx1ZShpbnNpZGVWYWx1ZTogSW5wdXREYXRlcGlja2VyVmFsdWVUeXBlcykge1xyXG4gICAgdGhpcy52YWx1ZSA9IGluc2lkZVZhbHVlO1xyXG4gICAgdGhpcy5jaGFuZ2VkLmVtaXQoaW5zaWRlVmFsdWUpO1xyXG4gICAgdGhpcy5tb2RlbENoYW5nZS5lbWl0KHt2YWx1ZTogaW5zaWRlVmFsdWUsIGlkOiB0aGlzLnV1aWR9KVxyXG4gICAgdGhpcy5vbkNoYW5nZShpbnNpZGVWYWx1ZSk7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgY2xhc3M9XCJtcngtaW5wdXQtZGF0ZVwiXHJcbiAgW2NsYXNzLm1yeC1pbnB1dC1lcnJvcl09XCJpbnZhbGlkIHx8IGlubmVySW52YWxpZFwiXHJcbiAgW2NsYXNzLi1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgW2NsYXNzLi1yZWFkb25seV09XCJyZWFkb25seVwiXHJcbiAgW2NsYXNzXT1cImdldENsYXNzZXNcIlxyXG4+XHJcbiAgPGRpdiBjbGFzcz1cIlwiPlxyXG4gICAgPG1yeC1sYWJlbCAqbmdJZj1cInRpbWVMYWJlbCB8fCBkYXRlTGFiZWxcIj57eyBkYXRlTGFiZWwgfX08L21yeC1sYWJlbD5cclxuICAgIDxkaXYgY2xhc3M9XCJtcngtaW5wdXQtZGF0ZV9fd3JhcHBlclwiPlxyXG4gICAgICA8aW5wdXRcclxuICAgICAgICAjZGF0ZUlucHV0XHJcbiAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgIGF1dG9jb21wbGV0ZT1cIm5vcGVcIlxyXG4gICAgICAgIGNsYXNzPVwibXJ4LWlucHV0LWRhdGVfX2lucHV0IG1yeC1pbnB1dC1kYXRlX19kYXRlXCJcclxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICAgIFtuZ01vZGVsXT1cImdldERhdGVWYWx1ZVwiXHJcbiAgICAgICAgW21hc2tdPVwibWFza1wiXHJcbiAgICAgICAgW2xlYWRaZXJvRGF0ZVRpbWVdPVwibGVhZFplcm9EYXRlVGltZVwiXHJcbiAgICAgICAgW3ZhbGlkYXRpb25dPVwiZmFsc2VcIlxyXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCB8fCByZWFkb25seVwiXHJcbiAgICAgICAgKGlucHV0KT1cInVwZGF0ZURhdGVWYWx1ZShkYXRlSW5wdXQpXCJcclxuICAgICAgICAoY2xpY2spPVwiY2xpY2tUb0lucHV0KGRhdGVJbnB1dClcIlxyXG4gICAgICAvPlxyXG5cclxuICAgICAgPGRpdiAqbmdJZj1cIiFkaXNhYmxlZFwiIGNsYXNzPVwibXJ4LWlucHV0LWRhdGVfX2ljb25zXCI+XHJcbiAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICBjbGFzcz1cIm1yeC1pY29uIGljb24tY2xvc2VcIlxyXG4gICAgICAgICAgICAqbmdJZj1cImlzVmlld0NsZWFuSWNvbiAmJiAhKGRpc2FibGVkIHx8IHJlYWRvbmx5KVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJjbGlja1RvSWNvbkNsZWFyKClcIlxyXG4gICAgICAgICAgICBbY2xhc3MuaWNvbi1mb250LTE2XT1cInNpemUgPT09ICdzbWFsbCdcIlxyXG4gICAgICAgICAgICBbY2xhc3MuaWNvbi1mb250LTI0XT1cInNpemUgPT09ICdtZWRpdW0nIHx8IHNpemUgPT09ICdsYXJnZSdcIlxyXG4gICAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICA8c3BhblxyXG4gICAgICAgICAgY2xhc3M9XCJtcngtaWNvbiBpY29uLWNhbGVuZGFyXCJcclxuICAgICAgICAgIChjbGljayk9XCJjbGlja1RvSWNvbkNhbGVuZGFyKClcIlxyXG4gICAgICAgICAgW2NsYXNzLmljb24tZm9udC0xNl09XCJzaXplID09PSAnc21hbGwnXCJcclxuICAgICAgICAgIFtjbGFzcy5pY29uLWZvbnQtMjRdPVwic2l6ZSA9PT0gJ21lZGl1bScgfHwgc2l6ZSA9PT0gJ2xhcmdlJ1wiXHJcbiAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPG1yeC1lcnJvci1tZXNzYWdlXHJcbiAgICAqbmdJZj1cImludmFsaWQ7IGVsc2UgaW5uZXJJbnZhbGlkVGVtcGxhdGVcIlxyXG4gICAgW2ludmFsaWRNZXNzYWdlXT1cImludmFsaWRNZXNzYWdlXCJcclxuICA+PC9tcngtZXJyb3ItbWVzc2FnZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlICNpbm5lckludmFsaWRUZW1wbGF0ZT5cclxuICAgIDxtcngtZXJyb3ItbWVzc2FnZVxyXG4gICAgICAqbmdJZj1cImlubmVySW52YWxpZFwiXHJcbiAgICAgIFtpbnZhbGlkTWVzc2FnZV09XCJpbm5lckludmFsaWRNZXNzYWdlXCJcclxuICAgID48L21yeC1lcnJvci1tZXNzYWdlPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIDxtcngtc2F2ZS1zdGF0ZSBbaWRdPVwidXVpZFwiIFtmaWVsZHNdPVwiZmllbGRzXCI+PC9tcngtc2F2ZS1zdGF0ZT5cclxuPC9kaXY+XHJcblxyXG5cclxuXHJcbiJdfQ==
|
|
@@ -4,4 +4,4 @@ export var InputDateSizesEnum;
|
|
|
4
4
|
InputDateSizesEnum["medium"] = "mrx-input-date-md";
|
|
5
5
|
InputDateSizesEnum["large"] = "mrx-input-date-lg";
|
|
6
6
|
})(InputDateSizesEnum || (InputDateSizesEnum = {}));
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZXBpY2tlci5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtZGF0ZXBpY2tlci9pbnB1dC1kYXRlcGlja2VyLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksa0JBSVg7QUFKRCxXQUFZLGtCQUFrQjtJQUM1QixpREFBNkIsQ0FBQTtJQUM3QixrREFBOEIsQ0FBQTtJQUM5QixpREFBNkIsQ0FBQTtBQUMvQixDQUFDLEVBSlcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQUk3QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIElucHV0RGF0ZVNpemVzRW51bSB7XHJcbiAgJ3NtYWxsJyA9ICdtcngtaW5wdXQtZGF0ZS1zbScsXHJcbiAgJ21lZGl1bScgPSAnbXJ4LWlucHV0LWRhdGUtbWQnLFxyXG4gICdsYXJnZScgPSAnbXJ4LWlucHV0LWRhdGUtbGcnLFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBJbnB1dERhdGVTaXplc1R5cGVzID0gJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJztcclxuXHJcbmV4cG9ydCB0eXBlIElucHV0RGF0ZVRpbWVWYWxpZGF0aW9uID0gJ2RlZmF1bHQnIHwgJ2RvdWJsZSdcclxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZXBpY2tlci5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2lucHV0LWRhdGVwaWNrZXIvbW9kZWxzL2lucHV0LWRhdGVwaWNrZXIubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIElucHV0RGF0ZXBpY2tlclZhbHVlVHlwZXMgPSBzdHJpbmc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElucHV0RGF0ZXBpY2tlclZhbHVlV2l0aElkIHtcclxuICB2YWx1ZTogSW5wdXREYXRlcGlja2VyVmFsdWVUeXBlcyxcclxuICBpZDogc3RyaW5nXHJcbn0iXX0=
|
|
@@ -6,8 +6,8 @@ export const getSortingValidationsHelper = (validation) => {
|
|
|
6
6
|
ValidationTypesEnum.MaxLength,
|
|
7
7
|
ValidationTypesEnum.MinLength,
|
|
8
8
|
ValidationTypesEnum.Email,
|
|
9
|
-
ValidationTypesEnum.Pattern,
|
|
10
9
|
ValidationTypesEnum.Required,
|
|
10
|
+
ValidationTypesEnum.Pattern,
|
|
11
11
|
ValidationTypesEnum.Callback,
|
|
12
12
|
ValidationOptionsEnum.Type,
|
|
13
13
|
ValidationOptionsEnum.Messages
|
|
@@ -26,4 +26,4 @@ export const getSortingValidationsHelper = (validation) => {
|
|
|
26
26
|
}
|
|
27
27
|
return sortedValidators;
|
|
28
28
|
};
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXNvcnRpbmctdmFsaWRhdGlvbnMuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9zZXJ2aWNlcy9tcngtZm9ybS12YWxpZGF0b3IvaGVscGVycy9nZXQtc29ydGluZy12YWxpZGF0aW9ucy5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLG1CQUFtQixFQUFtQixNQUFNLFdBQVcsQ0FBQztBQUV4RixNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxDQUFDLFVBQTJCLEVBQW1CLEVBQUU7SUFDMUYsTUFBTSx3QkFBd0IsR0FBRztRQUMvQixtQkFBbUIsQ0FBQyxRQUFRO1FBQzVCLG1CQUFtQixDQUFDLFFBQVE7UUFDNUIsbUJBQW1CLENBQUMsU0FBUztRQUM3QixtQkFBbUIsQ0FBQyxTQUFTO1FBQzdCLG1CQUFtQixDQUFDLEtBQUs7UUFDekIsbUJBQW1CLENBQUMsUUFBUTtRQUM1QixtQkFBbUIsQ0FBQyxPQUFPO1FBQzNCLG1CQUFtQixDQUFDLFFBQVE7UUFDNUIscUJBQXFCLENBQUMsSUFBSTtRQUMxQixxQkFBcUIsQ0FBQyxRQUFRO0tBQy9CLENBQUE7SUFDRCxNQUFNLGdCQUFnQixHQUFRLEVBQUUsQ0FBQTtJQUVoQyxLQUFLLElBQUksR0FBRyxJQUFJLHdCQUF3QixFQUFFO1FBQ3hDLElBQUksVUFBVSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNsQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUE7U0FDeEM7YUFBTTtZQUNMLElBQUksR0FBRyxLQUFLLE1BQU0sRUFBRTtnQkFDbEIsVUFBVSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUE7Z0JBQzFCLGdCQUFnQixDQUFDLElBQUksR0FBRyxRQUFRLENBQUE7YUFDakM7U0FDRjtLQUNGO0lBRUQsT0FBTyxnQkFBZ0IsQ0FBQTtBQUN6QixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWYWxpZGF0aW9uT3B0aW9uc0VudW0sIFZhbGlkYXRpb25UeXBlc0VudW0sIFZhbGlkYXRpb25zVHlwZSB9IGZyb20gJy4uL21vZGVscyc7XHJcblxyXG5leHBvcnQgY29uc3QgZ2V0U29ydGluZ1ZhbGlkYXRpb25zSGVscGVyID0gKHZhbGlkYXRpb246IFZhbGlkYXRpb25zVHlwZSk6IFZhbGlkYXRpb25zVHlwZSA9PiB7XHJcbiAgY29uc3Qgc29ydGVkVmFsaWRhdG9yc0NvbnN0YW50ID0gW1xyXG4gICAgVmFsaWRhdGlvblR5cGVzRW51bS5NYXhWYWx1ZSxcclxuICAgIFZhbGlkYXRpb25UeXBlc0VudW0uTWluVmFsdWUsXHJcbiAgICBWYWxpZGF0aW9uVHlwZXNFbnVtLk1heExlbmd0aCxcclxuICAgIFZhbGlkYXRpb25UeXBlc0VudW0uTWluTGVuZ3RoLFxyXG4gICAgVmFsaWRhdGlvblR5cGVzRW51bS5FbWFpbCxcclxuICAgIFZhbGlkYXRpb25UeXBlc0VudW0uUmVxdWlyZWQsXHJcbiAgICBWYWxpZGF0aW9uVHlwZXNFbnVtLlBhdHRlcm4sXHJcbiAgICBWYWxpZGF0aW9uVHlwZXNFbnVtLkNhbGxiYWNrLFxyXG4gICAgVmFsaWRhdGlvbk9wdGlvbnNFbnVtLlR5cGUsXHJcbiAgICBWYWxpZGF0aW9uT3B0aW9uc0VudW0uTWVzc2FnZXNcclxuICBdXHJcbiAgY29uc3Qgc29ydGVkVmFsaWRhdG9yczogYW55ID0ge31cclxuXHJcbiAgZm9yIChsZXQga2V5IG9mIHNvcnRlZFZhbGlkYXRvcnNDb25zdGFudCkge1xyXG4gICAgaWYgKHZhbGlkYXRpb24uaGFzT3duUHJvcGVydHkoa2V5KSkge1xyXG4gICAgICBzb3J0ZWRWYWxpZGF0b3JzW2tleV0gPSB2YWxpZGF0aW9uW2tleV1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChrZXkgPT09ICd0eXBlJykge1xyXG4gICAgICAgIHZhbGlkYXRpb24udHlwZSA9ICdzaW5nbGUnXHJcbiAgICAgICAgc29ydGVkVmFsaWRhdG9ycy50eXBlID0gJ3NpbmdsZSdcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHNvcnRlZFZhbGlkYXRvcnNcclxufVxyXG4iXX0=
|