@huntsman-cancer-institute/navigation 17.9.3 → 17.9.4
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/esm2022/components/badge.component.mjs +4 -4
- package/esm2022/components/brand-nav.component.mjs +4 -4
- package/esm2022/components/div-nav.component.mjs +4 -4
- package/esm2022/components/li-dd-nav.component.mjs +4 -4
- package/esm2022/components/li-exp-nav.component.mjs +4 -4
- package/esm2022/components/li-nav.component.mjs +4 -4
- package/esm2022/components/nav.component.mjs +4 -4
- package/esm2022/components/search-list/search-list-controller.component.mjs +6 -6
- package/esm2022/components/search-list/search-list.component.mjs +4 -4
- package/esm2022/components/search-tree/search-tree-controller.component.mjs +4 -4
- package/esm2022/components/search-tree/search-tree.component.mjs +4 -4
- package/esm2022/components/template.component.mjs +4 -4
- package/esm2022/components/ul-nav.component.mjs +4 -4
- package/esm2022/directives/ri-ripple-effect.directive.mjs +4 -4
- package/esm2022/directives/top-margin.directive.mjs +4 -4
- package/esm2022/impl/app-footer.component.mjs +4 -4
- package/esm2022/impl/app-header.component.mjs +4 -4
- package/esm2022/impl/sidebar.component.mjs +4 -4
- package/esm2022/navigation.module.mjs +5 -5
- package/esm2022/services/navigation-global.service.mjs +4 -4
- package/esm2022/services/navigation.service.mjs +4 -4
- package/fesm2022/huntsman-cancer-institute-navigation.mjs +67 -67
- package/fesm2022/huntsman-cancer-institute-navigation.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -31,8 +31,8 @@ let SearchTreeControllerComponent = class SearchTreeControllerComponent extends
|
|
|
31
31
|
this.hideElements = config.hideElements;
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
35
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
34
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SearchTreeControllerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
35
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SearchTreeControllerComponent, selector: "hci-search-tree-controller", inputs: { buttonTemplate: "buttonTemplate", hideElements: "hideElements" }, exportAs: ["searchTreeControllerComponent"], usesInheritance: true, ngImport: i0, template: `
|
|
36
36
|
<div *ngIf="!hideElements" id="search-title" class="d-flex flex-column">
|
|
37
37
|
<div *ngIf="showTitle" class="d-flex">
|
|
38
38
|
{{title}}
|
|
@@ -129,7 +129,7 @@ SearchTreeControllerComponent = __decorate([
|
|
|
129
129
|
ComponentType("SearchTreeControllerComponent")
|
|
130
130
|
], SearchTreeControllerComponent);
|
|
131
131
|
export { SearchTreeControllerComponent };
|
|
132
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
132
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SearchTreeControllerComponent, decorators: [{
|
|
133
133
|
type: Component,
|
|
134
134
|
args: [{ selector: "hci-search-tree-controller", exportAs: "searchTreeControllerComponent", template: `
|
|
135
135
|
<div *ngIf="!hideElements" id="search-title" class="d-flex flex-column">
|
|
@@ -228,4 +228,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
228
228
|
}], hideElements: [{
|
|
229
229
|
type: Input
|
|
230
230
|
}] } });
|
|
231
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXRyZWUtY29udHJvbGxlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXZpZ2F0aW9uL3NyYy9jb21wb25lbnRzL3NlYXJjaC10cmVlL3NlYXJjaC10cmVlLWNvbnRyb2xsZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFDOUIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQy9ELE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLGlEQUFpRCxDQUFDOzs7Ozs7QUFFOUY7Ozs7R0FJRztBQStHSSxJQUFNLDZCQUE2QixHQUFuQyxNQUFNLDZCQUE4QixTQUFRLDZCQUE2QjtJQUF6RTs7UUFHSSxpQkFBWSxHQUFZLEtBQUssQ0FBQztLQVl4QztJQVZDLFlBQVksQ0FBQyxNQUFNO1FBQ2pCLEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFM0IsSUFBSSxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDO1FBQzlDLENBQUM7UUFDRCxJQUFJLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDMUMsQ0FBQztJQUNILENBQUM7OEdBZFUsNkJBQTZCO2tHQUE3Qiw2QkFBNkIsa05BN0Y5Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJGVDs7QUFFVSw2QkFBNkI7SUE5R3pDLGFBQWEsQ0FBQywrQkFBK0IsQ0FBQztHQThHbEMsNkJBQTZCLENBZXpDOzsyRkFmWSw2QkFBNkI7a0JBN0d6QyxTQUFTOytCQUNFLDRCQUE0QixZQUM1QiwrQkFBK0IsWUFjL0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyRlQ7OEJBSVEsY0FBYztzQkFBdEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsIElucHV0LCBUZW1wbGF0ZVJlZlxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5pbXBvcnQge0NvbXBvbmVudFR5cGV9IGZyb20gXCJAaHVudHNtYW4tY2FuY2VyLWluc3RpdHV0ZS91dGlsc1wiO1xyXG5pbXBvcnQge1NlYXJjaExpc3RDb250cm9sbGVyQ29tcG9uZW50fSBmcm9tIFwiLi4vc2VhcmNoLWxpc3Qvc2VhcmNoLWxpc3QtY29udHJvbGxlci5jb21wb25lbnRcIjtcclxuXHJcbi8qKlxyXG4gKiBUaGUgc2VhcmNoIHRyZWUgY29udHJvbGxlciByZW5kZXJzIGFzIGEgaGVhZGVyIHRvIG9uZSBvciBtb3JlIHNlYXJjaCB0cmVlcy4gIE9ubHkgb25lIHNlYXJjaCB0cmVlIGNhbiBiZSBzaG93biBhdCBhIHRpbWUuXHJcbiAqIFRoZSBjb250cm9sbGVyIGZlYXR1cmVzIHRoZSBhYmlsaXR5IHRvIGhhbmRsZSBmaWx0ZXJpbmcgYW5kIHNvcnRpbmcuICBXaXRob3V0IHRoZSBjb250cm9sbGVyLCB0aGUgc2VhcmNoIGxpc3QgY2FuIGV4aXN0LFxyXG4gKiBidXQgaXQgY2FuIG9ubHkgaGFuZGxlIHBhZ2luZyBpbnRlcm5hbGx5LlxyXG4gKi9cclxuQENvbXBvbmVudFR5cGUoXCJTZWFyY2hUcmVlQ29udHJvbGxlckNvbXBvbmVudFwiKVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJoY2ktc2VhcmNoLXRyZWUtY29udHJvbGxlclwiLFxyXG4gIGV4cG9ydEFzOiBcInNlYXJjaFRyZWVDb250cm9sbGVyQ29tcG9uZW50XCIsXHJcbiAgc3R5bGVzOiBbYFxyXG4gICAgLnNpZGViYXItY29udGFpbmVyIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0U3RTdFNztcclxuICAgICAgY29sb3I6ICNmZmYgO1xyXG4gICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgICBwYWRkaW5nLXRvcDogM3B4O1xyXG4gICAgICBtYXJnaW4tbGVmdDogLThweDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAtOHB4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzJweDtcclxuICAgIH1cclxuXHJcbiAgYF0sXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgKm5nSWY9XCIhaGlkZUVsZW1lbnRzXCIgaWQ9XCJzZWFyY2gtdGl0bGVcIiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwic2hvd1RpdGxlXCIgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICB7e3RpdGxlfX1cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93IG1zLWF1dG9cIj5cclxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJidXR0b25UZW1wbGF0ZVwiPjxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJidXR0b25UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPjwvZGl2PlxyXG4gICAgICAgICAgPGEgKGNsaWNrKT1cInRvZ2dsZVNob3dPcHRpb25zKCRldmVudClcIj48aSBjbGFzcz1cImZhcyBmYS1maWx0ZXJcIj48L2k+PC9hPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtb3B0aW9uc1wiIFtjbGFzcy5leHBhbmRlZF09XCJzaG93T3B0aW9uc1wiICpuZ0lmPVwiZmlsdGVyQnlBbGxvd2VkRmllbGRzLmxlbmd0aCA+IDAgJiYgc29ydEJ5QWxsb3dlZEZpZWxkcy5sZW5ndGggPiAwXCI+XHJcbiAgICAgICAgICA8dWwgbmdiTmF2ICNuYXY9XCJuZ2JOYXZcIiBjbGFzcz1cIm5hdi10YWJzXCI+XHJcbiAgICAgICAgICAgIDxsaSBuZ2JOYXZJdGVtICAqbmdJZj1cImZpbHRlckJ5QWxsb3dlZEZpZWxkcy5sZW5ndGggPiAxXCI+XHJcbiAgICAgICAgICAgICAgPGEgbmdiTmF2TGluayA+IEZpbHRlcmluZyA8L2E+XHJcbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIG5nYk5hdkNvbnRlbnQ+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGZpbHRlciBvZiBib3VuZEZpbHRlcnNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG0tMVwiIHN0eWxlPVwiYWxpZ24taXRlbXM6IGNlbnRlcjtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJmbGV4OiAwIDAgNDAlO1wiPnt7Z2V0RmllbGREaXNwbGF5KGZpbHRlci5maWVsZCl9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGlucHV0IFtuZ01vZGVsXT1cImZpbHRlci52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2V0RmlsdGVyKCRldmVudCwgZmlsdGVyKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGtleWRvd24pPVwiYXBwbHlGaWx0ZXJzKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiZmxleDogMSAxIDYwJTtcIiBhcmlhLWxhYmVsPVwiaGNpLW5nLXNlYXJjaC10cmVlLWNvbnRyb2xsZXItZmlsdGVyXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWdyb3ctMSBtLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJhcHBseUZpbHRlcnMoKVwiIGNsYXNzPVwibXMtYXV0byBtZS0xXCI+PGkgY2xhc3M9XCJmYXMgZmEtY2hlY2stY2lyY2xlXCI+PC9pPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInNldHVwRmlsdGVycyh0cnVlKVwiIGNsYXNzPVwibWUtMFwiPjxpIGNsYXNzPVwiZmFzIGZhLXRpbWVzLWNpcmNsZVwiPjwvaT48L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICA8bGkgbmdiTmF2SXRlbSAqbmdJZj1cInNvcnRCeUFsbG93ZWRGaWVsZHMubGVuZ3RoID4gMFwiPlxyXG4gICAgICAgICAgICAgIDxhIG5nYk5hdkxpbmsgPiBTb3J0aW5nIDwvYT5cclxuICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgbmdiTmF2Q29udGVudD5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgc29ydEZpZWxkIG9mIHNvcnRCeUFsbG93ZWRGaWVsZHNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG0tMlwiIHN0eWxlPVwiYWxpZ24taXRlbXM6IGNlbnRlcjtcIiAoY2xpY2spPVwic2V0U29ydCgkZXZlbnQsIHNvcnRGaWVsZClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDogMS41cmVtO1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXNTb3J0KHNvcnRGaWVsZCkgJiYgaXNTb3J0QXNjKHNvcnRGaWVsZClcIiBbc3R5bGUuY29sb3JdPVwiaXNGaXJzdFNvcnQoc29ydEZpZWxkKSA/ICdncmVlbicgOiAnaW5oZXJpdCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1hcnJvdy1jaXJjbGUtdXAgZmEtbGdcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXNTb3J0KHNvcnRGaWVsZCkgJiYgIWlzU29ydEFzYyhzb3J0RmllbGQpXCIgW3N0eWxlLmNvbG9yXT1cImlzRmlyc3RTb3J0KHNvcnRGaWVsZCkgPyAnZ3JlZW4nIDogJ2luaGVyaXQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtYXJyb3ctY2lyY2xlLWRvd24gZmEtbGdcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICB7e2dldEZpZWxkRGlzcGxheShzb3J0RmllbGQpfX1cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgPC91bD5cclxuICAgICAgICAgIDxkaXYgW25nYk5hdk91dGxldF09XCJuYXZcIiA+PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG1iLTEgZ2xvYmFsLXNlYXJjaFwiIHN0eWxlPVwiYWxpZ24taXRlbXM6IGNlbnRlcjtcIj5cclxuICAgICAgICA8aW5wdXQgW25nTW9kZWxdPVwiZ2xvYmFsU2VhcmNoXCIgKGtleXVwKT1cImRvR2xvYmFsU2VhcmNoKCRldmVudClcIiBjbGFzcz1cIm1zLTJcIiBwbGFjZWhvbGRlcj1cIlNlYXJjaFwiIGFyaWEtbGFiZWw9XCJoY2ktbmctc2VhcmNoLXRyZWUtY29udHJvbGxlci1nbG9iYWwtc2VhcmNoXCIvPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtcy0xIG1lLTFcIj5cclxuICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXNlYXJjaFwiPjwvaT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggcC0xIHgtYXV0b1wiICpuZ0lmPVwiaGFzVmFsaWRGaWx0ZXJzKClcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmaWx0ZXIgb2YgZmlsdGVyc1wiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmlsdGVyLnZhbGlkXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiAoY2xpY2spPVwiY2xlYXJGaWx0ZXIoZmlsdGVyKVwiIGNsYXNzPVwiZC1mbGV4IHBpbGxcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgIHt7ZmlsdGVyLmZpZWxkfX1cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNsb3NlLWljb25cIj5cclxuICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtdGltZXMtY2lyY2xlIGZhLXhzXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwic2VhcmNoTGlzdHMubGVuZ3RoID4gMVwiIGNsYXNzPVwiZC1mbGV4IHgtaGlkZGVuIGxpc3QtdG9nZ2xlXCI+XHJcbiAgICAgICAgPG1hdC1idXR0b24tdG9nZ2xlLWdyb3VwIFtuZ01vZGVsXT1cInNlbGVjdGVkU2VhcmNoTGlzdFwiIChuZ01vZGVsQ2hhbmdlKT1cInNldFNlbGVjdGVkU2VhcmNoTGlzdCgkZXZlbnQpXCI+XHJcbiAgICAgICAgICA8bWF0LWJ1dHRvbi10b2dnbGUgKm5nRm9yPVwibGV0IHNlYXJjaExpc3Qgb2Ygc2VhcmNoTGlzdHNcIiBtYXQtcmFpc2VkLWJ1dHRvbi10b2dnbGUgY29sb3I9XCJwcmltYXJ5XCIgW3ZhbHVlXT1cInNlYXJjaExpc3RcIj5cclxuICAgICAgICAgICAge3tzZWFyY2hMaXN0fX1cclxuICAgICAgICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XHJcbiAgICAgICAgPC9tYXQtYnV0dG9uLXRvZ2dsZS1ncm91cD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCJoaWRlRWxlbWVudHNcIiBjbGFzcz1cInNpZGViYXItY29udGFpbmVyXCI+XHJcbiAgICAgIDxkaXYgaWQ9XCJzZWFyY2gtdGl0bGVcIiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBwdC0xXCI+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2hvd1RpdGxlXCIgY2xhc3M9XCJkLWZsZXggcHMtM1wiPlxyXG4gICAgICAgICAgICB7e3RpdGxlfX1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIGBcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlYXJjaFRyZWVDb250cm9sbGVyQ29tcG9uZW50IGV4dGVuZHMgU2VhcmNoTGlzdENvbnRyb2xsZXJDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBidXR0b25UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBASW5wdXQoKSBoaWRlRWxlbWVudHM6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgdXBkYXRlQ29uZmlnKGNvbmZpZykge1xyXG4gICAgc3VwZXIudXBkYXRlQ29uZmlnKGNvbmZpZyk7XHJcblxyXG4gICAgaWYgKGNvbmZpZy5idXR0b25UZW1wbGF0ZSkge1xyXG4gICAgICB0aGlzLmJ1dHRvblRlbXBsYXRlID0gY29uZmlnLmJ1dHRvblRlbXBsYXRlO1xyXG4gICAgfVxyXG4gICAgaWYgKGNvbmZpZy5oaWRlRWxlbWVudHMpIHtcclxuICAgICAgdGhpcy5oaWRlRWxlbWVudHMgPSBjb25maWcuaGlkZUVsZW1lbnRzO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
231
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXRyZWUtY29udHJvbGxlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXZpZ2F0aW9uL3NyYy9jb21wb25lbnRzL3NlYXJjaC10cmVlL3NlYXJjaC10cmVlLWNvbnRyb2xsZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFDOUIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQy9ELE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLGlEQUFpRCxDQUFDOzs7Ozs7QUFFOUY7Ozs7R0FJRztBQStHSSxJQUFNLDZCQUE2QixHQUFuQyxNQUFNLDZCQUE4QixTQUFRLDZCQUE2QjtJQUF6RTs7UUFHSSxpQkFBWSxHQUFZLEtBQUssQ0FBQztLQVl4QztJQVZDLFlBQVksQ0FBQyxNQUFNO1FBQ2pCLEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFM0IsSUFBSSxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDO1FBQzlDLENBQUM7UUFDRCxJQUFJLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDMUMsQ0FBQztJQUNILENBQUM7K0dBZFUsNkJBQTZCO21HQUE3Qiw2QkFBNkIsa05BN0Y5Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJGVDs7QUFFVSw2QkFBNkI7SUE5R3pDLGFBQWEsQ0FBQywrQkFBK0IsQ0FBQztHQThHbEMsNkJBQTZCLENBZXpDOzs0RkFmWSw2QkFBNkI7a0JBN0d6QyxTQUFTOytCQUNFLDRCQUE0QixZQUM1QiwrQkFBK0IsWUFjL0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyRlQ7OEJBSVEsY0FBYztzQkFBdEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsIElucHV0LCBUZW1wbGF0ZVJlZlxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5pbXBvcnQge0NvbXBvbmVudFR5cGV9IGZyb20gXCJAaHVudHNtYW4tY2FuY2VyLWluc3RpdHV0ZS91dGlsc1wiO1xyXG5pbXBvcnQge1NlYXJjaExpc3RDb250cm9sbGVyQ29tcG9uZW50fSBmcm9tIFwiLi4vc2VhcmNoLWxpc3Qvc2VhcmNoLWxpc3QtY29udHJvbGxlci5jb21wb25lbnRcIjtcclxuXHJcbi8qKlxyXG4gKiBUaGUgc2VhcmNoIHRyZWUgY29udHJvbGxlciByZW5kZXJzIGFzIGEgaGVhZGVyIHRvIG9uZSBvciBtb3JlIHNlYXJjaCB0cmVlcy4gIE9ubHkgb25lIHNlYXJjaCB0cmVlIGNhbiBiZSBzaG93biBhdCBhIHRpbWUuXHJcbiAqIFRoZSBjb250cm9sbGVyIGZlYXR1cmVzIHRoZSBhYmlsaXR5IHRvIGhhbmRsZSBmaWx0ZXJpbmcgYW5kIHNvcnRpbmcuICBXaXRob3V0IHRoZSBjb250cm9sbGVyLCB0aGUgc2VhcmNoIGxpc3QgY2FuIGV4aXN0LFxyXG4gKiBidXQgaXQgY2FuIG9ubHkgaGFuZGxlIHBhZ2luZyBpbnRlcm5hbGx5LlxyXG4gKi9cclxuQENvbXBvbmVudFR5cGUoXCJTZWFyY2hUcmVlQ29udHJvbGxlckNvbXBvbmVudFwiKVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJoY2ktc2VhcmNoLXRyZWUtY29udHJvbGxlclwiLFxyXG4gIGV4cG9ydEFzOiBcInNlYXJjaFRyZWVDb250cm9sbGVyQ29tcG9uZW50XCIsXHJcbiAgc3R5bGVzOiBbYFxyXG4gICAgLnNpZGViYXItY29udGFpbmVyIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0U3RTdFNztcclxuICAgICAgY29sb3I6ICNmZmYgO1xyXG4gICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgICBwYWRkaW5nLXRvcDogM3B4O1xyXG4gICAgICBtYXJnaW4tbGVmdDogLThweDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAtOHB4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzJweDtcclxuICAgIH1cclxuXHJcbiAgYF0sXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgKm5nSWY9XCIhaGlkZUVsZW1lbnRzXCIgaWQ9XCJzZWFyY2gtdGl0bGVcIiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwic2hvd1RpdGxlXCIgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICB7e3RpdGxlfX1cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93IG1zLWF1dG9cIj5cclxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJidXR0b25UZW1wbGF0ZVwiPjxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJidXR0b25UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPjwvZGl2PlxyXG4gICAgICAgICAgPGEgKGNsaWNrKT1cInRvZ2dsZVNob3dPcHRpb25zKCRldmVudClcIj48aSBjbGFzcz1cImZhcyBmYS1maWx0ZXJcIj48L2k+PC9hPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtb3B0aW9uc1wiIFtjbGFzcy5leHBhbmRlZF09XCJzaG93T3B0aW9uc1wiICpuZ0lmPVwiZmlsdGVyQnlBbGxvd2VkRmllbGRzLmxlbmd0aCA+IDAgJiYgc29ydEJ5QWxsb3dlZEZpZWxkcy5sZW5ndGggPiAwXCI+XHJcbiAgICAgICAgICA8dWwgbmdiTmF2ICNuYXY9XCJuZ2JOYXZcIiBjbGFzcz1cIm5hdi10YWJzXCI+XHJcbiAgICAgICAgICAgIDxsaSBuZ2JOYXZJdGVtICAqbmdJZj1cImZpbHRlckJ5QWxsb3dlZEZpZWxkcy5sZW5ndGggPiAxXCI+XHJcbiAgICAgICAgICAgICAgPGEgbmdiTmF2TGluayA+IEZpbHRlcmluZyA8L2E+XHJcbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIG5nYk5hdkNvbnRlbnQ+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGZpbHRlciBvZiBib3VuZEZpbHRlcnNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG0tMVwiIHN0eWxlPVwiYWxpZ24taXRlbXM6IGNlbnRlcjtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJmbGV4OiAwIDAgNDAlO1wiPnt7Z2V0RmllbGREaXNwbGF5KGZpbHRlci5maWVsZCl9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGlucHV0IFtuZ01vZGVsXT1cImZpbHRlci52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2V0RmlsdGVyKCRldmVudCwgZmlsdGVyKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGtleWRvd24pPVwiYXBwbHlGaWx0ZXJzKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiZmxleDogMSAxIDYwJTtcIiBhcmlhLWxhYmVsPVwiaGNpLW5nLXNlYXJjaC10cmVlLWNvbnRyb2xsZXItZmlsdGVyXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWdyb3ctMSBtLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJhcHBseUZpbHRlcnMoKVwiIGNsYXNzPVwibXMtYXV0byBtZS0xXCI+PGkgY2xhc3M9XCJmYXMgZmEtY2hlY2stY2lyY2xlXCI+PC9pPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInNldHVwRmlsdGVycyh0cnVlKVwiIGNsYXNzPVwibWUtMFwiPjxpIGNsYXNzPVwiZmFzIGZhLXRpbWVzLWNpcmNsZVwiPjwvaT48L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICA8bGkgbmdiTmF2SXRlbSAqbmdJZj1cInNvcnRCeUFsbG93ZWRGaWVsZHMubGVuZ3RoID4gMFwiPlxyXG4gICAgICAgICAgICAgIDxhIG5nYk5hdkxpbmsgPiBTb3J0aW5nIDwvYT5cclxuICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgbmdiTmF2Q29udGVudD5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgc29ydEZpZWxkIG9mIHNvcnRCeUFsbG93ZWRGaWVsZHNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG0tMlwiIHN0eWxlPVwiYWxpZ24taXRlbXM6IGNlbnRlcjtcIiAoY2xpY2spPVwic2V0U29ydCgkZXZlbnQsIHNvcnRGaWVsZClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDogMS41cmVtO1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXNTb3J0KHNvcnRGaWVsZCkgJiYgaXNTb3J0QXNjKHNvcnRGaWVsZClcIiBbc3R5bGUuY29sb3JdPVwiaXNGaXJzdFNvcnQoc29ydEZpZWxkKSA/ICdncmVlbicgOiAnaW5oZXJpdCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1hcnJvdy1jaXJjbGUtdXAgZmEtbGdcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXNTb3J0KHNvcnRGaWVsZCkgJiYgIWlzU29ydEFzYyhzb3J0RmllbGQpXCIgW3N0eWxlLmNvbG9yXT1cImlzRmlyc3RTb3J0KHNvcnRGaWVsZCkgPyAnZ3JlZW4nIDogJ2luaGVyaXQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtYXJyb3ctY2lyY2xlLWRvd24gZmEtbGdcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICB7e2dldEZpZWxkRGlzcGxheShzb3J0RmllbGQpfX1cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgPC91bD5cclxuICAgICAgICAgIDxkaXYgW25nYk5hdk91dGxldF09XCJuYXZcIiA+PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG1iLTEgZ2xvYmFsLXNlYXJjaFwiIHN0eWxlPVwiYWxpZ24taXRlbXM6IGNlbnRlcjtcIj5cclxuICAgICAgICA8aW5wdXQgW25nTW9kZWxdPVwiZ2xvYmFsU2VhcmNoXCIgKGtleXVwKT1cImRvR2xvYmFsU2VhcmNoKCRldmVudClcIiBjbGFzcz1cIm1zLTJcIiBwbGFjZWhvbGRlcj1cIlNlYXJjaFwiIGFyaWEtbGFiZWw9XCJoY2ktbmctc2VhcmNoLXRyZWUtY29udHJvbGxlci1nbG9iYWwtc2VhcmNoXCIvPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtcy0xIG1lLTFcIj5cclxuICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXNlYXJjaFwiPjwvaT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggcC0xIHgtYXV0b1wiICpuZ0lmPVwiaGFzVmFsaWRGaWx0ZXJzKClcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmaWx0ZXIgb2YgZmlsdGVyc1wiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmlsdGVyLnZhbGlkXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiAoY2xpY2spPVwiY2xlYXJGaWx0ZXIoZmlsdGVyKVwiIGNsYXNzPVwiZC1mbGV4IHBpbGxcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtZS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgIHt7ZmlsdGVyLmZpZWxkfX1cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNsb3NlLWljb25cIj5cclxuICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtdGltZXMtY2lyY2xlIGZhLXhzXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwic2VhcmNoTGlzdHMubGVuZ3RoID4gMVwiIGNsYXNzPVwiZC1mbGV4IHgtaGlkZGVuIGxpc3QtdG9nZ2xlXCI+XHJcbiAgICAgICAgPG1hdC1idXR0b24tdG9nZ2xlLWdyb3VwIFtuZ01vZGVsXT1cInNlbGVjdGVkU2VhcmNoTGlzdFwiIChuZ01vZGVsQ2hhbmdlKT1cInNldFNlbGVjdGVkU2VhcmNoTGlzdCgkZXZlbnQpXCI+XHJcbiAgICAgICAgICA8bWF0LWJ1dHRvbi10b2dnbGUgKm5nRm9yPVwibGV0IHNlYXJjaExpc3Qgb2Ygc2VhcmNoTGlzdHNcIiBtYXQtcmFpc2VkLWJ1dHRvbi10b2dnbGUgY29sb3I9XCJwcmltYXJ5XCIgW3ZhbHVlXT1cInNlYXJjaExpc3RcIj5cclxuICAgICAgICAgICAge3tzZWFyY2hMaXN0fX1cclxuICAgICAgICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XHJcbiAgICAgICAgPC9tYXQtYnV0dG9uLXRvZ2dsZS1ncm91cD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCJoaWRlRWxlbWVudHNcIiBjbGFzcz1cInNpZGViYXItY29udGFpbmVyXCI+XHJcbiAgICAgIDxkaXYgaWQ9XCJzZWFyY2gtdGl0bGVcIiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBwdC0xXCI+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2hvd1RpdGxlXCIgY2xhc3M9XCJkLWZsZXggcHMtM1wiPlxyXG4gICAgICAgICAgICB7e3RpdGxlfX1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIGBcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlYXJjaFRyZWVDb250cm9sbGVyQ29tcG9uZW50IGV4dGVuZHMgU2VhcmNoTGlzdENvbnRyb2xsZXJDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBidXR0b25UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBASW5wdXQoKSBoaWRlRWxlbWVudHM6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgdXBkYXRlQ29uZmlnKGNvbmZpZykge1xyXG4gICAgc3VwZXIudXBkYXRlQ29uZmlnKGNvbmZpZyk7XHJcblxyXG4gICAgaWYgKGNvbmZpZy5idXR0b25UZW1wbGF0ZSkge1xyXG4gICAgICB0aGlzLmJ1dHRvblRlbXBsYXRlID0gY29uZmlnLmJ1dHRvblRlbXBsYXRlO1xyXG4gICAgfVxyXG4gICAgaWYgKGNvbmZpZy5oaWRlRWxlbWVudHMpIHtcclxuICAgICAgdGhpcy5oaWRlRWxlbWVudHMgPSBjb25maWcuaGlkZUVsZW1lbnRzO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -530,8 +530,8 @@ let SearchTreeComponent = class SearchTreeComponent extends NavComponent {
|
|
|
530
530
|
}
|
|
531
531
|
});
|
|
532
532
|
}
|
|
533
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
534
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
533
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SearchTreeComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ComponentFactoryResolver }, { token: i1.NavigationGlobalService }, { token: i2.NavigationService, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
534
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SearchTreeComponent, selector: "hci-search-tree", inputs: { controller: "controller", boundData: ["data", "boundData"], dataSubject: "dataSubject", externalDataCall: ["dataCall", "externalDataCall"], searchTreeOptions: "searchTreeOptions", itemTemplate: "itemTemplate", loadingSubjects: "loadingSubjects", loading: "loading", route: "route", pageSize: "pageSize", dropdown: "dropdown", busyIcon: "busyIcon", expandTreeNodeIDs: "expandTreeNodeIDs", onClick: "onClick", onNodeMoved: "onNodeMoved", onDataUpdate: "onDataUpdate", sortChildren: "sortChildren" }, outputs: { nodeSelected: "nodeSelected", dataChange: "dataChange" }, viewQueries: [{ propertyName: "treeComponent", first: true, predicate: ["searchTreeControl"], descendants: true }, { propertyName: "defaultTemplate", first: true, predicate: ["defaultTemplate"], descendants: true, read: TemplateRef, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `
|
|
535
535
|
<div class="d-flex scrollable treeBox">
|
|
536
536
|
<div class="d-flex flex-column treeBox">
|
|
537
537
|
<hci-busy [busySubjects]="loadingSubjects" parentSelector=".scrollable" [icon]="busyIcon"></hci-busy>
|
|
@@ -570,7 +570,7 @@ SearchTreeComponent = __decorate([
|
|
|
570
570
|
ChangeDetectorRef])
|
|
571
571
|
], SearchTreeComponent);
|
|
572
572
|
export { SearchTreeComponent };
|
|
573
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
573
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SearchTreeComponent, decorators: [{
|
|
574
574
|
type: Component,
|
|
575
575
|
args: [{ selector: "hci-search-tree", template: `
|
|
576
576
|
<div class="d-flex scrollable treeBox">
|
|
@@ -651,4 +651,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
651
651
|
}], sortChildren: [{
|
|
652
652
|
type: Input
|
|
653
653
|
}] } });
|
|
654
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXRyZWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF2aWdhdGlvbi9zcmMvY29tcG9uZW50cy9zZWFyY2gtdHJlZS9zZWFyY2gtdHJlZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUFFLFNBQVMsRUFBRSx3QkFBd0IsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFDdkYsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQWEsU0FBUyxFQUErQixXQUFXLEVBQUUsU0FBUyxFQUN2RyxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsZUFBZSxFQUEwQixNQUFNLE1BQU0sQ0FBQztBQUM5RCxPQUFPLEVBQUMsS0FBSyxFQUFFLFFBQVEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQy9DLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUV2RCxPQUFPLEVBQTJCLFVBQVUsRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFhLE1BQU0sNENBQTRDLENBQUM7QUFDMUksT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRS9ELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUNqRixPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUNqRixPQUFPLEVBQUMsYUFBYSxFQUEwQixNQUFNLG1EQUFtRCxDQUFDOzs7Ozs7O0FBeURsRyxJQUFNLG1CQUFtQixHQUF6QixNQUFNLG1CQUFvQixTQUFRLFlBQVk7SUFtRm5ELFlBQVksVUFBc0IsRUFDdEIsUUFB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S0FBSzt1QkFBQyxVQUFVO2dCQUVXLGlCQUFpQjtzQkFBNUMsS0FBSzt1QkFBQyxtQkFBbUI7Z0JBRWpCLFlBQVk7c0JBQXBCLEtBQUs7Z0JBR0csZUFBZTtzQkFBdkIsS0FBSztnQkFHRyxPQUFPO3NCQUFmLEtBQUs7Z0JBR0csS0FBSztzQkFBYixLQUFLO2dCQUdHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR0csUUFBUTtzQkFBaEIsS0FBSztnQkFHRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFFRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSztnQkFFRyxZQUFZO3NCQUFwQixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkFFRSxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsXHJcbiAgaXNEZXZNb2RlLCBPcHRpb25hbCwgT3V0cHV0LCBRdWVyeUxpc3QsIFJlbmRlcmVyMiwgU2ltcGxlQ2hhbmdlLCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBWaWV3Q2hpbGRyZW5cclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0fSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge2RlbGF5LCBmaW5hbGl6ZX0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7TmdiRHJvcGRvd259IGZyb20gXCJAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcFwiO1xyXG5cclxuaW1wb3J0IHtIY2lEYXRhRHRvLCBIY2lGaWx0ZXJEdG8sIEhjaUdyaWREdG8sIEhjaUdyb3VwaW5nRHRvLCBIY2lQYWdpbmdEdG8sIEhjaVNvcnREdG99IGZyb20gXCJAaHVudHNtYW4tY2FuY2VyLWluc3RpdHV0ZS9oY2ktbmctZ3JpZC1kdG9cIjtcclxuaW1wb3J0IHtDb21wb25lbnRUeXBlfSBmcm9tIFwiQGh1bnRzbWFuLWNhbmNlci1pbnN0aXR1dGUvdXRpbHNcIjtcclxuXHJcbmltcG9ydCB7TmF2Q29tcG9uZW50fSBmcm9tIFwiLi4vbmF2LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge05hdmlnYXRpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvbmF2aWdhdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7TmF2aWdhdGlvbkdsb2JhbFNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9uYXZpZ2F0aW9uLWdsb2JhbC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7U2VhcmNoVHJlZUNvbnRyb2xsZXJDb21wb25lbnR9IGZyb20gXCIuL3NlYXJjaC10cmVlLWNvbnRyb2xsZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7VHJlZUNvbXBvbmVudCwgSVRyZWVPcHRpb25zLCBUcmVlTW9kZWx9IGZyb20gXCJAaHVudHNtYW4tY2FuY2VyLWluc3RpdHV0ZS9hbmd1bGFyLXRyZWUtY29tcG9uZW50XCI7XHJcbmltcG9ydCB7SVRyZWVOb2RlfSBmcm9tIFwiQGh1bnRzbWFuLWNhbmNlci1pbnN0aXR1dGUvYW5ndWxhci10cmVlLWNvbXBvbmVudC9saWIvZGVmcy9hcGlcIjtcclxuXHJcblxyXG5AQ29tcG9uZW50VHlwZShcIlNlYXJjaFRyZWVDb21wb25lbnRcIilcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiaGNpLXNlYXJjaC10cmVlXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggc2Nyb2xsYWJsZSB0cmVlQm94XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gdHJlZUJveFwiPlxyXG4gICAgICAgIDxoY2ktYnVzeSBbYnVzeVN1YmplY3RzXT1cImxvYWRpbmdTdWJqZWN0c1wiIHBhcmVudFNlbGVjdG9yPVwiLnNjcm9sbGFibGVcIiBbaWNvbl09XCJidXN5SWNvblwiPjwvaGNpLWJ1c3k+XHJcbiAgICAgICAgPHRyZWUtcm9vdCAjc2VhcmNoVHJlZUNvbnRyb2wgW25vZGVzXT1cInZpZXdEYXRhXCIgW29wdGlvbnNdPVwic2VhcmNoVHJlZU9wdGlvbnNcIiAoYWN0aXZhdGUpPVwib25Ob2RlQ2xpY2soJGV2ZW50KVwiICh1cGRhdGVEYXRhKT1cIm9uVXBkYXRlRGF0YSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgIChtb3ZlTm9kZSk9XCJvbk1vdmVOb2RlKCRldmVudClcIiBjbGFzcz1cInNlYXJjaFRyZWVcIj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjdHJlZU5vZGVUZW1wbGF0ZSBsZXQtbm9kZSBsZXQtaW5kZXg9XCJpbmRleFwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlOyBjb250ZXh0OiB7bm9kZTogbm9kZX1cIj4gPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvdHJlZS1yb290PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDwhLS0gUGFnaW5nIGZvb3RlciAtLT5cclxuICAgIDxkaXYgKm5nSWY9XCJwYWdpbmcucGFnZVNpemUgPiAwXCIgY2xhc3M9XCJkLWZsZXggZmxleC1zaHJpbmstMCBwYWdpbmctZm9vdGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHBzLTMgcGUtM1wiIHN0eWxlPVwibWluLWhlaWdodDogMXJlbTsgYWxpZ24taXRlbXM6IGNlbnRlcjtcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzZWxlY3RlZFJvd0dyb3VwXCI+XHJcbiAgICAgICAgPGRpdiAoY2xpY2spPVwiZG9QYWdlRmlyc3QoKVwiIGNsYXNzPVwiZC1mbGV4IG10LTEgbWItMVwiIFtjbGFzcy5kaXNhYmxlZF09XCJwYWdpbmcucGFnZSA9PT0gMFwiPjxpIGNsYXNzPVwiZmFzIGZhLWZhc3QtYmFja3dhcmQgZmEteHNcIj48L2k+PC9kaXY+XHJcbiAgICAgICAgPGRpdiAoY2xpY2spPVwiZG9QYWdlUHJldmlvdXMoKVwiIGNsYXNzPVwiZC1mbGV4IG10LTEgbWItMVwiIFtjbGFzcy5kaXNhYmxlZF09XCJwYWdpbmcucGFnZSA9PT0gMFwiPjxpIGNsYXNzPVwiZmFzIGZhLWJhY2t3YXJkIGZhLXhzXCI+PC9pPjwvZGl2PlxyXG4gICAgICAgIDxkaXYgc3R5bGU9XCJmb250LXNpemU6IDAuOHJlbTtcIj57e3BhZ2luZy5wYWdlICsgMX19IG9mIHt7cGFnaW5nLm51bVBhZ2VzfX08L2Rpdj5cclxuICAgICAgICA8ZGl2IChjbGljayk9XCJkb1BhZ2VOZXh0KClcIiBjbGFzcz1cImQtZmxleCBtdC0xIG1iLTFcIiBbY2xhc3MuZGlzYWJsZWRdPVwicGFnaW5nLnBhZ2UgPT09IHBhZ2luZy5udW1QYWdlcyAtIDFcIj48aSBjbGFzcz1cImZhcyBmYS1mb3J3YXJkIGZhLXhzXCI+PC9pPjwvZGl2PlxyXG4gICAgICAgIDxkaXYgKGNsaWNrKT1cImRvUGFnZUxhc3QoKVwiIGNsYXNzPVwiZC1mbGV4IG10LTEgbWItMVwiIFtjbGFzcy5kaXNhYmxlZF09XCJwYWdpbmcucGFnZSA9PT0gcGFnaW5nLm51bVBhZ2VzIC0gMVwiPjxpIGNsYXNzPVwiZmFzIGZhLWZhc3QtZm9yd2FyZCBmYS14c1wiPjwvaT48L2Rpdj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRUZW1wbGF0ZSBsZXQtZGF0YT1cIm5vZGUuZGF0YVwiPlxyXG4gICAgICA8c3Bhbj57eyBkYXRhLm5hbWUgfX08L3NwYW4+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIGAsXHJcbiAgc3R5bGVzOiBbYFxyXG4gICAgOmhvc3Qge1xyXG4gICAgICBtaW4taGVpZ2h0OiAwcHg7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgZmxleC1zaHJpbms6IDE7XHJcbiAgICAgfVxyXG5cclxuICAgICAudHJlZUJveCB7XHJcbiAgICAgICBtaW4taGVpZ2h0OiAwcHg7XHJcbiAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgIGZsZXgtc2hyaW5rOiAxO1xyXG4gICAgIH1cclxuXHJcbiAgICAgLnNlYXJjaFRyZWUge1xyXG4gICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgIH1cclxuICBgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VhcmNoVHJlZUNvbXBvbmVudCBleHRlbmRzIE5hdkNvbXBvbmVudCB7XHJcblxyXG4gIEBWaWV3Q2hpbGQoXCJzZWFyY2hUcmVlQ29udHJvbFwiLCB7c3RhdGljOiBmYWxzZX0pIHRyZWVDb21wb25lbnQ6IFRyZWVDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZChcImRlZmF1bHRUZW1wbGF0ZVwiLCB7cmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogdHJ1ZX0pIGRlZmF1bHRUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgLy8gVGhlIGRhdGEgdGhhdCBpcyBhY3R1YWxseSByZW5kZXJlZC5cclxuICB2aWV3RGF0YTogYW55W107XHJcblxyXG4gIC8vIEEgcmVmZXJlbmNlIHRvIHRoZSBzZWFyY2ggbGlzdCBjb250cm9sbGVyIGlmIGFwcGxpY2FibGUuXHJcbiAgQElucHV0KCkgY29udHJvbGxlcjogU2VhcmNoVHJlZUNvbnRyb2xsZXJDb21wb25lbnQ7XHJcblxyXG4gIC8vIEFuIGFycmF5IG9mIGRhdGEuXHJcbiAgQElucHV0KFwiZGF0YVwiKSBib3VuZERhdGE6IE9iamVjdFtdO1xyXG5cclxuICAvLyBBIHN1YmplY3QgdGhhdCByZXByZXNlbnRzIGFuIGFycmF5IG9mIGRhdGEuXHJcbiAgQElucHV0KFwiZGF0YVN1YmplY3RcIikgZGF0YVN1YmplY3Q6IEJlaGF2aW9yU3ViamVjdDxPYmplY3RbXT47XHJcblxyXG4gIC8vIEEgZnVuY3Rpb24gd2hpY2ggdGFrZXMgaW4gYSBIY2lHcmlkRHRvIGFuZCByZXR1cm5zIGEgSGNpRGF0YUR0byB3aGljaCB3cmFwcyBhbiBhcnJheSBvZiBkYXRhLlxyXG4gIEBJbnB1dChcImRhdGFDYWxsXCIpIGV4dGVybmFsRGF0YUNhbGw6IChkdG86IEhjaUdyaWREdG8pID0+IE9ic2VydmFibGU8SGNpRGF0YUR0bz47XHJcblxyXG4gIEBJbnB1dChcInNlYXJjaFRyZWVPcHRpb25zXCIpIHNlYXJjaFRyZWVPcHRpb25zOiBhbnk7XHJcblxyXG4gIEBJbnB1dCgpIGl0ZW1UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgLy8gQW4gYXJyYXkgb2Ygc3ViamVjdHMgd2l0aCBib29sZWFucyB0byBjb250cm9sIHRoZSBoY2ktYnVzeSBvdmVybGF5aW5nIHRoZSBzZWFyY2gtbGlzdC5cclxuICBASW5wdXQoKSBsb2FkaW5nU3ViamVjdHM6IFN1YmplY3Q8Ym9vbGVhbj5bXTtcclxuXHJcbiAgLy8gQW4gYXJyYXkgb2YgYm9vbGVhbnMgdG8gY29udHJvbCB0aGUgaGNpLWJ1c3kgb3ZlcmxheWluZyB0aGUgc2VhcmNoLWxpc3QuXHJcbiAgQElucHV0KCkgbG9hZGluZzogYm9vbGVhbltdID0gW2ZhbHNlXTtcclxuXHJcbiAgLy8gSWYgY2xpY2tpbmcgYSByb3cgY2hhbmdlcyBhIHJvdXRlLCB0aGlzIGZ1bmN0aW9uIHNwZWNpZmllcyB0aGUgcm91dGUgdG8gdXNlLlxyXG4gIEBJbnB1dCgpIHJvdXRlOiAocm93R3JvdXA6IGFueSwgcm93OiBhbnkpID0+IGFueVtdO1xyXG5cclxuICAvLyBUaGUgcGFnZSBzaXplIG9mIHJvdyBncm91cHMgb3Igcm93cyBpZiBubyBncm91cGluZy5cclxuICBASW5wdXQoKSBwYWdlU2l6ZTogbnVtYmVyO1xyXG5cclxuICAvLyBBIHJlZmVyZW5jZSB0byBhIHBhcmVudCBkcm9wZG93biBpZiBhcHBsaWNhYmxlLlxyXG4gIEBJbnB1dCgpIGRyb3Bkb3duOiBOZ2JEcm9wZG93bjtcclxuXHJcbiAgLy9XaGljaCBpY29uIHRvIHVzZSBmb3IgdGhlIGJ1c3kgc3Bpbm5lclxyXG4gIEBJbnB1dCgpIGJ1c3lJY29uOiBzdHJpbmcgPSBcImZhcyBmYS1zeW5jIGZhLXNwaW5cIjtcclxuICAvL0VpdGhlciBhbiBhcnJheSBvZiBub2RlIGlkcyBmb3IgZXhwYW5kaW5nIG9yIGEgc3RyaW5nICdhbGwnIGZvciBleHBhbmRpbmcgd2hvbGUgdHJlZVxyXG4gIEBJbnB1dCgpIGV4cGFuZFRyZWVOb2RlSURzOiBzdHJpbmcgfCBhbnlbXTtcclxuXHJcbiAgQElucHV0KCkgb25DbGljazogKGNtcHQ6IFNlYXJjaFRyZWVDb21wb25lbnQsIHRyZWU6IFRyZWVDb21wb25lbnQsIGV2ZW50OiBhbnkpID0+IHZvaWQ7XHJcblxyXG4gIEBJbnB1dCgpIG9uTm9kZU1vdmVkOiAoY21wdDogU2VhcmNoVHJlZUNvbXBvbmVudCwgdHJlZTogVHJlZUNvbXBvbmVudCwgZXZlbnQ6IGFueSkgPT4gdm9pZDtcclxuXHJcbiAgQElucHV0KCkgb25EYXRhVXBkYXRlOiAoY21wdDogU2VhcmNoVHJlZUNvbXBvbmVudCwgdHJlZTogVHJlZUNvbXBvbmVudCwgZXZlbnQ6IGFueSkgPT4gdm9pZDtcclxuXHJcbiAgQE91dHB1dCgpIG5vZGVTZWxlY3RlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkgZGF0YUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBcclxuICBASW5wdXQoKSBzb3J0Q2hpbGRyZW46IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuXHJcbiAgLy8gR3JpZCBEVE8gaW5mbyBuZWVkZWQgdG8gYnVpbGQgZXh0ZXJuYWwgZGF0YSByZXF1ZXN0cy5cclxuICBzb3J0czogSGNpU29ydER0b1tdID0gW107XHJcbiAgZmlsdGVyczogSGNpRmlsdGVyRHRvW10gPSBbXTtcclxuICBwYWdpbmc6IEhjaVBhZ2luZ0R0byA9IG5ldyBIY2lQYWdpbmdEdG8oMCwgLTEpO1xyXG4gIHBhZ2luZ1N1YmplY3Q6IFN1YmplY3Q8SGNpUGFnaW5nRHRvPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SGNpUGFnaW5nRHRvPih0aGlzLnBhZ2luZyk7XHJcblxyXG4gIGRlZmF1bHRTZWFyY2hUcmVlT3B0aW9uczogSVRyZWVPcHRpb25zID0ge1xyXG4gICAgICBpZEZpZWxkOiBcImlkXCIsXHJcbiAgICAgIGRpc3BsYXlGaWVsZDogXCJuYW1lXCIsXHJcbiAgICAgIGNoaWxkcmVuRmllbGQ6IFwiY2hpbGRyZW5cIixcclxuICAgICAgdXNlVmlydHVhbFNjcm9sbDogdHJ1ZSxcclxuICAgICAgbm9kZUhlaWdodDogMjJcclxuICAgIH07XHJcblxyXG4gIC8vIEEgZHVtbXkgbnVtYmVyIHRoYXQgaW5jcmVtZW50cyBiYXNlZCBvbiBzZWxlY3Rpb24gY2hhbmdlcy4gIEZvcmNlcyByb3V0ZXJMaW5rQWN0aXZlIHRvIHJlY2hlY2suXHJcbiAgcm93UmVmcmVzaDogbnVtYmVyID0gMDtcclxuXHJcbiAgYnVzeTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBsYXN0U2Nyb2xsVG9wOiBudW1iZXIgPSAtMTtcclxuICBsYXN0U2Nyb2xsUG9zaXRpb246IG51bWJlciA9IDE7XHJcbiAgc2V0U2Nyb2xsVG9wOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGNtcHQ6IFNlYXJjaFRyZWVDb21wb25lbnQgPSB0aGlzO1xyXG5cclxuICBsYXN0RXZlbnQ6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IoZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgICAgICAgICAgICByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgICAgICAgICAgIHJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICAgICAgICAgICAgbmF2aWdhdGlvbkdsb2JhbFNlcnZpY2U6IE5hdmlnYXRpb25HbG9iYWxTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIEBPcHRpb25hbCgpIG5hdmlnYXRpb25TZXJ2aWNlOiBOYXZpZ2F0aW9uU2VydmljZSxcclxuICAgICAgICAgICAgICBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICAgIHN1cGVyKGVsZW1lbnRSZWYsIHJlbmRlcmVyLCByZXNvbHZlciwgbmF2aWdhdGlvblNlcnZpY2UsIGNoYW5nZURldGVjdG9yUmVmKTtcclxuXHJcbiAgICBpZiAoIW5hdmlnYXRpb25TZXJ2aWNlKSB7XHJcbiAgICAgIHRoaXMubmF2aWdhdGlvblNlcnZpY2UgPSBuZXcgTmF2aWdhdGlvblNlcnZpY2UobmF2aWdhdGlvbkdsb2JhbFNlcnZpY2UpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLm5hdmlnYXRpb25TZXJ2aWNlLmdldElkKCkgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLmlzUm9vdCA9IHRydWU7XHJcbiAgICAgIHRoaXMuc2V0Q29uZmlnKHt9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE9uIGluaXQsIGxpc3RlbiBmb3IgbG9hZGluZyBzdWJqZWN0cyBhbmQgbGlzdGVuIGZvciBwYWdlIGNoYW5nZXMuXHJcbiAgICovXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG5cclxuICAgIGlmICh0aGlzLmxvYWRpbmdTdWJqZWN0cykge1xyXG4gICAgICB0aGlzLmxvYWRpbmdTdWJqZWN0c1swXS5zdWJzY3JpYmUoKGJ1c3k6IGJvb2xlYW4pID0+IHtcclxuICAgICAgICB0aGlzLmJ1c3kgPSBidXN5O1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnBhZ2luZ1N1YmplY3Quc3Vic2NyaWJlKChwYWdpbmc6IEhjaVBhZ2luZ0R0bykgPT4ge1xyXG4gICAgICB0aGlzLnBhZ2luZyA9IHBhZ2luZztcclxuICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENhbGxlZCB3aGVuIGlucHV0cyBjaGFuZ2UuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge1NpbXBsZUNoYW5nZXN9IGNoYW5nZXNcclxuICAgKi9cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcclxuXHJcbiAgICB0aGlzLnJlZnJlc2hUcmVlKCk7XHJcbiAgfVxyXG5cclxuICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xyXG4gICAgIGlmICh0aGlzLnRyZWVDb21wb25lbnQudHJlZU1vZGVsICYmIHRoaXMuZXhwYW5kVHJlZU5vZGVJRHMgKSB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgbGV0IHRyZWVNb2RlbDogVHJlZU1vZGVsID0gdGhpcy50cmVlQ29tcG9uZW50LnRyZWVNb2RlbDtcclxuICAgICAgIGlmKEFycmF5LmlzQXJyYXkodGhpcy5leHBhbmRUcmVlTm9kZUlEcykpIHtcclxuICAgICAgICAgZm9yKGxldCBub2RlSWQgb2YgdGhpcy5leHBhbmRUcmVlTm9kZUlEcykge1xyXG4gICAgICAgICAgIGxldCBub2RlOiBJVHJlZU5vZGUgPSB0cmVlTW9kZWwuZ2V0Tm9kZUJ5SWQobm9kZUlkKTtcclxuICAgICAgICAgICBpZihub2RlKSB7XHJcbiAgICAgICAgICAgICBub2RlLmV4cGFuZCgpO1xyXG4gICAgICAgICAgIH1cclxuICAgICAgICAgfVxyXG4gICAgICAgfSBlbHNlIGlmKHR5cGVvZiB0aGlzLmV4cGFuZFRyZWVOb2RlSURzID09PSBcInN0cmluZ1wiXHJcbiAgICAgICAgICYmIHRoaXMuZXhwYW5kVHJlZU5vZGVJRHMgPT09IFwiYWxsXCIpIHtcclxuICAgICAgICAgdHJlZU1vZGVsLmV4cGFuZEFsbCgpO1xyXG4gICAgICAgfVxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgfVxyXG4gICB9XHJcblxyXG5cclxuICAvKipcclxuICAgKiBTZXQgZGF0YSBvbmx5IHdoZW4gdGhlIGNvbXBvbmVudCBoYXMgZnVsbHkgaW5pdGlhbGl6ZWQgYW5kIGlzIHJlbmRlcmVkLlxyXG4gICAqL1xyXG4gIGNoZWNrSW5pdGlhbGl6ZWQoKSB7XHJcbiAgICBpZiAodGhpcy5hZnRlclZpZXdJbml0KSB7XHJcbiAgICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbmZpZyh0aGlzLmNvbmZpZyk7XHJcbiAgICAgIHRoaXMucG9zdEluaXQoKTtcclxuXHJcbiAgICAgIGlmICh0aGlzLmRhdGFTdWJqZWN0KSB7XHJcbiAgICAgICAgLy9NYXkgYXMgd2VsbCBtYWtlIGl0IHNwaW4gd2hpbGUgcHJvY2Vzc2luZywgYXMgd2VsbCBhcyBsb2FkaW5nLiBPdGhlcndpc2UgaXQgbG9va3MgZnJvemVuXHJcbiAgICAgICAgaWYgKHRoaXMubG9hZGluZ1N1YmplY3RzKSB7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmdTdWJqZWN0c1swXS5uZXh0KHRydWUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5kYXRhU3ViamVjdFxyXG4gICAgICAgICAgLnBpcGUoZGVsYXkoMCkpXHJcbiAgICAgICAgICAuc3Vic2NyaWJlKChkYXRhOiBPYmplY3RbXSkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmJvdW5kRGF0YSA9IGRhdGE7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0RGF0YSgpO1xyXG5cclxuICAgICAgICAgICAgLy9Ob3cgZG9uZSBsb2FkaW5nXHJcbiAgICAgICAgICAgIGlmICh0aGlzLmxvYWRpbmdTdWJqZWN0cykge1xyXG4gICAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YmplY3RzWzBdLm5leHQoZmFsc2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHBvc3RJbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJTZWFyY2hUcmVlQ29tcG9uZW50LnBvc3RJbml0OiBcIiArIHRoaXMuaWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmdldFBhcmVudCgpKSB7XHJcbiAgICAgIHRoaXMuY29udHJvbGxlciA9IDxTZWFyY2hUcmVlQ29udHJvbGxlckNvbXBvbmVudD50aGlzLmdldFBhcmVudCgpLmdldENvbXBvbmVudEJ5VHlwZShcIlNlYXJjaFRyZWVDb250cm9sbGVyQ29tcG9uZW50XCIpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmNvbnRyb2xsZXIpIHtcclxuICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgICAgY29uc29sZS5kZWJ1ZyhcIlNlYXJjaFRyZWVDb21wb25lbnQ6IHVzaW5nIGNvbnRyb2xsZXJcIik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuY29udHJvbGxlci5hZGRTZWFyY2hMaXN0KHRoaXMudGl0bGUpO1xyXG5cclxuICAgICAgdGhpcy5jb250cm9sbGVyLmZpbHRlcnNTdWJqZWN0LnN1YnNjcmliZSgoZmlsdGVyczogSGNpRmlsdGVyRHRvW10pID0+IHtcclxuICAgICAgICB0aGlzLmZpbHRlcnMgPSBmaWx0ZXJzO1xyXG4gICAgICAgIHRoaXMuc2V0RGF0YSgpO1xyXG4gICAgICAgIHRoaXMucmVzZXRQYWdpbmcoKTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLmNvbnRyb2xsZXIuc29ydHNTdWJqZWN0LnN1YnNjcmliZSgoc29ydHM6IEhjaVNvcnREdG9bXSkgPT4ge1xyXG4gICAgICAgIHRoaXMuc29ydHMgPSBzb3J0cztcclxuICAgICAgICB0aGlzLnNldERhdGEoKTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLmNvbnRyb2xsZXIuc2VsZWN0ZWRTZWFyY2hMaXN0U3ViamVjdC5zdWJzY3JpYmUoKHRpdGxlOiBzdHJpbmcpID0+IHtcclxuICAgICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgICAgIGNvbnNvbGUuZGVidWcoXCJzZWxlY3RlZFNlYXJjaExpc3RTdWJqZWN0LnN1YnNjcmliZTogXCIgKyB0aGlzLnRpdGxlICsgXCIsIFwiICsgdGl0bGUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGV0IHZpc2libGU6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgICAgICBpZiAodGhpcy50aXRsZSAmJiB0aXRsZSAmJiB0aGlzLnRpdGxlICE9PSB0aXRsZSkge1xyXG4gICAgICAgICAgdmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHZpc2libGUpIHtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIFwiZGlzcGxheVwiLCBcImZsZXhcIik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIFwiZGlzcGxheVwiLCBcIm5vbmVcIik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnJlZnJlc2hUcmVlKCk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5yZWZyZXNoVHJlZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVGhpcyBmdW5jdGlvbiB3b3VsZCByZXNldCBwYWdpbmcgYW5kIGZpcmVzXHJcbiAgICovXHJcbiAgcmVzZXRQYWdpbmcoKXtcclxuICAgIHRoaXMucGFnaW5nLnNldFBhZ2UoMCk7XHJcbiAgICB0aGlzLnBhZ2luZ1N1YmplY3QubmV4dCh0aGlzLnBhZ2luZyk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVcGRhdGVzIHRoZSBjb25maWcgd2l0aCBvcHRpb25zIGFuZCByZS1mZXRjaGVzIGRhdGEuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gY29uZmlnXHJcbiAgICovXHJcbiAgdXBkYXRlQ29uZmlnKGNvbmZpZykge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJ1cGRhdGVDb25maWdcIik7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbmZpZykge1xyXG4gICAgICB0aGlzLmNvbmZpZyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuY29uZmlnLCBjb25maWcpO1xyXG5cclxuICAgICAgaWYgKGNvbmZpZy5yb3V0ZSkge1xyXG4gICAgICAgIHRoaXMucm91dGUgPSBjb25maWcucm91dGU7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGNvbmZpZy5wYWdlU2l6ZSkge1xyXG4gICAgICAgIHRoaXMucGFnZVNpemUgPSBjb25maWcucGFnZVNpemU7XHJcbiAgICAgICAgdGhpcy5wYWdpbmcuc2V0UGFnZVNpemUoY29uZmlnLnBhZ2VTaXplKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoY29uZmlnLmRhdGEpIHtcclxuICAgICAgICB0aGlzLmJvdW5kRGF0YSA9IGNvbmZpZy5kYXRhO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChjb25maWcuZGF0YVN1YmplY3QpIHtcclxuICAgICAgICB0aGlzLmRhdGFTdWJqZWN0ID0gY29uZmlnLmRhdGFTdWJqZWN0O1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChjb25maWcuZGF0YUNhbGwpIHtcclxuICAgICAgICB0aGlzLmV4dGVybmFsRGF0YUNhbGwgPSBjb25maWcuZGF0YUNhbGw7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGNvbmZpZy5zZWFyY2hUcmVlT3B0aW9ucykge1xyXG4gICAgICAgIHRoaXMuc2VhcmNoVHJlZU9wdGlvbnMgPSBjb25maWcuc2VhcmNoVHJlZU9wdGlvbnM7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zZWFyY2hUcmVlT3B0aW9ucyA9IHRoaXMuZGVmYXVsdFNlYXJjaFRyZWVPcHRpb25zO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChjb25maWcuaXRlbVRlbXBsYXRlKSB7XHJcbiAgICAgICAgdGhpcy5pdGVtVGVtcGxhdGUgPSBjb25maWcuaXRlbVRlbXBsYXRlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICghdGhpcy5pdGVtVGVtcGxhdGUpIHtcclxuICAgICAgICB0aGlzLml0ZW1UZW1wbGF0ZSA9IHRoaXMuZGVmYXVsdFRlbXBsYXRlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoY29uZmlnLmxvYWRpbmdTdWJqZWN0cykge1xyXG4gICAgICAgIHRoaXMubG9hZGluZ1N1YmplY3RzID0gY29uZmlnLmxvYWRpbmdTdWJqZWN0cztcclxuICAgICAgfVxyXG4gICAgICBpZiAoY29uZmlnLm9uQ2xpY2spIHtcclxuICAgICAgICB0aGlzLm9uQ2xpY2sgPSBjb25maWcub25DbGljaztcclxuICAgICAgfVxyXG4gICAgICBpZiAoY29uZmlnLm9uTm9kZU1vdmVkKSB7XHJcbiAgICAgICAgdGhpcy5vbk5vZGVNb3ZlZCA9IGNvbmZpZy5vbk5vZGVNb3ZlZDtcclxuICAgICAgfVxyXG4gICAgICBpZihjb25maWcub25EYXRhVXBkYXRlKSB7XHJcbiAgICAgICAgdGhpcy5vbkRhdGFVcGRhdGUgPSBjb25maWcub25EYXRhVXBkYXRlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmKGNvbmZpZy5leHBhbmRUcmVlTm9kZUlEcykge1xyXG4gICAgICAgIHRoaXMuZXhwYW5kVHJlZU5vZGVJRHMgPSBjb25maWcuZXhwYW5kVHJlZU5vZGVJRHM7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5leHRlcm5hbERhdGFDYWxsKSB7XHJcbiAgICAgIHRoaXMubG9hZGluZ1N1YmplY3RzID0gW25ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpXTtcclxuICAgIH1cclxuXHJcbiAgICBzdXBlci51cGRhdGVDb25maWcoY29uZmlnKTtcclxuXHJcbiAgICB0aGlzLnNldERhdGEoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdlbmVyYXRlcyB0aGUgZGF0YSBpZiBhbiBhcnJheSwgY2FsbHMgdGhlIGRhdGEgaWYgZXh0ZXJuYWwgY2FsbC5cclxuICAgKi9cclxuICBzZXREYXRhKGRhdGE/OiBPYmplY3RbXSk6IHZvaWQge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJzZXREYXRhXCIpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChkYXRhKSB7XHJcbiAgICAgIHRoaXMuYm91bmREYXRhID0gZGF0YTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgaWYgKHRoaXMuZXh0ZXJuYWxEYXRhQ2FsbCkge1xyXG4gICAgICBpZiAoIXRoaXMuYnVzeSkge1xyXG4gICAgICAgIHRoaXMuYnVzeSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nU3ViamVjdHNbMF0ubmV4dCh0cnVlKTtcclxuXHJcbiAgICAgICAgdGhpcy5leHRlcm5hbERhdGFDYWxsKG5ldyBIY2lHcmlkRHRvKHRoaXMuZmlsdGVycywgdGhpcy5zb3J0cywgdGhpcy5wYWdpbmcsIG5ldyBIY2lHcm91cGluZ0R0bygpKSlcclxuICAgICAgICAgIC5waXBlKGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nU3ViamVjdHNbMF0ubmV4dChmYWxzZSk7XHJcbiAgICAgICAgICAgIHRoaXMuYnVzeSA9IGZhbHNlO1xyXG4gICAgICAgICAgfSkpXHJcbiAgICAgICAgICAuc3Vic2NyaWJlKChleHRlcm5hbERhdGE6IEhjaURhdGFEdG8pID0+IHtcclxuICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZURhdGEoZXh0ZXJuYWxEYXRhKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmdlbmVyYXRlRGF0YSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2VuZXJhdGVzIHRoZSBkYXRhIGFycmF5IHRoYXQgdGhlIGludGVyZmFjZSB1c2VzIHRvIHJlbmRlciAocmVnYXJkbGVzcyBvZiBzb3VyY2UpLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtIY2lEYXRhRHRvfSBleHRlcm5hbERhdGFcclxuICAgKi9cclxuICBnZW5lcmF0ZURhdGEoZXh0ZXJuYWxEYXRhPzogSGNpRGF0YUR0byk6IHZvaWQge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJnZW5lcmF0ZURhdGFcIik7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoZXh0ZXJuYWxEYXRhKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoZXh0ZXJuYWxEYXRhKSB7XHJcbiAgICAgIHRoaXMuYm91bmREYXRhID0gZXh0ZXJuYWxEYXRhLmRhdGE7XHJcbiAgICAgIHRoaXMucGFnaW5nLnNldERhdGFTaXplKGV4dGVybmFsRGF0YS5ncmlkRHRvLnBhZ2luZy5kYXRhU2l6ZSk7XHJcblxyXG4gICAgICAvLyBDcmVhdGUgcm93IGdyb3Vwcy5cclxuICAgICAgdGhpcy52aWV3RGF0YSA9IFtdO1xyXG5cclxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmJvdW5kRGF0YS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIHRoaXMudmlld0RhdGEucHVzaCh0aGlzLmJvdW5kRGF0YVtpXSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIC8vIENyZWF0ZSBhbmQgcG9wdWxhdGUgcm93IGdyb3Vwcy5cclxuICAgICAgdGhpcy5wb3B1bGF0ZUZyb21Cb3VuZERhdGEoKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcclxuICAgIHRoaXMuZGF0YUNoYW5nZS5lbWl0KE9iamVjdC5hc3NpZ24oe3R5cGU6IFwibm9uZVwifSwgdGhpcy5sYXN0RXZlbnQsIHtwYWdpbmc6IHRoaXMucGFnaW5nLCBuVmlld0RhdGE6IHRoaXMudmlld0RhdGEubGVuZ3RofSkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2VuZXJhdGVzIHRoZSBkYXRhIGlmIHRoZSBkYXRhIGlzIGFuIGFycmF5IChub3QgZXh0ZXJuYWwpLlxyXG4gICAqL1xyXG4gIHBvcHVsYXRlRnJvbUJvdW5kRGF0YSgpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgY29uc29sZS5kZWJ1ZyhcInBvcHVsYXRlRnJvbUJvdW5kRGF0YVwiKTtcclxuICAgICAgY29uc29sZS5kZWJ1Zyh0aGlzLmJvdW5kRGF0YSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCF0aGlzLmJvdW5kRGF0YSkge1xyXG4gICAgICB0aGlzLnZpZXdEYXRhID0gW107XHJcbiAgICAgIHRoaXMucGFnaW5nLnNldFBhZ2UoMCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5ib3VuZERhdGEubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJCb3VuZCBEYXRhIGxlbmd0aCBmb3VuZCBhcyAwXCIpO1xyXG4gICAgICB0aGlzLnBhZ2luZy5zZXRQYWdlKDApO1xyXG4gICAgICB0aGlzLnBhZ2luZy5zZXROdW1QYWdlcygxKTtcclxuICAgICAgdGhpcy5wYWdpbmcuc2V0RGF0YVNpemUoMCk7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IHByZXBhcmVkRGF0YSA9IHRoaXMuZmlsdGVyVHJlZUluY2x1ZGVDaGlsZHJlbih0aGlzLmJvdW5kRGF0YSk7XHJcblxyXG4gICAgaWYgKHRoaXMuc29ydHMubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLnNvcnREYXRhKHByZXBhcmVkRGF0YSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5wYWdpbmcuc2V0RGF0YVNpemUocHJlcGFyZWREYXRhLmxlbmd0aCk7XHJcblxyXG5cclxuICAgIGlmICh0aGlzLnBhZ2luZy5nZXRQYWdlU2l6ZSgpID4gMCkge1xyXG4gICAgICB0aGlzLnZpZXdEYXRhID0gW107XHJcbiAgICAgIGZvciAodmFyIGkgPSB0aGlzLnBhZ2luZy5nZXRQYWdlKCkgKiB0aGlzLnBhZ2luZy5nZXRQYWdlU2l6ZSgpOyBpIDwgTWF0aC5taW4ocHJlcGFyZWREYXRhLmxlbmd0aCwgKHRoaXMucGFnaW5nLmdldFBhZ2UoKSArIDEpICogdGhpcy5wYWdpbmcuZ2V0UGFnZVNpemUoKSk7IGkrKykge1xyXG4gICAgICAgIHRoaXMudmlld0RhdGEucHVzaChwcmVwYXJlZERhdGFbaV0pO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnBhZ2luZy5zZXREYXRhU2l6ZShwcmVwYXJlZERhdGEubGVuZ3RoKTtcclxuICAgICAgdGhpcy52aWV3RGF0YSA9IHByZXBhcmVkRGF0YTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgY29uc29sZS5kZWJ1ZyhcIkZpbHRlcmVkIFRyZWUgRGF0YTpcIik7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcodGhpcy52aWV3RGF0YSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5yZWZyZXNoVHJlZSgpO1xyXG4gIH1cclxuICBcclxuICBzb3J0RGF0YShkYXRhOiBhbnkpIHtcclxuICAgIGRhdGEuc29ydCgoYTogYW55LCBiOiBhbnkpID0+IHtcclxuICAgICAgbGV0IHY6IG51bWJlciA9IDA7XHJcblxyXG4gICAgICBmb3IgKGxldCBzb3J0IG9mIHRoaXMuc29ydHMpIHtcclxuICAgICAgICBpZiAoc29ydC5nZXRBc2MoKSkge1xyXG4gICAgICAgICAgaWYgKHRoaXMudXBwZXIoYVtzb3J0LmdldEZpZWxkKCldKSA8IHRoaXMudXBwZXIoYltzb3J0LmdldEZpZWxkKCldKSkge1xyXG4gICAgICAgICAgICB2ID0gLTE7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMudXBwZXIoYVtzb3J0LmdldEZpZWxkKCldKSA+IHRoaXMudXBwZXIoYltzb3J0LmdldEZpZWxkKCldKSkge1xyXG4gICAgICAgICAgICB2ID0gMTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgaWYgKHRoaXMudXBwZXIoYVtzb3J0LmdldEZpZWxkKCldKSA+IHRoaXMudXBwZXIoYltzb3J0LmdldEZpZWxkKCldKSkge1xyXG4gICAgICAgICAgICB2ID0gLTE7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMudXBwZXIoYVtzb3J0LmdldEZpZWxkKCldKSA8IHRoaXMudXBwZXIoYltzb3J0LmdldEZpZWxkKCldKSkge1xyXG4gICAgICAgICAgICB2ID0gMTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh2ICE9IDApIHtcclxuICAgICAgICAgIHJldHVybiB2O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgcmV0dXJuIHY7XHJcbiAgICB9KTtcclxuICAgIFxyXG4gICAgLy9Tb3J0IGNoaWxkcmVuXHJcbiAgICBpZiAodGhpcy5zb3J0Q2hpbGRyZW4pIHtcclxuICAgICAgZm9yIChsZXQgY2hpbGQgb2YgZGF0YSkge1xyXG4gICAgICAgIGlmIChjaGlsZFt0aGlzLnNlYXJjaFRyZWVPcHRpb25zLmNoaWxkcmVuRmllbGRdKSB7XHJcbiAgICAgICAgICB0aGlzLnNvcnREYXRhKGNoaWxkW3RoaXMuc2VhcmNoVHJlZU9wdGlvbnMuY2hpbGRyZW5GaWVsZF0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdXBwZXIodmFsdWU6IE9iamVjdCkge1xyXG4gICAgaWYgKHZhbHVlICYmIHZhbHVlICE9IG51bGwpIHtcclxuICAgICAgcmV0dXJuIHZhbHVlLnRvU3RyaW5nKCkudG9VcHBlckNhc2UoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB2YWx1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlZnJlc2hUcmVlICgpIHtcclxuICAgIHRoaXMudHJlZUNvbXBvbmVudC50cmVlTW9kZWwudXBkYXRlKCk7XHJcbiAgICB0aGlzLnRyZWVDb21wb25lbnQuc2l6ZUNoYW5nZWQoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlY3Vyc2l2ZSB0cmVlIHNlYXJjaC4gIEl0IHdpbGwgaW5jbHVkZSBjaGlsZHJlbiBub2RlcyBpZiBhIHBhcmVudCBub2RlIG1hdGNoZXMgdGhlIHNlYXJjaCBzdHJpbmcuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge2FueVtdfSBkYXRhXHJcbiAgICogQHJldHVybnMge2FueVtdfVxyXG4gICAqL1xyXG4gIGZpbHRlclRyZWVJbmNsdWRlQ2hpbGRyZW4oZGF0YTogYW55W10pOiBhbnlbXSB7XHJcbiAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgY29uc29sZS5kZWJ1ZyhcImZpbHRlclRyZWVJbmNsdWRlQ2hpbGRyZW5cIik7XHJcbiAgICB9XHJcbiAgICBsZXQgZmlsdGVyZWREYXRhOiBhbnlbXSA9IFtdO1xyXG4gICAgZm9yIChsZXQgY2hpbGQgb2YgZGF0YSkge1xyXG4gICAgICBpZiAodGhpcy5pbmNsdWRlTm9kZShjaGlsZCkpICB7XHJcbiAgICAgICAgZmlsdGVyZWREYXRhLnB1c2goY2hpbGQpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGlmIChjaGlsZFt0aGlzLnNlYXJjaFRyZWVPcHRpb25zLmNoaWxkcmVuRmllbGRdKSB7XHJcbiAgICAgICAgICBsZXQgZmlsdGVyZWRDaGlsZHJlbiA9IHRoaXMuZmlsdGVyVHJlZUluY2x1ZGVDaGlsZHJlbihjaGlsZFt0aGlzLnNlYXJjaFRyZWVPcHRpb25zLmNoaWxkcmVuRmllbGRdKTtcclxuICAgICAgICAgIGlmIChmaWx0ZXJlZENoaWxkcmVuLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgLy9Db3B5IHRoZSBub2RlIGFuZCByZXBsYWNlIGl0cyBjaGlsZHJlbiB3aXRoIHRoZSBmaWx0ZXJlZCBjaGlsZHJlblxyXG4gICAgICAgICAgICBsZXQgbm9kZTogYW55ID0gT2JqZWN0LmFzc2lnbih7fSwgY2hpbGQpO1xyXG4gICAgICAgICAgICBub2RlW3RoaXMuc2VhcmNoVHJlZU9wdGlvbnMuY2hpbGRyZW5GaWVsZF0gPSBmaWx0ZXJlZENoaWxkcmVuO1xyXG4gICAgICAgICAgICBmaWx0ZXJlZERhdGEucHVzaChub2RlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBmaWx0ZXJlZERhdGE7XHJcbiAgfVxyXG5cclxuXHJcbiAgaW5jbHVkZU5vZGUocm93OiBhbnkpOiBib29sZWFuIHtcclxuICAgIGxldCBpbmNsdWRlOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgICBpZiAodGhpcy5maWx0ZXJzICYmIHRoaXMuZmlsdGVycy5sZW5ndGggPiAwKSB7XHJcblxyXG4gICAgICBmb3IgKGxldCBmaWx0ZXIgb2YgdGhpcy5maWx0ZXJzKSB7XHJcbiAgICAgICAgaWYgKCFmaWx0ZXIudmFsaWQgfHwgIWZpbHRlci5nZXRWYWx1ZSgpIHx8IGZpbHRlci5nZXRWYWx1ZSgpID09PSBcIlwiKSB7XHJcbiAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChmaWx0ZXIuZ2V0RmllbGQoKS5pbmRleE9mKFwiIG9yIFwiKSAhPT0gLTEpIHtcclxuICAgICAgICAgIGxldCBpbm5lckluY2x1ZGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICAgICAgICBmb3IgKGxldCBmaWVsZCBvZiBmaWx0ZXIuZ2V0RmllbGQoKS5zcGxpdChcIiBvciBcIikpIHtcclxuICAgICAgICAgICAgaWYgKHJvd1tmaWVsZF0gJiYgcm93W2ZpZWxkXS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZmlsdGVyLmdldFZhbHVlKCkudG9Mb3dlckNhc2UoKSkgIT09IC0xKSB7XHJcbiAgICAgICAgICAgICAgaW5uZXJJbmNsdWRlID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGlmICghaW5uZXJJbmNsdWRlKSB7XHJcbiAgICAgICAgICAgIGluY2x1ZGUgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgaWYgKCFyb3dbZmlsdGVyLmZpZWxkXSkge1xyXG4gICAgICAgICAgICBpbmNsdWRlID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChyb3dbZmlsdGVyLmZpZWxkXS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZmlsdGVyLmdldFZhbHVlKCkudG9Mb3dlckNhc2UoKSkgPT09IC0xKSB7XHJcbiAgICAgICAgICAgIGluY2x1ZGUgPSBmYWxzZTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGluY2x1ZGU7XHJcbiAgfVxyXG4gIG9uVXBkYXRlRGF0YShldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5vbkRhdGFVcGRhdGUpIHtcclxuICAgICAgdGhpcy5vbkRhdGFVcGRhdGUodGhpcywgdGhpcy50cmVlQ29tcG9uZW50LCBldmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbk1vdmVOb2RlKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLm9uTm9kZU1vdmVkKSB7XHJcbiAgICAgIHRoaXMub25Ob2RlTW92ZWQodGhpcywgdGhpcy50cmVlQ29tcG9uZW50LCBldmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbk5vZGVDbGljayhldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5vbkNsaWNrKSB7XHJcbiAgICAgIHRoaXMub25DbGljayh0aGlzLCB0aGlzLnRyZWVDb21wb25lbnQsIGV2ZW50KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy50cmVlQ29tcG9uZW50LnRyZWVNb2RlbC5hY3RpdmVOb2Rlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMubm9kZVNlbGVjdGVkLmVtaXQoe1xyXG4gICAgICAgIGV2ZW50OiBldmVudCxcclxuICAgICAgICBpZDogdGhpcy50cmVlQ29tcG9uZW50LnRyZWVNb2RlbC5hY3RpdmVOb2Rlc1swXS5kYXRhLmlkLFxyXG4gICAgICAgIG5vZGU6IHRoaXMudHJlZUNvbXBvbmVudC50cmVlTW9kZWwuYWN0aXZlTm9kZXNbMF1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHbyB0byB0aGUgZmlyc3QgcGFnZS5cclxuICAgKi9cclxuICBwdWJsaWMgZG9QYWdlRmlyc3QoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuYnVzeSkge1xyXG4gICAgICB0aGlzLnBhZ2luZy5zZXRQYWdlKDApO1xyXG4gICAgICB0aGlzLnBhZ2luZ1N1YmplY3QubmV4dCh0aGlzLnBhZ2luZyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHbyB0byB0aGUgcHJldmlvdXMgcGFnZS5cclxuICAgKi9cclxuICBwdWJsaWMgZG9QYWdlUHJldmlvdXMoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuYnVzeSkge1xyXG4gICAgICBpZiAodGhpcy5wYWdpbmcuZ2V0UGFnZSgpID4gMCkge1xyXG4gICAgICAgIHRoaXMucGFnaW5nLnNldFBhZ2UodGhpcy5wYWdpbmcuZ2V0UGFnZSgpIC0gMSk7XHJcbiAgICAgICAgdGhpcy5wYWdpbmdTdWJqZWN0Lm5leHQodGhpcy5wYWdpbmcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHbyB0byB0aGUgbmV4dCBwYWdlLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBkb1BhZ2VOZXh0KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmJ1c3kpIHtcclxuICAgICAgaWYgKHRoaXMucGFnaW5nLmdldFBhZ2UoKSA8IHRoaXMucGFnaW5nLmdldE51bVBhZ2VzKCkgLSAxKSB7XHJcbiAgICAgICAgdGhpcy5wYWdpbmcuc2V0UGFnZSh0aGlzLnBhZ2luZy5nZXRQYWdlKCkgKyAxKTtcclxuICAgICAgICB0aGlzLnBhZ2luZ1N1YmplY3QubmV4dCh0aGlzLnBhZ2luZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdvIHRvIHRoZSBsYXN0IHBhZ2UuXHJcbiAgICovXHJcbiAgcHVibGljIGRvUGFnZUxhc3QoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuYnVzeSkge1xyXG4gICAgICB0aGlzLnBhZ2luZy5zZXRQYWdlKHRoaXMucGFnaW5nLmdldE51bVBhZ2VzKCkgLSAxKTtcclxuICAgICAgdGhpcy5wYWdpbmdTdWJqZWN0Lm5leHQodGhpcy5wYWdpbmcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIC8vVE9EbyA6IEhhbmRsZSB0aGUgY2FzZSB3aGVyZSB0aGUgdXNlciB1c2VzIGEgY3VzdG9tIGdyb3VwVGVtcGxhdGVcclxuICAvKipcclxuICAgKiBUaGlzIGZ1bmN0aW9uIHdpbGwgY2F1c2UgU2VhcmNoTGlzdENvbXBvbmVudCB0byBuYXZpZ2F0ZSB0byBhIHBhZ2UgYW5kIGhpZ2hsaWdodCB0aGUgZ2l2ZW4gZ3JvdXAgaXRlbSwgb3JcclxuICAgKiB0aGUgcm93IChpbi1jYXNlIG9mIG5vbi1ncm91cGVkIGxpc3QpXHJcbiAgICogVGhpc1xyXG4gICAqIEBwYXJhbSBncm91cElkIDogVGhpcyBzaG91bGQgY29udGFpbiBhIHN0cmluZyB0byB1bmlxdWVseSBpZGVudGlmeSBhIHBhcnRpY3VsYXIgZ3JvdXAtZGlzcGxheVxyXG4gICAqIEBwYXJhbSByb3dJZCA6IFRoaXMgaXMgdGhlIGFjdHVhbCByb3dJZCBmb3IgdGhlIHJvdyB0byBiZSBzZWxlY3RlZC5cclxuICAgKi9cclxuICBuYXZpZ2F0ZVRvUGFnZUNvbnRhaW5pbmdFbGVtZW50KGlkOiBhbnkpe1xyXG5cclxuICAgIGlmICh0aGlzLmJvdW5kRGF0YS5sZW5ndGggPT09IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuYm91bmREYXRhLmZvckVhY2goKHJvdywgaW5kZXgpID0+IHtcclxuICAgICAgaWYgKHJvd1tcImlkXCJdID09PSBpZCkge1xyXG4gICAgICAgIGlmICghdGhpcy5idXN5KSB7XHJcbiAgICAgICAgICBsZXQgcGFnZSA9IE1hdGguZmxvb3IoaW5kZXggLyB0aGlzLnBhZ2luZy5nZXRQYWdlU2l6ZSgpKTtcclxuICAgICAgICAgIGlmICh0aGlzLnBhZ2luZy5nZXROdW1QYWdlcygpIC0gMSA+PSBwYWdlKSB7XHJcbiAgICAgICAgICAgIHRoaXMucGFnaW5nLnNldFBhZ2UocGFnZSk7XHJcbiAgICAgICAgICAgIHRoaXMucGFnaW5nU3ViamVjdC5uZXh0KHRoaXMucGFnaW5nKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
654
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXRyZWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF2aWdhdGlvbi9zcmMvY29tcG9uZW50cy9zZWFyY2gtdHJlZS9zZWFyY2gtdHJlZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUFFLFNBQVMsRUFBRSx3QkFBd0IsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFDdkYsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQWEsU0FBUyxFQUErQixXQUFXLEVBQUUsU0FBUyxFQUN2RyxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsZUFBZSxFQUEwQixNQUFNLE1BQU0sQ0FBQztBQUM5RCxPQUFPLEVBQUMsS0FBSyxFQUFFLFFBQVEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQy9DLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUV2RCxPQUFPLEVBQTJCLFVBQVUsRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFhLE1BQU0sNENBQTRDLENBQUM7QUFDMUksT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRS9ELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUNqRixPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUNqRixPQUFPLEVBQUMsYUFBYSxFQUEwQixNQUFNLG1EQUFtRCxDQUFDOzs7Ozs7O0FBeURsRyxJQUFNLG1CQUFtQixHQUF6QixNQUFNLG1CQUFvQixTQUFRLFlBQVk7SUFtRm5ELFlBQVksVUFBc0IsRUFDdEIsUUFB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S0FBSzt1QkFBQyxVQUFVO2dCQUVXLGlCQUFpQjtzQkFBNUMsS0FBSzt1QkFBQyxtQkFBbUI7Z0JBRWpCLFlBQVk7c0JBQXBCLEtBQUs7Z0JBR0csZUFBZTtzQkFBdkIsS0FBSztnQkFHRyxPQUFPO3NCQUFmLEtBQUs7Z0JBR0csS0FBSztzQkFBYixLQUFLO2dCQUdHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR0csUUFBUTtzQkFBaEIsS0FBSztnQkFHRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFFRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSztnQkFFRyxZQUFZO3NCQUFwQixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkFFRSxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsXHJcbiAgaXNEZXZNb2RlLCBPcHRpb25hbCwgT3V0cHV0LCBRdWVyeUxpc3QsIFJlbmRlcmVyMiwgU2ltcGxlQ2hhbmdlLCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBWaWV3Q2hpbGRyZW5cclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0fSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge2RlbGF5LCBmaW5hbGl6ZX0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7TmdiRHJvcGRvd259IGZyb20gXCJAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcFwiO1xyXG5cclxuaW1wb3J0IHtIY2lEYXRhRHRvLCBIY2lGaWx0ZXJEdG8sIEhjaUdyaWREdG8sIEhjaUdyb3VwaW5nRHRvLCBIY2lQYWdpbmdEdG8sIEhjaVNvcnREdG99IGZyb20gXCJAaHVudHNtYW4tY2FuY2VyLWluc3RpdHV0ZS9oY2ktbmctZ3JpZC1kdG9cIjtcclxuaW1wb3J0IHtDb21wb25lbnRUeXBlfSBmcm9tIFwiQGh1bnRzbWFuLWNhbmNlci1pbnN0aXR1dGUvdXRpbHNcIjtcclxuXHJcbmltcG9ydCB7TmF2Q29tcG9uZW50fSBmcm9tIFwiLi4vbmF2LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge05hdmlnYXRpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvbmF2aWdhdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7TmF2aWdhdGlvbkdsb2JhbFNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9uYXZpZ2F0aW9uLWdsb2JhbC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7U2VhcmNoVHJlZUNvbnRyb2xsZXJDb21wb25lbnR9IGZyb20gXCIuL3NlYXJjaC10cmVlLWNvbnRyb2xsZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7VHJlZUNvbXBvbmVudCwgSVRyZWVPcHRpb25zLCBUcmVlTW9kZWx9IGZyb20gXCJAaHVudHNtYW4tY2FuY2VyLWluc3RpdHV0ZS9hbmd1bGFyLXRyZWUtY29tcG9uZW50XCI7XHJcbmltcG9ydCB7SVRyZWVOb2RlfSBmcm9tIFwiQGh1bnRzbWFuLWNhbmNlci1pbnN0aXR1dGUvYW5ndWxhci10cmVlLWNvbXBvbmVudC9saWIvZGVmcy9hcGlcIjtcclxuXHJcblxyXG5AQ29tcG9uZW50VHlwZShcIlNlYXJjaFRyZWVDb21wb25lbnRcIilcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiaGNpLXNlYXJjaC10cmVlXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggc2Nyb2xsYWJsZSB0cmVlQm94XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gdHJlZUJveFwiPlxyXG4gICAgICAgIDxoY2ktYnVzeSBbYnVzeVN1YmplY3RzXT1cImxvYWRpbmdTdWJqZWN0c1wiIHBhcmVudFNlbGVjdG9yPVwiLnNjcm9sbGFibGVcIiBbaWNvbl09XCJidXN5SWNvblwiPjwvaGNpLWJ1c3k+XHJcbiAgICAgICAgPHRyZWUtcm9vdCAjc2VhcmNoVHJlZUNvbnRyb2wgW25vZGVzXT1cInZpZXdEYXRhXCIgW29wdGlvbnNdPVwic2VhcmNoVHJlZU9wdGlvbnNcIiAoYWN0aXZhdGUpPVwib25Ob2RlQ2xpY2soJGV2ZW50KVwiICh1cGRhdGVEYXRhKT1cIm9uVXBkYXRlRGF0YSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgIChtb3ZlTm9kZSk9XCJvbk1vdmVOb2RlKCRldmVudClcIiBjbGFzcz1cInNlYXJjaFRyZWVcIj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjdHJlZU5vZGVUZW1wbGF0ZSBsZXQtbm9kZSBsZXQtaW5kZXg9XCJpbmRleFwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlOyBjb250ZXh0OiB7bm9kZTogbm9kZX1cIj4gPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvdHJlZS1yb290PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDwhLS0gUGFnaW5nIGZvb3RlciAtLT5cclxuICAgIDxkaXYgKm5nSWY9XCJwYWdpbmcucGFnZVNpemUgPiAwXCIgY2xhc3M9XCJkLWZsZXggZmxleC1zaHJpbmstMCBwYWdpbmctZm9vdGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHBzLTMgcGUtM1wiIHN0eWxlPVwibWluLWhlaWdodDogMXJlbTsgYWxpZ24taXRlbXM6IGNlbnRlcjtcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzZWxlY3RlZFJvd0dyb3VwXCI+XHJcbiAgICAgICAgPGRpdiAoY2xpY2spPVwiZG9QYWdlRmlyc3QoKVwiIGNsYXNzPVwiZC1mbGV4IG10LTEgbWItMVwiIFtjbGFzcy5kaXNhYmxlZF09XCJwYWdpbmcucGFnZSA9PT0gMFwiPjxpIGNsYXNzPVwiZmFzIGZhLWZhc3QtYmFja3dhcmQgZmEteHNcIj48L2k+PC9kaXY+XHJcbiAgICAgICAgPGRpdiAoY2xpY2spPVwiZG9QYWdlUHJldmlvdXMoKVwiIGNsYXNzPVwiZC1mbGV4IG10LTEgbWItMVwiIFtjbGFzcy5kaXNhYmxlZF09XCJwYWdpbmcucGFnZSA9PT0gMFwiPjxpIGNsYXNzPVwiZmFzIGZhLWJhY2t3YXJkIGZhLXhzXCI+PC9pPjwvZGl2PlxyXG4gICAgICAgIDxkaXYgc3R5bGU9XCJmb250LXNpemU6IDAuOHJlbTtcIj57e3BhZ2luZy5wYWdlICsgMX19IG9mIHt7cGFnaW5nLm51bVBhZ2VzfX08L2Rpdj5cclxuICAgICAgICA8ZGl2IChjbGljayk9XCJkb1BhZ2VOZXh0KClcIiBjbGFzcz1cImQtZmxleCBtdC0xIG1iLTFcIiBbY2xhc3MuZGlzYWJsZWRdPVwicGFnaW5nLnBhZ2UgPT09IHBhZ2luZy5udW1QYWdlcyAtIDFcIj48aSBjbGFzcz1cImZhcyBmYS1mb3J3YXJkIGZhLXhzXCI+PC9pPjwvZGl2PlxyXG4gICAgICAgIDxkaXYgKGNsaWNrKT1cImRvUGFnZUxhc3QoKVwiIGNsYXNzPVwiZC1mbGV4IG10LTEgbWItMVwiIFtjbGFzcy5kaXNhYmxlZF09XCJwYWdpbmcucGFnZSA9PT0gcGFnaW5nLm51bVBhZ2VzIC0gMVwiPjxpIGNsYXNzPVwiZmFzIGZhLWZhc3QtZm9yd2FyZCBmYS14c1wiPjwvaT48L2Rpdj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRUZW1wbGF0ZSBsZXQtZGF0YT1cIm5vZGUuZGF0YVwiPlxyXG4gICAgICA8c3Bhbj57eyBkYXRhLm5hbWUgfX08L3NwYW4+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIGAsXHJcbiAgc3R5bGVzOiBbYFxyXG4gICAgOmhvc3Qge1xyXG4gICAgICBtaW4taGVpZ2h0OiAwcHg7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgZmxleC1zaHJpbms6IDE7XHJcbiAgICAgfVxyXG5cclxuICAgICAudHJlZUJveCB7XHJcbiAgICAgICBtaW4taGVpZ2h0OiAwcHg7XHJcbiAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgIGZsZXgtc2hyaW5rOiAxO1xyXG4gICAgIH1cclxuXHJcbiAgICAgLnNlYXJjaFRyZWUge1xyXG4gICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgIH1cclxuICBgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VhcmNoVHJlZUNvbXBvbmVudCBleHRlbmRzIE5hdkNvbXBvbmVudCB7XHJcblxyXG4gIEBWaWV3Q2hpbGQoXCJzZWFyY2hUcmVlQ29udHJvbFwiLCB7c3RhdGljOiBmYWxzZX0pIHRyZWVDb21wb25lbnQ6IFRyZWVDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZChcImRlZmF1bHRUZW1wbGF0ZVwiLCB7cmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogdHJ1ZX0pIGRlZmF1bHRUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgLy8gVGhlIGRhdGEgdGhhdCBpcyBhY3R1YWxseSByZW5kZXJlZC5cclxuICB2aWV3RGF0YTogYW55W107XHJcblxyXG4gIC8vIEEgcmVmZXJlbmNlIHRvIHRoZSBzZWFyY2ggbGlzdCBjb250cm9sbGVyIGlmIGFwcGxpY2FibGUuXHJcbiAgQElucHV0KCkgY29udHJvbGxlcjogU2VhcmNoVHJlZUNvbnRyb2xsZXJDb21wb25lbnQ7XHJcblxyXG4gIC8vIEFuIGFycmF5IG9mIGRhdGEuXHJcbiAgQElucHV0KFwiZGF0YVwiKSBib3VuZERhdGE6IE9iamVjdFtdO1xyXG5cclxuICAvLyBBIHN1YmplY3QgdGhhdCByZXByZXNlbnRzIGFuIGFycmF5IG9mIGRhdGEuXHJcbiAgQElucHV0KFwiZGF0YVN1YmplY3RcIikgZGF0YVN1YmplY3Q6IEJlaGF2aW9yU3ViamVjdDxPYmplY3RbXT47XHJcblxyXG4gIC8vIEEgZnVuY3Rpb24gd2hpY2ggdGFrZXMgaW4gYSBIY2lHcmlkRHRvIGFuZCByZXR1cm5zIGEgSGNpRGF0YUR0byB3aGljaCB3cmFwcyBhbiBhcnJheSBvZiBkYXRhLlxyXG4gIEBJbnB1dChcImRhdGFDYWxsXCIpIGV4dGVybmFsRGF0YUNhbGw6IChkdG86IEhjaUdyaWREdG8pID0+IE9ic2VydmFibGU8SGNpRGF0YUR0bz47XHJcblxyXG4gIEBJbnB1dChcInNlYXJjaFRyZWVPcHRpb25zXCIpIHNlYXJjaFRyZWVPcHRpb25zOiBhbnk7XHJcblxyXG4gIEBJbnB1dCgpIGl0ZW1UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgLy8gQW4gYXJyYXkgb2Ygc3ViamVjdHMgd2l0aCBib29sZWFucyB0byBjb250cm9sIHRoZSBoY2ktYnVzeSBvdmVybGF5aW5nIHRoZSBzZWFyY2gtbGlzdC5cclxuICBASW5wdXQoKSBsb2FkaW5nU3ViamVjdHM6IFN1YmplY3Q8Ym9vbGVhbj5bXTtcclxuXHJcbiAgLy8gQW4gYXJyYXkgb2YgYm9vbGVhbnMgdG8gY29udHJvbCB0aGUgaGNpLWJ1c3kgb3ZlcmxheWluZyB0aGUgc2VhcmNoLWxpc3QuXHJcbiAgQElucHV0KCkgbG9hZGluZzogYm9vbGVhbltdID0gW2ZhbHNlXTtcclxuXHJcbiAgLy8gSWYgY2xpY2tpbmcgYSByb3cgY2hhbmdlcyBhIHJvdXRlLCB0aGlzIGZ1bmN0aW9uIHNwZWNpZmllcyB0aGUgcm91dGUgdG8gdXNlLlxyXG4gIEBJbnB1dCgpIHJvdXRlOiAocm93R3JvdXA6IGFueSwgcm93OiBhbnkpID0+IGFueVtdO1xyXG5cclxuICAvLyBUaGUgcGFnZSBzaXplIG9mIHJvdyBncm91cHMgb3Igcm93cyBpZiBubyBncm91cGluZy5cclxuICBASW5wdXQoKSBwYWdlU2l6ZTogbnVtYmVyO1xyXG5cclxuICAvLyBBIHJlZmVyZW5jZSB0byBhIHBhcmVudCBkcm9wZG93biBpZiBhcHBsaWNhYmxlLlxyXG4gIEBJbnB1dCgpIGRyb3Bkb3duOiBOZ2JEcm9wZG93bjtcclxuXHJcbiAgLy9XaGljaCBpY29uIHRvIHVzZSBmb3IgdGhlIGJ1c3kgc3Bpbm5lclxyXG4gIEBJbnB1dCgpIGJ1c3lJY29uOiBzdHJpbmcgPSBcImZhcyBmYS1zeW5jIGZhLXNwaW5cIjtcclxuICAvL0VpdGhlciBhbiBhcnJheSBvZiBub2RlIGlkcyBmb3IgZXhwYW5kaW5nIG9yIGEgc3RyaW5nICdhbGwnIGZvciBleHBhbmRpbmcgd2hvbGUgdHJlZVxyXG4gIEBJbnB1dCgpIGV4cGFuZFRyZWVOb2RlSURzOiBzdHJpbmcgfCBhbnlbXTtcclxuXHJcbiAgQElucHV0KCkgb25DbGljazogKGNtcHQ6IFNlYXJjaFRyZWVDb21wb25lbnQsIHRyZWU6IFRyZWVDb21wb25lbnQsIGV2ZW50OiBhbnkpID0+IHZvaWQ7XHJcblxyXG4gIEBJbnB1dCgpIG9uTm9kZU1vdmVkOiAoY21wdDogU2VhcmNoVHJlZUNvbXBvbmVudCwgdHJlZTogVHJlZUNvbXBvbmVudCwgZXZlbnQ6IGFueSkgPT4gdm9pZDtcclxuXHJcbiAgQElucHV0KCkgb25EYXRhVXBkYXRlOiAoY21wdDogU2VhcmNoVHJlZUNvbXBvbmVudCwgdHJlZTogVHJlZUNvbXBvbmVudCwgZXZlbnQ6IGFueSkgPT4gdm9pZDtcclxuXHJcbiAgQE91dHB1dCgpIG5vZGVTZWxlY3RlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkgZGF0YUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBcclxuICBASW5wdXQoKSBzb3J0Q2hpbGRyZW46IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuXHJcbiAgLy8gR3JpZCBEVE8gaW5mbyBuZWVkZWQgdG8gYnVpbGQgZXh0ZXJuYWwgZGF0YSByZXF1ZXN0cy5cclxuICBzb3J0czogSGNpU29ydER0b1tdID0gW107XHJcbiAgZmlsdGVyczogSGNpRmlsdGVyRHRvW10gPSBbXTtcclxuICBwYWdpbmc6IEhjaVBhZ2luZ0R0byA9IG5ldyBIY2lQYWdpbmdEdG8oMCwgLTEpO1xyXG4gIHBhZ2luZ1N1YmplY3Q6IFN1YmplY3Q8SGNpUGFnaW5nRHRvPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SGNpUGFnaW5nRHRvPih0aGlzLnBhZ2luZyk7XHJcblxyXG4gIGRlZmF1bHRTZWFyY2hUcmVlT3B0aW9uczogSVRyZWVPcHRpb25zID0ge1xyXG4gICAgICBpZEZpZWxkOiBcImlkXCIsXHJcbiAgICAgIGRpc3BsYXlGaWVsZDogXCJuYW1lXCIsXHJcbiAgICAgIGNoaWxkcmVuRmllbGQ6IFwiY2hpbGRyZW5cIixcclxuICAgICAgdXNlVmlydHVhbFNjcm9sbDogdHJ1ZSxcclxuICAgICAgbm9kZUhlaWdodDogMjJcclxuICAgIH07XHJcblxyXG4gIC8vIEEgZHVtbXkgbnVtYmVyIHRoYXQgaW5jcmVtZW50cyBiYXNlZCBvbiBzZWxlY3Rpb24gY2hhbmdlcy4gIEZvcmNlcyByb3V0ZXJMaW5rQWN0aXZlIHRvIHJlY2hlY2suXHJcbiAgcm93UmVmcmVzaDogbnVtYmVyID0gMDtcclxuXHJcbiAgYnVzeTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBsYXN0U2Nyb2xsVG9wOiBudW1iZXIgPSAtMTtcclxuICBsYXN0U2Nyb2xsUG9zaXRpb246IG51bWJlciA9IDE7XHJcbiAgc2V0U2Nyb2xsVG9wOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGNtcHQ6IFNlYXJjaFRyZWVDb21wb25lbnQgPSB0aGlzO1xyXG5cclxuICBsYXN0RXZlbnQ6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IoZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgICAgICAgICAgICByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgICAgICAgICAgIHJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICAgICAgICAgICAgbmF2aWdhdGlvbkdsb2JhbFNlcnZpY2U6IE5hdmlnYXRpb25HbG9iYWxTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIEBPcHRpb25hbCgpIG5hdmlnYXRpb25TZXJ2aWNlOiBOYXZpZ2F0aW9uU2VydmljZSxcclxuICAgICAgICAgICAgICBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICAgIHN1cGVyKGVsZW1lbnRSZWYsIHJlbmRlcmVyLCByZXNvbHZlciwgbmF2aWdhdGlvblNlcnZpY2UsIGNoYW5nZURldGVjdG9yUmVmKTtcclxuXHJcbiAgICBpZiAoIW5hdmlnYXRpb25TZXJ2aWNlKSB7XHJcbiAgICAgIHRoaXMubmF2aWdhdGlvblNlcnZpY2UgPSBuZXcgTmF2aWdhdGlvblNlcnZpY2UobmF2aWdhdGlvbkdsb2JhbFNlcnZpY2UpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLm5hdmlnYXRpb25TZXJ2aWNlLmdldElkKCkgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLmlzUm9vdCA9IHRydWU7XHJcbiAgICAgIHRoaXMuc2V0Q29uZmlnKHt9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE9uIGluaXQsIGxpc3RlbiBmb3IgbG9hZGluZyBzdWJqZWN0cyBhbmQgbGlzdGVuIGZvciBwYWdlIGNoYW5nZXMuXHJcbiAgICovXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG5cclxuICAgIGlmICh0aGlzLmxvYWRpbmdTdWJqZWN0cykge1xyXG4gICAgICB0aGlzLmxvYWRpbmdTdWJqZWN0c1swXS5zdWJzY3JpYmUoKGJ1c3k6IGJvb2xlYW4pID0+IHtcclxuICAgICAgICB0aGlzLmJ1c3kgPSBidXN5O1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnBhZ2luZ1N1YmplY3Quc3Vic2NyaWJlKChwYWdpbmc6IEhjaVBhZ2luZ0R0bykgPT4ge1xyXG4gICAgICB0aGlzLnBhZ2luZyA9IHBhZ2luZztcclxuICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENhbGxlZCB3aGVuIGlucHV0cyBjaGFuZ2UuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge1NpbXBsZUNoYW5nZXN9IGNoYW5nZXNcclxuICAgKi9cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcclxuXHJcbiAgICB0aGlzLnJlZnJlc2hUcmVlKCk7XHJcbiAgfVxyXG5cclxuICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xyXG4gICAgIGlmICh0aGlzLnRyZWVDb21wb25lbnQudHJlZU1vZGVsICYmIHRoaXMuZXhwYW5kVHJlZU5vZGVJRHMgKSB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgbGV0IHRyZWVNb2RlbDogVHJlZU1vZGVsID0gdGhpcy50cmVlQ29tcG9uZW50LnRyZWVNb2RlbDtcclxuICAgICAgIGlmKEFycmF5LmlzQXJyYXkodGhpcy5leHBhbmRUcmVlTm9kZUlEcykpIHtcclxuICAgICAgICAgZm9yKGxldCBub2RlSWQgb2YgdGhpcy5leHBhbmRUcmVlTm9kZUlEcykge1xyXG4gICAgICAgICAgIGxldCBub2RlOiBJVHJlZU5vZGUgPSB0cmVlTW9kZWwuZ2V0Tm9kZUJ5SWQobm9kZUlkKTtcclxuICAgICAgICAgICBpZihub2RlKSB7XHJcbiAgICAgICAgICAgICBub2RlLmV4cGFuZCgpO1xyXG4gICAgICAgICAgIH1cclxuICAgICAgICAgfVxyXG4gICAgICAgfSBlbHNlIGlmKHR5cGVvZiB0aGlzLmV4cGFuZFRyZWVOb2RlSURzID09PSBcInN0cmluZ1wiXHJcbiAgICAgICAgICYmIHRoaXMuZXhwYW5kVHJlZU5vZGVJRHMgPT09IFwiYWxsXCIpIHtcclxuICAgICAgICAgdHJlZU1vZGVsLmV4cGFuZEFsbCgpO1xyXG4gICAgICAgfVxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgfVxyXG4gICB9XHJcblxyXG5cclxuICAvKipcclxuICAgKiBTZXQgZGF0YSBvbmx5IHdoZW4gdGhlIGNvbXBvbmVudCBoYXMgZnVsbHkgaW5pdGlhbGl6ZWQgYW5kIGlzIHJlbmRlcmVkLlxyXG4gICAqL1xyXG4gIGNoZWNrSW5pdGlhbGl6ZWQoKSB7XHJcbiAgICBpZiAodGhpcy5hZnRlclZpZXdJbml0KSB7XHJcbiAgICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbmZpZyh0aGlzLmNvbmZpZyk7XHJcbiAgICAgIHRoaXMucG9zdEluaXQoKTtcclxuXHJcbiAgICAgIGlmICh0aGlzLmRhdGFTdWJqZWN0KSB7XHJcbiAgICAgICAgLy9NYXkgYXMgd2VsbCBtYWtlIGl0IHNwaW4gd2hpbGUgcHJvY2Vzc2luZywgYXMgd2VsbCBhcyBsb2FkaW5nLiBPdGhlcndpc2UgaXQgbG9va3MgZnJvemVuXHJcbiAgICAgICAgaWYgKHRoaXMubG9hZGluZ1N1YmplY3RzKSB7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmdTdWJqZWN0c1swXS5uZXh0KHRydWUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5kYXRhU3ViamVjdFxyXG4gICAgICAgICAgLnBpcGUoZGVsYXkoMCkpXHJcbiAgICAgICAgICAuc3Vic2NyaWJlKChkYXRhOiBPYmplY3RbXSkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmJvdW5kRGF0YSA9IGRhdGE7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0RGF0YSgpO1xyXG5cclxuICAgICAgICAgICAgLy9Ob3cgZG9uZSBsb2FkaW5nXHJcbiAgICAgICAgICAgIGlmICh0aGlzLmxvYWRpbmdTdWJqZWN0cykge1xyXG4gICAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YmplY3RzWzBdLm5leHQoZmFsc2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zZXREYXRhKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHBvc3RJbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJTZWFyY2hUcmVlQ29tcG9uZW50LnBvc3RJbml0OiBcIiArIHRoaXMuaWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmdldFBhcmVudCgpKSB7XHJcbiAgICAgIHRoaXMuY29udHJvbGxlciA9IDxTZWFyY2hUcmVlQ29udHJvbGxlckNvbXBvbmVudD50aGlzLmdldFBhcmVudCgpLmdldENvbXBvbmVudEJ5VHlwZShcIlNlYXJjaFRyZWVDb250cm9sbGVyQ29tcG9uZW50XCIpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmNvbnRyb2xsZXIpIHtcclxuICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgICAgY29uc29sZS5kZWJ1ZyhcIlNlYXJjaFRyZWVDb21wb25lbnQ6IHVzaW5nIGNvbnRyb2xsZXJcIik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuY29udHJvbGxlci5hZGRTZWFyY2hMaXN0KHRoaXMudGl0bGUpO1xyXG5cclxuICAgICAgdGhpcy5jb250cm9sbGVyLmZpbHRlcnNTdWJqZWN0LnN1YnNjcmliZSgoZmlsdGVyczogSGNpRmlsdGVyRHRvW10pID0+IHtcclxuICAgICAgICB0aGlzLmZpbHRlcnMgPSBmaWx0ZXJzO1xyXG4gICAgICAgIHRoaXMuc2V0RGF0YSgpO1xyXG4gICAgICAgIHRoaXMucmVzZXRQYWdpbmcoKTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLmNvbnRyb2xsZXIuc29ydHNTdWJqZWN0LnN1YnNjcmliZSgoc29ydHM6IEhjaVNvcnREdG9bXSkgPT4ge1xyXG4gICAgICAgIHRoaXMuc29ydHMgPSBzb3J0cztcclxuICAgICAgICB0aGlzLnNldERhdGEoKTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLmNvbnRyb2xsZXIuc2VsZWN0ZWRTZWFyY2hMaXN0U3ViamVjdC5zdWJzY3JpYmUoKHRpdGxlOiBzdHJpbmcpID0+IHtcclxuICAgICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgICAgIGNvbnNvbGUuZGVidWcoXCJzZWxlY3RlZFNlYXJjaExpc3RTdWJqZWN0LnN1YnNjcmliZTogXCIgKyB0aGlzLnRpdGxlICsgXCIsIFwiICsgdGl0bGUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGV0IHZpc2libGU6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgICAgICBpZiAodGhpcy50aXRsZSAmJiB0aXRsZSAmJiB0aGlzLnRpdGxlICE9PSB0aXRsZSkge1xyXG4gICAgICAgICAgdmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHZpc2libGUpIHtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIFwiZGlzcGxheVwiLCBcImZsZXhcIik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIFwiZGlzcGxheVwiLCBcIm5vbmVcIik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnJlZnJlc2hUcmVlKCk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5yZWZyZXNoVHJlZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVGhpcyBmdW5jdGlvbiB3b3VsZCByZXNldCBwYWdpbmcgYW5kIGZpcmVzXHJcbiAgICovXHJcbiAgcmVzZXRQYWdpbmcoKXtcclxuICAgIHRoaXMucGFnaW5nLnNldFBhZ2UoMCk7XHJcbiAgICB0aGlzLnBhZ2luZ1N1YmplY3QubmV4dCh0aGlzLnBhZ2luZyk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVcGRhdGVzIHRoZSBjb25maWcgd2l0aCBvcHRpb25zIGFuZCByZS1mZXRjaGVzIGRhdGEuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gY29uZmlnXHJcbiAgICovXHJcbiAgdXBkYXRlQ29uZmlnKGNvbmZpZykge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJ1cGRhdGVDb25maWdcIik7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbmZpZykge1xyXG4gICAgICB0aGlzLmNvbmZpZyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuY29uZmlnLCBjb25maWcpO1xyXG5cclxuICAgICAgaWYgKGNvbmZpZy5yb3V0ZSkge1xyXG4gICAgICAgIHRoaXMucm91dGUgPSBjb25maWcucm91dGU7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGNvbmZpZy5wYWdlU2l6ZSkge1xyXG4gICAgICAgIHRoaXMucGFnZVNpemUgPSBjb25maWcucGFnZVNpemU7XHJcbiAgICAgICAgdGhpcy5wYWdpbmcuc2V0UGFnZVNpemUoY29uZmlnLnBhZ2VTaXplKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoY29uZmlnLmRhdGEpIHtcclxuICAgICAgICB0aGlzLmJvdW5kRGF0YSA9IGNvbmZpZy5kYXRhO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChjb25maWcuZGF0YVN1YmplY3QpIHtcclxuICAgICAgICB0aGlzLmRhdGFTdWJqZWN0ID0gY29uZmlnLmRhdGFTdWJqZWN0O1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChjb25maWcuZGF0YUNhbGwpIHtcclxuICAgICAgICB0aGlzLmV4dGVybmFsRGF0YUNhbGwgPSBjb25maWcuZGF0YUNhbGw7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGNvbmZpZy5zZWFyY2hUcmVlT3B0aW9ucykge1xyXG4gICAgICAgIHRoaXMuc2VhcmNoVHJlZU9wdGlvbnMgPSBjb25maWcuc2VhcmNoVHJlZU9wdGlvbnM7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zZWFyY2hUcmVlT3B0aW9ucyA9IHRoaXMuZGVmYXVsdFNlYXJjaFRyZWVPcHRpb25zO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChjb25maWcuaXRlbVRlbXBsYXRlKSB7XHJcbiAgICAgICAgdGhpcy5pdGVtVGVtcGxhdGUgPSBjb25maWcuaXRlbVRlbXBsYXRlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICghdGhpcy5pdGVtVGVtcGxhdGUpIHtcclxuICAgICAgICB0aGlzLml0ZW1UZW1wbGF0ZSA9IHRoaXMuZGVmYXVsdFRlbXBsYXRlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoY29uZmlnLmxvYWRpbmdTdWJqZWN0cykge1xyXG4gICAgICAgIHRoaXMubG9hZGluZ1N1YmplY3RzID0gY29uZmlnLmxvYWRpbmdTdWJqZWN0cztcclxuICAgICAgfVxyXG4gICAgICBpZiAoY29uZmlnLm9uQ2xpY2spIHtcclxuICAgICAgICB0aGlzLm9uQ2xpY2sgPSBjb25maWcub25DbGljaztcclxuICAgICAgfVxyXG4gICAgICBpZiAoY29uZmlnLm9uTm9kZU1vdmVkKSB7XHJcbiAgICAgICAgdGhpcy5vbk5vZGVNb3ZlZCA9IGNvbmZpZy5vbk5vZGVNb3ZlZDtcclxuICAgICAgfVxyXG4gICAgICBpZihjb25maWcub25EYXRhVXBkYXRlKSB7XHJcbiAgICAgICAgdGhpcy5vbkRhdGFVcGRhdGUgPSBjb25maWcub25EYXRhVXBkYXRlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmKGNvbmZpZy5leHBhbmRUcmVlTm9kZUlEcykge1xyXG4gICAgICAgIHRoaXMuZXhwYW5kVHJlZU5vZGVJRHMgPSBjb25maWcuZXhwYW5kVHJlZU5vZGVJRHM7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5leHRlcm5hbERhdGFDYWxsKSB7XHJcbiAgICAgIHRoaXMubG9hZGluZ1N1YmplY3RzID0gW25ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpXTtcclxuICAgIH1cclxuXHJcbiAgICBzdXBlci51cGRhdGVDb25maWcoY29uZmlnKTtcclxuXHJcbiAgICB0aGlzLnNldERhdGEoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdlbmVyYXRlcyB0aGUgZGF0YSBpZiBhbiBhcnJheSwgY2FsbHMgdGhlIGRhdGEgaWYgZXh0ZXJuYWwgY2FsbC5cclxuICAgKi9cclxuICBzZXREYXRhKGRhdGE/OiBPYmplY3RbXSk6IHZvaWQge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJzZXREYXRhXCIpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChkYXRhKSB7XHJcbiAgICAgIHRoaXMuYm91bmREYXRhID0gZGF0YTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgaWYgKHRoaXMuZXh0ZXJuYWxEYXRhQ2FsbCkge1xyXG4gICAgICBpZiAoIXRoaXMuYnVzeSkge1xyXG4gICAgICAgIHRoaXMuYnVzeSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nU3ViamVjdHNbMF0ubmV4dCh0cnVlKTtcclxuXHJcbiAgICAgICAgdGhpcy5leHRlcm5hbERhdGFDYWxsKG5ldyBIY2lHcmlkRHRvKHRoaXMuZmlsdGVycywgdGhpcy5zb3J0cywgdGhpcy5wYWdpbmcsIG5ldyBIY2lHcm91cGluZ0R0bygpKSlcclxuICAgICAgICAgIC5waXBlKGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nU3ViamVjdHNbMF0ubmV4dChmYWxzZSk7XHJcbiAgICAgICAgICAgIHRoaXMuYnVzeSA9IGZhbHNlO1xyXG4gICAgICAgICAgfSkpXHJcbiAgICAgICAgICAuc3Vic2NyaWJlKChleHRlcm5hbERhdGE6IEhjaURhdGFEdG8pID0+IHtcclxuICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZURhdGEoZXh0ZXJuYWxEYXRhKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmdlbmVyYXRlRGF0YSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2VuZXJhdGVzIHRoZSBkYXRhIGFycmF5IHRoYXQgdGhlIGludGVyZmFjZSB1c2VzIHRvIHJlbmRlciAocmVnYXJkbGVzcyBvZiBzb3VyY2UpLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtIY2lEYXRhRHRvfSBleHRlcm5hbERhdGFcclxuICAgKi9cclxuICBnZW5lcmF0ZURhdGEoZXh0ZXJuYWxEYXRhPzogSGNpRGF0YUR0byk6IHZvaWQge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJnZW5lcmF0ZURhdGFcIik7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoZXh0ZXJuYWxEYXRhKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoZXh0ZXJuYWxEYXRhKSB7XHJcbiAgICAgIHRoaXMuYm91bmREYXRhID0gZXh0ZXJuYWxEYXRhLmRhdGE7XHJcbiAgICAgIHRoaXMucGFnaW5nLnNldERhdGFTaXplKGV4dGVybmFsRGF0YS5ncmlkRHRvLnBhZ2luZy5kYXRhU2l6ZSk7XHJcblxyXG4gICAgICAvLyBDcmVhdGUgcm93IGdyb3Vwcy5cclxuICAgICAgdGhpcy52aWV3RGF0YSA9IFtdO1xyXG5cclxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmJvdW5kRGF0YS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIHRoaXMudmlld0RhdGEucHVzaCh0aGlzLmJvdW5kRGF0YVtpXSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIC8vIENyZWF0ZSBhbmQgcG9wdWxhdGUgcm93IGdyb3Vwcy5cclxuICAgICAgdGhpcy5wb3B1bGF0ZUZyb21Cb3VuZERhdGEoKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcclxuICAgIHRoaXMuZGF0YUNoYW5nZS5lbWl0KE9iamVjdC5hc3NpZ24oe3R5cGU6IFwibm9uZVwifSwgdGhpcy5sYXN0RXZlbnQsIHtwYWdpbmc6IHRoaXMucGFnaW5nLCBuVmlld0RhdGE6IHRoaXMudmlld0RhdGEubGVuZ3RofSkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2VuZXJhdGVzIHRoZSBkYXRhIGlmIHRoZSBkYXRhIGlzIGFuIGFycmF5IChub3QgZXh0ZXJuYWwpLlxyXG4gICAqL1xyXG4gIHBvcHVsYXRlRnJvbUJvdW5kRGF0YSgpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgY29uc29sZS5kZWJ1ZyhcInBvcHVsYXRlRnJvbUJvdW5kRGF0YVwiKTtcclxuICAgICAgY29uc29sZS5kZWJ1Zyh0aGlzLmJvdW5kRGF0YSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCF0aGlzLmJvdW5kRGF0YSkge1xyXG4gICAgICB0aGlzLnZpZXdEYXRhID0gW107XHJcbiAgICAgIHRoaXMucGFnaW5nLnNldFBhZ2UoMCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5ib3VuZERhdGEubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJCb3VuZCBEYXRhIGxlbmd0aCBmb3VuZCBhcyAwXCIpO1xyXG4gICAgICB0aGlzLnBhZ2luZy5zZXRQYWdlKDApO1xyXG4gICAgICB0aGlzLnBhZ2luZy5zZXROdW1QYWdlcygxKTtcclxuICAgICAgdGhpcy5wYWdpbmcuc2V0RGF0YVNpemUoMCk7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IHByZXBhcmVkRGF0YSA9IHRoaXMuZmlsdGVyVHJlZUluY2x1ZGVDaGlsZHJlbih0aGlzLmJvdW5kRGF0YSk7XHJcblxyXG4gICAgaWYgKHRoaXMuc29ydHMubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLnNvcnREYXRhKHByZXBhcmVkRGF0YSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5wYWdpbmcuc2V0RGF0YVNpemUocHJlcGFyZWREYXRhLmxlbmd0aCk7XHJcblxyXG5cclxuICAgIGlmICh0aGlzLnBhZ2luZy5nZXRQYWdlU2l6ZSgpID4gMCkge1xyXG4gICAgICB0aGlzLnZpZXdEYXRhID0gW107XHJcbiAgICAgIGZvciAodmFyIGkgPSB0aGlzLnBhZ2luZy5nZXRQYWdlKCkgKiB0aGlzLnBhZ2luZy5nZXRQYWdlU2l6ZSgpOyBpIDwgTWF0aC5taW4ocHJlcGFyZWREYXRhLmxlbmd0aCwgKHRoaXMucGFnaW5nLmdldFBhZ2UoKSArIDEpICogdGhpcy5wYWdpbmcuZ2V0UGFnZVNpemUoKSk7IGkrKykge1xyXG4gICAgICAgIHRoaXMudmlld0RhdGEucHVzaChwcmVwYXJlZERhdGFbaV0pO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnBhZ2luZy5zZXREYXRhU2l6ZShwcmVwYXJlZERhdGEubGVuZ3RoKTtcclxuICAgICAgdGhpcy52aWV3RGF0YSA9IHByZXBhcmVkRGF0YTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgY29uc29sZS5kZWJ1ZyhcIkZpbHRlcmVkIFRyZWUgRGF0YTpcIik7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcodGhpcy52aWV3RGF0YSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5yZWZyZXNoVHJlZSgpO1xyXG4gIH1cclxuICBcclxuICBzb3J0RGF0YShkYXRhOiBhbnkpIHtcclxuICAgIGRhdGEuc29ydCgoYTogYW55LCBiOiBhbnkpID0+IHtcclxuICAgICAgbGV0IHY6IG51bWJlciA9IDA7XHJcblxyXG4gICAgICBmb3IgKGxldCBzb3J0IG9mIHRoaXMuc29ydHMpIHtcclxuICAgICAgICBpZiAoc29ydC5nZXRBc2MoKSkge1xyXG4gICAgICAgICAgaWYgKHRoaXMudXBwZXIoYVtzb3J0LmdldEZpZWxkKCldKSA8IHRoaXMudXBwZXIoYltzb3J0LmdldEZpZWxkKCldKSkge1xyXG4gICAgICAgICAgICB2ID0gLTE7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMudXBwZXIoYVtzb3J0LmdldEZpZWxkKCldKSA+IHRoaXMudXBwZXIoYltzb3J0LmdldEZpZWxkKCldKSkge1xyXG4gICAgICAgICAgICB2ID0gMTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgaWYgKHRoaXMudXBwZXIoYVtzb3J0LmdldEZpZWxkKCldKSA+IHRoaXMudXBwZXIoYltzb3J0LmdldEZpZWxkKCldKSkge1xyXG4gICAgICAgICAgICB2ID0gLTE7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMudXBwZXIoYVtzb3J0LmdldEZpZWxkKCldKSA8IHRoaXMudXBwZXIoYltzb3J0LmdldEZpZWxkKCldKSkge1xyXG4gICAgICAgICAgICB2ID0gMTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh2ICE9IDApIHtcclxuICAgICAgICAgIHJldHVybiB2O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgcmV0dXJuIHY7XHJcbiAgICB9KTtcclxuICAgIFxyXG4gICAgLy9Tb3J0IGNoaWxkcmVuXHJcbiAgICBpZiAodGhpcy5zb3J0Q2hpbGRyZW4pIHtcclxuICAgICAgZm9yIChsZXQgY2hpbGQgb2YgZGF0YSkge1xyXG4gICAgICAgIGlmIChjaGlsZFt0aGlzLnNlYXJjaFRyZWVPcHRpb25zLmNoaWxkcmVuRmllbGRdKSB7XHJcbiAgICAgICAgICB0aGlzLnNvcnREYXRhKGNoaWxkW3RoaXMuc2VhcmNoVHJlZU9wdGlvbnMuY2hpbGRyZW5GaWVsZF0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdXBwZXIodmFsdWU6IE9iamVjdCkge1xyXG4gICAgaWYgKHZhbHVlICYmIHZhbHVlICE9IG51bGwpIHtcclxuICAgICAgcmV0dXJuIHZhbHVlLnRvU3RyaW5nKCkudG9VcHBlckNhc2UoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB2YWx1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlZnJlc2hUcmVlICgpIHtcclxuICAgIHRoaXMudHJlZUNvbXBvbmVudC50cmVlTW9kZWwudXBkYXRlKCk7XHJcbiAgICB0aGlzLnRyZWVDb21wb25lbnQuc2l6ZUNoYW5nZWQoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlY3Vyc2l2ZSB0cmVlIHNlYXJjaC4gIEl0IHdpbGwgaW5jbHVkZSBjaGlsZHJlbiBub2RlcyBpZiBhIHBhcmVudCBub2RlIG1hdGNoZXMgdGhlIHNlYXJjaCBzdHJpbmcuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge2FueVtdfSBkYXRhXHJcbiAgICogQHJldHVybnMge2FueVtdfVxyXG4gICAqL1xyXG4gIGZpbHRlclRyZWVJbmNsdWRlQ2hpbGRyZW4oZGF0YTogYW55W10pOiBhbnlbXSB7XHJcbiAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgY29uc29sZS5kZWJ1ZyhcImZpbHRlclRyZWVJbmNsdWRlQ2hpbGRyZW5cIik7XHJcbiAgICB9XHJcbiAgICBsZXQgZmlsdGVyZWREYXRhOiBhbnlbXSA9IFtdO1xyXG4gICAgZm9yIChsZXQgY2hpbGQgb2YgZGF0YSkge1xyXG4gICAgICBpZiAodGhpcy5pbmNsdWRlTm9kZShjaGlsZCkpICB7XHJcbiAgICAgICAgZmlsdGVyZWREYXRhLnB1c2goY2hpbGQpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGlmIChjaGlsZFt0aGlzLnNlYXJjaFRyZWVPcHRpb25zLmNoaWxkcmVuRmllbGRdKSB7XHJcbiAgICAgICAgICBsZXQgZmlsdGVyZWRDaGlsZHJlbiA9IHRoaXMuZmlsdGVyVHJlZUluY2x1ZGVDaGlsZHJlbihjaGlsZFt0aGlzLnNlYXJjaFRyZWVPcHRpb25zLmNoaWxkcmVuRmllbGRdKTtcclxuICAgICAgICAgIGlmIChmaWx0ZXJlZENoaWxkcmVuLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgLy9Db3B5IHRoZSBub2RlIGFuZCByZXBsYWNlIGl0cyBjaGlsZHJlbiB3aXRoIHRoZSBmaWx0ZXJlZCBjaGlsZHJlblxyXG4gICAgICAgICAgICBsZXQgbm9kZTogYW55ID0gT2JqZWN0LmFzc2lnbih7fSwgY2hpbGQpO1xyXG4gICAgICAgICAgICBub2RlW3RoaXMuc2VhcmNoVHJlZU9wdGlvbnMuY2hpbGRyZW5GaWVsZF0gPSBmaWx0ZXJlZENoaWxkcmVuO1xyXG4gICAgICAgICAgICBmaWx0ZXJlZERhdGEucHVzaChub2RlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBmaWx0ZXJlZERhdGE7XHJcbiAgfVxyXG5cclxuXHJcbiAgaW5jbHVkZU5vZGUocm93OiBhbnkpOiBib29sZWFuIHtcclxuICAgIGxldCBpbmNsdWRlOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgICBpZiAodGhpcy5maWx0ZXJzICYmIHRoaXMuZmlsdGVycy5sZW5ndGggPiAwKSB7XHJcblxyXG4gICAgICBmb3IgKGxldCBmaWx0ZXIgb2YgdGhpcy5maWx0ZXJzKSB7XHJcbiAgICAgICAgaWYgKCFmaWx0ZXIudmFsaWQgfHwgIWZpbHRlci5nZXRWYWx1ZSgpIHx8IGZpbHRlci5nZXRWYWx1ZSgpID09PSBcIlwiKSB7XHJcbiAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChmaWx0ZXIuZ2V0RmllbGQoKS5pbmRleE9mKFwiIG9yIFwiKSAhPT0gLTEpIHtcclxuICAgICAgICAgIGxldCBpbm5lckluY2x1ZGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICAgICAgICBmb3IgKGxldCBmaWVsZCBvZiBmaWx0ZXIuZ2V0RmllbGQoKS5zcGxpdChcIiBvciBcIikpIHtcclxuICAgICAgICAgICAgaWYgKHJvd1tmaWVsZF0gJiYgcm93W2ZpZWxkXS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZmlsdGVyLmdldFZhbHVlKCkudG9Mb3dlckNhc2UoKSkgIT09IC0xKSB7XHJcbiAgICAgICAgICAgICAgaW5uZXJJbmNsdWRlID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGlmICghaW5uZXJJbmNsdWRlKSB7XHJcbiAgICAgICAgICAgIGluY2x1ZGUgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgaWYgKCFyb3dbZmlsdGVyLmZpZWxkXSkge1xyXG4gICAgICAgICAgICBpbmNsdWRlID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChyb3dbZmlsdGVyLmZpZWxkXS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZmlsdGVyLmdldFZhbHVlKCkudG9Mb3dlckNhc2UoKSkgPT09IC0xKSB7XHJcbiAgICAgICAgICAgIGluY2x1ZGUgPSBmYWxzZTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGluY2x1ZGU7XHJcbiAgfVxyXG4gIG9uVXBkYXRlRGF0YShldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5vbkRhdGFVcGRhdGUpIHtcclxuICAgICAgdGhpcy5vbkRhdGFVcGRhdGUodGhpcywgdGhpcy50cmVlQ29tcG9uZW50LCBldmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbk1vdmVOb2RlKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLm9uTm9kZU1vdmVkKSB7XHJcbiAgICAgIHRoaXMub25Ob2RlTW92ZWQodGhpcywgdGhpcy50cmVlQ29tcG9uZW50LCBldmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbk5vZGVDbGljayhldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5vbkNsaWNrKSB7XHJcbiAgICAgIHRoaXMub25DbGljayh0aGlzLCB0aGlzLnRyZWVDb21wb25lbnQsIGV2ZW50KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy50cmVlQ29tcG9uZW50LnRyZWVNb2RlbC5hY3RpdmVOb2Rlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMubm9kZVNlbGVjdGVkLmVtaXQoe1xyXG4gICAgICAgIGV2ZW50OiBldmVudCxcclxuICAgICAgICBpZDogdGhpcy50cmVlQ29tcG9uZW50LnRyZWVNb2RlbC5hY3RpdmVOb2Rlc1swXS5kYXRhLmlkLFxyXG4gICAgICAgIG5vZGU6IHRoaXMudHJlZUNvbXBvbmVudC50cmVlTW9kZWwuYWN0aXZlTm9kZXNbMF1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHbyB0byB0aGUgZmlyc3QgcGFnZS5cclxuICAgKi9cclxuICBwdWJsaWMgZG9QYWdlRmlyc3QoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuYnVzeSkge1xyXG4gICAgICB0aGlzLnBhZ2luZy5zZXRQYWdlKDApO1xyXG4gICAgICB0aGlzLnBhZ2luZ1N1YmplY3QubmV4dCh0aGlzLnBhZ2luZyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHbyB0byB0aGUgcHJldmlvdXMgcGFnZS5cclxuICAgKi9cclxuICBwdWJsaWMgZG9QYWdlUHJldmlvdXMoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuYnVzeSkge1xyXG4gICAgICBpZiAodGhpcy5wYWdpbmcuZ2V0UGFnZSgpID4gMCkge1xyXG4gICAgICAgIHRoaXMucGFnaW5nLnNldFBhZ2UodGhpcy5wYWdpbmcuZ2V0UGFnZSgpIC0gMSk7XHJcbiAgICAgICAgdGhpcy5wYWdpbmdTdWJqZWN0Lm5leHQodGhpcy5wYWdpbmcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHbyB0byB0aGUgbmV4dCBwYWdlLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBkb1BhZ2VOZXh0KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmJ1c3kpIHtcclxuICAgICAgaWYgKHRoaXMucGFnaW5nLmdldFBhZ2UoKSA8IHRoaXMucGFnaW5nLmdldE51bVBhZ2VzKCkgLSAxKSB7XHJcbiAgICAgICAgdGhpcy5wYWdpbmcuc2V0UGFnZSh0aGlzLnBhZ2luZy5nZXRQYWdlKCkgKyAxKTtcclxuICAgICAgICB0aGlzLnBhZ2luZ1N1YmplY3QubmV4dCh0aGlzLnBhZ2luZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdvIHRvIHRoZSBsYXN0IHBhZ2UuXHJcbiAgICovXHJcbiAgcHVibGljIGRvUGFnZUxhc3QoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuYnVzeSkge1xyXG4gICAgICB0aGlzLnBhZ2luZy5zZXRQYWdlKHRoaXMucGFnaW5nLmdldE51bVBhZ2VzKCkgLSAxKTtcclxuICAgICAgdGhpcy5wYWdpbmdTdWJqZWN0Lm5leHQodGhpcy5wYWdpbmcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIC8vVE9EbyA6IEhhbmRsZSB0aGUgY2FzZSB3aGVyZSB0aGUgdXNlciB1c2VzIGEgY3VzdG9tIGdyb3VwVGVtcGxhdGVcclxuICAvKipcclxuICAgKiBUaGlzIGZ1bmN0aW9uIHdpbGwgY2F1c2UgU2VhcmNoTGlzdENvbXBvbmVudCB0byBuYXZpZ2F0ZSB0byBhIHBhZ2UgYW5kIGhpZ2hsaWdodCB0aGUgZ2l2ZW4gZ3JvdXAgaXRlbSwgb3JcclxuICAgKiB0aGUgcm93IChpbi1jYXNlIG9mIG5vbi1ncm91cGVkIGxpc3QpXHJcbiAgICogVGhpc1xyXG4gICAqIEBwYXJhbSBncm91cElkIDogVGhpcyBzaG91bGQgY29udGFpbiBhIHN0cmluZyB0byB1bmlxdWVseSBpZGVudGlmeSBhIHBhcnRpY3VsYXIgZ3JvdXAtZGlzcGxheVxyXG4gICAqIEBwYXJhbSByb3dJZCA6IFRoaXMgaXMgdGhlIGFjdHVhbCByb3dJZCBmb3IgdGhlIHJvdyB0byBiZSBzZWxlY3RlZC5cclxuICAgKi9cclxuICBuYXZpZ2F0ZVRvUGFnZUNvbnRhaW5pbmdFbGVtZW50KGlkOiBhbnkpe1xyXG5cclxuICAgIGlmICh0aGlzLmJvdW5kRGF0YS5sZW5ndGggPT09IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuYm91bmREYXRhLmZvckVhY2goKHJvdywgaW5kZXgpID0+IHtcclxuICAgICAgaWYgKHJvd1tcImlkXCJdID09PSBpZCkge1xyXG4gICAgICAgIGlmICghdGhpcy5idXN5KSB7XHJcbiAgICAgICAgICBsZXQgcGFnZSA9IE1hdGguZmxvb3IoaW5kZXggLyB0aGlzLnBhZ2luZy5nZXRQYWdlU2l6ZSgpKTtcclxuICAgICAgICAgIGlmICh0aGlzLnBhZ2luZy5nZXROdW1QYWdlcygpIC0gMSA+PSBwYWdlKSB7XHJcbiAgICAgICAgICAgIHRoaXMucGFnaW5nLnNldFBhZ2UocGFnZSk7XHJcbiAgICAgICAgICAgIHRoaXMucGFnaW5nU3ViamVjdC5uZXh0KHRoaXMucGFnaW5nKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -62,8 +62,8 @@ let TemplateComponent = class TemplateComponent extends NavComponent {
|
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
66
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TemplateComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ComponentFactoryResolver }, { token: i1.NavigationService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
66
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TemplateComponent, selector: "hci-template", inputs: { template: "template", componentType: "componentType" }, viewQueries: [{ propertyName: "viewContainer", first: true, predicate: ["viewContainer"], descendants: true, read: ViewContainerRef }], usesInheritance: true, ngImport: i0, template: `
|
|
67
67
|
<ng-container [ngTemplateOutlet]="template" [ngTemplateOutletContext]="config"></ng-container>
|
|
68
68
|
<ng-container #viewContainer></ng-container>
|
|
69
69
|
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
|
|
@@ -73,7 +73,7 @@ TemplateComponent = __decorate([
|
|
|
73
73
|
__metadata("design:paramtypes", [ElementRef, Renderer2, ComponentFactoryResolver, NavigationService, ChangeDetectorRef])
|
|
74
74
|
], TemplateComponent);
|
|
75
75
|
export { TemplateComponent };
|
|
76
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
76
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TemplateComponent, decorators: [{
|
|
77
77
|
type: Component,
|
|
78
78
|
args: [{
|
|
79
79
|
selector: "hci-template",
|
|
@@ -90,4 +90,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
90
90
|
type: ViewChild,
|
|
91
91
|
args: ["viewContainer", { read: ViewContainerRef, static: false }]
|
|
92
92
|
}] } });
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF2aWdhdGlvbi9zcmMvY29tcG9uZW50cy90ZW1wbGF0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQUUsd0JBQXdCLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFDMUYsV0FBVyxFQUFRLFNBQVMsRUFBRSxnQkFBZ0IsRUFDL0MsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLGlCQUFpQixFQUFFLGFBQWEsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRWxGLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQzs7OztBQUVqRTs7Ozs7Ozs7O0dBU0c7QUFTSSxJQUFNLGlCQUFpQixHQUF2QixNQUFNLGlCQUFrQixTQUFRLFlBQVk7SUFTakQsWUFBWSxVQUFzQixFQUFFLFFBQW1CLEVBQUUsUUFBa0MsRUFBRSxpQkFBb0MsRUFBRSxpQkFBb0M7UUFDckssS0FBSyxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVELFNBQVMsQ0FBQyxNQUFNO1FBQ2QsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQU07UUFDakIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1osT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7UUFDbEMsQ0FBQztRQUNELElBQUksTUFBTSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3pCLCtDQUErQztZQUMvQyxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUM7WUFDMUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6RyxDQUFDO1FBRUQsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFFMUIsS0FBSyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbEMsSUFBSSxPQUFPLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDdkMsSUFBSSxTQUFTLEVBQUUsRUFBRSxDQUFDO2dCQUNoQixPQUFPLENBQUMsS0FBSyxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztZQUMvRCxDQUFDO1lBQ0QsS0FBSyxJQUFJLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDM0IsSUFBSSxDQUFDO29CQUNILElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQztvQkFDakIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztvQkFDdkYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3RDLENBQUM7Z0JBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFBLENBQUM7WUFDaEIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDOytHQWxEVSxpQkFBaUI7bUdBQWpCLGlCQUFpQixpTkFPUSxnQkFBZ0Isb0RBWjFDOzs7R0FHVDs7QUFFVSxpQkFBaUI7SUFSN0IsYUFBYSxDQUFDLG1CQUFtQixDQUFDO3FDQWlCVCxVQUFVLEVBQVksU0FBUyxFQUFZLHdCQUF3QixFQUFxQixpQkFBaUIsRUFBcUIsaUJBQWlCO0dBVDVKLGlCQUFpQixDQW1EN0I7OzRGQW5EWSxpQkFBaUI7a0JBUDdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFFBQVEsRUFBRTs7O0dBR1Q7aUJBQ0Y7OE1BR1UsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUl5RSxhQUFhO3NCQUEzRixTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgRWxlbWVudFJlZiwgSW5wdXQsIGlzRGV2TW9kZSwgUmVuZGVyZXIyLCBTaW1wbGVDaGFuZ2UsIFNpbXBsZUNoYW5nZXMsXHJcbiAgVGVtcGxhdGVSZWYsIFR5cGUsIFZpZXdDaGlsZCwgVmlld0NvbnRhaW5lclJlZlxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5pbXBvcnQge0NvbXBvbmVudEluamVjdG9yLCBDb21wb25lbnRUeXBlfSBmcm9tIFwiQGh1bnRzbWFuLWNhbmNlci1pbnN0aXR1dGUvdXRpbHNcIjtcclxuXHJcbmltcG9ydCB7TmF2Q29tcG9uZW50fSBmcm9tIFwiLi9uYXYuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7TmF2aWdhdGlvblNlcnZpY2V9IGZyb20gXCIuLi9zZXJ2aWNlcy9uYXZpZ2F0aW9uLnNlcnZpY2VcIjtcclxuXHJcbi8qKlxyXG4gKiA8cD5cclxuICogICBUaGlzIGNvbXBvbmVudCBtYXkgdGFrZSBhIHRlbXBsYXRlIGRlZmluZWQgaW4gdGhlIHBhcmVudCBhbmQgZGlzcGxheSBpdC4gIEFueSBpbmZvcm1hdGlvbiBpdCB3aXNoZXMgdG8gdXNlIG11c3QgYmVcclxuICogICBwYXNzZWQgd2l0aCB0aGUgY29uZmlnLlxyXG4gKiA8L3A+XHJcbiAqIDxwPlxyXG4gKiAgICBTZWUgZGVtby9zcmMvYXBwL3RlbXBsYXRlL3RlbXBsYXRlLmNvbXBvbmVudC50cyBmb3IgYW4gaW1wbGVtZW50YXRpb24gZXhhbXBsZS5cclxuICogPC9wPlxyXG4gKlxyXG4gKi9cclxuQENvbXBvbmVudFR5cGUoXCJUZW1wbGF0ZUNvbXBvbmVudFwiKVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJoY2ktdGVtcGxhdGVcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJ0ZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJjb25maWdcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgI3ZpZXdDb250YWluZXI+PC9uZy1jb250YWluZXI+XHJcbiAgYFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGVtcGxhdGVDb21wb25lbnQgZXh0ZW5kcyBOYXZDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBASW5wdXQoKSBjb21wb25lbnRUeXBlOiBUeXBlPGFueT4gfCBzdHJpbmc7XHJcblxyXG4gIGNvbXBvbmVudDogYW55O1xyXG5cclxuICBAVmlld0NoaWxkKFwidmlld0NvbnRhaW5lclwiLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogZmFsc2UgfSkgcHJpdmF0ZSB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmO1xyXG5cclxuICBjb25zdHJ1Y3RvcihlbGVtZW50UmVmOiBFbGVtZW50UmVmLCByZW5kZXJlcjogUmVuZGVyZXIyLCByZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBuYXZpZ2F0aW9uU2VydmljZTogTmF2aWdhdGlvblNlcnZpY2UsIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgc3VwZXIoZWxlbWVudFJlZiwgcmVuZGVyZXIsIHJlc29sdmVyLCBuYXZpZ2F0aW9uU2VydmljZSwgY2hhbmdlRGV0ZWN0b3JSZWYpO1xyXG4gIH1cclxuXHJcbiAgc2V0Q29uZmlnKGNvbmZpZykge1xyXG4gICAgc3VwZXIuc2V0Q29uZmlnKGNvbmZpZyk7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVDb25maWcoY29uZmlnKSB7XHJcbiAgICBpZiAoIWNvbmZpZykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbmZpZy50ZW1wbGF0ZSkge1xyXG4gICAgICB0aGlzLnRlbXBsYXRlID0gY29uZmlnLnRlbXBsYXRlO1xyXG4gICAgfVxyXG4gICAgaWYgKGNvbmZpZy5jb21wb25lbnRUeXBlKSB7XHJcbiAgICAgIC8vIE9ubHkgYWxsb3cgY29tcG9uZW50IGlmIHRoZXJlIGlzIG5vIHRlbXBsYXRlXHJcbiAgICAgIHRoaXMuY29tcG9uZW50VHlwZSA9IGNvbmZpZy5jb21wb25lbnRUeXBlO1xyXG4gICAgICB0aGlzLmNvbXBvbmVudCA9IENvbXBvbmVudEluamVjdG9yLmdldENvbXBvbmVudCh0aGlzLnJlc29sdmVyLCB0aGlzLnZpZXdDb250YWluZXIsIHRoaXMuY29tcG9uZW50VHlwZSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zZXRDb21wb25lbnRDb25maWcoKTtcclxuXHJcbiAgICBzdXBlci51cGRhdGVDb25maWcoY29uZmlnKTtcclxuICB9XHJcblxyXG4gIHNldENvbXBvbmVudENvbmZpZygpIHtcclxuICAgIGlmICh0aGlzLmNvbXBvbmVudCAmJiB0aGlzLmNvbmZpZykge1xyXG4gICAgICBsZXQgY2ZnS2V5cyA9IE9iamVjdC5rZXlzKHRoaXMuY29uZmlnKTtcclxuICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgICAgY29uc29sZS5kZWJ1ZyhcImNvbXBvbmVudENvbmZpZzogXCIgKyBKU09OLnN0cmluZ2lmeShjZmdLZXlzKSk7XHJcbiAgICAgIH1cclxuICAgICAgZm9yIChsZXQgY2ZnS2V5IG9mIGNmZ0tleXMpIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgbGV0IGNoYW5nZXMgPSB7fTtcclxuICAgICAgICAgIGNoYW5nZXNbY2ZnS2V5XSA9IG5ldyBTaW1wbGVDaGFuZ2UodGhpcy5jb21wb25lbnRbY2ZnS2V5XSwgdGhpcy5jb25maWdbY2ZnS2V5XSwgZmFsc2UpO1xyXG4gICAgICAgICAgdGhpcy5jb21wb25lbnQubmdPbkNoYW5nZXMoY2hhbmdlcyk7XHJcbiAgICAgICAgfSBjYXRjaCAoZSkge31cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -42,8 +42,8 @@ let UlNavComponent = class UlNavComponent extends NavComponent {
|
|
|
42
42
|
this.ulClass = config.ulClass;
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
46
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
45
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UlNavComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ComponentFactoryResolver }, { token: i1.NavigationService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
46
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: UlNavComponent, selector: "hci-ul", inputs: { ulClass: "ulClass" }, viewQueries: [{ propertyName: "containerRefSetter", first: true, predicate: ["containerRef"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
47
47
|
<ul [id]="id + '-ul'" class="hci-ul {{ulClass}}">
|
|
48
48
|
<ng-container #containerRef></ng-container>
|
|
49
49
|
</ul>
|
|
@@ -58,7 +58,7 @@ UlNavComponent = __decorate([
|
|
|
58
58
|
ChangeDetectorRef])
|
|
59
59
|
], UlNavComponent);
|
|
60
60
|
export { UlNavComponent };
|
|
61
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UlNavComponent, decorators: [{
|
|
62
62
|
type: Component,
|
|
63
63
|
args: [{ selector: "hci-ul", template: `
|
|
64
64
|
<ul [id]="id + '-ul'" class="hci-ul {{ulClass}}">
|
|
@@ -74,4 +74,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
74
74
|
static: true
|
|
75
75
|
}]
|
|
76
76
|
}] } });
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWwtbmF2LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25hdmlnYXRpb24vc3JjL2NvbXBvbmVudHMvdWwtbmF2LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFBRSx3QkFBd0IsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQy9GLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUUvRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7OztBQXNCMUQsSUFBTSxjQUFjLEdBQXBCLE1BQU0sY0FBZSxTQUFRLFlBQVk7SUFROUMsWUFDRSxVQUFzQixFQUN0QixRQUFtQixFQUNuQixRQUFrQyxFQUNsQyxpQkFBb0MsRUFDcEMsaUJBQW9DO1FBRXBDLEtBQUssQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBYnJFLFlBQU8sR0FBVyxlQUFlLENBQUM7UUFJbkMsY0FBUyxHQUFtQixFQUFFLENBQUM7SUFVdkMsQ0FBQztJQUVELElBR08sa0JBQWtCLENBQUMsWUFBOEI7UUFDdEQsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDNUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDeEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDL0IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3pDLENBQUM7SUFDSCxDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQWtCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQsU0FBUyxDQUFDLE1BQU07UUFDZCxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBTTtRQUNqQixLQUFLLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTNCLElBQUksTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUNoQyxDQUFDO0lBQ0gsQ0FBQzsrR0FoRFUsY0FBYzttR0FBZCxjQUFjLDZLQW1CakIsZ0JBQWdCLGtFQWxDcEI7Ozs7T0FJQzs7QUFXTSxjQUFjO0lBcEIxQixhQUFhLENBQUMsZ0JBQWdCLENBQUM7cUNBNkJoQixVQUFVO1FBQ1osU0FBUztRQUNULHdCQUF3QjtRQUNmLGlCQUFpQjtRQUNqQixpQkFBaUI7R0FiM0IsY0FBYyxDQWlEMUI7OzRGQWpEWSxjQUFjO2tCQW5CMUIsU0FBUzsrQkFFSSxRQUFRLFlBRWhCOzs7O09BSUM7OE1BYUksT0FBTztzQkFBZixLQUFLO2dCQW1CQyxrQkFBa0I7c0JBSHhCLFNBQVM7dUJBQUMsY0FBYyxFQUFFO3dCQUN6QixJQUFJLEVBQUUsZ0JBQWdCO3dCQUN0QixNQUFNLEVBQUUsSUFBSTtxQkFDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIEVsZW1lbnRSZWYsIElucHV0LCBSZW5kZXJlcjIsIFZpZXdDaGlsZCwgVmlld0NvbnRhaW5lclJlZlxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5pbXBvcnQge0NvbXBvbmVudFR5cGV9IGZyb20gXCJAaHVudHNtYW4tY2FuY2VyLWluc3RpdHV0ZS91dGlsc1wiO1xyXG5cclxuaW1wb3J0IHtOYXZDb21wb25lbnR9IGZyb20gXCIuL25hdi5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtOYXZpZ2F0aW9uU2VydmljZX0gZnJvbSBcIi4uL3NlcnZpY2VzL25hdmlnYXRpb24uc2VydmljZVwiO1xyXG5cclxuQENvbXBvbmVudFR5cGUoXCJVbE5hdkNvbXBvbmVudFwiKVxyXG5AQ29tcG9uZW50KFxyXG4gIHtcclxuICAgIHNlbGVjdG9yOiBcImhjaS11bFwiLFxyXG4gICAgdGVtcGxhdGU6XHJcbiAgICAgIGBcclxuICAgICAgICA8dWwgW2lkXT1cImlkICsgJy11bCdcIiBjbGFzcz1cImhjaS11bCB7e3VsQ2xhc3N9fVwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAjY29udGFpbmVyUmVmPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvdWw+XHJcbiAgICAgIGAsXHJcbiAgICBzdHlsZXM6IFtcclxuICAgICAgYFxyXG4gICAgICAgIC5oY2ktZGljLXVsLWNsYXNzIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmV5LWRhcmtlc3QpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmx1ZXdhcm0tbGlnaHRlcik7XHJcbiAgICAgICAgfVxyXG4gICAgICBgXHJcbiAgICBdXHJcbiAgfVxyXG4pXHJcbmV4cG9ydCBjbGFzcyBVbE5hdkNvbXBvbmVudCBleHRlbmRzIE5hdkNvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpIHVsQ2xhc3M6IHN0cmluZyA9IFwibmF2LWNvbnRhaW5lclwiO1xyXG5cclxuICBjb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWY7XHJcblxyXG4gIHByaXZhdGUgY29udGFpbmVyOiBOYXZDb21wb25lbnRbXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuICAgIG5hdmlnYXRpb25TZXJ2aWNlOiBOYXZpZ2F0aW9uU2VydmljZSxcclxuICAgIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gICAgc3VwZXIoZWxlbWVudFJlZiwgcmVuZGVyZXIsIHJlc29sdmVyLCBuYXZpZ2F0aW9uU2VydmljZSwgY2hhbmdlRGV0ZWN0b3JSZWYpO1xyXG4gIH1cclxuXHJcbiAgQFZpZXdDaGlsZChcImNvbnRhaW5lclJlZlwiLCB7XHJcbiAgICByZWFkOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgc3RhdGljOiB0cnVlXHJcbiAgfSkgc2V0IGNvbnRhaW5lclJlZlNldHRlcihjb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYpIHtcclxuICAgIHRoaXMuY29udGFpbmVyUmVmID0gY29udGFpbmVyUmVmO1xyXG4gICAgdGhpcy5jaGVja0luaXRpYWxpemVkKCk7XHJcbiAgfVxyXG5cclxuICBjaGVja0luaXRpYWxpemVkKCkge1xyXG4gICAgaWYgKHRoaXMuYWZ0ZXJWaWV3SW5pdCAmJiB0aGlzLmNvbnRhaW5lclJlZikge1xyXG4gICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcclxuICAgICAgdGhpcy51cGRhdGVDb25maWcodGhpcy5jb25maWcpO1xyXG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldENvbnRhaW5lcihjb250YWluZXI/OiBzdHJpbmcpOiBWaWV3Q29udGFpbmVyUmVmIHtcclxuICAgIHJldHVybiB0aGlzLmNvbnRhaW5lclJlZjtcclxuICB9XHJcblxyXG4gIHNldENvbmZpZyhjb25maWcpOiB2b2lkIHtcclxuICAgIHN1cGVyLnNldENvbmZpZyhjb25maWcpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlQ29uZmlnKGNvbmZpZyk6IHZvaWQge1xyXG4gICAgc3VwZXIudXBkYXRlQ29uZmlnKGNvbmZpZyk7XHJcblxyXG4gICAgaWYgKGNvbmZpZy51bENsYXNzKSB7XHJcbiAgICAgIHRoaXMudWxDbGFzcyA9IGNvbmZpZy51bENsYXNzO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -26,10 +26,10 @@ export class RIRippleEffectDirective {
|
|
|
26
26
|
this.renderer.removeChild(hostElement, ripple);
|
|
27
27
|
}, animationDurationInMs); // Matching the jQuery animation duration
|
|
28
28
|
}
|
|
29
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
30
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.
|
|
29
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RIRippleEffectDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
30
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: RIRippleEffectDirective, selector: "[riRippleEffect]", inputs: { hostClass: "hostClass", rippleClass: "rippleClass" }, host: { listeners: { "mousedown": "onMouseDown($event)" } }, ngImport: i0 }); }
|
|
31
31
|
}
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RIRippleEffectDirective, decorators: [{
|
|
33
33
|
type: Directive,
|
|
34
34
|
args: [{
|
|
35
35
|
selector: '[riRippleEffect]'
|
|
@@ -42,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
42
42
|
type: HostListener,
|
|
43
43
|
args: ['mousedown', ['$event']]
|
|
44
44
|
}] } });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmktcmlwcGxlLWVmZmVjdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXZpZ2F0aW9uL3NyYy9kaXJlY3RpdmVzL3JpLXJpcHBsZS1lZmZlY3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDOztBQUtwRixNQUFNLE9BQU8sdUJBQXVCO0lBT2xDLFlBQW9CLEVBQWMsRUFBVSxRQUFtQjtRQUEzQyxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUovRCxjQUFTLEdBQVcsZ0JBQWdCLENBQUM7UUFFckMsZ0JBQVcsR0FBVyw0QkFBNEIsQ0FBQztRQUdqRCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQztRQUMxQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFJRCxXQUFXLENBQUMsS0FBaUI7UUFDM0IsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUM7UUFFMUMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVqRCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFL0MsTUFBTSxNQUFNLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEMsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUN4RSxNQUFNLHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFDLGlCQUFpQixDQUFDLE1BQU0sR0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFDLElBQUksQ0FBQztRQUNsRyxNQUFNLElBQUksR0FBRyxXQUFXLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUNqRCxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDckMsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDO1FBRW5DLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBRWxELFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDakQsQ0FBQyxFQUFFLHFCQUFxQixDQUFDLENBQUMsQ0FBQyx5Q0FBeUM7SUFDdEUsQ0FBQzsrR0FuQ1UsdUJBQXVCO21HQUF2Qix1QkFBdUI7OzRGQUF2Qix1QkFBdUI7a0JBSG5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtpQkFDN0I7dUdBSUMsU0FBUztzQkFEUixLQUFLO2dCQUdOLFdBQVc7c0JBRFYsS0FBSztnQkFVTixXQUFXO3NCQURWLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIFJlbmRlcmVyMiwgSG9zdExpc3RlbmVyLCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tyaVJpcHBsZUVmZmVjdF0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSSVJpcHBsZUVmZmVjdERpcmVjdGl2ZSB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgaG9zdENsYXNzOiBzdHJpbmcgPSAncmktcmlwcGxlLWhvc3QnO1xyXG4gIEBJbnB1dCgpXHJcbiAgcmlwcGxlQ2xhc3M6IHN0cmluZyA9ICdyaS1yaXBwbGUtZWZmZWN0LWNvbnRhaW5lcic7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge1xyXG4gICAgY29uc3QgaG9zdEVsZW1lbnQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGhvc3RFbGVtZW50LCB0aGlzLmhvc3RDbGFzcyk7XHJcbiAgfVxyXG5cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignbW91c2Vkb3duJywgWyckZXZlbnQnXSlcclxuICBvbk1vdXNlRG93bihldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgY29uc3QgaG9zdEVsZW1lbnQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XHJcblxyXG4gICAgY29uc3QgcmlwcGxlID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHJpcHBsZSwgdGhpcy5yaXBwbGVDbGFzcyk7XHJcblxyXG4gICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZChob3N0RWxlbWVudCwgcmlwcGxlKTtcclxuXHJcbiAgICBjb25zdCBzdHlsZXMgPSBnZXRDb21wdXRlZFN0eWxlKHJpcHBsZSk7XHJcbiAgICBjb25zdCBhbmltYXRpb25EdXJhdGlvbiA9IHN0eWxlcy5nZXRQcm9wZXJ0eVZhbHVlKFwiYW5pbWF0aW9uLWR1cmF0aW9uXCIpO1xyXG4gICAgY29uc3QgYW5pbWF0aW9uRHVyYXRpb25Jbk1zID0gTnVtYmVyKGFuaW1hdGlvbkR1cmF0aW9uLnN1YnN0cigwLGFuaW1hdGlvbkR1cmF0aW9uLmxlbmd0aC0xKSkqMTAwMDtcclxuICAgIGNvbnN0IHJlY3QgPSBob3N0RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIGNvbnN0IGxlZnQgPSBldmVudC5wYWdlWCAtIHJlY3QubGVmdDtcclxuICAgIGNvbnN0IHRvcCA9IGV2ZW50LnBhZ2VZIC0gcmVjdC50b3A7XHJcblxyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShyaXBwbGUsICdsZWZ0JywgYCR7bGVmdH1weGApO1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShyaXBwbGUsICd0b3AnLCBgJHt0b3B9cHhgKTtcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDaGlsZChob3N0RWxlbWVudCwgcmlwcGxlKTtcclxuICAgIH0sIGFuaW1hdGlvbkR1cmF0aW9uSW5Ncyk7IC8vIE1hdGNoaW5nIHRoZSBqUXVlcnkgYW5pbWF0aW9uIGR1cmF0aW9uXHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -120,10 +120,10 @@ export class TopMarginDirective {
|
|
|
120
120
|
windowResize(event) {
|
|
121
121
|
this.getHeight();
|
|
122
122
|
}
|
|
123
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
124
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.
|
|
123
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TopMarginDirective, deps: [{ token: i1.NavigationGlobalService }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
124
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: TopMarginDirective, selector: "[topMargin]", inputs: { topMargin: "topMargin", topMarginStyle: "topMarginStyle", topMarginDefault: "topMarginDefault", topMarginStyleAppend: "topMarginStyleAppend", topMarginOffset: "topMarginOffset", topMarginTarget: "topMarginTarget" }, host: { listeners: { "window:resize": "windowResize($event)" } }, ngImport: i0 }); }
|
|
125
125
|
}
|
|
126
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
126
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TopMarginDirective, decorators: [{
|
|
127
127
|
type: Directive,
|
|
128
128
|
args: [{
|
|
129
129
|
selector: "[topMargin]"
|
|
@@ -144,4 +144,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
144
144
|
type: HostListener,
|
|
145
145
|
args: ["window:resize", ["$event"]]
|
|
146
146
|
}] } });
|
|
147
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9wLW1hcmdpbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXZpZ2F0aW9uL3NyYy9kaXJlY3RpdmVzL3RvcC1tYXJnaW4uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFVLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV2RyxPQUFPLEVBQUMsZUFBZSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDeEQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRXpDLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHVDQUF1QyxDQUFDOzs7QUFFOUU7Ozs7Ozs7R0FPRztBQUlILE1BQU0sT0FBTyxrQkFBa0I7SUFZN0IsWUFBb0IsdUJBQWdELEVBQ2hELEVBQWMsRUFDZCxRQUFtQjtRQUZuQiw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQXlCO1FBQ2hELE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBWDlCLG1CQUFjLEdBQVcsWUFBWSxDQUFDO1FBQ3RDLHFCQUFnQixHQUFXLENBQUMsQ0FBQztRQUM3Qix5QkFBb0IsR0FBVyxJQUFJLENBQUM7UUFDcEMsb0JBQWUsR0FBVyxDQUFDLENBQUM7UUFHN0IsaUJBQVksR0FBNkIsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDN0Usa0JBQWEsR0FBb0IsSUFBSSxPQUFPLEVBQVUsQ0FBQztJQUlyQixDQUFDO0lBRTNDLFFBQVE7UUFDTixJQUFJLFNBQVMsRUFBRSxFQUFFLENBQUM7WUFDaEIsT0FBTyxDQUFDLEtBQUssQ0FBQywrQkFBK0IsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksR0FBRyxJQUFJLENBQUMs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O3dCQUNOLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQ2pDLENBQUM7b0JBQ0QsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDYixDQUFDO1lBQ0gsQ0FBQztZQUVELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdCLENBQUM7SUFDSCxDQUFDO0lBR08sWUFBWSxDQUFDLEtBQUs7UUFDeEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7OEdBeEhVLGtCQUFrQjtrR0FBbEIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQUg5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO2lCQUN4Qjs2SUFHVSxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBK0dFLFlBQVk7c0JBRG5CLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIGlzRGV2TW9kZSwgT25Jbml0LCBSZW5kZXJlcjJ9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgaW50ZXJ2YWwsIFN1YmplY3R9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7dGFrZVdoaWxlfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuXHJcbmltcG9ydCB7TmF2aWdhdGlvbkdsb2JhbFNlcnZpY2V9IGZyb20gXCIuLi9zZXJ2aWNlcy9uYXZpZ2F0aW9uLWdsb2JhbC5zZXJ2aWNlXCI7XHJcblxyXG4vKipcclxuICogVGhpcyBkaXJlY3RpdmUgYWxsb3dzIHlvdSB0byBhdXRvIGNhbGN1bGF0ZSBhIHByb3BlcnR5IHN1Y2ggYXMgbWFyZ2luLXRvcCBvciB0b3AgYmFzZWQgb24gaGVpZ2h0cyBvZiBvdGhlciBjb21wb25lbnRzLlxyXG4gKiBVc2luZyBbdG9wTWFyZ2luXT1cIlsnaGVhZGVyJywgJ3N1Yi1oZWFkZXInXVwiIFt0b3BNYXJnaW5TdHlsZV09XCInbWFyZ2luLXRvcCdcIiBtZWFucyB0aGF0IHRoZSBtYXJnaW4tdG9wIG9mIHRoZSBjb21wb25lbnRcclxuICogd2l0aCB0aGlzIGRpcmVjdGl2ZSBwbGFjZWQgb24gaXQgd2lsbCBiZSBlcXVhbCB0byB0aGUgaGVpZ2h0IG9mIHRoZSBoZWFkZXIgcGx1cyBzdWItaGVhZGVyLiAgVGhlIGhlYWRlciBhbmQgc3ViLWhlYWRlclxyXG4gKiBhbmQgaWRzLlxyXG4gKlxyXG4gKiBAc2luY2UgNy4wLjBcclxuICovXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiBcIlt0b3BNYXJnaW5dXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIFRvcE1hcmdpbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIHRvcE1hcmdpbjogc3RyaW5nW107XHJcbiAgQElucHV0KCkgdG9wTWFyZ2luU3R5bGU6IHN0cmluZyA9IFwibWFyZ2luLXRvcFwiO1xyXG4gIEBJbnB1dCgpIHRvcE1hcmdpbkRlZmF1bHQ6IG51bWJlciA9IDA7XHJcbiAgQElucHV0KCkgdG9wTWFyZ2luU3R5bGVBcHBlbmQ6IHN0cmluZyA9IFwicHhcIjtcclxuICBASW5wdXQoKSB0b3BNYXJnaW5PZmZzZXQ6IG51bWJlciA9IDA7XHJcbiAgQElucHV0KCkgdG9wTWFyZ2luVGFyZ2V0OiBzdHJpbmc7XHJcblxyXG4gIHByaXZhdGUgdGFyZ2V0c0ZvdW5kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICBwcml2YXRlIGhlaWdodFN1YmplY3Q6IFN1YmplY3Q8bnVtYmVyPiA9IG5ldyBTdWJqZWN0PG51bWJlcj4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBuYXZpZ2F0aW9uR2xvYmFsU2VydmljZTogTmF2aWdhdGlvbkdsb2JhbFNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcclxuICAgICAgICAgICAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJUb3BNYXJnaW5EaXJlY3RpdmUubmdPbkluaXQ6IFwiICsgdGhpcy50b3BNYXJnaW4gKyBcIiwgXCIgKyB0aGlzLnRvcE1hcmdpblN0eWxlKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmhlaWdodFN1YmplY3Quc3Vic2NyaWJlKChoZWlnaHQ6IG51bWJlcikgPT4ge1xyXG4gICAgICB0aGlzLnNldEhlaWdodChoZWlnaHQpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy50YXJnZXRzRm91bmQuc3Vic2NyaWJlKCh0YXJnZXRzRm91bmQ6IGJvb2xlYW4pID0+IHtcclxuICAgICAgaWYgKHRhcmdldHNGb3VuZCkge1xyXG4gICAgICAgIHRoaXMuZ2V0SGVpZ2h0KCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMubmF2aWdhdGlvbkdsb2JhbFNlcnZpY2UuZ2V0Tm90aWZpY2F0aW9uRXZlbnRTdWJqZWN0KCkuc3Vic2NyaWJlKChldmVudDogYm9vbGVhbikgPT4ge1xyXG4gICAgICB0aGlzLmZpbmRUYXJnZXRzKCk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmhlaWdodFN1YmplY3QubmV4dCh0aGlzLnRvcE1hcmdpbkRlZmF1bHQpO1xyXG5cclxuICAgIHRoaXMuZmluZFRhcmdldHMoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHMgdGhlIHN0eWxlIHRvIHRoZSBzdW0gb2YgdGhlIGhlaWdodHMuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge251bWJlcn0gaGVpZ2h0XHJcbiAgICovXHJcbiAgc2V0SGVpZ2h0KGhlaWdodDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgY29uc29sZS5kZWJ1ZyhcIlRvcE1hcmdpbkRpcmVjdGl2ZS5zZXRIZWlnaHQ6IFwiICsgaGVpZ2h0KTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnRvcE1hcmdpblRhcmdldCkge1xyXG4gICAgICBsZXQgZWw6IEhUTUxFbGVtZW50ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCIjXCIgKyB0aGlzLnRvcE1hcmdpblRhcmdldCk7XHJcblxyXG4gICAgICBpZiAoZWwpIHtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKGVsLCB0aGlzLnRvcE1hcmdpblN0eWxlLCBoZWlnaHQgKyB0aGlzLnRvcE1hcmdpblN0eWxlQXBwZW5kKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBlbCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiLlwiICsgdGhpcy50b3BNYXJnaW5UYXJnZXQpO1xyXG4gICAgICAgIGlmIChlbCkge1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShlbCwgdGhpcy50b3BNYXJnaW5TdHlsZSwgaGVpZ2h0ICsgdGhpcy50b3BNYXJnaW5TdHlsZUFwcGVuZCk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICAgICAgY29uc29sZS53YXJuKFwiVG9wTWFyZ2luRGlyZWN0aXZlLnNldEhlaWdodDogQ291bGQgbm90IGZpbmQgaWQgb3IgY2xhc3MgdGFyZ2V0OiBcIiArIHRoaXMudG9wTWFyZ2luVGFyZ2V0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCB0aGlzLnRvcE1hcmdpblN0eWxlLCBoZWlnaHQgKyB0aGlzLnRvcE1hcmdpblN0eWxlQXBwZW5kKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIExvb3BzIHVudGlsIHRoZSBET00gaXMgZnVsbHkgY3JlYXRlZC5cclxuICAgKi9cclxuICBmaW5kVGFyZ2V0cygpOiB2b2lkIHtcclxuICAgIGxldCBjb3VudDogbnVtYmVyID0gMDtcclxuICAgIHRoaXMudGFyZ2V0c0ZvdW5kLm5leHQoZmFsc2UpO1xyXG4gICAgaW50ZXJ2YWwoNTApXHJcbiAgICAgIC5waXBlKHRha2VXaGlsZSgoKSA9PiAhdGhpcy50YXJnZXRzRm91bmQuZ2V0VmFsdWUoKSB8fCBjb3VudCA9PT0gMTAwMCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIGxldCBleGlzdHM6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgICAgIGZvciAobGV0IHRhcmdldCBvZiB0aGlzLnRvcE1hcmdpbikge1xyXG4gICAgICAgICAgaWYgKCFkb2N1bWVudC5xdWVyeVNlbGVjdG9yKFwiI1wiICsgdGFyZ2V0KSkge1xyXG4gICAgICAgICAgICBleGlzdHMgPSBmYWxzZTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChleGlzdHMpIHtcclxuICAgICAgICAgIHRoaXMudGFyZ2V0c0ZvdW5kLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvdW50ID0gY291bnQgKyAxO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZpbmRzIHRoZSBzdW0gb2YgdGhlIGhlaWdodHMgYmFzZWQgb24gdGhlIGNvbXBvbmVudHMgcGFzc2VkIGluLlxyXG4gICAqL1xyXG4gIGdldEhlaWdodCgpIHtcclxuICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICBjb25zb2xlLmRlYnVnKFwiVG9wTWFyZ2luRGlyZWN0aXZlLmdldEhlaWdodFwiKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy50b3BNYXJnaW4gJiYgdGhpcy50YXJnZXRzRm91bmQpIHtcclxuICAgICAgbGV0IHg6IG51bWJlciA9IHRoaXMudG9wTWFyZ2luT2Zmc2V0O1xyXG4gICAgICBmb3IgKGxldCB0YXJnZXQgb2YgdGhpcy50b3BNYXJnaW4pIHtcclxuICAgICAgICBsZXQgZTogSFRNTEVsZW1lbnQgPSA8SFRNTEVsZW1lbnQ+ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcIiNcIiArIHRhcmdldCk7XHJcbiAgICAgICAgaWYgKGUpIHtcclxuICAgICAgICAgIGxldCBvOiBudW1iZXIgPSAwO1xyXG4gICAgICAgICAgaWYgKGUub2Zmc2V0SGVpZ2h0LnRvU3RyaW5nKCkubWF0Y2goXCJbYS16XVwiKSkge1xyXG4gICAgICAgICAgICBvID0gK2Uub2Zmc2V0SGVpZ2h0LnRvU3RyaW5nKCkucmVwbGFjZShcInB4XCIsIFwiXCIpLnJlcGxhY2UoXCJyZW1cIiwgXCJcIikucmVwbGFjZShcImVtXCIsIFwiXCIpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgbyA9ICtlLm9mZnNldEhlaWdodC50b1N0cmluZygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgeCA9ICt4ICsgbztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuaGVpZ2h0U3ViamVjdC5uZXh0KHgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcihcIndpbmRvdzpyZXNpemVcIiwgW1wiJGV2ZW50XCJdKVxyXG4gIHByaXZhdGUgd2luZG93UmVzaXplKGV2ZW50KSB7XHJcbiAgICB0aGlzLmdldEhlaWdodCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
147
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9wLW1hcmdpbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXZpZ2F0aW9uL3NyYy9kaXJlY3RpdmVzL3RvcC1tYXJnaW4uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFVLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV2RyxPQUFPLEVBQUMsZUFBZSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDeEQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRXpDLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHVDQUF1QyxDQUFDOzs7QUFFOUU7Ozs7Ozs7R0FPRztBQUlILE1BQU0sT0FBTyxrQkFBa0I7SUFZN0IsWUFBb0IsdUJBQWdELEVBQ2hELEVBQWMsRUFDZCxRQUFtQjtRQUZuQiw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQXlCO1FBQ2hELE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBWDlCLG1CQUFjLEdBQVcsWUFBWSxDQUFDO1FBQ3RDLHFCQUFnQixHQUFXLENBQUMsQ0FBQztRQUM3Qix5QkFBb0IsR0FBVyxJQUFJLENBQUM7UUFDcEMsb0JBQWUsR0FBVyxDQUFDLENBQUM7UUFHN0IsaUJBQVksR0FBNkIsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDN0Usa0JBQWEsR0FBb0IsSUFBSSxPQUFPLEVBQVUsQ0FBQztJQUlyQixDQUFDO0lBRTNDLFFBQVE7UUFDTixJQUFJLFNBQVMsRUFBRSxFQUFFLENBQUM7WUFDaEIsT0FBTyxDQUFDLEtBQUssQ0FBQywrQkFBK0IsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDL0YsQ0FBQztRQUVELElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBYyxFQUFFLEVBQUU7WUFDOUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBcUIsRUFBRSxFQUFFO1lBQ3BELElBQUksWUFBWSxFQUFFLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNuQixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsdUJBQXVCLENBQUMsMkJBQTJCLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFjLEVBQUUsRUFBRTtZQUN0RixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUUvQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxTQUFTLENBQUMsTUFBYztRQUN0QixJQUFJLFNBQVMsRUFBRSxFQUFFLENBQUM7WUFDaEIsT0FBTyxDQUFDLEtBQUssQ0FBQyxnQ0FBZ0MsR0FBRyxNQUFNLENBQUMsQ0FBQztRQUMzRCxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDekIsSUFBSSxFQUFFLEdBQWdCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBRXRGLElBQUksRUFBRSxFQUFFLENBQUM7Z0JBQ1AsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUUsTUFBTSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1lBQ3RGLENBQUM7aUJBQU0sQ0FBQztnQkFDTixFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7Z0JBQ3JFLElBQUksRUFBRSxFQUFFLENBQUM7b0JBQ1AsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUUsTUFBTSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO2dCQUN0RixDQUFDO3FCQUFNLElBQUksU0FBUyxFQUFFLEVBQUUsQ0FBQztvQkFDdkIsT0FBTyxDQUFDLElBQUksQ0FBQyxtRUFBbUUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7Z0JBQzNHLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFLE1BQU0sR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUN6RyxDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNULElBQUksS0FBSyxHQUFXLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QixRQUFRLENBQUMsRUFBRSxDQUFDO2FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQyxDQUFDO2FBQ3RFLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLE1BQU0sR0FBWSxJQUFJLENBQUM7WUFDM0IsS0FBSyxJQUFJLE1BQU0sSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUMsRUFBRSxDQUFDO29CQUMxQyxNQUFNLEdBQUcsS0FBSyxDQUFDO29CQUNmLE1BQU07Z0JBQ1IsQ0FBQztZQUNILENBQUM7WUFDRCxJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUNYLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQy9CLENBQUM7WUFDRCxLQUFLLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNwQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRDs7T0FFRztJQUNILFNBQVM7UUFDUCxJQUFJLFNBQVMsRUFBRSxFQUFFLENBQUM7WUFDaEIsT0FBTyxDQUFDLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1FBQ2hELENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxHQUFXLElBQUksQ0FBQyxlQUFlLENBQUM7WUFDckMsS0FBSyxJQUFJLE1BQU0sSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxHQUE2QixRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUMsQ0FBQztnQkFDdkUsSUFBSSxDQUFDLEVBQUUsQ0FBQztvQkFDTixJQUFJLENBQUMsR0FBVyxDQUFDLENBQUM7b0JBQ2xCLElBQUksQ0FBQyxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQzt3QkFDN0MsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztvQkFDeEYsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQ2pDLENBQUM7b0JBQ0QsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDYixDQUFDO1lBQ0gsQ0FBQztZQUVELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdCLENBQUM7SUFDSCxDQUFDO0lBR08sWUFBWSxDQUFDLEtBQUs7UUFDeEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7K0dBeEhVLGtCQUFrQjttR0FBbEIsa0JBQWtCOzs0RkFBbEIsa0JBQWtCO2tCQUg5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO2lCQUN4Qjs2SUFHVSxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBK0dFLFlBQVk7c0JBRG5CLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIGlzRGV2TW9kZSwgT25Jbml0LCBSZW5kZXJlcjJ9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgaW50ZXJ2YWwsIFN1YmplY3R9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7dGFrZVdoaWxlfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuXHJcbmltcG9ydCB7TmF2aWdhdGlvbkdsb2JhbFNlcnZpY2V9IGZyb20gXCIuLi9zZXJ2aWNlcy9uYXZpZ2F0aW9uLWdsb2JhbC5zZXJ2aWNlXCI7XHJcblxyXG4vKipcclxuICogVGhpcyBkaXJlY3RpdmUgYWxsb3dzIHlvdSB0byBhdXRvIGNhbGN1bGF0ZSBhIHByb3BlcnR5IHN1Y2ggYXMgbWFyZ2luLXRvcCBvciB0b3AgYmFzZWQgb24gaGVpZ2h0cyBvZiBvdGhlciBjb21wb25lbnRzLlxyXG4gKiBVc2luZyBbdG9wTWFyZ2luXT1cIlsnaGVhZGVyJywgJ3N1Yi1oZWFkZXInXVwiIFt0b3BNYXJnaW5TdHlsZV09XCInbWFyZ2luLXRvcCdcIiBtZWFucyB0aGF0IHRoZSBtYXJnaW4tdG9wIG9mIHRoZSBjb21wb25lbnRcclxuICogd2l0aCB0aGlzIGRpcmVjdGl2ZSBwbGFjZWQgb24gaXQgd2lsbCBiZSBlcXVhbCB0byB0aGUgaGVpZ2h0IG9mIHRoZSBoZWFkZXIgcGx1cyBzdWItaGVhZGVyLiAgVGhlIGhlYWRlciBhbmQgc3ViLWhlYWRlclxyXG4gKiBhbmQgaWRzLlxyXG4gKlxyXG4gKiBAc2luY2UgNy4wLjBcclxuICovXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiBcIlt0b3BNYXJnaW5dXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIFRvcE1hcmdpbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIHRvcE1hcmdpbjogc3RyaW5nW107XHJcbiAgQElucHV0KCkgdG9wTWFyZ2luU3R5bGU6IHN0cmluZyA9IFwibWFyZ2luLXRvcFwiO1xyXG4gIEBJbnB1dCgpIHRvcE1hcmdpbkRlZmF1bHQ6IG51bWJlciA9IDA7XHJcbiAgQElucHV0KCkgdG9wTWFyZ2luU3R5bGVBcHBlbmQ6IHN0cmluZyA9IFwicHhcIjtcclxuICBASW5wdXQoKSB0b3BNYXJnaW5PZmZzZXQ6IG51bWJlciA9IDA7XHJcbiAgQElucHV0KCkgdG9wTWFyZ2luVGFyZ2V0OiBzdHJpbmc7XHJcblxyXG4gIHByaXZhdGUgdGFyZ2V0c0ZvdW5kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICBwcml2YXRlIGhlaWdodFN1YmplY3Q6IFN1YmplY3Q8bnVtYmVyPiA9IG5ldyBTdWJqZWN0PG51bWJlcj4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBuYXZpZ2F0aW9uR2xvYmFsU2VydmljZTogTmF2aWdhdGlvbkdsb2JhbFNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcclxuICAgICAgICAgICAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJUb3BNYXJnaW5EaXJlY3RpdmUubmdPbkluaXQ6IFwiICsgdGhpcy50b3BNYXJnaW4gKyBcIiwgXCIgKyB0aGlzLnRvcE1hcmdpblN0eWxlKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmhlaWdodFN1YmplY3Quc3Vic2NyaWJlKChoZWlnaHQ6IG51bWJlcikgPT4ge1xyXG4gICAgICB0aGlzLnNldEhlaWdodChoZWlnaHQpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy50YXJnZXRzRm91bmQuc3Vic2NyaWJlKCh0YXJnZXRzRm91bmQ6IGJvb2xlYW4pID0+IHtcclxuICAgICAgaWYgKHRhcmdldHNGb3VuZCkge1xyXG4gICAgICAgIHRoaXMuZ2V0SGVpZ2h0KCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMubmF2aWdhdGlvbkdsb2JhbFNlcnZpY2UuZ2V0Tm90aWZpY2F0aW9uRXZlbnRTdWJqZWN0KCkuc3Vic2NyaWJlKChldmVudDogYm9vbGVhbikgPT4ge1xyXG4gICAgICB0aGlzLmZpbmRUYXJnZXRzKCk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmhlaWdodFN1YmplY3QubmV4dCh0aGlzLnRvcE1hcmdpbkRlZmF1bHQpO1xyXG5cclxuICAgIHRoaXMuZmluZFRhcmdldHMoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHMgdGhlIHN0eWxlIHRvIHRoZSBzdW0gb2YgdGhlIGhlaWdodHMuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge251bWJlcn0gaGVpZ2h0XHJcbiAgICovXHJcbiAgc2V0SGVpZ2h0KGhlaWdodDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgY29uc29sZS5kZWJ1ZyhcIlRvcE1hcmdpbkRpcmVjdGl2ZS5zZXRIZWlnaHQ6IFwiICsgaGVpZ2h0KTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnRvcE1hcmdpblRhcmdldCkge1xyXG4gICAgICBsZXQgZWw6IEhUTUxFbGVtZW50ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCIjXCIgKyB0aGlzLnRvcE1hcmdpblRhcmdldCk7XHJcblxyXG4gICAgICBpZiAoZWwpIHtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKGVsLCB0aGlzLnRvcE1hcmdpblN0eWxlLCBoZWlnaHQgKyB0aGlzLnRvcE1hcmdpblN0eWxlQXBwZW5kKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBlbCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiLlwiICsgdGhpcy50b3BNYXJnaW5UYXJnZXQpO1xyXG4gICAgICAgIGlmIChlbCkge1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShlbCwgdGhpcy50b3BNYXJnaW5TdHlsZSwgaGVpZ2h0ICsgdGhpcy50b3BNYXJnaW5TdHlsZUFwcGVuZCk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICAgICAgY29uc29sZS53YXJuKFwiVG9wTWFyZ2luRGlyZWN0aXZlLnNldEhlaWdodDogQ291bGQgbm90IGZpbmQgaWQgb3IgY2xhc3MgdGFyZ2V0OiBcIiArIHRoaXMudG9wTWFyZ2luVGFyZ2V0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCB0aGlzLnRvcE1hcmdpblN0eWxlLCBoZWlnaHQgKyB0aGlzLnRvcE1hcmdpblN0eWxlQXBwZW5kKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIExvb3BzIHVudGlsIHRoZSBET00gaXMgZnVsbHkgY3JlYXRlZC5cclxuICAgKi9cclxuICBmaW5kVGFyZ2V0cygpOiB2b2lkIHtcclxuICAgIGxldCBjb3VudDogbnVtYmVyID0gMDtcclxuICAgIHRoaXMudGFyZ2V0c0ZvdW5kLm5leHQoZmFsc2UpO1xyXG4gICAgaW50ZXJ2YWwoNTApXHJcbiAgICAgIC5waXBlKHRha2VXaGlsZSgoKSA9PiAhdGhpcy50YXJnZXRzRm91bmQuZ2V0VmFsdWUoKSB8fCBjb3VudCA9PT0gMTAwMCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIGxldCBleGlzdHM6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgICAgIGZvciAobGV0IHRhcmdldCBvZiB0aGlzLnRvcE1hcmdpbikge1xyXG4gICAgICAgICAgaWYgKCFkb2N1bWVudC5xdWVyeVNlbGVjdG9yKFwiI1wiICsgdGFyZ2V0KSkge1xyXG4gICAgICAgICAgICBleGlzdHMgPSBmYWxzZTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChleGlzdHMpIHtcclxuICAgICAgICAgIHRoaXMudGFyZ2V0c0ZvdW5kLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvdW50ID0gY291bnQgKyAxO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZpbmRzIHRoZSBzdW0gb2YgdGhlIGhlaWdodHMgYmFzZWQgb24gdGhlIGNvbXBvbmVudHMgcGFzc2VkIGluLlxyXG4gICAqL1xyXG4gIGdldEhlaWdodCgpIHtcclxuICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICBjb25zb2xlLmRlYnVnKFwiVG9wTWFyZ2luRGlyZWN0aXZlLmdldEhlaWdodFwiKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy50b3BNYXJnaW4gJiYgdGhpcy50YXJnZXRzRm91bmQpIHtcclxuICAgICAgbGV0IHg6IG51bWJlciA9IHRoaXMudG9wTWFyZ2luT2Zmc2V0O1xyXG4gICAgICBmb3IgKGxldCB0YXJnZXQgb2YgdGhpcy50b3BNYXJnaW4pIHtcclxuICAgICAgICBsZXQgZTogSFRNTEVsZW1lbnQgPSA8SFRNTEVsZW1lbnQ+ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcIiNcIiArIHRhcmdldCk7XHJcbiAgICAgICAgaWYgKGUpIHtcclxuICAgICAgICAgIGxldCBvOiBudW1iZXIgPSAwO1xyXG4gICAgICAgICAgaWYgKGUub2Zmc2V0SGVpZ2h0LnRvU3RyaW5nKCkubWF0Y2goXCJbYS16XVwiKSkge1xyXG4gICAgICAgICAgICBvID0gK2Uub2Zmc2V0SGVpZ2h0LnRvU3RyaW5nKCkucmVwbGFjZShcInB4XCIsIFwiXCIpLnJlcGxhY2UoXCJyZW1cIiwgXCJcIikucmVwbGFjZShcImVtXCIsIFwiXCIpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgbyA9ICtlLm9mZnNldEhlaWdodC50b1N0cmluZygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgeCA9ICt4ICsgbztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuaGVpZ2h0U3ViamVjdC5uZXh0KHgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcihcIndpbmRvdzpyZXNpemVcIiwgW1wiJGV2ZW50XCJdKVxyXG4gIHByaXZhdGUgd2luZG93UmVzaXplKGV2ZW50KSB7XHJcbiAgICB0aGlzLmdldEhlaWdodCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
|