@openziti/ziti-console-lib 0.4.6 → 0.4.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/images/visualizer/node-click.png +0 -0
- package/assets/styles/ziti.css +1 -0
- package/assets/svgs/cursor-pointer.svg +1 -0
- package/esm2022/lib/features/data-table/data-table-filter.service.mjs +2 -2
- package/esm2022/lib/features/data-table/table-filter-bar/filter-bar.component.mjs +4 -2
- package/esm2022/lib/features/data-table/table-hidden-columns-bar/hidden-columns-bar.component.mjs +3 -3
- package/esm2022/lib/features/extendable/extensions-noop.service.mjs +3 -1
- package/esm2022/lib/features/projectable-forms/configuration/configuration-form.component.mjs +3 -1
- package/esm2022/lib/features/projectable-forms/service-edge-router-policy/service-edge-router-policy-form.component.mjs +7 -7
- package/esm2022/lib/features/visualizer/network-visualizer/network-visualizer.component.mjs +441 -259
- package/esm2022/lib/features/visualizer/network-visualizer/network-visualizer.helper.mjs +180 -63
- package/esm2022/lib/features/visualizer/network-visualizer/network-visualizer.treenodeprocessor.mjs +307 -118
- package/esm2022/lib/pages/configurations/configurations-page.service.mjs +2 -1
- package/esm2022/lib/pages/identities/identities-page.component.mjs +4 -4
- package/esm2022/lib/pages/identities/identities-page.service.mjs +11 -1
- package/esm2022/lib/services/ziti-controller-data.service.mjs +6 -3
- package/esm2022/lib/shared/list-page-component.class.mjs +6 -4
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/openziti-ziti-console-lib.mjs +966 -458
- package/fesm2022/openziti-ziti-console-lib.mjs.map +1 -1
- package/lib/features/data-table/data-table-filter.service.d.ts +1 -0
- package/lib/features/data-table/data-table-filter.service.d.ts.map +1 -1
- package/lib/features/data-table/table-filter-bar/filter-bar.component.d.ts.map +1 -1
- package/lib/features/extendable/extensions-noop.service.d.ts +2 -0
- package/lib/features/extendable/extensions-noop.service.d.ts.map +1 -1
- package/lib/features/projectable-forms/configuration/configuration-form.component.d.ts.map +1 -1
- package/lib/features/visualizer/network-visualizer/network-visualizer.component.d.ts +36 -20
- package/lib/features/visualizer/network-visualizer/network-visualizer.component.d.ts.map +1 -1
- package/lib/features/visualizer/network-visualizer/network-visualizer.helper.d.ts +42 -1
- package/lib/features/visualizer/network-visualizer/network-visualizer.helper.d.ts.map +1 -1
- package/lib/features/visualizer/network-visualizer/network-visualizer.treenodeprocessor.d.ts +6 -2
- package/lib/features/visualizer/network-visualizer/network-visualizer.treenodeprocessor.d.ts.map +1 -1
- package/lib/pages/configurations/configurations-page.service.d.ts.map +1 -1
- package/lib/pages/identities/identities-page.component.d.ts +1 -1
- package/lib/pages/identities/identities-page.component.d.ts.map +1 -1
- package/lib/pages/identities/identities-page.service.d.ts.map +1 -1
- package/lib/services/ziti-controller-data.service.d.ts.map +1 -1
- package/lib/shared/list-page-component.class.d.ts +3 -1
- package/lib/shared/list-page-component.class.d.ts.map +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/public-api.d.ts.map +1 -1
|
Binary file
|
package/assets/styles/ziti.css
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="none" height="20" viewBox="0 0 21 20" width="21" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><filter id="a" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse" height="17.8588" width="16.7462" x="2.69146" y="2.01172"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feColorMatrix in="SourceAlpha" result="hardAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"/><feOffset dy="1"/><feGaussianBlur stdDeviation=".4"/><feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 0"/><feBlend in2="BackgroundImageFix" mode="normal" result="effect1_dropShadow_1_9987"/><feBlend in="SourceGraphic" in2="effect1_dropShadow_1_9987" mode="normal" result="shape"/></filter><g filter="url(#a)"><path d="m6.77012 14.2799c-.28-.36-.63-1.09-1.24-2-.35-.5-1.21-1.45-1.47-1.94-.18743-.2977-.24182-.66032-.15-.99997.15696-.64579.76956-1.07419 1.43-1 .5108.10261.98022.35297 1.35.72.25818.24317.49566.50742.71.79.16.19997.2.27997.38.50997s.3.46.21.12c-.07-.49997-.19-1.33997-.36-2.08997-.13-.57-.16-.66-.28-1.09s-.19-.79-.32-1.28c-.11884-.48143-.2123-.96877-.28-1.46-.12605-.6283-.03435-1.28079.26-1.85.34939-.32863.86193-.41537 1.3-.22.44059.32533.7691.77965.94 1.3.26206.64039.43696 1.31306.52 2 .16 1 .46998 2.46.47998 2.76 0-.37-.07-1.15 0-1.5.0694-.36488.323-.66769.67-.8.2978-.09138.6129-.11192.92-.06.3101.06481.5847.24314.77.5.2317.58339.3603 1.2026.38 1.83.0268-.54942.1208-1.09347.28-1.62.1671-.23545.4111-.40521.69-.48.3306-.06045.6694-.06045 1 0 .2711.09063.5083.26151.68.49.2118.53034.34 1.09034.38 1.66 0 .14.07-.39.29-.74.1143-.3394.4011-.59203.7521-.66273.3511-.07069.7133.05129.95.32.2368.26871.3122.64333.1979.98273v1.06 1.19997c-.0364.5852-.1166 1.1668-.24 1.74-.174.5071-.4162.9882-.72 1.43-.4855.54-.8867 1.1502-1.19 1.81-.0752.3278-.1088.6638-.1 1-.001.3107.0394.62.12.92-.4088.0433-.8211.0433-1.23 0-.39-.06-.87-.84-1-1.08-.0643-.1288-.196-.2103-.34-.2103s-.2757.0815-.34.2103c-.22.38-.71 1.07-1.05 1.11-.67.08-2.05 0-3.13998 0 0 0 .18-1-.23-1.36s-.83-.78-1.14-1.06z" fill="#fff"/><path d="m6.77012 14.2799c-.28-.36-.63-1.09-1.24-2-.35-.5-1.21-1.45-1.47-1.94-.18743-.2977-.24182-.66032-.15-.99997.15696-.64579.76956-1.07419 1.43-1 .5108.10261.98022.35297 1.35.72.25818.24317.49566.50742.71.79.16.19997.2.27997.38.50997s.3.46.21.12c-.07-.49997-.19-1.33997-.36-2.08997-.13-.57-.16-.66-.28-1.09s-.19-.79-.32-1.28c-.11884-.48143-.2123-.96877-.28-1.46-.12605-.6283-.03435-1.28079.26-1.85.34939-.32863.86193-.41537 1.3-.22.44059.32533.7691.77965.94 1.3.26206.64039.43696 1.31306.52 2 .16 1 .46998 2.46.47998 2.76 0-.37-.07-1.15 0-1.5.0694-.36488.323-.66769.67-.8.2978-.09138.6129-.11192.92-.06.3101.06481.5847.24314.77.5.2317.58339.3603 1.2026.38 1.83.0268-.54942.1208-1.09347.28-1.62.1671-.23545.4111-.40521.69-.48.3306-.06045.6694-.06045 1 0 .2711.09063.5083.26151.68.49.2118.53034.34 1.09034.38 1.66 0 .14.07-.39.29-.74.1143-.3394.4011-.59203.7521-.66273.3511-.07069.7133.05129.95.32.2368.26871.3122.64332.1979.98273v1.06 1.19997c-.0364.5852-.1166 1.1668-.24 1.74-.174.5071-.4162.9882-.72 1.43-.4855.54-.8867 1.1502-1.19 1.81-.0752.3278-.1088.6638-.1 1-.001.3107.0394.62.12.92-.4088.0432-.8211.0432-1.23 0-.39-.06-.87-.84-1-1.08-.0643-.1288-.196-.2103-.34-.2103s-.2757.0815-.34.2103c-.22.38-.71 1.07-1.05 1.11-.67.08-2.05 0-3.13998 0 0 0 .18-1-.23-1.36s-.83-.78-1.14-1.06z" style="fill-rule:evenodd;clip-rule:evenodd;stroke:#222124;stroke-width:.75;stroke-linecap:round;stroke-linejoin:round"/><g fill="#222124"><path d="m15.25 14.8259v-3.4518c0-.2066-.1679-.3741-.375-.3741s-.375.1675-.375.3741v3.4518c0 .2066.1679.3741.375.3741s.375-.1675.375-.3741z"/><path d="m13.27 14.8246-.02-3.4535c-.0012-.2062-.1701-.3723-.3772-.3711s-.374.1693-.3728.3754l.02 3.4535c.0012.2061.1701.3723.3772.3711s.374-.1693.3728-.3754z"/><path d="m10.5 11.379.02 3.4464c.0012.2081.1701.3758.3772.3746s.374-.1709.3728-.379l-.02-3.4464c-.0012-.2081-.1701-.3758-.3772-.3746s-.374.1709-.3728.379z"/></g></g></svg>
|
|
@@ -10,7 +10,7 @@ class DataTableFilterService {
|
|
|
10
10
|
this.pageChanged = new BehaviorSubject(this.currentPage);
|
|
11
11
|
}
|
|
12
12
|
updateFilter(filterObj) {
|
|
13
|
-
if (isEmpty(filterObj.value) && isNaN(filterObj.value))
|
|
13
|
+
if (isEmpty(filterObj.value) && (isNaN(filterObj.value) || filterObj.value === ''))
|
|
14
14
|
this.removeFilter(filterObj);
|
|
15
15
|
else {
|
|
16
16
|
let isFound = false;
|
|
@@ -63,4 +63,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
63
63
|
providedIn: 'root'
|
|
64
64
|
}]
|
|
65
65
|
}], ctorParameters: function () { return []; } });
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS1maWx0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9kYXRhLXRhYmxlL2RhdGEtdGFibGUtZmlsdGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3JDLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxRQUFRLENBQUM7O0FBVy9CLE1BR2Esc0JBQXNCO0lBUy9CO1FBUEEsWUFBTyxHQUFnQixFQUFFLENBQUM7UUFDMUIsZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFDaEIsbUJBQWMsR0FDUixJQUFJLGVBQWUsQ0FBYyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7UUFFcEQsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBTSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFHekQsQ0FBQztJQUVELFlBQVksQ0FBQyxTQUFvQjtRQUM3QixJQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLFNBQVMsQ0FBQyxLQUFLLEtBQUssRUFBRSxDQUFDO1lBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUMzRztZQUNELElBQUksT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNwQixLQUFLLElBQUksR0FBRyxHQUFHLENBQUMsRUFBRSxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLEVBQUU7Z0JBQ2hELElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEtBQUssU0FBUyxDQUFDLFFBQVEsRUFBRTtvQkFDbkQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxTQUFTLENBQUM7b0JBQzlCLE9BQU8sR0FBRyxJQUFJLENBQUM7b0JBQ2YsTUFBTTtpQkFDVDthQUNKO1lBQ0QsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDVixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUNoQztTQUNKO1FBQ0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRCxZQUFZLENBQUMsU0FBb0I7UUFDN0IsS0FBSyxJQUFJLEdBQUcsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxFQUFFO1lBQ2hELElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEtBQUssU0FBUyxDQUFDLFFBQVEsRUFBRTtnQkFDbkQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUM1QixNQUFNO2FBQ1Q7U0FDSjtRQUNELElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsZUFBZSxDQUFDLEdBQVc7UUFDdkIsSUFBSSxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2YsS0FBSyxJQUFJLEdBQUcsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxFQUFFO1lBQ2hELElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEtBQUssR0FBRyxFQUFFO2dCQUNwQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUM7Z0JBQ2hDLE1BQU07YUFDVDtTQUNKO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFTO1FBQ2hCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxZQUFZO1FBQ1IsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNDLENBQUM7K0dBMURRLHNCQUFzQjttSEFBdEIsc0JBQXNCLGNBRm5CLE1BQU07O1NBRVQsc0JBQXNCOzRGQUF0QixzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0fSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHtpc0VtcHR5fSBmcm9tIFwibG9kYXNoXCI7XG5cbmV4cG9ydCB0eXBlIEZpbHRlck9iaiA9IHtcbiAgICBmaWx0ZXJOYW1lOiBzdHJpbmc7XG4gICAgY29sdW1uSWQ6IHN0cmluZztcbiAgICB2YWx1ZTogYW55O1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gICAgdHlwZT86IHN0cmluZztcbiAgICBoaWRkZW4/OiBib29sZWFuO1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERhdGFUYWJsZUZpbHRlclNlcnZpY2Uge1xuXG4gICAgZmlsdGVyczogRmlsdGVyT2JqW10gPSBbXTtcbiAgICBjdXJyZW50UGFnZSA9IDE7XG4gICAgZmlsdGVyc0NoYW5nZWRcbiAgICAgICAgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEZpbHRlck9ialtdPih0aGlzLmZpbHRlcnMpXG5cbiAgICBwYWdlQ2hhbmdlZCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55Pih0aGlzLmN1cnJlbnRQYWdlKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgIH1cblxuICAgIHVwZGF0ZUZpbHRlcihmaWx0ZXJPYmo6IEZpbHRlck9iaikge1xuICAgICAgICBpZihpc0VtcHR5KGZpbHRlck9iai52YWx1ZSkgJiYgKGlzTmFOKGZpbHRlck9iai52YWx1ZSkgfHwgZmlsdGVyT2JqLnZhbHVlID09PSAnJykpIHRoaXMucmVtb3ZlRmlsdGVyKGZpbHRlck9iaik7XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgbGV0IGlzRm91bmQgPSBmYWxzZTtcbiAgICAgICAgICAgIGZvciAobGV0IGlkeCA9IDA7IGlkeCA8IHRoaXMuZmlsdGVycy5sZW5ndGg7IGlkeCsrKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZmlsdGVyc1tpZHhdLmNvbHVtbklkID09PSBmaWx0ZXJPYmouY29sdW1uSWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maWx0ZXJzW2lkeF0gPSBmaWx0ZXJPYmo7XG4gICAgICAgICAgICAgICAgICAgIGlzRm91bmQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIWlzRm91bmQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZpbHRlcnMucHVzaChmaWx0ZXJPYmopO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoaXMuZmlsdGVyc0NoYW5nZWQubmV4dCh0aGlzLmZpbHRlcnMpO1xuICAgIH1cblxuICAgIHJlbW92ZUZpbHRlcihmaWx0ZXJPYmo6IEZpbHRlck9iaikge1xuICAgICAgICBmb3IgKGxldCBpZHggPSAwOyBpZHggPCB0aGlzLmZpbHRlcnMubGVuZ3RoOyBpZHgrKykge1xuICAgICAgICAgICAgaWYgKHRoaXMuZmlsdGVyc1tpZHhdLmNvbHVtbklkID09PSBmaWx0ZXJPYmouY29sdW1uSWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZpbHRlcnMuc3BsaWNlKGlkeCwgMSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5maWx0ZXJzQ2hhbmdlZC5uZXh0KHRoaXMuZmlsdGVycyk7XG4gICAgfVxuXG4gICAgZ2V0RmlsdGVyU3RyaW5nKGtleTogc3RyaW5nKSB7XG4gICAgICAgIGxldCB2YWx1ZSA9ICcnO1xuICAgICAgICBmb3IgKGxldCBpZHggPSAwOyBpZHggPCB0aGlzLmZpbHRlcnMubGVuZ3RoOyBpZHgrKykge1xuICAgICAgICAgICAgaWYgKHRoaXMuZmlsdGVyc1tpZHhdLmNvbHVtbklkID09PSBrZXkpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHRoaXMuZmlsdGVyc1tpZHhdLnZhbHVlO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG5cbiAgICBjaGFuZ2VQYWdlKHBhZ2U6IGFueSkge1xuICAgICAgICB0aGlzLnBhZ2VDaGFuZ2VkLm5leHQocGFnZSk7XG4gICAgfVxuXG4gICAgY2xlYXJGaWx0ZXJzKCkge1xuICAgICAgICB0aGlzLmZpbHRlcnMgPSBbXTtcbiAgICAgICAgdGhpcy5maWx0ZXJzQ2hhbmdlZC5uZXh0KHRoaXMuZmlsdGVycyk7XG4gICAgfVxufVxuIl19
|
|
@@ -30,7 +30,9 @@ class FilterBarComponent {
|
|
|
30
30
|
this.filterString = '';
|
|
31
31
|
this.inputChangedDebounced = debounce(this.inputChanged.bind(this), 400);
|
|
32
32
|
this.filterService.filtersChanged.subscribe(filters => {
|
|
33
|
-
this._filters =
|
|
33
|
+
this._filters = filters.filter((filter) => {
|
|
34
|
+
return filter.hidden !== true;
|
|
35
|
+
});
|
|
34
36
|
let tmp = '';
|
|
35
37
|
for (let idx = 0; idx < filters.length; idx++) {
|
|
36
38
|
if (filters[idx].columnId === 'name') {
|
|
@@ -92,4 +94,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
92
94
|
}], currentPage: [{
|
|
93
95
|
type: Input
|
|
94
96
|
}] } });
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvZGF0YS10YWJsZS90YWJsZS1maWx0ZXItYmFyL2ZpbHRlci1iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMveml0aS1jb25zb2xlLWxpYi9zcmMvbGliL2ZlYXR1cmVzL2RhdGEtdGFibGUvdGFibGUtZmlsdGVyLWJhci9maWx0ZXItYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztFQWNFO0FBRUYsT0FBTyxFQUFDLFNBQVMsRUFBZ0IsS0FBSyxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQUMsUUFBUSxFQUFFLFFBQVEsRUFBQyxNQUFNLFFBQVEsQ0FBQzs7Ozs7QUFHMUMsTUFLYSxrQkFBa0I7SUFZN0IsWUFBbUIsYUFBcUM7UUFBckMsa0JBQWEsR0FBYixhQUFhLENBQXdCO1FBVnhELGFBQVEsR0FBRyxFQUFFLENBQUM7UUFFTCxlQUFVLEdBQVcsR0FBRyxDQUFDO1FBQ3pCLGFBQVEsR0FBVyxHQUFHLENBQUM7UUFDdkIsZUFBVSxHQUFXLEdBQUcsQ0FBQztRQUN6QixnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUVqQyxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUNsQiwwQkFBcUIsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFHbEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3BELElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQVcsRUFBRSxFQUFFO2dCQUM3QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDO1lBQ2hDLENBQUMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxHQUFHLEdBQUcsRUFBRSxDQUFDO1lBQ2IsS0FBSyxJQUFJLEdBQUcsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLEVBQUU7Z0JBQzdDLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsS0FBSyxNQUFNLEVBQUU7b0JBQ3BDLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDO29CQUN6QixNQUFNO2lCQUNQO2FBQ0Y7WUFDRCxJQUFJLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUMxRCxPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsTUFBTSxLQUFLLEdBQVEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDcEQsTUFBTSxHQUFHLEdBQVEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEQsT0FBTyxHQUFHLElBQUksS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDNUQsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNuRCxPQUFPLEtBQUssSUFBSSxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVELFlBQVk7UUFDVixNQUFNLFNBQVMsR0FBYztZQUMzQixVQUFVLEVBQUUsTUFBTTtZQUNsQixRQUFRLEVBQUUsTUFBTTtZQUNoQixLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDeEIsS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZO1NBQ3pCLENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUM1QyxDQUFDO0lBR0QsWUFBWSxDQUFDLFNBQW9CO1FBQy9CLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzdDLENBQUM7K0dBcEVVLGtCQUFrQjttR0FBbEIsa0JBQWtCLDhLQ3pCL0IsczZDQThCQTs7U0RMYSxrQkFBa0I7NEZBQWxCLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxzQkFBc0I7NkdBUXZCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICAgIENvcHlyaWdodCBOZXRGb3VuZHJ5IEluYy5cblxuICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG4gICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtkZWJvdW5jZSwgaXNOdW1iZXJ9IGZyb20gXCJsb2Rhc2hcIjtcbmltcG9ydCB7RGF0YVRhYmxlRmlsdGVyU2VydmljZSwgRmlsdGVyT2JqfSBmcm9tIFwiLi4vZGF0YS10YWJsZS1maWx0ZXIuc2VydmljZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItdGFibGUtZmlsdGVyLWJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXItYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsdGVyLWJhci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZpbHRlckJhckNvbXBvbmVudCB7XG5cbiAgX2ZpbHRlcnMgPSBbXTtcblxuICBASW5wdXQoKSBzdGFydENvdW50OiBzdHJpbmcgPSAnLSc7XG4gIEBJbnB1dCgpIGVuZENvdW50OiBzdHJpbmcgPSAnLSc7XG4gIEBJbnB1dCgpIHRvdGFsQ291bnQ6IHN0cmluZyA9ICctJztcbiAgQElucHV0KCkgY3VycmVudFBhZ2U6IG51bWJlciA9IDE7XG5cbiAgZmlsdGVyU3RyaW5nID0gJyc7XG4gIGlucHV0Q2hhbmdlZERlYm91bmNlZCA9IGRlYm91bmNlKHRoaXMuaW5wdXRDaGFuZ2VkLmJpbmQodGhpcyksIDQwMCk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGZpbHRlclNlcnZpY2U6IERhdGFUYWJsZUZpbHRlclNlcnZpY2UpIHtcbiAgICB0aGlzLmZpbHRlclNlcnZpY2UuZmlsdGVyc0NoYW5nZWQuc3Vic2NyaWJlKGZpbHRlcnMgPT4ge1xuICAgICAgdGhpcy5fZmlsdGVycyA9IGZpbHRlcnMuZmlsdGVyKChmaWx0ZXI6IGFueSkgPT4ge1xuICAgICAgICByZXR1cm4gZmlsdGVyLmhpZGRlbiAhPT0gdHJ1ZTtcbiAgICAgIH0pO1xuICAgICAgbGV0IHRtcCA9ICcnO1xuICAgICAgZm9yIChsZXQgaWR4ID0gMDsgaWR4IDwgZmlsdGVycy5sZW5ndGg7IGlkeCsrKSB7XG4gICAgICAgIGlmIChmaWx0ZXJzW2lkeF0uY29sdW1uSWQgPT09ICduYW1lJykge1xuICAgICAgICAgIHRtcCA9IGZpbHRlcnNbaWR4XS52YWx1ZTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy5maWx0ZXJTdHJpbmcgPSB0bXA7XG4gICAgfSk7XG4gIH1cblxuICBuZXh0UGFnZSgpIHtcbiAgICB0aGlzLmN1cnJlbnRQYWdlKys7XG4gICAgdGhpcy5maWx0ZXJTZXJ2aWNlLmNoYW5nZVBhZ2UodGhpcy5jdXJyZW50UGFnZSk7XG4gIH1cblxuICBwcmV2UGFnZSgpIHtcbiAgICB0aGlzLmN1cnJlbnRQYWdlLS07XG4gICAgdGhpcy5maWx0ZXJTZXJ2aWNlLmNoYW5nZVBhZ2UodGhpcy5jdXJyZW50UGFnZSk7XG4gIH1cblxuICBnZXQgbmV4dERpc2FibGVkKCkge1xuICAgIGlmICghaXNOdW1iZXIodGhpcy50b3RhbENvdW50KSB8fCAhaXNOdW1iZXIodGhpcy5lbmRDb3VudCkpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBjb25zdCB0b3RhbDogYW55ID0gTnVtYmVyLnBhcnNlSW50KHRoaXMudG90YWxDb3VudCk7XG4gICAgY29uc3QgZW5kOiBhbnkgPSBOdW1iZXIucGFyc2VJbnQodGhpcy5lbmRDb3VudCk7XG4gICAgcmV0dXJuIGVuZCA+PSB0b3RhbDtcbiAgfVxuXG4gIGdldCBwcmV2RGlzYWJsZWQoKSB7XG4gICAgaWYgKCFpc051bWJlcih0aGlzLnN0YXJ0Q291bnQpIHx8ICFpc051bWJlcih0aGlzLnRvdGFsQ291bnQpKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgY29uc3Qgc3RhcnQgPSBOdW1iZXIucGFyc2VJbnQodGhpcy5zdGFydENvdW50LCAxMCk7XG4gICAgcmV0dXJuIHN0YXJ0IDw9IDE7XG4gIH1cblxuICBpbnB1dENoYW5nZWQoKSB7XG4gICAgY29uc3QgZmlsdGVyT2JqOiBGaWx0ZXJPYmogPSB7XG4gICAgICBmaWx0ZXJOYW1lOiAnbmFtZScsXG4gICAgICBjb2x1bW5JZDogJ25hbWUnLFxuICAgICAgdmFsdWU6IHRoaXMuZmlsdGVyU3RyaW5nLFxuICAgICAgbGFiZWw6IHRoaXMuZmlsdGVyU3RyaW5nLFxuICAgIH07XG4gICAgdGhpcy5maWx0ZXJTZXJ2aWNlLnVwZGF0ZUZpbHRlcihmaWx0ZXJPYmopXG4gIH1cblxuXG4gIHJlbW92ZUZpbHRlcihmaWx0ZXJPYmo6IEZpbHRlck9iaikge1xuICAgIHRoaXMuZmlsdGVyU2VydmljZS5yZW1vdmVGaWx0ZXIoZmlsdGVyT2JqKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZpbHRlcnNcIj5cbiAgICA8aW5wdXRcbiAgICAgICAgaWQ9XCJTZWFyY2hGaWx0ZXJcIlxuICAgICAgICBkYXRhLWRlZmluZWQ9XCJzZWFyY2hcIlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIGNsYXNzPVwic2VhcmNoXCJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJUeXBlIHRvIEZpbHRlclwiXG4gICAgICAgIChrZXl1cCk9XCJpbnB1dENoYW5nZWREZWJvdW5jZWQoKVwiXG4gICAgICAgIFsobmdNb2RlbCldPVwiZmlsdGVyU3RyaW5nXCJcbiAgICAvPlxuICAgIDxkaXYgY2xhc3M9XCJjbGVhciBpY29uLWNsZWFyXCIgZGF0YS1kZWZpbmVkPVwiY2xlYXJcIj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwic2VhcmNoQnV0dG9uIGljb24tc2VhcmNoXCI+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZpbHRlcmVkLWNvbHVtbnMtbGlzdFwiIGlkPVwiQ29sdW1uRmlsdGVyQ29udGFpbmVyXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwicmVtb3ZlRmlsdGVyKGZpbHRlcilcIlxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBmaWx0ZXIgb2YgX2ZpbHRlcnNcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZmlsdGVyZWQtY29sdW1uLWl0ZW0gYWctZG5kLWdob3N0IGFnLXVuc2VsZWN0YWJsZSBhZy10aGVtZS1hbHBpbmVcIlxuICAgICAgICAgICAgICAgIGlkPVwiQ29sdW1uVmlzaWJpbGl0eV97eyBmaWx0ZXIuZmlsdGVyTmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgdGl0bGU9XCJSZW1vdmUgZmlsdGVyXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhZy1kbmQtZ2hvc3QtaWNvblwiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWctaWNvbiBhZy1pY29uLWZpbHRlclwiPjwvc3Bhbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZy1kbmQtZ2hvc3QtbGFiZWxcIj57eyBmaWx0ZXIuZmlsdGVyTmFtZSB9fToge3sgZmlsdGVyLmxhYmVsIH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjb3VudGVyc1wiPjxzcGFuIGlkPVwiU3RhcnRcIj57e3N0YXJ0Q291bnR9fTwvc3Bhbj4tPHNwYW4gaWQ9XCJFbmRcIj57e2VuZENvdW50fX08L3NwYW4+IG9mIDxzcGFuIGlkPVwiVG90YWxcIj57e3RvdGFsQ291bnR9fTwvc3Bhbj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibmF2aWdhdGUgcHJldiBpY29uLXByZXZcIiBbbmdDbGFzc109XCJ7ZGlzYWJsZWQ6IHByZXZEaXNhYmxlZH1cIiAoY2xpY2spPVwicHJldlBhZ2UoKVwiPjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJuYXZpZ2F0ZSBuZXh0IGljb24tbmV4dFwiIFtuZ0NsYXNzXT1cIntkaXNhYmxlZDogbmV4dERpc2FibGVkfVwiIChjbGljayk9XCJuZXh0UGFnZSgpXCI+PC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
package/esm2022/lib/features/data-table/table-hidden-columns-bar/hidden-columns-bar.component.mjs
CHANGED
|
@@ -13,15 +13,15 @@ class HiddenColumnsBarComponent {
|
|
|
13
13
|
this.columnVisibilityChanged.emit(event);
|
|
14
14
|
}
|
|
15
15
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HiddenColumnsBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
16
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: HiddenColumnsBarComponent, selector: "lib-table-hidden-columns-bar", inputs: { hiddenColumns: "hiddenColumns" }, outputs: { columnVisibilityChanged: "columnVisibilityChanged" }, ngImport: i0, template: "<div class=\"hidden-columns-list\" id=\"ColumnVisibilityHeader\">\n
|
|
16
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: HiddenColumnsBarComponent, selector: "lib-table-hidden-columns-bar", inputs: { hiddenColumns: "hiddenColumns" }, outputs: { columnVisibilityChanged: "columnVisibilityChanged" }, ngImport: i0, template: "<div class=\"hidden-columns-bar-container\">\n <div class=\"hidden-columns-list\" id=\"ColumnVisibilityHeader\">\n <div\n (click)=\"setColumnVisibilityColumn(col, true)\"\n *ngFor=\"let col of hiddenColumns\"\n class=\"hidden-column-item ag-dnd-ghost ag-unselectable ag-theme-alpine\"\n id=\"ColumnVisibility_{{ col.headerName }}\"\n title=\"Show column\"\n >\n <span class=\"ag-dnd-ghost-icon\">\n <span class=\"ag-icon ag-icon-eye-slash\"></span>\n </span>\n <div class=\"ag-dnd-ghost-label\">{{ col.headerName }}</div>\n </div>\n </div>\n</div>", styles: [".hidden-columns-bar-container{display:flex;align-items:center;justify-content:space-between;flex-direction:row;width:100%}.hidden-columns-list{align-items:center;display:flex;flex-direction:row;margin-left:7px;min-height:30px;flex-wrap:wrap;flex:0 1 auto}.hidden-columns-list.hidden-results{flex-wrap:nowrap;overflow:auto}.hidden-columns-list.hidden-results .hidden-column-item{flex:1 0 auto}.hidden-columns-list::-webkit-scrollbar{height:14px}.hidden-columns-list .hidden-column-item{align-items:center;background-color:var(--background);border:2px solid var(--background);border-radius:12px;cursor:pointer;color:var(--inputBorder);font-weight:600;font-family:Open Sans,sans-serif;display:flex;flex:0 1 auto;height:25px!important;margin-left:10px;margin-top:5px;padding:2px 10px 2px 5px;position:relative;text-align:center;box-shadow:unset;transform:translateY(0)}.hidden-columns-list .ag-dnd-ghost:hover{border:2px solid var(--primaryColor)!important}.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-label,.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-icon .ag-icon-eye-slash{color:var(--ag-alpine-active-color, var(--primaryColor))}.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-icon .ag-icon-eye-slash:before{content:\"\\f113\"}.hidden-columns-list .ag-dnd-ghost-label{line-height:initial;color:var(--text)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
|
|
17
17
|
}
|
|
18
18
|
export { HiddenColumnsBarComponent };
|
|
19
19
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HiddenColumnsBarComponent, decorators: [{
|
|
20
20
|
type: Component,
|
|
21
|
-
args: [{ selector: 'lib-table-hidden-columns-bar', template: "<div class=\"hidden-columns-list\" id=\"ColumnVisibilityHeader\">\n
|
|
21
|
+
args: [{ selector: 'lib-table-hidden-columns-bar', template: "<div class=\"hidden-columns-bar-container\">\n <div class=\"hidden-columns-list\" id=\"ColumnVisibilityHeader\">\n <div\n (click)=\"setColumnVisibilityColumn(col, true)\"\n *ngFor=\"let col of hiddenColumns\"\n class=\"hidden-column-item ag-dnd-ghost ag-unselectable ag-theme-alpine\"\n id=\"ColumnVisibility_{{ col.headerName }}\"\n title=\"Show column\"\n >\n <span class=\"ag-dnd-ghost-icon\">\n <span class=\"ag-icon ag-icon-eye-slash\"></span>\n </span>\n <div class=\"ag-dnd-ghost-label\">{{ col.headerName }}</div>\n </div>\n </div>\n</div>", styles: [".hidden-columns-bar-container{display:flex;align-items:center;justify-content:space-between;flex-direction:row;width:100%}.hidden-columns-list{align-items:center;display:flex;flex-direction:row;margin-left:7px;min-height:30px;flex-wrap:wrap;flex:0 1 auto}.hidden-columns-list.hidden-results{flex-wrap:nowrap;overflow:auto}.hidden-columns-list.hidden-results .hidden-column-item{flex:1 0 auto}.hidden-columns-list::-webkit-scrollbar{height:14px}.hidden-columns-list .hidden-column-item{align-items:center;background-color:var(--background);border:2px solid var(--background);border-radius:12px;cursor:pointer;color:var(--inputBorder);font-weight:600;font-family:Open Sans,sans-serif;display:flex;flex:0 1 auto;height:25px!important;margin-left:10px;margin-top:5px;padding:2px 10px 2px 5px;position:relative;text-align:center;box-shadow:unset;transform:translateY(0)}.hidden-columns-list .ag-dnd-ghost:hover{border:2px solid var(--primaryColor)!important}.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-label,.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-icon .ag-icon-eye-slash{color:var(--ag-alpine-active-color, var(--primaryColor))}.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-icon .ag-icon-eye-slash:before{content:\"\\f113\"}.hidden-columns-list .ag-dnd-ghost-label{line-height:initial;color:var(--text)}\n"] }]
|
|
22
22
|
}], propDecorators: { hiddenColumns: [{
|
|
23
23
|
type: Input
|
|
24
24
|
}], columnVisibilityChanged: [{
|
|
25
25
|
type: Output
|
|
26
26
|
}] } });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlkZGVuLWNvbHVtbnMtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9kYXRhLXRhYmxlL3RhYmxlLWhpZGRlbi1jb2x1bW5zLWJhci9oaWRkZW4tY29sdW1ucy1iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMveml0aS1jb25zb2xlLWxpYi9zcmMvbGliL2ZlYXR1cmVzL2RhdGEtdGFibGUvdGFibGUtaGlkZGVuLWNvbHVtbnMtYmFyL2hpZGRlbi1jb2x1bW5zLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDOzs7QUFFckUsTUFLYSx5QkFBeUI7SUFMdEM7UUFRWSw0QkFBdUIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBU3hEO0lBUEMseUJBQXlCLENBQUMsTUFBTSxFQUFFLE9BQU87UUFDdkMsTUFBTSxLQUFLLEdBQUc7WUFDWixNQUFNO1lBQ04sT0FBTztTQUNSLENBQUM7UUFDRixJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNDLENBQUM7K0dBWFUseUJBQXlCO21HQUF6Qix5QkFBeUIsaUxDUHRDLCtxQkFlTTs7U0RSTyx5QkFBeUI7NEZBQXpCLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRSw4QkFBOEI7OEJBTS9CLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0ksdUJBQXVCO3NCQUFoQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi10YWJsZS1oaWRkZW4tY29sdW1ucy1iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vaGlkZGVuLWNvbHVtbnMtYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaGlkZGVuLWNvbHVtbnMtYmFyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSGlkZGVuQ29sdW1uc0JhckNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgaGlkZGVuQ29sdW1uczogYW55O1xuICBAT3V0cHV0KCkgY29sdW1uVmlzaWJpbGl0eUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgc2V0Q29sdW1uVmlzaWJpbGl0eUNvbHVtbihjb2x1bW4sIHZpc2libGUpIHtcbiAgICBjb25zdCBldmVudCA9IHtcbiAgICAgIGNvbHVtbixcbiAgICAgIHZpc2libGVcbiAgICB9O1xuICAgIHRoaXMuY29sdW1uVmlzaWJpbGl0eUNoYW5nZWQuZW1pdChldmVudCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJoaWRkZW4tY29sdW1ucy1iYXItY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImhpZGRlbi1jb2x1bW5zLWxpc3RcIiBpZD1cIkNvbHVtblZpc2liaWxpdHlIZWFkZXJcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJzZXRDb2x1bW5WaXNpYmlsaXR5Q29sdW1uKGNvbCwgdHJ1ZSlcIlxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjb2wgb2YgaGlkZGVuQ29sdW1uc1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJoaWRkZW4tY29sdW1uLWl0ZW0gYWctZG5kLWdob3N0IGFnLXVuc2VsZWN0YWJsZSBhZy10aGVtZS1hbHBpbmVcIlxuICAgICAgICAgICAgICAgIGlkPVwiQ29sdW1uVmlzaWJpbGl0eV97eyBjb2wuaGVhZGVyTmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgdGl0bGU9XCJTaG93IGNvbHVtblwiXG4gICAgICAgID5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJhZy1kbmQtZ2hvc3QtaWNvblwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhZy1pY29uIGFnLWljb24tZXllLXNsYXNoXCI+PC9zcGFuPlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWctZG5kLWdob3N0LWxhYmVsXCI+e3sgY29sLmhlYWRlck5hbWUgfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
|
|
@@ -24,6 +24,8 @@ class ExtensionsNoopService {
|
|
|
24
24
|
this.closeAfterSave = true;
|
|
25
25
|
this.moreActions = [];
|
|
26
26
|
}
|
|
27
|
+
extendOnInit() {
|
|
28
|
+
}
|
|
27
29
|
extendAfterViewInits(extentionPoints) {
|
|
28
30
|
}
|
|
29
31
|
updateFormData(data) {
|
|
@@ -47,4 +49,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
47
49
|
providedIn: 'root'
|
|
48
50
|
}]
|
|
49
51
|
}], ctorParameters: function () { return []; } });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5zaW9ucy1ub29wLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvZXh0ZW5kYWJsZS9leHRlbnNpb25zLW5vb3Auc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE9BQU8sRUFBQyxVQUFVLEVBQUUsY0FBYyxFQUFvQixZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFDLGVBQWUsRUFBVSxNQUFNLE1BQU0sQ0FBQzs7QUFFOUMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQU0sbUJBQW1CLENBQUMsQ0FBQztBQWdCOUUsTUFHYSxxQkFBcUI7SUFPaEM7UUFMQSxvQkFBZSxHQUFHLElBQUksZUFBZSxDQUFNLEVBQUMsT0FBTyxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7UUFDNUQsV0FBTSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3BELG1CQUFjLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLGdCQUFXLEdBQUcsRUFBRSxDQUFDO0lBRUQsQ0FBQztJQUVqQixZQUFZO0lBQ1osQ0FBQztJQUVELG9CQUFvQixDQUFDLGVBQW9CO0lBQ3pDLENBQUM7SUFFRCxjQUFjLENBQUMsSUFBUztJQUN4QixDQUFDO0lBRUQsYUFBYSxDQUFDLElBQVM7UUFDckIsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxZQUFZO1FBQ1YsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxZQUFpQjtRQUNuQyxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDOytHQTVCVSxxQkFBcUI7bUhBQXJCLHFCQUFxQixjQUZwQixNQUFNOztTQUVQLHFCQUFxQjs0RkFBckIscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gICAgQ29weXJpZ2h0IE5ldEZvdW5kcnkgSW5jLlxuXG4gICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cbiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbmltcG9ydCB7SW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIFZpZXdDb250YWluZXJSZWYsIEV2ZW50RW1pdHRlcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgU3ViamVjdH0gZnJvbSBcInJ4anNcIjtcblxuZXhwb3J0IGNvbnN0IFNIQVJFRFpfRVhURU5TSU9OID0gbmV3IEluamVjdGlvblRva2VuPGFueT4oJ1NIQVJFRFpfRVhURU5TSU9OJyk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXh0ZW5zaW9uU2VydmljZSB7XG4gIGZvcm1EYXRhQ2hhbmdlZDogQmVoYXZpb3JTdWJqZWN0PGFueT47XG4gIGNsb3NlZDogRXZlbnRFbWl0dGVyPGFueT47XG4gIGNsb3NlQWZ0ZXJTYXZlOiBib29sZWFuO1xuICBtb3JlQWN0aW9ucz86IGFueVtdO1xuICBsaXN0QWN0aW9ucz86IGFueVtdO1xuICBleHRlbmRPbkluaXQoKTogdm9pZDtcbiAgZXh0ZW5kQWZ0ZXJWaWV3SW5pdHMoZXh0ZW50aW9uUG9pbnRzOiBhbnkpOiB2b2lkO1xuICB1cGRhdGVGb3JtRGF0YShkYXRhOiBhbnkpOiB2b2lkO1xuICB2YWxpZGF0ZURhdGEoKTogUHJvbWlzZTxhbnk+O1xuICBmb3JtRGF0YVNhdmVkKGRhdGE6IGFueSk6IFByb21pc2U8YW55PjtcbiAgcHJvY2Vzc1RhYmxlQ29sdW1ucyh0YWJsZUNvbHVtbnM6IGFueSk6IGFueVtdO1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBFeHRlbnNpb25zTm9vcFNlcnZpY2UgaW1wbGVtZW50cyBFeHRlbnNpb25TZXJ2aWNlIHtcblxuICBmb3JtRGF0YUNoYW5nZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4oe2lzRW1wdHk6IHRydWV9KTtcbiAgY2xvc2VkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBjbG9zZUFmdGVyU2F2ZSA9IHRydWU7XG4gIG1vcmVBY3Rpb25zID0gW107XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBleHRlbmRPbkluaXQoKTogdm9pZCB7XG4gIH1cblxuICBleHRlbmRBZnRlclZpZXdJbml0cyhleHRlbnRpb25Qb2ludHM6IGFueSk6IHZvaWQge1xuICB9XG5cbiAgdXBkYXRlRm9ybURhdGEoZGF0YTogYW55KTogdm9pZCB7XG4gIH1cblxuICBmb3JtRGF0YVNhdmVkKGRhdGE6IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShkYXRhKTtcbiAgfVxuXG4gIHZhbGlkYXRlRGF0YSgpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodHJ1ZSk7XG4gIH1cblxuICBwcm9jZXNzVGFibGVDb2x1bW5zKHRhYmxlQ29sdW1uczogYW55KTogYW55W10ge1xuICAgIHJldHVybiB0YWJsZUNvbHVtbnM7XG4gIH1cbn1cbiJdfQ==
|
package/esm2022/lib/features/projectable-forms/configuration/configuration-form.component.mjs
CHANGED
|
@@ -156,6 +156,8 @@ class ConfigurationFormComponent extends ProjectableForm {
|
|
|
156
156
|
this.isLoading = false;
|
|
157
157
|
});
|
|
158
158
|
if (configId) {
|
|
159
|
+
this.initData = this.formData;
|
|
160
|
+
this._dataChange = false;
|
|
159
161
|
if (this.isModal) {
|
|
160
162
|
this.closeModal(true, true);
|
|
161
163
|
}
|
|
@@ -241,4 +243,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
241
243
|
type: ViewChild,
|
|
242
244
|
args: ["configEditor", { read: ConfigEditorComponent }]
|
|
243
245
|
}] } });
|
|
244
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9wcm9qZWN0YWJsZS1mb3Jtcy9jb25maWd1cmF0aW9uL2NvbmZpZ3VyYXRpb24tZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvcHJvamVjdGFibGUtZm9ybXMvY29uZmlndXJhdGlvbi9jb25maWd1cmF0aW9uLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixPQUFPLEVBQ0gsU0FBUyxFQUNULFlBQVksRUFBRSxNQUFNLEVBQ3BCLEtBQUssRUFFRyxNQUFNLEVBQ2QsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUUxRCxPQUFPLEVBQW1CLGlCQUFpQixFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDN0YsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFFbEYsT0FBTyxFQUFDLFNBQVMsRUFBUyxPQUFPLEVBQVEsTUFBTSxRQUFRLENBQUM7QUFDeEQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQzNELE9BQU8sRUFBQyxnQkFBZ0IsRUFBa0IsTUFBTSxvQ0FBb0MsQ0FBQztBQUNyRixPQUFPLEVBQUMsaUJBQWlCLEVBQWtCLE1BQU0scUNBQXFDLENBQUM7QUFFdkYsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFFOUMsTUFLYSwwQkFBMkIsU0FBUSxlQUFlO0lBdUIzRCxZQUNXLEdB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QUN6QixDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQUs7UUFDYixJQUFJLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUMsQ0FBQzsrR0E3TVEsMEJBQTBCLGlIQTJCdkIsaUJBQWlCLGFBQ2pCLGdCQUFnQixhQUNoQixpQkFBaUI7bUdBN0JwQiwwQkFBMEIsbU9Bc0JELHFCQUFxQixvRENsRTNELHFtTEF3R0E7O1NENURhLDBCQUEwQjs0RkFBMUIsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNJLG1CQUFtQjs7MEJBK0J4QixNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ3hCLE1BQU07MkJBQUMsZ0JBQWdCOzswQkFDdkIsTUFBTTsyQkFBQyxpQkFBaUI7OEZBM0JYLFFBQVE7c0JBQXpCLEtBQUs7Z0JBQ1ksTUFBTTtzQkFBdkIsS0FBSztnQkFDSSxLQUFLO3NCQUFkLE1BQU07Z0JBa0JtRCxZQUFZO3NCQUFyRSxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFDLElBQUksRUFBRSxxQkFBcUIsRUFBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gICAgQ29weXJpZ2h0IE5ldEZvdW5kcnkgSW5jLlxuXG4gICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cbiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbmltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlciwgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsIE91dHB1dCxcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb25maWd1cmF0aW9uU2VydmljZX0gZnJvbSBcIi4vY29uZmlndXJhdGlvbi5zZXJ2aWNlXCI7XG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7U2NoZW1hU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2VzL3NjaGVtYS5zZXJ2aWNlXCI7XG5pbXBvcnQge1Byb2plY3RhYmxlRm9ybX0gZnJvbSBcIi4uL3Byb2plY3RhYmxlLWZvcm0uY2xhc3NcIjtcbmltcG9ydCB7R3Jvd2xlclNlcnZpY2V9IGZyb20gXCIuLi8uLi9tZXNzYWdpbmcvZ3Jvd2xlci5zZXJ2aWNlXCI7XG5pbXBvcnQge0V4dGVuc2lvblNlcnZpY2UsIFNIQVJFRFpfRVhURU5TSU9OfSBmcm9tIFwiLi4vLi4vZXh0ZW5kYWJsZS9leHRlbnNpb25zLW5vb3Auc2VydmljZVwiO1xuaW1wb3J0IHtDb25maWdFZGl0b3JDb21wb25lbnR9IGZyb20gXCIuLi8uLi9jb25maWctZWRpdG9yL2NvbmZpZy1lZGl0b3IuY29tcG9uZW50XCI7XG5cbmltcG9ydCB7Y2xvbmVEZWVwLCBkZWZlciwgaXNFbXB0eSwgdW5zZXR9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge0dyb3dsZXJNb2RlbH0gZnJvbSBcIi4uLy4uL21lc3NhZ2luZy9ncm93bGVyLm1vZGVsXCI7XG5pbXBvcnQge1NFVFRJTkdTX1NFUlZJQ0UsIFNldHRpbmdzU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2VzL3NldHRpbmdzLnNlcnZpY2VcIjtcbmltcG9ydCB7WklUSV9EQVRBX1NFUlZJQ0UsIFppdGlEYXRhU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2VzL3ppdGktZGF0YS5zZXJ2aWNlXCI7XG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlLCBSb3V0ZXJ9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcbmltcG9ydCB7Q29uZmlnfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL2NvbmZpZ1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpYi1jb25maWd1cmF0aW9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY29uZmlndXJhdGlvbi1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jb25maWd1cmF0aW9uLWZvcm0uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDb25maWd1cmF0aW9uRm9ybUNvbXBvbmVudCBleHRlbmRzIFByb2plY3RhYmxlRm9ybSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAgIEBJbnB1dCgpIG92ZXJyaWRlIGZvcm1EYXRhOiBhbnkgPSB7fTtcbiAgICBASW5wdXQoKSBvdmVycmlkZSBlcnJvcnM6IGFueSA9IHt9O1xuICAgIEBPdXRwdXQoKSBjbG9zZTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgb3B0aW9uczogYW55W10gPSBbXTtcbiAgICBpc0VkaXRpbmcgPSAhaXNFbXB0eSh0aGlzLmZvcm1EYXRhLmlkKTtcbiAgICBmb3JtVmlldyA9ICdzaW1wbGUnO1xuICAgIGZvcm1EYXRhSW52YWxpZCA9IGZhbHNlO1xuICAgIGVkaXRNb2RlID0gZmFsc2U7XG4gICAgaXRlbXM6IGFueSA9IFtdO1xuICAgIHNlbGVjdGVkU2NoZW1hOiBhbnkgPSAnJztcbiAgICBhc3NvY2lhdGVkU2VydmljZXMgPSBbXTtcbiAgICBhc3NvY2lhdGVkU2VydmljZU5hbWVzID0gW107XG4gICAgc2VydmljZXNMb2FkaW5nID0gZmFsc2U7XG4gICAgc2V0dGluZ3M6IGFueSA9IHt9O1xuICAgIHNlbGVjdGVkQ29uZmlnVHlwZUlkID0gJyc7XG5cbiAgICBvdmVycmlkZSBlbnRpdHlUeXBlID0gJ2NvbmZpZ3MnO1xuICAgIG92ZXJyaWRlIGVudGl0eUNsYXNzID0gQ29uZmlnO1xuXG4gICAgQFZpZXdDaGlsZChcImNvbmZpZ0VkaXRvclwiLCB7cmVhZDogQ29uZmlnRWRpdG9yQ29tcG9uZW50fSkgY29uZmlnRWRpdG9yITogQ29uZmlnRWRpdG9yQ29tcG9uZW50O1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgc3ZjOiBDb25maWd1cmF0aW9uU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBzY2hlbWFTdmM6IFNjaGVtYVNlcnZpY2UsXG4gICAgICAgIGdyb3dsZXJTZXJ2aWNlOiBHcm93bGVyU2VydmljZSxcbiAgICAgICAgQEluamVjdChTSEFSRURaX0VYVEVOU0lPTikgZXh0U2VydmljZTogRXh0ZW5zaW9uU2VydmljZSxcbiAgICAgICAgQEluamVjdChTRVRUSU5HU19TRVJWSUNFKSBwdWJsaWMgc2V0dGluZ3NTZXJ2aWNlOiBTZXR0aW5nc1NlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoWklUSV9EQVRBX1NFUlZJQ0UpIG92ZXJyaWRlIHppdGlTZXJ2aWNlOiBaaXRpRGF0YVNlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBvdmVycmlkZSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJvdGVjdGVkIG92ZXJyaWRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICApIHtcbiAgICAgICAgc3VwZXIoZ3Jvd2xlclNlcnZpY2UsIGV4dFNlcnZpY2UsIHppdGlTZXJ2aWNlLCByb3V0ZXIsIHJvdXRlKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5zZXR0aW5nc1NlcnZpY2Uuc2V0dGluZ3NDaGFuZ2Uuc3Vic2NyaWJlKChyZXN1bHRzOmFueSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZXR0aW5ncyA9IHJlc3VsdHM7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIGVudGl0eVVwZGF0ZWQoKSB7XG4gICAgICAgIGlmIChpc0VtcHR5KHRoaXMuZm9ybURhdGE/LmRhdGEpKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm1EYXRhLmRhdGEgPSB7fTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNFbXB0eSh0aGlzLmZvcm1EYXRhPy5jb25maWdUeXBlSWQpKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm1EYXRhLmNvbmZpZ1R5cGVJZCA9ICcnO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDb25maWdUeXBlSWQgPSB0aGlzLmZvcm1EYXRhLmNvbmZpZ1R5cGVJZDtcbiAgICAgICAgdGhpcy5pbml0RGF0YSA9IGNsb25lRGVlcCh0aGlzLmZvcm1EYXRhKTtcbiAgICAgICAgdGhpcy5zdmMuY29uZmlnSnNvblZpZXcgPSBmYWxzZTtcbiAgICAgICAgLy90aGlzLmdldEFzc29jaWF0ZWRTZXJ2aWNlcygpO1xuICAgICAgICB0aGlzLnN2Yy5nZXRDb25maWdUeXBlcygpXG4gICAgICAgICAgICAudGhlbihjb25maWdUeXBlcyA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vcHRpb25zID0gY29uZmlnVHlwZXMuc29ydCgpO1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0U2NoZW1hKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5pc0VkaXRpbmcgPSAhaXNFbXB0eSh0aGlzLmZvcm1EYXRhLmlkKTtcbiAgICAgICAgaWYgKHRoaXMuY29uZmlnVHlwZUVtcHR5KSB7XG4gICAgICAgICAgICB0aGlzLmZvcm1EYXRhLmNvbmZpZ1R5cGVJZCA9ICcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0QXNzb2NpYXRlZFNlcnZpY2VzKCkge1xuICAgICAgICB0aGlzLnN2Yy5nZXRBc3NvY2lhdGVkU2VydmljZXModGhpcy5mb3JtRGF0YS5pZCkudGhlbigocmVzdWx0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmFzc29jaWF0ZWRTZXJ2aWNlcyA9IHJlc3VsdC5hc3NvY2lhdGVkU2VydmljZXM7XG4gICAgICAgICAgICB0aGlzLmFzc29jaWF0ZWRTZXJ2aWNlTmFtZXMgPSByZXN1bHQuYXNzb2NpYXRlZFNlcnZpY2VOYW1lcztcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2xlYXJGb3JtKCk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbmZpZ1R5cGVFbXB0eSgpIHtcbiAgICAgICAgcmV0dXJuIGlzRW1wdHkodGhpcy5mb3JtRGF0YS5jb25maWdUeXBlSWQpO1xuICAgIH1cblxuICAgIGhlYWRlckFjdGlvblJlcXVlc3RlZChldmVudCkge1xuICAgICAgICBzd2l0Y2goZXZlbnQubmFtZSkge1xuICAgICAgICAgICAgY2FzZSAnc2F2ZSc6XG4gICAgICAgICAgICAgICAgdGhpcy5zYXZlKGV2ZW50KTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2Nsb3NlJzpcbiAgICAgICAgICAgICAgICB0aGlzLnJldHVyblRvTGlzdFBhZ2UoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3RvZ2dsZS12aWV3JzpcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1WaWV3ID0gZXZlbnQuZGF0YTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG92ZXJyaWRlIGNsZWFyKCkge1xuICAgICAgICB0aGlzLmZvcm1EYXRhLmNvbmZpZ1R5cGVJZCA9ICcnO1xuICAgICAgICB0aGlzLmNsZWFyRm9ybSgpO1xuICAgIH1cblxuICAgIGNsZWFyRm9ybSgpIHtcbiAgICAgICAgdGhpcy5pdGVtcy5mb3JFYWNoKChpdGVtOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGlmIChpdGVtPy5jb21wb25lbnQpIGl0ZW0uY29tcG9uZW50LmRlc3Ryb3koKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZXJyb3JzID0ge307XG4gICAgICAgIHRoaXMuaXRlbXMgPSBbXTtcbiAgICAgICAgdGhpcy5mb3JtRGF0YSA9IHt9O1xuICAgICAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgYXN5bmMgc2F2ZShldmVudD86IGFueSkge1xuICAgICAgICB0aGlzLmVycm9ycyA9IHt9O1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLmNvbmZpZ0VkaXRvci5nZXRDb25maWdEYXRhRnJvbUZvcm0oKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKXtcbiAgICAgICAgICAgIGNvbnN0IGdyb3dsZXJEYXRhID0gbmV3IEdyb3dsZXJNb2RlbChcbiAgICAgICAgICAgICAgICAnZXJyb3InLFxuICAgICAgICAgICAgICAgICdFcnJvcicsXG4gICAgICAgICAgICAgICAgYEVycm9yIEdldHRpbmcgQ29uZmlnIERhdGFgLFxuICAgICAgICAgICAgICAgICdFcnJvciBnZXR0aW5nIGNvbmZpZ3VyYXRpb24gZGF0YSBmcm9tIGZyb20uJyxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLmdyb3dsZXJTZXJ2aWNlLnNob3coZ3Jvd2xlckRhdGEpO1xuICAgICAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy52YWxpZGF0ZSgpKSB7XG4gICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNvbmZpZ0lkID0gYXdhaXQgdGhpcy5zdmMuc2F2ZSh0aGlzLmZvcm1EYXRhKS50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgICAgIGlmICghaXNFbXB0eShyZXN1bHQ/LmlkKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZm9ybURhdGEgPSByZXN1bHQ7XG4gICAgICAgICAgICAgICAgdGhpcy5pbml0RGF0YSA9IHRoaXMuZm9ybURhdGE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0Py5pZDtcbiAgICAgICAgfSkuZmluYWxseSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGNvbmZpZ0lkKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5pc01vZGFsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZU1vZGFsKHRydWUsIHRydWUpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJldHVyblRvTGlzdFBhZ2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICB2YWxpZGF0ZSgpIHtcbiAgICAgICAgdGhpcy5lcnJvcnMgPSB7fTtcbiAgICAgICAgdGhpcy5jb25maWdFZGl0b3IudmFsaWRhdGVDb25maWcoKTtcbiAgICAgICAgaWYgKGlzRW1wdHkodGhpcy5mb3JtRGF0YS5uYW1lKSkge1xuICAgICAgICAgICAgdGhpcy5lcnJvcnNbJ25hbWUnXSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRW1wdHkodGhpcy5mb3JtRGF0YS5jb25maWdUeXBlSWQpKSB7XG4gICAgICAgICAgICB0aGlzLmVycm9yc1snY29uZmlnVHlwZUlkJ10gPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmICghaXNFbXB0eSh0aGlzLmVycm9ycykpIHtcbiAgICAgICAgICAgIGNvbnN0IGdyb3dsZXJEYXRhID0gbmV3IEdyb3dsZXJNb2RlbChcbiAgICAgICAgICAgICAgICAnZXJyb3InLFxuICAgICAgICAgICAgICAgICdFcnJvcicsXG4gICAgICAgICAgICAgICAgYEVycm9yIFZhbGlkYXRpbmcgQ29uZmlnYCxcbiAgICAgICAgICAgICAgICAnVGhlIGVudGVyZWQgY29uZmlndXJhdGlvbiBpcyBpbnZhbGlkLiBQbGVhc2UgdXBkYXRlIG1pc3NpbmcvaW52YWxpZCBmaWVsZHMgYW5kIHRyeSBhZ2Fpbi4nLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHRoaXMuZ3Jvd2xlclNlcnZpY2Uuc2hvdyhncm93bGVyRGF0YSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGlzRW1wdHkodGhpcy5lcnJvcnMpO1xuICAgIH1cbiAgICBnZXQgc2F2ZUJ1dHRvblRvb2x0aXAoKSB7XG4gICAgICAgIGlmICh0aGlzLmZvcm1EYXRhSW52YWxpZCkge1xuICAgICAgICAgICAgcmV0dXJuICdDb25maWcgZGF0YSBpcyBpbnZhbGlkLiBQbGVhc2UgdXBkYXRlIGFuZCB0cnkgYWdhaW4uJ1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuICdDb21wbGV0ZSBhbmQgYXR0YWNoIGNvbmZpZyBkZWZpbml0aW9uLCBvciByZW1vdmUgYmVmb3JlIHNhdmluZyc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRTY2hlbWEoKSB7XG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkQ29uZmlnVHlwZUlkICE9PSB0aGlzLmZvcm1EYXRhLmNvbmZpZ1R5cGVJZCkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZENvbmZpZ1R5cGVJZCA9IHRoaXMuZm9ybURhdGEuY29uZmlnVHlwZUlkO1xuICAgICAgICAgICAgdGhpcy5mb3JtRGF0YS5kYXRhID0ge307XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zdmMuZ2V0U2NoZW1hKHRoaXMuZm9ybURhdGEuY29uZmlnVHlwZUlkKS50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRTY2hlbWEgPSByZXN1bHQ7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldCBhcGlDYWxsVVJMKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zZXR0aW5ncy5zZWxlY3RlZEVkZ2VDb250cm9sbGVyICsgJy9lZGdlL21hbmFnZW1lbnQvdjEvY29uZmlncycgKyAodGhpcy5mb3JtRGF0YS5pZCA/IGAvJHt0aGlzLmZvcm1EYXRhLmlkfWAgOiAnJyk7XG4gICAgfVxuXG4gICAgZ2V0IGFwaURhdGEoKTogYW55IHtcbiAgICAgICAgY29uc3QgZGF0YTogYW55ID0ge1xuICAgICAgICAgICAgbmFtZTogdGhpcy5mb3JtRGF0YT8ubmFtZSB8fCAnJyxcbiAgICAgICAgICAgIGNvbmZpZ1R5cGVJZDogdGhpcy5mb3JtRGF0YT8uY29uZmlnVHlwZUlkIHx8ICcnLFxuICAgICAgICAgICAgZGF0YTogdGhpcy5mb3JtRGF0YT8uZGF0YSB8fCB7fSxcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5fYXBpRGF0YSA9IGRhdGE7XG4gICAgICAgIHJldHVybiB0aGlzLl9hcGlEYXRhO1xuICAgIH1cblxuICAgIF9hcGlEYXRhOiBhbnkgPSB7fTtcbiAgICBzZXQgYXBpRGF0YShkYXRhKSB7XG4gICAgICAgIHRoaXMuX2FwaURhdGEgPSBkYXRhO1xuICAgIH1cblxuICAgIGRhdGFDaGFuZ2VkKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuX2FwaURhdGEgPSBjbG9uZURlZXAodGhpcy5hcGlEYXRhKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicHJvamVjdGFibGUtZm9ybS13cmFwcGVyXCJcbiAgICAgKGtleXVwLmVudGVyKT1cInNhdmUoJGV2ZW50KVwiXG4gICAgIChrZXl1cC5lc2NhcGUpPVwiY2xvc2VNb2RhbChmYWxzZSlcIlxuICAgICB0YWJpbmRleD1cIjBcIlxuPlxuICAgIDxsaWItZm9ybS1oZWFkZXJcbiAgICAgICAgICAgIFtkYXRhXT1cImZvcm1EYXRhXCJcbiAgICAgICAgICAgIFt0aXRsZV09XCIoZm9ybURhdGEuaWQgPyAnRWRpdCBDb25maWcnIDogJ0NyZWF0ZSBDb25maWcnKVwiXG4gICAgICAgICAgICBbbW9yZUFjdGlvbnNdPVwiZm9ybURhdGEubW9yZUFjdGlvbnNcIlxuICAgICAgICAgICAgKGFjdGlvblJlcXVlc3RlZCk9XCJoZWFkZXJBY3Rpb25SZXF1ZXN0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICBbKGZvcm1WaWV3KV09XCJmb3JtVmlld1wiXG4gICAgICAgICAgICBbc2F2ZURpc2FibGVkXT1cInN2Yy5zYXZlRGlzYWJsZWQgfHwgZm9ybURhdGFJbnZhbGlkXCJcbiAgICAgICAgICAgIFtzYXZlVG9vbHRpcF09XCJzYXZlQnV0dG9uVG9vbHRpcFwiXG4gICAgPjwvbGliLWZvcm0taGVhZGVyPlxuICAgIDxkaXYgY2xhc3M9XCJjb25maWctZm9ybS1jb250YWluZXIgcHJvamVjdGFibGUtZm9ybS1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInByb2plY3RhYmxlLWZvcm0tbWFpbi1jb2x1bW4gZm9ybS1ncm91cC1yb3dcIiBbaGlkZGVuXT1cImZvcm1WaWV3ICE9PSAnc2ltcGxlJ1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAtY29sdW1uIHRocmVlLWZpZnRoc1wiPlxuICAgICAgICAgICAgICAgIDxsaWItZm9ybS1maWVsZC1jb250YWluZXIgW3RpdGxlXT1cIidDb25maWcgTmFtZSdcIiBbbGFiZWxdPVwiJ1JlcXVpcmVkJ1wiPlxuICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiQ29uZmlnTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhsZW5ndGg9XCI1MDBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJOYW1lIHRoaXMgY29uZmlnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntlcnJvcjogZXJyb3JzWyduYW1lJ119XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZm9ybURhdGEubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoa2V5dXApPVwiYXBpRGF0YSgpXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvbGliLWZvcm0tZmllbGQtY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDxsaWItZm9ybS1maWVsZC1jb250YWluZXIgW3Nob3dIZWFkZXJdPVwiZmFsc2VcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbmZpZy10aXRsZS1yb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZm9ybS1maWVsZC10aXRsZVwiPkNvbmZpZ3VyYXRpb24gRGF0YTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWhlYWRlci10b2dnbGUtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidG9nZ2xlLW9wdGlvbi10ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsndG9nZ2xlLW9wdGlvbi1zZWxlY3RlZCc6ICFzdmMuY29uZmlnSnNvblZpZXd9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzdmMudG9nZ2xlSlNPTlZpZXcoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGT1JNXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWhlYWRlci10b2dnbGVcIiAoY2xpY2spPVwic3ZjLnRvZ2dsZUpTT05WaWV3KClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS10b2dnbGUtc3dpdGNoXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J3RvZ2dsZS1sZWZ0JzogIXN2Yy5jb25maWdKc29uVmlldywgJ3RvZ2dsZS1yaWdodCc6IHN2Yy5jb25maWdKc29uVmlld31cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS10b2dnbGUtaW5kaWNhdG9yXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS10b2dnbGUtaW5kaWNhdG9yXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRvZ2dsZS1vcHRpb24tdGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J3RvZ2dsZS1vcHRpb24tc2VsZWN0ZWQnOiBzdmMuY29uZmlnSnNvblZpZXd9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzdmMudG9nZ2xlSlNPTlZpZXcoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKU09OXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1maWVsZC1pbnB1dC1ncm91cFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbmZpZy10aXRsZS1yb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZvcm0tZmllbGQtdGl0bGVcIj57e2lzRWRpdGluZyA/ICdDb25maWcgVHlwZScgOiAnU2VsZWN0IGEgQ29uZmlnIFR5cGUnfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWxlY3RcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJDb25maWdUeXBlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY29uZmlnLXR5cGUtc2VsZWN0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJmb3JtRGF0YS5jb25maWdUeXBlSWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cImdldFNjaGVtYSgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie2Rpc2FibGVkOiBpc0VkaXRpbmcsIGVycm9yOiBlcnJvcnNbJ2NvbmZpZ1R5cGVJZCddfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPlNlbGVjdCBBIFR5cGUuLi48L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBjb25maWcgb2Ygb3B0aW9uc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiY29uZmlnLmlkXCI+e3tjb25maWcubmFtZX19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NlbGVjdD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaWItY29uZmlnLWVkaXRvclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaGlkZGVuXT1cImNvbmZpZ1R5cGVFbXB0eVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY2hlbWFdPVwic2VsZWN0ZWRTY2hlbWFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKGNvbmZpZ0RhdGEpXT1cImZvcm1EYXRhLmRhdGFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0pzb25WaWV3XT1cInN2Yy5jb25maWdKc29uVmlld1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsoY29uZmlnRXJyb3JzKV09XCJlcnJvcnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29uZmlnRGF0YUNoYW5nZSk9XCJkYXRhQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2NvbmZpZ0VkaXRvclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvbGliLWNvbmZpZy1lZGl0b3I+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvbGliLWZvcm0tZmllbGQtY29udGFpbmVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC1jb2x1bW4gdHdvLWZpZnRoc1wiPlxuICAgICAgICAgICAgICAgIDxsaWItZm9ybS1maWVsZC1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCInQVBJIENhbGxzJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJydcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tcm93XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWZpZWxkLWlucHV0XCIgW3ZhbHVlXT1cImFwaUNhbGxVUkxcIiByZWFkb25seS8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidXJsLWNvcHkgaWNvbi1jb3B5IGNvcHlcIiAoY2xpY2spPVwiY29weVRvQ2xpcGJvYXJkKGFwaUNhbGxVUkwpXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8bGliLWpzb24tdmlldyAqbmdJZj1cImZvcm1EYXRhXCIgWyhkYXRhKV09XCJfYXBpRGF0YVwiIFtyZWFkT25seV09XCJ0cnVlXCIgW3Nob3dDb3B5XT1cInRydWVcIj48L2xpYi1qc29uLXZpZXc+XG4gICAgICAgICAgICAgICAgPC9saWItZm9ybS1maWVsZC1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwLWNvbHVtblwiICpuZ0lmPVwiZm9ybVZpZXcgPT09ICdyYXcnXCI+XG4gICAgICAgICAgICA8bGliLWpzb24tdmlldyAqbmdJZj1cImZvcm1EYXRhXCIgWyhkYXRhKV09XCJmb3JtRGF0YVwiPjwvbGliLWpzb24tdmlldz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxsaWItbG9hZGluZy1pbmRpY2F0b3IgKm5nSWY9XCJpc0xvYWRpbmdcIiBbaXNMb2FkaW5nXT1cImlzTG9hZGluZ1wiPjwvbGliLWxvYWRpbmctaW5kaWNhdG9yPlxuIl19
|
|
246
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9wcm9qZWN0YWJsZS1mb3Jtcy9jb25maWd1cmF0aW9uL2NvbmZpZ3VyYXRpb24tZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvcHJvamVjdGFibGUtZm9ybXMvY29uZmlndXJhdGlvbi9jb25maWd1cmF0aW9uLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixPQUFPLEVBQ0gsU0FBUyxFQUNULFlBQVksRUFBRSxNQUFNLEVBQ3BCLEtBQUssRUFFRyxNQUFNLEVBQ2QsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUUxRCxPQUFPLEVBQW1CLGlCQUFpQixFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDN0YsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFFbEYsT0FBTyxFQUFDLFNBQVMsRUFBUyxPQUFPLEVBQVEsTUFBTSxRQUFRLENBQUM7QUFDeEQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQzNELE9BQU8sRUFBQyxnQkFBZ0IsRUFBa0IsTUFBTSxvQ0FBb0MsQ0FBQztBQUNyRixPQUFPLEVBQUMsaUJBQWlCLEVBQWtCLE1BQU0scUNBQXFDLENBQUM7QUFFdkYsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFFOUMsTUFLYSwwQkFBMkIsU0FBUSxlQUFlO0lBdUIzRCxZQUNXLEdB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UUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFHRCxJQUFJLE9BQU8sQ0FBQyxJQUFJO1FBQ1osSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDekIsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFLO1FBQ2IsSUFBSSxDQUFDLFFBQVEsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVDLENBQUM7K0dBL01RLDBCQUEwQixpSEEyQnZCLGlCQUFpQixhQUNqQixnQkFBZ0IsYUFDaEIsaUJBQWlCO21HQTdCcEIsMEJBQTBCLG1PQXNCRCxxQkFBcUIsb0RDbEUzRCxxbUxBd0dBOztTRDVEYSwwQkFBMEI7NEZBQTFCLDBCQUEwQjtrQkFMdEMsU0FBUzsrQkFDSSxtQkFBbUI7OzBCQStCeEIsTUFBTTsyQkFBQyxpQkFBaUI7OzBCQUN4QixNQUFNOzJCQUFDLGdCQUFnQjs7MEJBQ3ZCLE1BQU07MkJBQUMsaUJBQWlCOzhGQTNCWCxRQUFRO3NCQUF6QixLQUFLO2dCQUNZLE1BQU07c0JBQXZCLEtBQUs7Z0JBQ0ksS0FBSztzQkFBZCxNQUFNO2dCQWtCbUQsWUFBWTtzQkFBckUsU0FBUzt1QkFBQyxjQUFjLEVBQUUsRUFBQyxJQUFJLEVBQUUscUJBQXFCLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICAgIENvcHlyaWdodCBOZXRGb3VuZHJ5IEluYy5cblxuICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG4gICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5pbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LCBPdXRwdXQsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29uZmlndXJhdGlvblNlcnZpY2V9IGZyb20gXCIuL2NvbmZpZ3VyYXRpb24uc2VydmljZVwiO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQge1NjaGVtYVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlcy9zY2hlbWEuc2VydmljZVwiO1xuaW1wb3J0IHtQcm9qZWN0YWJsZUZvcm19IGZyb20gXCIuLi9wcm9qZWN0YWJsZS1mb3JtLmNsYXNzXCI7XG5pbXBvcnQge0dyb3dsZXJTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vbWVzc2FnaW5nL2dyb3dsZXIuc2VydmljZVwiO1xuaW1wb3J0IHtFeHRlbnNpb25TZXJ2aWNlLCBTSEFSRURaX0VYVEVOU0lPTn0gZnJvbSBcIi4uLy4uL2V4dGVuZGFibGUvZXh0ZW5zaW9ucy1ub29wLnNlcnZpY2VcIjtcbmltcG9ydCB7Q29uZmlnRWRpdG9yQ29tcG9uZW50fSBmcm9tIFwiLi4vLi4vY29uZmlnLWVkaXRvci9jb25maWctZWRpdG9yLmNvbXBvbmVudFwiO1xuXG5pbXBvcnQge2Nsb25lRGVlcCwgZGVmZXIsIGlzRW1wdHksIHVuc2V0fSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHtHcm93bGVyTW9kZWx9IGZyb20gXCIuLi8uLi9tZXNzYWdpbmcvZ3Jvd2xlci5tb2RlbFwiO1xuaW1wb3J0IHtTRVRUSU5HU19TRVJWSUNFLCBTZXR0aW5nc1NlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlcy9zZXR0aW5ncy5zZXJ2aWNlXCI7XG5pbXBvcnQge1pJVElfREFUQV9TRVJWSUNFLCBaaXRpRGF0YVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlcy96aXRpLWRhdGEuc2VydmljZVwiO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XG5pbXBvcnQge0NvbmZpZ30gZnJvbSBcIi4uLy4uLy4uL21vZGVscy9jb25maWdcIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsaWItY29uZmlndXJhdGlvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NvbmZpZ3VyYXRpb24tZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY29uZmlndXJhdGlvbi1mb3JtLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ29uZmlndXJhdGlvbkZvcm1Db21wb25lbnQgZXh0ZW5kcyBQcm9qZWN0YWJsZUZvcm0gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgICBASW5wdXQoKSBvdmVycmlkZSBmb3JtRGF0YTogYW55ID0ge307XG4gICAgQElucHV0KCkgb3ZlcnJpZGUgZXJyb3JzOiBhbnkgPSB7fTtcbiAgICBAT3V0cHV0KCkgY2xvc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIG9wdGlvbnM6IGFueVtdID0gW107XG4gICAgaXNFZGl0aW5nID0gIWlzRW1wdHkodGhpcy5mb3JtRGF0YS5pZCk7XG4gICAgZm9ybVZpZXcgPSAnc2ltcGxlJztcbiAgICBmb3JtRGF0YUludmFsaWQgPSBmYWxzZTtcbiAgICBlZGl0TW9kZSA9IGZhbHNlO1xuICAgIGl0ZW1zOiBhbnkgPSBbXTtcbiAgICBzZWxlY3RlZFNjaGVtYTogYW55ID0gJyc7XG4gICAgYXNzb2NpYXRlZFNlcnZpY2VzID0gW107XG4gICAgYXNzb2NpYXRlZFNlcnZpY2VOYW1lcyA9IFtdO1xuICAgIHNlcnZpY2VzTG9hZGluZyA9IGZhbHNlO1xuICAgIHNldHRpbmdzOiBhbnkgPSB7fTtcbiAgICBzZWxlY3RlZENvbmZpZ1R5cGVJZCA9ICcnO1xuXG4gICAgb3ZlcnJpZGUgZW50aXR5VHlwZSA9ICdjb25maWdzJztcbiAgICBvdmVycmlkZSBlbnRpdHlDbGFzcyA9IENvbmZpZztcblxuICAgIEBWaWV3Q2hpbGQoXCJjb25maWdFZGl0b3JcIiwge3JlYWQ6IENvbmZpZ0VkaXRvckNvbXBvbmVudH0pIGNvbmZpZ0VkaXRvciE6IENvbmZpZ0VkaXRvckNvbXBvbmVudDtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHN2YzogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgc2NoZW1hU3ZjOiBTY2hlbWFTZXJ2aWNlLFxuICAgICAgICBncm93bGVyU2VydmljZTogR3Jvd2xlclNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoU0hBUkVEWl9FWFRFTlNJT04pIGV4dFNlcnZpY2U6IEV4dGVuc2lvblNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoU0VUVElOR1NfU0VSVklDRSkgcHVibGljIHNldHRpbmdzU2VydmljZTogU2V0dGluZ3NTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KFpJVElfREFUQV9TRVJWSUNFKSBvdmVycmlkZSB6aXRpU2VydmljZTogWml0aURhdGFTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgIHByb3RlY3RlZCBvdmVycmlkZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGdyb3dsZXJTZXJ2aWNlLCBleHRTZXJ2aWNlLCB6aXRpU2VydmljZSwgcm91dGVyLCByb3V0ZSk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMuc2V0dGluZ3NTZXJ2aWNlLnNldHRpbmdzQ2hhbmdlLnN1YnNjcmliZSgocmVzdWx0czphbnkpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2V0dGluZ3MgPSByZXN1bHRzO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBlbnRpdHlVcGRhdGVkKCkge1xuICAgICAgICBpZiAoaXNFbXB0eSh0aGlzLmZvcm1EYXRhPy5kYXRhKSkge1xuICAgICAgICAgICAgdGhpcy5mb3JtRGF0YS5kYXRhID0ge307XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRW1wdHkodGhpcy5mb3JtRGF0YT8uY29uZmlnVHlwZUlkKSkge1xuICAgICAgICAgICAgdGhpcy5mb3JtRGF0YS5jb25maWdUeXBlSWQgPSAnJztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNlbGVjdGVkQ29uZmlnVHlwZUlkID0gdGhpcy5mb3JtRGF0YS5jb25maWdUeXBlSWQ7XG4gICAgICAgIHRoaXMuaW5pdERhdGEgPSBjbG9uZURlZXAodGhpcy5mb3JtRGF0YSk7XG4gICAgICAgIHRoaXMuc3ZjLmNvbmZpZ0pzb25WaWV3ID0gZmFsc2U7XG4gICAgICAgIC8vdGhpcy5nZXRBc3NvY2lhdGVkU2VydmljZXMoKTtcbiAgICAgICAgdGhpcy5zdmMuZ2V0Q29uZmlnVHlwZXMoKVxuICAgICAgICAgICAgLnRoZW4oY29uZmlnVHlwZXMgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub3B0aW9ucyA9IGNvbmZpZ1R5cGVzLnNvcnQoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmdldFNjaGVtYSgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuaXNFZGl0aW5nID0gIWlzRW1wdHkodGhpcy5mb3JtRGF0YS5pZCk7XG4gICAgICAgIGlmICh0aGlzLmNvbmZpZ1R5cGVFbXB0eSkge1xuICAgICAgICAgICAgdGhpcy5mb3JtRGF0YS5jb25maWdUeXBlSWQgPSAnJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldEFzc29jaWF0ZWRTZXJ2aWNlcygpIHtcbiAgICAgICAgdGhpcy5zdmMuZ2V0QXNzb2NpYXRlZFNlcnZpY2VzKHRoaXMuZm9ybURhdGEuaWQpLnRoZW4oKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hc3NvY2lhdGVkU2VydmljZXMgPSByZXN1bHQuYXNzb2NpYXRlZFNlcnZpY2VzO1xuICAgICAgICAgICAgdGhpcy5hc3NvY2lhdGVkU2VydmljZU5hbWVzID0gcmVzdWx0LmFzc29jaWF0ZWRTZXJ2aWNlTmFtZXM7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsZWFyRm9ybSgpO1xuICAgIH1cblxuICAgIGdldCBjb25maWdUeXBlRW1wdHkoKSB7XG4gICAgICAgIHJldHVybiBpc0VtcHR5KHRoaXMuZm9ybURhdGEuY29uZmlnVHlwZUlkKTtcbiAgICB9XG5cbiAgICBoZWFkZXJBY3Rpb25SZXF1ZXN0ZWQoZXZlbnQpIHtcbiAgICAgICAgc3dpdGNoKGV2ZW50Lm5hbWUpIHtcbiAgICAgICAgICAgIGNhc2UgJ3NhdmUnOlxuICAgICAgICAgICAgICAgIHRoaXMuc2F2ZShldmVudCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdjbG9zZSc6XG4gICAgICAgICAgICAgICAgdGhpcy5yZXR1cm5Ub0xpc3RQYWdlKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICd0b2dnbGUtdmlldyc6XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtVmlldyA9IGV2ZW50LmRhdGE7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvdmVycmlkZSBjbGVhcigpIHtcbiAgICAgICAgdGhpcy5mb3JtRGF0YS5jb25maWdUeXBlSWQgPSAnJztcbiAgICAgICAgdGhpcy5jbGVhckZvcm0oKTtcbiAgICB9XG5cbiAgICBjbGVhckZvcm0oKSB7XG4gICAgICAgIHRoaXMuaXRlbXMuZm9yRWFjaCgoaXRlbTogYW55KSA9PiB7XG4gICAgICAgICAgICBpZiAoaXRlbT8uY29tcG9uZW50KSBpdGVtLmNvbXBvbmVudC5kZXN0cm95KCk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmVycm9ycyA9IHt9O1xuICAgICAgICB0aGlzLml0ZW1zID0gW107XG4gICAgICAgIHRoaXMuZm9ybURhdGEgPSB7fTtcbiAgICAgICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9uKSB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIGFzeW5jIHNhdmUoZXZlbnQ/OiBhbnkpIHtcbiAgICAgICAgdGhpcy5lcnJvcnMgPSB7fTtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5jb25maWdFZGl0b3IuZ2V0Q29uZmlnRGF0YUZyb21Gb3JtKCk7XG4gICAgICAgIH0gY2F0Y2ggKGVycil7XG4gICAgICAgICAgICBjb25zdCBncm93bGVyRGF0YSA9IG5ldyBHcm93bGVyTW9kZWwoXG4gICAgICAgICAgICAgICAgJ2Vycm9yJyxcbiAgICAgICAgICAgICAgICAnRXJyb3InLFxuICAgICAgICAgICAgICAgIGBFcnJvciBHZXR0aW5nIENvbmZpZyBEYXRhYCxcbiAgICAgICAgICAgICAgICAnRXJyb3IgZ2V0dGluZyBjb25maWd1cmF0aW9uIGRhdGEgZnJvbSBmcm9tLicsXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5ncm93bGVyU2VydmljZS5zaG93KGdyb3dsZXJEYXRhKTtcbiAgICAgICAgICAgIHRocm93IGVycjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMudmFsaWRhdGUoKSkge1xuICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjb25maWdJZCA9IGF3YWl0IHRoaXMuc3ZjLnNhdmUodGhpcy5mb3JtRGF0YSkudGhlbigocmVzdWx0KSA9PiB7XG4gICAgICAgICAgICBpZiAoIWlzRW1wdHkocmVzdWx0Py5pZCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1EYXRhID0gcmVzdWx0O1xuICAgICAgICAgICAgICAgIHRoaXMuaW5pdERhdGEgPSB0aGlzLmZvcm1EYXRhO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdD8uaWQ7XG4gICAgICAgIH0pLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChjb25maWdJZCkge1xuICAgICAgICAgICAgdGhpcy5pbml0RGF0YSA9IHRoaXMuZm9ybURhdGE7XG4gICAgICAgICAgICB0aGlzLl9kYXRhQ2hhbmdlID0gZmFsc2U7XG4gICAgICAgICAgICBpZiAodGhpcy5pc01vZGFsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZU1vZGFsKHRydWUsIHRydWUpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJldHVyblRvTGlzdFBhZ2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICB2YWxpZGF0ZSgpIHtcbiAgICAgICAgdGhpcy5lcnJvcnMgPSB7fTtcbiAgICAgICAgdGhpcy5jb25maWdFZGl0b3IudmFsaWRhdGVDb25maWcoKTtcbiAgICAgICAgaWYgKGlzRW1wdHkodGhpcy5mb3JtRGF0YS5uYW1lKSkge1xuICAgICAgICAgICAgdGhpcy5lcnJvcnNbJ25hbWUnXSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRW1wdHkodGhpcy5mb3JtRGF0YS5jb25maWdUeXBlSWQpKSB7XG4gICAgICAgICAgICB0aGlzLmVycm9yc1snY29uZmlnVHlwZUlkJ10gPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmICghaXNFbXB0eSh0aGlzLmVycm9ycykpIHtcbiAgICAgICAgICAgIGNvbnN0IGdyb3dsZXJEYXRhID0gbmV3IEdyb3dsZXJNb2RlbChcbiAgICAgICAgICAgICAgICAnZXJyb3InLFxuICAgICAgICAgICAgICAgICdFcnJvcicsXG4gICAgICAgICAgICAgICAgYEVycm9yIFZhbGlkYXRpbmcgQ29uZmlnYCxcbiAgICAgICAgICAgICAgICAnVGhlIGVudGVyZWQgY29uZmlndXJhdGlvbiBpcyBpbnZhbGlkLiBQbGVhc2UgdXBkYXRlIG1pc3NpbmcvaW52YWxpZCBmaWVsZHMgYW5kIHRyeSBhZ2Fpbi4nLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHRoaXMuZ3Jvd2xlclNlcnZpY2Uuc2hvdyhncm93bGVyRGF0YSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGlzRW1wdHkodGhpcy5lcnJvcnMpO1xuICAgIH1cbiAgICBnZXQgc2F2ZUJ1dHRvblRvb2x0aXAoKSB7XG4gICAgICAgIGlmICh0aGlzLmZvcm1EYXRhSW52YWxpZCkge1xuICAgICAgICAgICAgcmV0dXJuICdDb25maWcgZGF0YSBpcyBpbnZhbGlkLiBQbGVhc2UgdXBkYXRlIGFuZCB0cnkgYWdhaW4uJ1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuICdDb21wbGV0ZSBhbmQgYXR0YWNoIGNvbmZpZyBkZWZpbml0aW9uLCBvciByZW1vdmUgYmVmb3JlIHNhdmluZyc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRTY2hlbWEoKSB7XG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkQ29uZmlnVHlwZUlkICE9PSB0aGlzLmZvcm1EYXRhLmNvbmZpZ1R5cGVJZCkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZENvbmZpZ1R5cGVJZCA9IHRoaXMuZm9ybURhdGEuY29uZmlnVHlwZUlkO1xuICAgICAgICAgICAgdGhpcy5mb3JtRGF0YS5kYXRhID0ge307XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zdmMuZ2V0U2NoZW1hKHRoaXMuZm9ybURhdGEuY29uZmlnVHlwZUlkKS50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRTY2hlbWEgPSByZXN1bHQ7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldCBhcGlDYWxsVVJMKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zZXR0aW5ncy5zZWxlY3RlZEVkZ2VDb250cm9sbGVyICsgJy9lZGdlL21hbmFnZW1lbnQvdjEvY29uZmlncycgKyAodGhpcy5mb3JtRGF0YS5pZCA/IGAvJHt0aGlzLmZvcm1EYXRhLmlkfWAgOiAnJyk7XG4gICAgfVxuXG4gICAgZ2V0IGFwaURhdGEoKTogYW55IHtcbiAgICAgICAgY29uc3QgZGF0YTogYW55ID0ge1xuICAgICAgICAgICAgbmFtZTogdGhpcy5mb3JtRGF0YT8ubmFtZSB8fCAnJyxcbiAgICAgICAgICAgIGNvbmZpZ1R5cGVJZDogdGhpcy5mb3JtRGF0YT8uY29uZmlnVHlwZUlkIHx8ICcnLFxuICAgICAgICAgICAgZGF0YTogdGhpcy5mb3JtRGF0YT8uZGF0YSB8fCB7fSxcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5fYXBpRGF0YSA9IGRhdGE7XG4gICAgICAgIHJldHVybiB0aGlzLl9hcGlEYXRhO1xuICAgIH1cblxuICAgIF9hcGlEYXRhOiBhbnkgPSB7fTtcbiAgICBzZXQgYXBpRGF0YShkYXRhKSB7XG4gICAgICAgIHRoaXMuX2FwaURhdGEgPSBkYXRhO1xuICAgIH1cblxuICAgIGRhdGFDaGFuZ2VkKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuX2FwaURhdGEgPSBjbG9uZURlZXAodGhpcy5hcGlEYXRhKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicHJvamVjdGFibGUtZm9ybS13cmFwcGVyXCJcbiAgICAgKGtleXVwLmVudGVyKT1cInNhdmUoJGV2ZW50KVwiXG4gICAgIChrZXl1cC5lc2NhcGUpPVwiY2xvc2VNb2RhbChmYWxzZSlcIlxuICAgICB0YWJpbmRleD1cIjBcIlxuPlxuICAgIDxsaWItZm9ybS1oZWFkZXJcbiAgICAgICAgICAgIFtkYXRhXT1cImZvcm1EYXRhXCJcbiAgICAgICAgICAgIFt0aXRsZV09XCIoZm9ybURhdGEuaWQgPyAnRWRpdCBDb25maWcnIDogJ0NyZWF0ZSBDb25maWcnKVwiXG4gICAgICAgICAgICBbbW9yZUFjdGlvbnNdPVwiZm9ybURhdGEubW9yZUFjdGlvbnNcIlxuICAgICAgICAgICAgKGFjdGlvblJlcXVlc3RlZCk9XCJoZWFkZXJBY3Rpb25SZXF1ZXN0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICBbKGZvcm1WaWV3KV09XCJmb3JtVmlld1wiXG4gICAgICAgICAgICBbc2F2ZURpc2FibGVkXT1cInN2Yy5zYXZlRGlzYWJsZWQgfHwgZm9ybURhdGFJbnZhbGlkXCJcbiAgICAgICAgICAgIFtzYXZlVG9vbHRpcF09XCJzYXZlQnV0dG9uVG9vbHRpcFwiXG4gICAgPjwvbGliLWZvcm0taGVhZGVyPlxuICAgIDxkaXYgY2xhc3M9XCJjb25maWctZm9ybS1jb250YWluZXIgcHJvamVjdGFibGUtZm9ybS1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInByb2plY3RhYmxlLWZvcm0tbWFpbi1jb2x1bW4gZm9ybS1ncm91cC1yb3dcIiBbaGlkZGVuXT1cImZvcm1WaWV3ICE9PSAnc2ltcGxlJ1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAtY29sdW1uIHRocmVlLWZpZnRoc1wiPlxuICAgICAgICAgICAgICAgIDxsaWItZm9ybS1maWVsZC1jb250YWluZXIgW3RpdGxlXT1cIidDb25maWcgTmFtZSdcIiBbbGFiZWxdPVwiJ1JlcXVpcmVkJ1wiPlxuICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiQ29uZmlnTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhsZW5ndGg9XCI1MDBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJOYW1lIHRoaXMgY29uZmlnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntlcnJvcjogZXJyb3JzWyduYW1lJ119XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZm9ybURhdGEubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoa2V5dXApPVwiYXBpRGF0YSgpXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvbGliLWZvcm0tZmllbGQtY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDxsaWItZm9ybS1maWVsZC1jb250YWluZXIgW3Nob3dIZWFkZXJdPVwiZmFsc2VcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbmZpZy10aXRsZS1yb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZm9ybS1maWVsZC10aXRsZVwiPkNvbmZpZ3VyYXRpb24gRGF0YTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWhlYWRlci10b2dnbGUtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidG9nZ2xlLW9wdGlvbi10ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsndG9nZ2xlLW9wdGlvbi1zZWxlY3RlZCc6ICFzdmMuY29uZmlnSnNvblZpZXd9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzdmMudG9nZ2xlSlNPTlZpZXcoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGT1JNXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWhlYWRlci10b2dnbGVcIiAoY2xpY2spPVwic3ZjLnRvZ2dsZUpTT05WaWV3KClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS10b2dnbGUtc3dpdGNoXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J3RvZ2dsZS1sZWZ0JzogIXN2Yy5jb25maWdKc29uVmlldywgJ3RvZ2dsZS1yaWdodCc6IHN2Yy5jb25maWdKc29uVmlld31cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS10b2dnbGUtaW5kaWNhdG9yXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS10b2dnbGUtaW5kaWNhdG9yXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRvZ2dsZS1vcHRpb24tdGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J3RvZ2dsZS1vcHRpb24tc2VsZWN0ZWQnOiBzdmMuY29uZmlnSnNvblZpZXd9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzdmMudG9nZ2xlSlNPTlZpZXcoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKU09OXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1maWVsZC1pbnB1dC1ncm91cFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbmZpZy10aXRsZS1yb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZvcm0tZmllbGQtdGl0bGVcIj57e2lzRWRpdGluZyA/ICdDb25maWcgVHlwZScgOiAnU2VsZWN0IGEgQ29uZmlnIFR5cGUnfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWxlY3RcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJDb25maWdUeXBlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY29uZmlnLXR5cGUtc2VsZWN0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJmb3JtRGF0YS5jb25maWdUeXBlSWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cImdldFNjaGVtYSgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie2Rpc2FibGVkOiBpc0VkaXRpbmcsIGVycm9yOiBlcnJvcnNbJ2NvbmZpZ1R5cGVJZCddfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPlNlbGVjdCBBIFR5cGUuLi48L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBjb25maWcgb2Ygb3B0aW9uc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiY29uZmlnLmlkXCI+e3tjb25maWcubmFtZX19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NlbGVjdD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaWItY29uZmlnLWVkaXRvclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaGlkZGVuXT1cImNvbmZpZ1R5cGVFbXB0eVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY2hlbWFdPVwic2VsZWN0ZWRTY2hlbWFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKGNvbmZpZ0RhdGEpXT1cImZvcm1EYXRhLmRhdGFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0pzb25WaWV3XT1cInN2Yy5jb25maWdKc29uVmlld1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsoY29uZmlnRXJyb3JzKV09XCJlcnJvcnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29uZmlnRGF0YUNoYW5nZSk9XCJkYXRhQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2NvbmZpZ0VkaXRvclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvbGliLWNvbmZpZy1lZGl0b3I+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvbGliLWZvcm0tZmllbGQtY29udGFpbmVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC1jb2x1bW4gdHdvLWZpZnRoc1wiPlxuICAgICAgICAgICAgICAgIDxsaWItZm9ybS1maWVsZC1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCInQVBJIENhbGxzJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJydcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tcm93XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWZpZWxkLWlucHV0XCIgW3ZhbHVlXT1cImFwaUNhbGxVUkxcIiByZWFkb25seS8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidXJsLWNvcHkgaWNvbi1jb3B5IGNvcHlcIiAoY2xpY2spPVwiY29weVRvQ2xpcGJvYXJkKGFwaUNhbGxVUkwpXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8bGliLWpzb24tdmlldyAqbmdJZj1cImZvcm1EYXRhXCIgWyhkYXRhKV09XCJfYXBpRGF0YVwiIFtyZWFkT25seV09XCJ0cnVlXCIgW3Nob3dDb3B5XT1cInRydWVcIj48L2xpYi1qc29uLXZpZXc+XG4gICAgICAgICAgICAgICAgPC9saWItZm9ybS1maWVsZC1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwLWNvbHVtblwiICpuZ0lmPVwiZm9ybVZpZXcgPT09ICdyYXcnXCI+XG4gICAgICAgICAgICA8bGliLWpzb24tdmlldyAqbmdJZj1cImZvcm1EYXRhXCIgWyhkYXRhKV09XCJmb3JtRGF0YVwiPjwvbGliLWpzb24tdmlldz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxsaWItbG9hZGluZy1pbmRpY2F0b3IgKm5nSWY9XCJpc0xvYWRpbmdcIiBbaXNMb2FkaW5nXT1cImlzTG9hZGluZ1wiPjwvbGliLWxvYWRpbmctaW5kaWNhdG9yPlxuIl19
|