ngx-rs-ant 2.2.9 → 2.3.1
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/data-grid/data-grid.factory.d.ts +2 -1
- package/data-grid/data-grid.service.d.ts +4 -4
- package/esm2020/data-grid/data-grid.component.mjs +2 -2
- package/esm2020/data-grid/data-grid.factory.mjs +9 -38
- package/esm2020/data-grid/data-grid.service.mjs +13 -9
- package/fesm2015/ngx-rs-ant.mjs +21 -46
- package/fesm2015/ngx-rs-ant.mjs.map +1 -1
- package/fesm2020/ngx-rs-ant.mjs +21 -46
- package/fesm2020/ngx-rs-ant.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import CustomStore from "devextreme/data/custom_store";
|
|
2
2
|
import { Observable } from "rxjs";
|
|
3
3
|
import { HttpClient } from "@angular/common/http";
|
|
4
|
+
import { DataGridComponent } from "./data-grid.component";
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
export declare class DataGridFactory {
|
|
6
7
|
private http;
|
|
7
8
|
constructor(http: HttpClient);
|
|
8
9
|
private service;
|
|
9
10
|
private typeMap;
|
|
10
|
-
makeDataGridColumns(tenant: any, className: any, view: any): Observable<any>;
|
|
11
|
+
makeDataGridColumns(tenant: any, className: any, view: any, dataGridInstance: DataGridComponent): Observable<any>;
|
|
11
12
|
makeDataGridDataSource(tenant: any, className: any, view: any, extraFilter: any, keyExpr?: string, dataGridName?: string): CustomStore;
|
|
12
13
|
static ɵfac: i0.ɵɵFactoryDeclaration<DataGridFactory, never>;
|
|
13
14
|
static ɵprov: i0.ɵɵInjectableDeclaration<DataGridFactory>;
|
|
@@ -14,10 +14,10 @@ export declare class DataGridService {
|
|
|
14
14
|
totalCount: any;
|
|
15
15
|
}>;
|
|
16
16
|
getConstraintEntries(tenant: any, name: string): Observable<any>;
|
|
17
|
-
getUserColumnDataSource(tenant: any, className: any, view: any, field: any): Observable<any>;
|
|
18
|
-
getUnitColumnDataSource(tenant: any, className: any, view: any, field: any): Observable<any>;
|
|
19
|
-
getConstraintColumnDataSource(tenant: any, className: any, view: any, field: any, constraintName: any): Observable<any>;
|
|
20
|
-
getColumnDataSource(tenant: any, className: any, view: any, field: any): Observable<any>;
|
|
17
|
+
getUserColumnDataSource(tenant: any, className: any, view: any, field: any, filter: any): Observable<any>;
|
|
18
|
+
getUnitColumnDataSource(tenant: any, className: any, view: any, field: any, filter: any): Observable<any>;
|
|
19
|
+
getConstraintColumnDataSource(tenant: any, className: any, view: any, field: any, constraintName: any, filter: any): Observable<any>;
|
|
20
|
+
getColumnDataSource(tenant: any, className: any, view: any, field: any, filter: any): Observable<any>;
|
|
21
21
|
static ɵfac: i0.ɵɵFactoryDeclaration<DataGridService, never>;
|
|
22
22
|
static ɵprov: i0.ɵɵInjectableDeclaration<DataGridService>;
|
|
23
23
|
}
|
|
@@ -56,7 +56,7 @@ export class DataGridComponent {
|
|
|
56
56
|
}
|
|
57
57
|
reload() {
|
|
58
58
|
this.columns.length = 0;
|
|
59
|
-
this.factory.makeDataGridColumns(this.tenant, this.className, this.view).subscribe(columns => {
|
|
59
|
+
this.factory.makeDataGridColumns(this.tenant, this.className, this.view, this).subscribe(columns => {
|
|
60
60
|
if (this.customColumnFn) {
|
|
61
61
|
this.customColumnFn(columns);
|
|
62
62
|
}
|
|
@@ -201,4 +201,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
201
201
|
type: ContentChild,
|
|
202
202
|
args: [CustomTemplateDirective]
|
|
203
203
|
}] } });
|
|
204
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ycy1hbnQvc3JjL2RhdGEtZ3JpZC9kYXRhLWdyaWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJzLWFudC9zcmMvZGF0YS1ncmlkL2RhdGEtZ3JpZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQW1CLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUU3RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNkJBQTZCLENBQUM7Ozs7Ozs7Ozs7QUFRcEUsTUFBTSxPQUFPLGlCQUFpQjtJQTZENUIsWUFBb0IsT0FBd0IsRUFBWSxPQUF3QixFQUFVLGdCQUFrQztRQUF4RyxZQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUFZLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBQVUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTNENUgsV0FBTSxHQUFTLEdBQUcsQ0FBQztRQVVuQixZQUFPLEdBQVcsRUFBRSxDQUFDLENBQUMsa0NBQWtDO1FBTXhELGlCQUFZLEdBQVksS0FBSyxDQUFDLENBQUMsOEJBQThCO1FBRTdELGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIscUJBQWdCLEdBQWEsQ0FB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Q2hpbGQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQsIFZpZXdDb250YWluZXJSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0R4RGF0YUdyaWRDb21wb25lbnR9IGZyb20gXCJkZXZleHRyZW1lLWFuZ3VsYXJcIjtcclxuaW1wb3J0IHtEYXRhR3JpZFNlcnZpY2V9IGZyb20gXCIuL2RhdGEtZ3JpZC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7Um93QnV0dG9uc1RlbXBsYXRlRGlyZWN0aXZlfSBmcm9tIFwiLi9yb3ctYnV0dG9ucy10ZW1wbGF0ZS5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHtEYXRhR3JpZEZhY3Rvcnl9IGZyb20gXCIuL2RhdGEtZ3JpZC5mYWN0b3J5XCI7XHJcbmltcG9ydCB7ZGVib3VuY2VUaW1lfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge25vdGlmeUVycm9yfSBmcm9tIFwiLi4vdXRpbC91dGlsc1wiO1xyXG5pbXBvcnQge0N1c3RvbVRlbXBsYXRlRGlyZWN0aXZlfSBmcm9tIFwiLi9jdXN0b20tdGVtcGxhdGUuZGlyZWN0aXZlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3JzLWRhdGEtZ3JpZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtZ3JpZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZGF0YS1ncmlkLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbRGF0YUdyaWRTZXJ2aWNlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGF0YUdyaWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpXHJcbiAgdGVuYW50PzogYW55ID0gJ1QnO1xyXG4gIEBJbnB1dCgpXHJcbiAgY2xhc3NOYW1lITogYW55O1xyXG4gIEBJbnB1dCgpXHJcbiAgdmlldz86IGFueTtcclxuICBASW5wdXQoKVxyXG4gIGZpbHRlcj86IEFycmF5PGFueT4gfCBzdHJpbmc7XHJcbiAgQElucHV0KClcclxuICBjdXN0b21Db2x1bW5Gbj86IChjb2x1bW5zOiBhbnlbXSkgPT4gdm9pZDtcclxuICBASW5wdXQoKVxyXG4gIGtleUV4cHI6IHN0cmluZyA9ICcnOyAvLyDnlKjkuo7lrp7kvovlsZ7mgKfpgInmi6nlmajvvIzliqDovb3nu4Tku7blgLzml7bku6XpgInkuK3lrZfmrrXkuLrkuLvplK7ojrflj5bpgInkuK3ooYzmlbDmja5cclxuICBASW5wdXQoKVxyXG4gIGRhdGFHcmlkTmFtZT86IHN0cmluZzsgLy8g55So5LqO5Zyo6I635Y+W5pWw5o2u5pe25ZCM5pe26I635Y+W5Y+w6LSm6YWN572u55qE6KGM5YaF5oyJ6ZKuXHJcbiAgQElucHV0KClcclxuICBoZWlnaHQ6IGFueTtcclxuICBASW5wdXQoKVxyXG4gIG9ubHlGcm9udEVuZDogYm9vbGVhbiA9IGZhbHNlOyAvLyDku4XliY3nq6/vvIzpnIDmjIflrppkYXRhU291cmNl77yM5LiN6Ieq5Yqo6I635Y+W6KGo5qC85pWw5o2uXHJcbiAgQElucHV0KClcclxuICBwYWdlU2l6ZTogbnVtYmVyID0gMTU7XHJcbiAgYWxsb3dlZFBhZ2VTaXplczogbnVtYmVyW10gPSBbMTUsIDMwLCA1MF07XHJcbiAgQElucHV0KClcclxuICBkaXNhYmxlUGFnZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgZGF0YVNvdXJjZTogYW55ID0ge307XHJcbiAgQElucHV0KClcclxuICBzZWxlY3Rpb25Nb2RlOiAnbm9uZScgfCAnbXVsdGlwbGUnIHwgJ3NpbmdsZScgPSAnbm9uZSc7XHJcbiAgQElucHV0KClcclxuICBzZWxlY3RlZFJvd0tleXM6IGFueVtdID0gW107XHJcbiAgQE91dHB1dCgpXHJcbiAgc2VsZWN0ZWRSb3dLZXlzQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcclxuICBASW5wdXQoKVxyXG4gIHNob3dSb3dOdW06IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpXHJcbiAgaW5zdGFuY2VMaW5rVHlwZTogJ3RhYicgfCAnZHJhd2VyJyB8ICdub25lJyA9ICd0YWInO1xyXG4gIEBJbnB1dCgpXHJcbiAgZHJhd2VySW5zdGFuY2VMaW5rVmlld0NvbnRhaW5lclJlZjogYW55ID0gdGhpcy52aWV3Q29udGFpbmVyUmVmO1xyXG4gIEBJbnB1dCgpXHJcbiAgZHJhd2VySW5zdGFuY2VMaW5rU2l6ZTogJ2RlZmF1bHQnIHwgJ2xhcmdlJyB8IHN0cmluZyA9ICdkZWZhdWx0JztcclxuICBASW5wdXQoKVxyXG4gIGRyYXdlckluc3RhbmNlTGlua1Nob3dIZWFkZXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIGRyYXdlckluc3RhbmNlTGlua0Zvcm1UZW1wbGF0ZTogYW55O1xyXG4gIEBPdXRwdXQoKVxyXG4gIG9uQ2VsbFByZXBhcmVkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpXHJcbiAgb25Db250ZW50UmVhZHkgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KClcclxuICBvbkVkaXRvclByZXBhcmluZyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKVxyXG4gIG9uUm93Q2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KClcclxuICBvblJvd0RibENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpXHJcbiAgb25TZWxlY3Rpb25DaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQFZpZXdDaGlsZChEeERhdGFHcmlkQ29tcG9uZW50LCB7c3RhdGljOiB0cnVlfSkgcHJpdmF0ZSBkeERhdGFHcmlkITogRHhEYXRhR3JpZENvbXBvbmVudDtcclxuICBAQ29udGVudENoaWxkKFJvd0J1dHRvbnNUZW1wbGF0ZURpcmVjdGl2ZSkgcHJvdGVjdGVkIHJvd0J1dHRvbnNUZW1wbGF0ZSE6IFJvd0J1dHRvbnNUZW1wbGF0ZURpcmVjdGl2ZTtcclxuICBAQ29udGVudENoaWxkKEN1c3RvbVRlbXBsYXRlRGlyZWN0aXZlKSBwcm90ZWN0ZWQgY3VzdG9tVGVtcGxhdGUhOiBDdXN0b21UZW1wbGF0ZURpcmVjdGl2ZTtcclxuICBjb2x1bW5zOiBhbnlbXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZhY3Rvcnk6IERhdGFHcmlkRmFjdG9yeSwgcHJvdGVjdGVkIHNlcnZpY2U6IERhdGFHcmlkU2VydmljZSwgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGlmICh0aGlzLnBhZ2VTaXplICYmICF0aGlzLmFsbG93ZWRQYWdlU2l6ZXMuaW5jbHVkZXModGhpcy5wYWdlU2l6ZSkpIHtcclxuICAgICAgdGhpcy5hbGxvd2VkUGFnZVNpemVzLnB1c2godGhpcy5wYWdlU2l6ZSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnJlbG9hZCgpO1xyXG4gICAgdGhpcy5zZXJ2aWNlLmNlbGxUZW1wbGF0ZUxvYWRlZCQucGlwZShkZWJvdW5jZVRpbWUoMTAwKSkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgKDxhbnk+dGhpcy5keERhdGFHcmlkLmluc3RhbmNlKS5yZXNpemUoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLnNlcnZpY2UuY2VsbFRlbXBsYXRlTG9hZGVkJC51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgcmVsb2FkKCkge1xyXG4gICAgdGhpcy5jb2x1bW5zLmxlbmd0aCA9IDA7XHJcbiAgICB0aGlzLmZhY3RvcnkubWFrZURhdGFHcmlkQ29sdW1ucyh0aGlzLnRlbmFudCwgdGhpcy5jbGFzc05hbWUsIHRoaXMudmlldykuc3Vic2NyaWJlKGNvbHVtbnMgPT4ge1xyXG4gICAgICBpZiAodGhpcy5jdXN0b21Db2x1bW5Gbikge1xyXG4gICAgICAgIHRoaXMuY3VzdG9tQ29sdW1uRm4oY29sdW1ucyk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuaW5zdGFuY2VMaW5rVHlwZSA9PT0gJ3RhYicgfHwgdGhpcy5pbnN0YW5jZUxpbmtUeXBlID09PSAnZHJhd2VyJykge1xyXG4gICAgICAgIGNvbHVtbnMudW5zaGlmdCh7XHJcbiAgICAgICAgICBjYXB0aW9uOiAn6K+m5oOFJyxcclxuICAgICAgICAgIGZpeGVkOiB0cnVlLFxyXG4gICAgICAgICAgd2lkdGg6IDQ4LFxyXG4gICAgICAgICAgYWxpZ25tZW50OiAnY2VudGVyJyxcclxuICAgICAgICAgIGNlbGxUZW1wbGF0ZTogJ2luc3RhbmNlTGlua1RlbXBsYXRlJyxcclxuICAgICAgICAgIHJlbmRlckFzeW5jOiB0cnVlXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuc2hvd1Jvd051bSkge1xyXG4gICAgICAgIGNvbHVtbnMudW5zaGlmdCh7XHJcbiAgICAgICAgICBjYXB0aW9uOiAn6KGM5Y+3JyxcclxuICAgICAgICAgIGZpeGVkOiB0cnVlLFxyXG4gICAgICAgICAgd2lkdGg6IDQ4LFxyXG4gICAgICAgICAgYWxpZ25tZW50OiAnY2VudGVyJyxcclxuICAgICAgICAgIGNlbGxUZW1wbGF0ZTogJ3Jvd0luZGV4VGVtcGxhdGUnLFxyXG4gICAgICAgICAgcmVuZGVyQXN5bmM6IHRydWVcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmNvbHVtbnMgPSBjb2x1bW5zO1xyXG4gICAgICBpZiAodGhpcy5vbmx5RnJvbnRFbmQgJiYgdGhpcy5maWx0ZXIpIHtcclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLmZpbHRlcikpIHtcclxuICAgICAgICAgIHRoaXMuZHhEYXRhR3JpZC5pbnN0YW5jZS5maWx0ZXIodGhpcy5maWx0ZXIpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmR4RGF0YUdyaWQuaW5zdGFuY2UuZmlsdGVyKEpTT04ucGFyc2UodGhpcy5maWx0ZXIpKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgaWYgKHRoaXMub25seUZyb250RW5kKSB7XHJcbiAgICAgIGlmICh0aGlzLmRhdGFTb3VyY2UgJiYgIUFycmF5LmlzQXJyYXkodGhpcy5kYXRhU291cmNlKSkge1xyXG4gICAgICAgIG5vdGlmeUVycm9yKCflm6Bvbmx5RnJvbnRFbmTlj4LmlbDkuLp0cnVl77yM6ZyA6KaB5piO56Gu5oyH5a6aZGF0YVNvdXJjZeWPguaVsOS4uuaVsOe7hCcpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmRhdGFTb3VyY2UgPSB0aGlzLmZhY3RvcnkubWFrZURhdGFHcmlkRGF0YVNvdXJjZSh0aGlzLnRlbmFudCwgdGhpcy5jbGFzc05hbWUsIHRoaXMudmlldywgdGhpcy5maWx0ZXIsIHRoaXMua2V5RXhwciwgdGhpcy5kYXRhR3JpZE5hbWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0U2VsZWN0ZWRSb3dLZXlzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZHhEYXRhR3JpZC5pbnN0YW5jZS5nZXRTZWxlY3RlZFJvd0tleXMoKTtcclxuICB9XHJcblxyXG4gIGdldFNlbGVjdGVkUm93c0RhdGEoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5keERhdGFHcmlkLmluc3RhbmNlLmdldFNlbGVjdGVkUm93c0RhdGEoKTtcclxuICB9XHJcblxyXG4gIGdldENvbWJpbmVkRmlsdGVyKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZHhEYXRhR3JpZC5pbnN0YW5jZS5nZXRDb21iaW5lZEZpbHRlcihmYWxzZSk7XHJcbiAgfVxyXG5cclxuICByZWZyZXNoKGNhbGxiYWNrPzogYW55KSB7XHJcbiAgICB0aGlzLmR4RGF0YUdyaWQuaW5zdGFuY2UuY2xlYXJTZWxlY3Rpb24oKTtcclxuICAgIHRoaXMuZHhEYXRhR3JpZC5pbnN0YW5jZS5yZWZyZXNoKCkudGhlbigoKSA9PiB7XHJcbiAgICAgIGlmIChjYWxsYmFjaykge1xyXG4gICAgICAgIGNhbGxiYWNrKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25EeERhdGFHcmlkRWRpdG9yUHJlcGFyaW5nKCRldmVudDogYW55KSB7XHJcbiAgICBpZiAoJGV2ZW50LnBhcmVudFR5cGUgPT09ICdmaWx0ZXJSb3cnICYmICRldmVudC5lZGl0b3JOYW1lID09PSAnZHhUZXh0Qm94Jykge1xyXG4gICAgICAkZXZlbnQuZWRpdG9yT3B0aW9ucy52YWx1ZUNoYW5nZUV2ZW50ID0gJ2JsdXInO1xyXG4gICAgICAkZXZlbnQuZWRpdG9yT3B0aW9ucy5vbkVudGVyS2V5ID0gKGU6IGFueSkgPT4ge1xyXG4gICAgICAgIGUuY29tcG9uZW50LmJsdXIoKTtcclxuICAgICAgfTtcclxuICAgICAgJGV2ZW50LmVkaXRvck9wdGlvbnMub25QYXN0ZSA9IChlOiBhbnkpID0+IHtcclxuICAgICAgICBjb25zdCBpbnB1dEVsZW1lbnQgPSBlLmVsZW1lbnQucXVlcnlTZWxlY3RvcignaW5wdXQnKTtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgIGlucHV0RWxlbWVudC52YWx1ZSA9IGlucHV0RWxlbWVudC52YWx1ZT8udHJpbSgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgdGhpcy5vbkVkaXRvclByZXBhcmluZy5lbWl0KCRldmVudCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkeC1kYXRhLWdyaWQgW3Nob3dCb3JkZXJzXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgIFtzaG93Um93TGluZXNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgW3Nob3dDb2x1bW5MaW5lc109XCJ0cnVlXCJcclxuICAgICAgICAgICAgICBbaG92ZXJTdGF0ZUVuYWJsZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgW3Jvd0FsdGVybmF0aW9uRW5hYmxlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICBbY29sdW1uQXV0b1dpZHRoXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgIFthbGxvd0NvbHVtblJlc2l6aW5nXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgIGNvbHVtblJlc2l6aW5nTW9kZT1cIndpZGdldFwiXHJcbiAgICAgICAgICAgICAgZGF0ZVNlcmlhbGl6YXRpb25Gb3JtYXQ9XCJ5eXl5L01NL2RkIEhIOm1tOnNzXCJcclxuICAgICAgICAgICAgICBbc3luY0xvb2t1cEZpbHRlclZhbHVlc109XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZVwiXHJcbiAgICAgICAgICAgICAgW2NvbHVtbnNdPVwiY29sdW1uc1wiXHJcbiAgICAgICAgICAgICAgW2hlaWdodF09XCJoZWlnaHRcIlxyXG4gICAgICAgICAgICAgIFtrZXlFeHByXT1cImtleUV4cHJcIlxyXG4gICAgICAgICAgICAgIFtzZWxlY3RlZFJvd0tleXNdPVwic2VsZWN0ZWRSb3dLZXlzXCJcclxuICAgICAgICAgICAgICAoc2VsZWN0ZWRSb3dLZXlzQ2hhbmdlKT1cInNlbGVjdGVkUm93S2V5c0NoYW5nZS5lbWl0KCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChvbkNlbGxQcmVwYXJlZCk9XCJvbkNlbGxQcmVwYXJlZC5lbWl0KCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChvbkNvbnRlbnRSZWFkeSk9XCJvbkNvbnRlbnRSZWFkeS5lbWl0KCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChvbkVkaXRvclByZXBhcmluZyk9XCJvbkR4RGF0YUdyaWRFZGl0b3JQcmVwYXJpbmcoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgKG9uUm93Q2xpY2spPVwib25Sb3dDbGljay5lbWl0KCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChvblJvd0RibENsaWNrKT1cIm9uUm93RGJsQ2xpY2suZW1pdCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAob25TZWxlY3Rpb25DaGFuZ2VkKT1cIm9uU2VsZWN0aW9uQ2hhbmdlZC5lbWl0KCRldmVudClcIj5cclxuICA8ZHhvLXNvcnRpbmcgbW9kZT1cIm11bHRpcGxlXCI+PC9keG8tc29ydGluZz5cclxuICA8ZHhvLXNlbGVjdGlvbiBbbW9kZV09XCJzZWxlY3Rpb25Nb2RlXCIgc2VsZWN0QWxsTW9kZT1cInBhZ2VcIiBzaG93Q2hlY2tCb3hlc01vZGU9XCJhbHdheXNcIj48L2R4by1zZWxlY3Rpb24+XHJcbiAgPGR4by1oZWFkZXItZmlsdGVyIFt2aXNpYmxlXT1cIiFvbmx5RnJvbnRFbmRcIj5cclxuICAgIDxkeG8tc2VhcmNoIFtlbmFibGVkXT1cInRydWVcIj48L2R4by1zZWFyY2g+XHJcbiAgICA8ZHhvLXRleHRzIFtva109XCIn56Gu5a6aJ1wiPjwvZHhvLXRleHRzPlxyXG4gIDwvZHhvLWhlYWRlci1maWx0ZXI+XHJcbiAgPGR4by1maWx0ZXItcm93IFt2aXNpYmxlXT1cInRydWVcIj48L2R4by1maWx0ZXItcm93PlxyXG4gIDxkeG8tcmVtb3RlLW9wZXJhdGlvbnMgW2ZpbHRlcmluZ109XCIhb25seUZyb250RW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtzb3J0aW5nXT1cIiFvbmx5RnJvbnRFbmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BhZ2luZ109XCIhb25seUZyb250RW5kXCI+XHJcbiAgPC9keG8tcmVtb3RlLW9wZXJhdGlvbnM+XHJcbiAgPGR4by1wYWdpbmcgW2VuYWJsZWRdPVwiIWRpc2FibGVQYWdlXCIgW3BhZ2VTaXplXT1cInBhZ2VTaXplXCI+PC9keG8tcGFnaW5nPlxyXG4gIDxkeG8tcGFnZXIgW3Zpc2libGVdPVwiIWRpc2FibGVQYWdlXCJcclxuICAgICAgICAgICAgIFtzaG93SW5mb109XCJ0cnVlXCJcclxuICAgICAgICAgICAgIGluZm9UZXh0PVwi56ysezB96aG177yM5YWxezF96aG177yI5YWxezJ95Liq6aG555uu77yJXCJcclxuICAgICAgICAgICAgIFtzaG93UGFnZVNpemVTZWxlY3Rvcl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgIFthbGxvd2VkUGFnZVNpemVzXT1cImFsbG93ZWRQYWdlU2l6ZXNcIlxyXG4gID48L2R4by1wYWdlcj5cclxuICA8ZHhvLXNjcm9sbGluZyBzaG93U2Nyb2xsYmFyPVwiYWx3YXlzXCI+PC9keG8tc2Nyb2xsaW5nPlxyXG4gIDxkaXYgKmR4VGVtcGxhdGU9XCJsZXQgY2VsbEluZm8gb2YgJ3Jvd0luZGV4VGVtcGxhdGUnXCI+XHJcbiAgICB7eyBjZWxsSW5mby5yb3dJbmRleCArIDEgfX1cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpkeFRlbXBsYXRlPVwibGV0IGNlbGxJbmZvIG9mICdpbnN0YW5jZUxpbmtUZW1wbGF0ZSdcIj5cclxuICAgIDxycy1pbnN0YW5jZS1saW5rLXRlbXBsYXRlIFt0ZW5hbnRdPVwidGVuYW50XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzc05hbWVdPVwiY2xhc3NOYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtvaWRdPVwiY2VsbEluZm8uZGF0YS5vaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2luc3RhbmNlTGlua1R5cGVdPVwiaW5zdGFuY2VMaW5rVHlwZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZHJhd2VyVmlld0NvbnRhaW5lclJlZl09XCJkcmF3ZXJJbnN0YW5jZUxpbmtWaWV3Q29udGFpbmVyUmVmXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkcmF3ZXJTaXplXT1cImRyYXdlckluc3RhbmNlTGlua1NpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RyYXdlclNob3dIZWFkZXJdPVwiZHJhd2VySW5zdGFuY2VMaW5rU2hvd0hlYWRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZHJhd2VyRm9ybVRlbXBsYXRlXT1cImRyYXdlckluc3RhbmNlTGlua0Zvcm1UZW1wbGF0ZVwiPlxyXG4gICAgPC9ycy1pbnN0YW5jZS1saW5rLXRlbXBsYXRlPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgKmR4VGVtcGxhdGU9XCJsZXQgY2VsbEluZm8gb2YgJ2NlbGxDb21wb25lbnRUZW1wbGF0ZSdcIj5cclxuICAgIDxycy1jZWxsLWNvbXBvbmVudC10ZW1wbGF0ZSBbdGVuYW50XT1cInRlbmFudFwiIFtjbGFzc05hbWVdPVwiY2xhc3NOYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2VsbEluZm9dPVwiY2VsbEluZm9cIj48L3JzLWNlbGwtY29tcG9uZW50LXRlbXBsYXRlPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgKmR4VGVtcGxhdGU9XCJsZXQgY2VsbEluZm8gb2YgJ3Jvd0J1dHRvbnNUZW1wbGF0ZSdcIj5cclxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwicm93QnV0dG9uc1RlbXBsYXRlLnRlbXBsYXRlUmVmXCJcclxuICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInskaW1wbGljaXQ6IGNlbGxJbmZvLCBjZWxsVGVtcGxhdGVMb2FkZWQkOiBzZXJ2aWNlLmNlbGxUZW1wbGF0ZUxvYWRlZCR9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiAqZHhUZW1wbGF0ZT1cImxldCBjZWxsSW5mbyBvZiAnY3VzdG9tVGVtcGxhdGUnXCI+XHJcbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImN1c3RvbVRlbXBsYXRlLnRlbXBsYXRlUmVmXCJcclxuICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInskaW1wbGljaXQ6IGNlbGxJbmZvLCBjZWxsVGVtcGxhdGVMb2FkZWQkOiBzZXJ2aWNlLmNlbGxUZW1wbGF0ZUxvYWRlZCR9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+XHJcbjwvZHgtZGF0YS1ncmlkPlxyXG4iXX0=
|
|
204
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ycy1hbnQvc3JjL2RhdGEtZ3JpZC9kYXRhLWdyaWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJzLWFudC9zcmMvZGF0YS1ncmlkL2RhdGEtZ3JpZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQW1CLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUU3RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNkJBQTZCLENBQUM7Ozs7Ozs7Ozs7QUFRcEUsTUFBTSxPQUFPLGlCQUFpQjtJQTZENUIsWUFBb0IsT0FBd0IsRUFBWSxPQUF3QixFQUFVLGdCQUFrQztRQUF4RyxZQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUFZLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBQVUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTNENUgsV0FBTSxHQUFTLEdBQUcsQ0FBQztRQVVuQixZQUFPLEdBQVcsRUFBRSxDQUFDLENBQUMsa0NBQWtDO1FBTXhELGlCQUFZLEdBQVksS0FBSyxDQUFDLENBQUMsOEJBQThCO1FBRTdELGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIscUJBQWdCLEdBQWEsQ0FB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dCwgQ29udGVudENoaWxkLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtEeERhdGFHcmlkQ29tcG9uZW50fSBmcm9tIFwiZGV2ZXh0cmVtZS1hbmd1bGFyXCI7XHJcbmltcG9ydCB7RGF0YUdyaWRTZXJ2aWNlfSBmcm9tIFwiLi9kYXRhLWdyaWQuc2VydmljZVwiO1xyXG5pbXBvcnQge1Jvd0J1dHRvbnNUZW1wbGF0ZURpcmVjdGl2ZX0gZnJvbSBcIi4vcm93LWJ1dHRvbnMtdGVtcGxhdGUuZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7RGF0YUdyaWRGYWN0b3J5fSBmcm9tIFwiLi9kYXRhLWdyaWQuZmFjdG9yeVwiO1xyXG5pbXBvcnQge2RlYm91bmNlVGltZX0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHtub3RpZnlFcnJvcn0gZnJvbSBcIi4uL3V0aWwvdXRpbHNcIjtcclxuaW1wb3J0IHtDdXN0b21UZW1wbGF0ZURpcmVjdGl2ZX0gZnJvbSBcIi4vY3VzdG9tLXRlbXBsYXRlLmRpcmVjdGl2ZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdycy1kYXRhLWdyaWQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRhLWdyaWQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2RhdGEtZ3JpZC5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW0RhdGFHcmlkU2VydmljZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIERhdGFHcmlkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKVxyXG4gIHRlbmFudD86IGFueSA9ICdUJztcclxuICBASW5wdXQoKVxyXG4gIGNsYXNzTmFtZSE6IGFueTtcclxuICBASW5wdXQoKVxyXG4gIHZpZXc/OiBhbnk7XHJcbiAgQElucHV0KClcclxuICBmaWx0ZXI/OiBBcnJheTxhbnk+IHwgc3RyaW5nO1xyXG4gIEBJbnB1dCgpXHJcbiAgY3VzdG9tQ29sdW1uRm4/OiAoY29sdW1uczogYW55W10pID0+IHZvaWQ7XHJcbiAgQElucHV0KClcclxuICBrZXlFeHByOiBzdHJpbmcgPSAnJzsgLy8g55So5LqO5a6e5L6L5bGe5oCn6YCJ5oup5Zmo77yM5Yqg6L2957uE5Lu25YC85pe25Lul6YCJ5Lit5a2X5q615Li65Li76ZSu6I635Y+W6YCJ5Lit6KGM5pWw5o2uXHJcbiAgQElucHV0KClcclxuICBkYXRhR3JpZE5hbWU/OiBzdHJpbmc7IC8vIOeUqOS6juWcqOiOt+WPluaVsOaNruaXtuWQjOaXtuiOt+WPluWPsOi0pumFjee9rueahOihjOWGheaMiemSrlxyXG4gIEBJbnB1dCgpXHJcbiAgaGVpZ2h0OiBhbnk7XHJcbiAgQElucHV0KClcclxuICBvbmx5RnJvbnRFbmQ6IGJvb2xlYW4gPSBmYWxzZTsgLy8g5LuF5YmN56uv77yM6ZyA5oyH5a6aZGF0YVNvdXJjZe+8jOS4jeiHquWKqOiOt+WPluihqOagvOaVsOaNrlxyXG4gIEBJbnB1dCgpXHJcbiAgcGFnZVNpemU6IG51bWJlciA9IDE1O1xyXG4gIGFsbG93ZWRQYWdlU2l6ZXM6IG51bWJlcltdID0gWzE1LCAzMCwgNTBdO1xyXG4gIEBJbnB1dCgpXHJcbiAgZGlzYWJsZVBhZ2U6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIGRhdGFTb3VyY2U6IGFueSA9IHt9O1xyXG4gIEBJbnB1dCgpXHJcbiAgc2VsZWN0aW9uTW9kZTogJ25vbmUnIHwgJ211bHRpcGxlJyB8ICdzaW5nbGUnID0gJ25vbmUnO1xyXG4gIEBJbnB1dCgpXHJcbiAgc2VsZWN0ZWRSb3dLZXlzOiBhbnlbXSA9IFtdO1xyXG4gIEBPdXRwdXQoKVxyXG4gIHNlbGVjdGVkUm93S2V5c0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55W10+KCk7XHJcbiAgQElucHV0KClcclxuICBzaG93Um93TnVtOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKVxyXG4gIGluc3RhbmNlTGlua1R5cGU6ICd0YWInIHwgJ2RyYXdlcicgfCAnbm9uZScgPSAndGFiJztcclxuICBASW5wdXQoKVxyXG4gIGRyYXdlckluc3RhbmNlTGlua1ZpZXdDb250YWluZXJSZWY6IGFueSA9IHRoaXMudmlld0NvbnRhaW5lclJlZjtcclxuICBASW5wdXQoKVxyXG4gIGRyYXdlckluc3RhbmNlTGlua1NpemU6ICdkZWZhdWx0JyB8ICdsYXJnZScgfCBzdHJpbmcgPSAnZGVmYXVsdCc7XHJcbiAgQElucHV0KClcclxuICBkcmF3ZXJJbnN0YW5jZUxpbmtTaG93SGVhZGVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KClcclxuICBkcmF3ZXJJbnN0YW5jZUxpbmtGb3JtVGVtcGxhdGU6IGFueTtcclxuICBAT3V0cHV0KClcclxuICBvbkNlbGxQcmVwYXJlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKVxyXG4gIG9uQ29udGVudFJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpXHJcbiAgb25FZGl0b3JQcmVwYXJpbmcgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KClcclxuICBvblJvd0NsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpXHJcbiAgb25Sb3dEYmxDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKVxyXG4gIG9uU2VsZWN0aW9uQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBWaWV3Q2hpbGQoRHhEYXRhR3JpZENvbXBvbmVudCwge3N0YXRpYzogdHJ1ZX0pIHByaXZhdGUgZHhEYXRhR3JpZCE6IER4RGF0YUdyaWRDb21wb25lbnQ7XHJcbiAgQENvbnRlbnRDaGlsZChSb3dCdXR0b25zVGVtcGxhdGVEaXJlY3RpdmUpIHByb3RlY3RlZCByb3dCdXR0b25zVGVtcGxhdGUhOiBSb3dCdXR0b25zVGVtcGxhdGVEaXJlY3RpdmU7XHJcbiAgQENvbnRlbnRDaGlsZChDdXN0b21UZW1wbGF0ZURpcmVjdGl2ZSkgcHJvdGVjdGVkIGN1c3RvbVRlbXBsYXRlITogQ3VzdG9tVGVtcGxhdGVEaXJlY3RpdmU7XHJcbiAgY29sdW1uczogYW55W10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmYWN0b3J5OiBEYXRhR3JpZEZhY3RvcnksIHByb3RlY3RlZCBzZXJ2aWNlOiBEYXRhR3JpZFNlcnZpY2UsIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZikge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZiAodGhpcy5wYWdlU2l6ZSAmJiAhdGhpcy5hbGxvd2VkUGFnZVNpemVzLmluY2x1ZGVzKHRoaXMucGFnZVNpemUpKSB7XHJcbiAgICAgIHRoaXMuYWxsb3dlZFBhZ2VTaXplcy5wdXNoKHRoaXMucGFnZVNpemUpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5yZWxvYWQoKTtcclxuICAgIHRoaXMuc2VydmljZS5jZWxsVGVtcGxhdGVMb2FkZWQkLnBpcGUoZGVib3VuY2VUaW1lKDEwMCkpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICg8YW55PnRoaXMuZHhEYXRhR3JpZC5pbnN0YW5jZSkucmVzaXplKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5zZXJ2aWNlLmNlbGxUZW1wbGF0ZUxvYWRlZCQudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHJlbG9hZCgpIHtcclxuICAgIHRoaXMuY29sdW1ucy5sZW5ndGggPSAwO1xyXG4gICAgdGhpcy5mYWN0b3J5Lm1ha2VEYXRhR3JpZENvbHVtbnModGhpcy50ZW5hbnQsIHRoaXMuY2xhc3NOYW1lLCB0aGlzLnZpZXcsIHRoaXMpLnN1YnNjcmliZShjb2x1bW5zID0+IHtcclxuICAgICAgaWYgKHRoaXMuY3VzdG9tQ29sdW1uRm4pIHtcclxuICAgICAgICB0aGlzLmN1c3RvbUNvbHVtbkZuKGNvbHVtbnMpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmluc3RhbmNlTGlua1R5cGUgPT09ICd0YWInIHx8IHRoaXMuaW5zdGFuY2VMaW5rVHlwZSA9PT0gJ2RyYXdlcicpIHtcclxuICAgICAgICBjb2x1bW5zLnVuc2hpZnQoe1xyXG4gICAgICAgICAgY2FwdGlvbjogJ+ivpuaDhScsXHJcbiAgICAgICAgICBmaXhlZDogdHJ1ZSxcclxuICAgICAgICAgIHdpZHRoOiA0OCxcclxuICAgICAgICAgIGFsaWdubWVudDogJ2NlbnRlcicsXHJcbiAgICAgICAgICBjZWxsVGVtcGxhdGU6ICdpbnN0YW5jZUxpbmtUZW1wbGF0ZScsXHJcbiAgICAgICAgICByZW5kZXJBc3luYzogdHJ1ZVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnNob3dSb3dOdW0pIHtcclxuICAgICAgICBjb2x1bW5zLnVuc2hpZnQoe1xyXG4gICAgICAgICAgY2FwdGlvbjogJ+ihjOWPtycsXHJcbiAgICAgICAgICBmaXhlZDogdHJ1ZSxcclxuICAgICAgICAgIHdpZHRoOiA0OCxcclxuICAgICAgICAgIGFsaWdubWVudDogJ2NlbnRlcicsXHJcbiAgICAgICAgICBjZWxsVGVtcGxhdGU6ICdyb3dJbmRleFRlbXBsYXRlJyxcclxuICAgICAgICAgIHJlbmRlckFzeW5jOiB0cnVlXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5jb2x1bW5zID0gY29sdW1ucztcclxuICAgICAgaWYgKHRoaXMub25seUZyb250RW5kICYmIHRoaXMuZmlsdGVyKSB7XHJcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5maWx0ZXIpKSB7XHJcbiAgICAgICAgICB0aGlzLmR4RGF0YUdyaWQuaW5zdGFuY2UuZmlsdGVyKHRoaXMuZmlsdGVyKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5keERhdGFHcmlkLmluc3RhbmNlLmZpbHRlcihKU09OLnBhcnNlKHRoaXMuZmlsdGVyKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIGlmICh0aGlzLm9ubHlGcm9udEVuZCkge1xyXG4gICAgICBpZiAodGhpcy5kYXRhU291cmNlICYmICFBcnJheS5pc0FycmF5KHRoaXMuZGF0YVNvdXJjZSkpIHtcclxuICAgICAgICBub3RpZnlFcnJvcign5Zugb25seUZyb250RW5k5Y+C5pWw5Li6dHJ1Ze+8jOmcgOimgeaYjuehruaMh+WummRhdGFTb3VyY2Xlj4LmlbDkuLrmlbDnu4QnKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5kYXRhU291cmNlID0gdGhpcy5mYWN0b3J5Lm1ha2VEYXRhR3JpZERhdGFTb3VyY2UodGhpcy50ZW5hbnQsIHRoaXMuY2xhc3NOYW1lLCB0aGlzLnZpZXcsIHRoaXMuZmlsdGVyLCB0aGlzLmtleUV4cHIsIHRoaXMuZGF0YUdyaWROYW1lKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldFNlbGVjdGVkUm93S2V5cygpIHtcclxuICAgIHJldHVybiB0aGlzLmR4RGF0YUdyaWQuaW5zdGFuY2UuZ2V0U2VsZWN0ZWRSb3dLZXlzKCk7XHJcbiAgfVxyXG5cclxuICBnZXRTZWxlY3RlZFJvd3NEYXRhKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZHhEYXRhR3JpZC5pbnN0YW5jZS5nZXRTZWxlY3RlZFJvd3NEYXRhKCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb21iaW5lZEZpbHRlcigpIHtcclxuICAgIHJldHVybiB0aGlzLmR4RGF0YUdyaWQuaW5zdGFuY2UuZ2V0Q29tYmluZWRGaWx0ZXIoZmFsc2UpO1xyXG4gIH1cclxuXHJcbiAgcmVmcmVzaChjYWxsYmFjaz86IGFueSkge1xyXG4gICAgdGhpcy5keERhdGFHcmlkLmluc3RhbmNlLmNsZWFyU2VsZWN0aW9uKCk7XHJcbiAgICB0aGlzLmR4RGF0YUdyaWQuaW5zdGFuY2UucmVmcmVzaCgpLnRoZW4oKCkgPT4ge1xyXG4gICAgICBpZiAoY2FsbGJhY2spIHtcclxuICAgICAgICBjYWxsYmFjaygpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uRHhEYXRhR3JpZEVkaXRvclByZXBhcmluZygkZXZlbnQ6IGFueSkge1xyXG4gICAgaWYgKCRldmVudC5wYXJlbnRUeXBlID09PSAnZmlsdGVyUm93JyAmJiAkZXZlbnQuZWRpdG9yTmFtZSA9PT0gJ2R4VGV4dEJveCcpIHtcclxuICAgICAgJGV2ZW50LmVkaXRvck9wdGlvbnMudmFsdWVDaGFuZ2VFdmVudCA9ICdibHVyJztcclxuICAgICAgJGV2ZW50LmVkaXRvck9wdGlvbnMub25FbnRlcktleSA9IChlOiBhbnkpID0+IHtcclxuICAgICAgICBlLmNvbXBvbmVudC5ibHVyKCk7XHJcbiAgICAgIH07XHJcbiAgICAgICRldmVudC5lZGl0b3JPcHRpb25zLm9uUGFzdGUgPSAoZTogYW55KSA9PiB7XHJcbiAgICAgICAgY29uc3QgaW5wdXRFbGVtZW50ID0gZS5lbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ2lucHV0Jyk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICBpbnB1dEVsZW1lbnQudmFsdWUgPSBpbnB1dEVsZW1lbnQudmFsdWU/LnRyaW0oKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIHRoaXMub25FZGl0b3JQcmVwYXJpbmcuZW1pdCgkZXZlbnQpO1xyXG4gIH1cclxufVxyXG4iLCI8ZHgtZGF0YS1ncmlkIFtzaG93Qm9yZGVyc109XCJ0cnVlXCJcclxuICAgICAgICAgICAgICBbc2hvd1Jvd0xpbmVzXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgIFtzaG93Q29sdW1uTGluZXNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgW2hvdmVyU3RhdGVFbmFibGVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgIFtyb3dBbHRlcm5hdGlvbkVuYWJsZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgW2NvbHVtbkF1dG9XaWR0aF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICBbYWxsb3dDb2x1bW5SZXNpemluZ109XCJ0cnVlXCJcclxuICAgICAgICAgICAgICBjb2x1bW5SZXNpemluZ01vZGU9XCJ3aWRnZXRcIlxyXG4gICAgICAgICAgICAgIGRhdGVTZXJpYWxpemF0aW9uRm9ybWF0PVwieXl5eS9NTS9kZCBISDptbTpzc1wiXHJcbiAgICAgICAgICAgICAgW3N5bmNMb29rdXBGaWx0ZXJWYWx1ZXNdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgIFtkYXRhU291cmNlXT1cImRhdGFTb3VyY2VcIlxyXG4gICAgICAgICAgICAgIFtjb2x1bW5zXT1cImNvbHVtbnNcIlxyXG4gICAgICAgICAgICAgIFtoZWlnaHRdPVwiaGVpZ2h0XCJcclxuICAgICAgICAgICAgICBba2V5RXhwcl09XCJrZXlFeHByXCJcclxuICAgICAgICAgICAgICBbc2VsZWN0ZWRSb3dLZXlzXT1cInNlbGVjdGVkUm93S2V5c1wiXHJcbiAgICAgICAgICAgICAgKHNlbGVjdGVkUm93S2V5c0NoYW5nZSk9XCJzZWxlY3RlZFJvd0tleXNDaGFuZ2UuZW1pdCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAob25DZWxsUHJlcGFyZWQpPVwib25DZWxsUHJlcGFyZWQuZW1pdCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAob25Db250ZW50UmVhZHkpPVwib25Db250ZW50UmVhZHkuZW1pdCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAob25FZGl0b3JQcmVwYXJpbmcpPVwib25EeERhdGFHcmlkRWRpdG9yUHJlcGFyaW5nKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChvblJvd0NsaWNrKT1cIm9uUm93Q2xpY2suZW1pdCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAob25Sb3dEYmxDbGljayk9XCJvblJvd0RibENsaWNrLmVtaXQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgKG9uU2VsZWN0aW9uQ2hhbmdlZCk9XCJvblNlbGVjdGlvbkNoYW5nZWQuZW1pdCgkZXZlbnQpXCI+XHJcbiAgPGR4by1zb3J0aW5nIG1vZGU9XCJtdWx0aXBsZVwiPjwvZHhvLXNvcnRpbmc+XHJcbiAgPGR4by1zZWxlY3Rpb24gW21vZGVdPVwic2VsZWN0aW9uTW9kZVwiIHNlbGVjdEFsbE1vZGU9XCJwYWdlXCIgc2hvd0NoZWNrQm94ZXNNb2RlPVwiYWx3YXlzXCI+PC9keG8tc2VsZWN0aW9uPlxyXG4gIDxkeG8taGVhZGVyLWZpbHRlciBbdmlzaWJsZV09XCIhb25seUZyb250RW5kXCI+XHJcbiAgICA8ZHhvLXNlYXJjaCBbZW5hYmxlZF09XCJ0cnVlXCI+PC9keG8tc2VhcmNoPlxyXG4gICAgPGR4by10ZXh0cyBbb2tdPVwiJ+ehruWumidcIj48L2R4by10ZXh0cz5cclxuICA8L2R4by1oZWFkZXItZmlsdGVyPlxyXG4gIDxkeG8tZmlsdGVyLXJvdyBbdmlzaWJsZV09XCJ0cnVlXCI+PC9keG8tZmlsdGVyLXJvdz5cclxuICA8ZHhvLXJlbW90ZS1vcGVyYXRpb25zIFtmaWx0ZXJpbmddPVwiIW9ubHlGcm9udEVuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbc29ydGluZ109XCIhb25seUZyb250RW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwYWdpbmddPVwiIW9ubHlGcm9udEVuZFwiPlxyXG4gIDwvZHhvLXJlbW90ZS1vcGVyYXRpb25zPlxyXG4gIDxkeG8tcGFnaW5nIFtlbmFibGVkXT1cIiFkaXNhYmxlUGFnZVwiIFtwYWdlU2l6ZV09XCJwYWdlU2l6ZVwiPjwvZHhvLXBhZ2luZz5cclxuICA8ZHhvLXBhZ2VyIFt2aXNpYmxlXT1cIiFkaXNhYmxlUGFnZVwiXHJcbiAgICAgICAgICAgICBbc2hvd0luZm9dPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICBpbmZvVGV4dD1cIuesrHswfemhte+8jOWFsXsxfemhte+8iOWFsXsyfeS4qumhueebru+8iVwiXHJcbiAgICAgICAgICAgICBbc2hvd1BhZ2VTaXplU2VsZWN0b3JdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICBbYWxsb3dlZFBhZ2VTaXplc109XCJhbGxvd2VkUGFnZVNpemVzXCJcclxuICA+PC9keG8tcGFnZXI+XHJcbiAgPGR4by1zY3JvbGxpbmcgc2hvd1Njcm9sbGJhcj1cImFsd2F5c1wiPjwvZHhvLXNjcm9sbGluZz5cclxuICA8ZGl2ICpkeFRlbXBsYXRlPVwibGV0IGNlbGxJbmZvIG9mICdyb3dJbmRleFRlbXBsYXRlJ1wiPlxyXG4gICAge3sgY2VsbEluZm8ucm93SW5kZXggKyAxIH19XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiAqZHhUZW1wbGF0ZT1cImxldCBjZWxsSW5mbyBvZiAnaW5zdGFuY2VMaW5rVGVtcGxhdGUnXCI+XHJcbiAgICA8cnMtaW5zdGFuY2UtbGluay10ZW1wbGF0ZSBbdGVuYW50XT1cInRlbmFudFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3NOYW1lXT1cImNsYXNzTmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbb2lkXT1cImNlbGxJbmZvLmRhdGEub2lkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpbnN0YW5jZUxpbmtUeXBlXT1cImluc3RhbmNlTGlua1R5cGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RyYXdlclZpZXdDb250YWluZXJSZWZdPVwiZHJhd2VySW5zdGFuY2VMaW5rVmlld0NvbnRhaW5lclJlZlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZHJhd2VyU2l6ZV09XCJkcmF3ZXJJbnN0YW5jZUxpbmtTaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkcmF3ZXJTaG93SGVhZGVyXT1cImRyYXdlckluc3RhbmNlTGlua1Nob3dIZWFkZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RyYXdlckZvcm1UZW1wbGF0ZV09XCJkcmF3ZXJJbnN0YW5jZUxpbmtGb3JtVGVtcGxhdGVcIj5cclxuICAgIDwvcnMtaW5zdGFuY2UtbGluay10ZW1wbGF0ZT5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpkeFRlbXBsYXRlPVwibGV0IGNlbGxJbmZvIG9mICdjZWxsQ29tcG9uZW50VGVtcGxhdGUnXCI+XHJcbiAgICA8cnMtY2VsbC1jb21wb25lbnQtdGVtcGxhdGUgW3RlbmFudF09XCJ0ZW5hbnRcIiBbY2xhc3NOYW1lXT1cImNsYXNzTmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NlbGxJbmZvXT1cImNlbGxJbmZvXCI+PC9ycy1jZWxsLWNvbXBvbmVudC10ZW1wbGF0ZT5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpkeFRlbXBsYXRlPVwibGV0IGNlbGxJbmZvIG9mICdyb3dCdXR0b25zVGVtcGxhdGUnXCI+XHJcbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInJvd0J1dHRvbnNUZW1wbGF0ZS50ZW1wbGF0ZVJlZlwiXHJcbiAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7JGltcGxpY2l0OiBjZWxsSW5mbywgY2VsbFRlbXBsYXRlTG9hZGVkJDogc2VydmljZS5jZWxsVGVtcGxhdGVMb2FkZWQkfVwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgKmR4VGVtcGxhdGU9XCJsZXQgY2VsbEluZm8gb2YgJ2N1c3RvbVRlbXBsYXRlJ1wiPlxyXG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjdXN0b21UZW1wbGF0ZS50ZW1wbGF0ZVJlZlwiXHJcbiAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7JGltcGxpY2l0OiBjZWxsSW5mbywgY2VsbFRlbXBsYXRlTG9hZGVkJDogc2VydmljZS5jZWxsVGVtcGxhdGVMb2FkZWQkfVwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG48L2R4LWRhdGEtZ3JpZD5cclxuIl19
|
|
@@ -41,7 +41,7 @@ export class DataGridFactory {
|
|
|
41
41
|
};
|
|
42
42
|
this.service = new DataGridService(http);
|
|
43
43
|
}
|
|
44
|
-
makeDataGridColumns(tenant, className, view) {
|
|
44
|
+
makeDataGridColumns(tenant, className, view, dataGridInstance) {
|
|
45
45
|
const result = new Subject();
|
|
46
46
|
this.service.getMetadataByView(tenant, className, view || '').subscribe(response => {
|
|
47
47
|
const columns = [];
|
|
@@ -114,40 +114,9 @@ export class DataGridFactory {
|
|
|
114
114
|
break;
|
|
115
115
|
case 'DOUBLE':
|
|
116
116
|
case 'INTEGER':
|
|
117
|
-
column.headerFilter.dataSource = (options) => {
|
|
118
|
-
options.dataSource.postProcess = (data) => {
|
|
119
|
-
data.unshift({
|
|
120
|
-
key: '',
|
|
121
|
-
value: null,
|
|
122
|
-
text: '(空白)'
|
|
123
|
-
});
|
|
124
|
-
data.push({
|
|
125
|
-
key: '__',
|
|
126
|
-
value: '__',
|
|
127
|
-
text: '__',
|
|
128
|
-
visible: false
|
|
129
|
-
});
|
|
130
|
-
};
|
|
131
|
-
};
|
|
132
117
|
column.alignment = 'right';
|
|
133
118
|
break;
|
|
134
119
|
case 'STRING':
|
|
135
|
-
column.headerFilter.dataSource = (options) => {
|
|
136
|
-
// TODO 超过20条会分页添加多次,不分页前端性能差,考虑在构建dataSource时处理,与日期类型存在冲突
|
|
137
|
-
options.dataSource.postProcess = (data) => {
|
|
138
|
-
data.unshift({
|
|
139
|
-
key: '',
|
|
140
|
-
value: null,
|
|
141
|
-
text: '(空白)'
|
|
142
|
-
});
|
|
143
|
-
data.push({
|
|
144
|
-
key: '__',
|
|
145
|
-
value: '__',
|
|
146
|
-
text: '__',
|
|
147
|
-
visible: false
|
|
148
|
-
});
|
|
149
|
-
};
|
|
150
|
-
};
|
|
151
120
|
switch (field.config.constraint.type) {
|
|
152
121
|
case 'USER':
|
|
153
122
|
if (column.viewConfig) {
|
|
@@ -159,7 +128,8 @@ export class DataGridFactory {
|
|
|
159
128
|
column.headerFilter.dataSource = {
|
|
160
129
|
store: new CustomStore({
|
|
161
130
|
load: () => {
|
|
162
|
-
|
|
131
|
+
const filter = JSON.stringify(dataGridInstance.getCombinedFilter());
|
|
132
|
+
return lastValueFrom(this.service.getUserColumnDataSource(tenant, className, view, field.name, filter));
|
|
163
133
|
}
|
|
164
134
|
}),
|
|
165
135
|
paginate: true
|
|
@@ -203,7 +173,8 @@ export class DataGridFactory {
|
|
|
203
173
|
column.headerFilter.dataSource = {
|
|
204
174
|
store: new CustomStore({
|
|
205
175
|
load: () => {
|
|
206
|
-
|
|
176
|
+
const filter = JSON.stringify(dataGridInstance.getCombinedFilter());
|
|
177
|
+
return lastValueFrom(this.service.getUnitColumnDataSource(tenant, className, view, field.name, filter));
|
|
207
178
|
}
|
|
208
179
|
}),
|
|
209
180
|
paginate: true
|
|
@@ -241,7 +212,8 @@ export class DataGridFactory {
|
|
|
241
212
|
column.headerFilter.dataSource = {
|
|
242
213
|
store: new CustomStore({
|
|
243
214
|
load: () => {
|
|
244
|
-
|
|
215
|
+
const filter = JSON.stringify(dataGridInstance.getCombinedFilter());
|
|
216
|
+
return lastValueFrom(this.service.getConstraintColumnDataSource(tenant, className, view, field.name, field.config.constraint.name, filter));
|
|
245
217
|
}
|
|
246
218
|
}),
|
|
247
219
|
paginate: true
|
|
@@ -320,8 +292,7 @@ export class DataGridFactory {
|
|
|
320
292
|
if (loadOptions.dataField) {
|
|
321
293
|
// 未重写headerFilter的dataSource时,headerFilter会调用load方法加载筛选树,重写该方法查询该表所有数据
|
|
322
294
|
// 该方式存在风险,无法识别DevExtreme一定是通过headerFilter过滤才存在dataField参数
|
|
323
|
-
|
|
324
|
-
return lastValueFrom(this.service.getColumnDataSource(tenant, className, view, loadOptions.dataField));
|
|
295
|
+
return lastValueFrom(this.service.getColumnDataSource(tenant, className, view, loadOptions.dataField, JSON.stringify(loadOptions.filter)));
|
|
325
296
|
}
|
|
326
297
|
let params = '?';
|
|
327
298
|
if (loadOptions.skip || loadOptions.take) {
|
|
@@ -381,4 +352,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
381
352
|
providedIn: 'root'
|
|
382
353
|
}]
|
|
383
354
|
}], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
|
|
384
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLmZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9kYXRhLWdyaWQvZGF0YS1ncmlkLmZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxXQUFXLE1BQU0sOEJBQThCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGFBQWEsRUFBRSxHQUFHLEVBQWMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRTdELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDOzs7QUFNcEQsTUFBTSxPQUFPLGVBQWU7SUFDMUIsWUFBb0IsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQU01QixZQUFPLEdBQVE7WUFDckIsTUFBTSxFQUFFO2dCQUNOLFFBQVEsRUFBRSxRQUFRO2dCQUNsQixnQkFBZ0IsRUFBRSxDQUFDLFVBQVUsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUM7YUFDcEU7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osUUFBUSxFQUFFLFFBQVE7Z0JBQ2xCLGdCQUFnQixFQUFFLENBQUMsVUFBVSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQzthQUNwRTtZQUNELE9BQU8sRUFBRTtnQkFDUCxRQUFRLEVBQUUsU0FBUztnQkFDbkIsZ0JBQWdCLEVBQUUsRUFBRTthQUNyQjtZQUNELE9BQU8sRUFBRTtnQkFDUCxRQUFRLEVBQUUsUUFBUTtnQkFDbEIsZ0JBQWdCLEVBQUUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUM7YUFDL0Q7WUFDRCxNQUFNLEVBQUU7Z0JBQ04sUUFBUSxFQUFFLFFBQVE7Z0JBQ2xCLGdCQUFnQixFQUFFLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDO2FBQy9EO1lBQ0QsSUFBSSxFQUFFO2dCQUNKLFFBQVEsRUFBRSxNQUFNO2dCQUNoQixnQkFBZ0IsRUFBRSxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQztnQkFDOUQsTUFBTSxFQUFFLFlBQVk7YUFDckI7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsUUFBUSxFQUFFLFVBQVU7Z0JBQ3BCLGdCQUFnQixFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxTQUFTLENBQUM7Z0JBQ3ZDLE1BQU0sRUFBRSxxQkFBcUI7YUFDOUI7U0FDRixDQUFDO1FBcENBLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQXFDTSxtQkFBbUIsQ0FBQyxNQUFXLEVBQUUsU0FBYyxFQUFFLElBQVM7UUFDL0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNqRixNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDbkIsS0FBSyxJQUFJLEtBQUssSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDdkMsSUFBSSxNQUFNLEdBQVE7b0JBQ2hCLFNBQVMsRUFBRSxLQUFLLENBQUMsSUFBSTtvQkFDckIsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO29CQUN0QixRQUFRLEVBQUUsUUFBUTtvQkFDbEIsU0FBUyxFQUFFLE1BQU07b0JBQ2pCLG9CQUFvQixFQUFFLElBQUk7b0JBQzFCLGNBQWMsRUFBRSxJQUFJO29CQUNwQixZQUFZLEVBQUUsSUFBSTtvQkFDbEIsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO29CQUN0QixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7aUJBQ25CLENBQUM7Z0JBQ0YsSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRTtvQkFDaEMsTUFBTSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQztpQkFDN0M7Z0JBQ0QsSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRTtvQkFDaEMsTUFBTSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7aUJBQzdCO2dCQUNELElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUU7b0JBQzlCLE1BQU0sQ0FBQyxZQUFZLEdBQUcsdUJBQXVCLENBQUM7b0JBQzlDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztvQkFDN0IsTUFBTSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDO29CQUNyQyxNQUFNLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztpQkFDM0I7Z0JBQ0QsUUFBUSxLQUFLLENBQUMsSUFBSSxFQUFFO29CQUNsQixLQUFLLE1BQU07d0JBQ1QsTUFBTSxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQzt3QkFDcEMsTUFBTSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7d0JBQzlCLE1BQU0sQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO3dCQUM1QixNQUFNO29CQUNSLEtBQUssUUFBUTt3QkFDWCxNQUFNLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQzt3QkFDeEQsTUFBTSxDQUFDLFlBQVksR0FBRzs0QkFDcEIsY0FBYyxFQUFFLEtBQUs7eUJBQ3RCLENBQUM7d0JBQ0YsTUFBTSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLGdCQUFnQixDQUFDO3dCQUN4RSxNQUFNLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQzt3QkFDcEQsUUFBUSxLQUFLLENBQUMsUUFBUSxFQUFFOzRCQUN0QixLQUFLLFNBQVM7Z0NBQ1osTUFBTSxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQztnQ0FDcEMsTUFBTSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7Z0NBQzVCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDO2dDQUN0QixNQUFNLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQztnQ0FDdkIsTUFBTTs0QkFDUixLQUFLLE1BQU0sQ0FBQzs0QkFDWixLQUFLLFVBQVU7Z0NBQ2IsTUFBTSxDQUFDLFlBQVksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxPQUFZLEVBQUUsRUFBRTtvQ0FDaEQsT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztvQ0FDcEMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxXQUFXLEdBQUcsQ0FBQyxJQUFTLEVBQUUsRUFBRTt3Q0FDN0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFOzRDQUN6QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDOzRDQUMzQixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO2dEQUNoQyxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO2dEQUM3QixLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFO29EQUMvQixHQUFHLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO29EQUN6QixHQUFHLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztnREFDakIsQ0FBQyxDQUFDLENBQUM7NENBQ0wsQ0FBQyxDQUFDLENBQUM7d0NBQ0wsQ0FBQyxDQUFDLENBQUM7d0NBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQzs0Q0FDWCxHQUFHLEVBQUUsRUFBRTs0Q0FDUCxLQUFLLEVBQUUsSUFBSTs0Q0FDWCxJQUFJLEVBQUUsTUFBTTt5Q0FDYixDQUFDLENBQUM7b0NBQ0wsQ0FBQyxDQUFDO2dDQUNKLENBQUMsQ0FBQztnQ0FDRixNQUFNOzRCQUNSLEtBQUssUUFBUSxDQUFDOzRCQUNkLEtBQUssU0FBUztnQ0FDWixNQUFNLENBQUMsWUFBWSxDQUFDLFVBQVUsR0FBRyxDQUFDLE9BQVksRUFBRSxFQUFFO29DQUNoRCxPQUFPLENBQUMsVUFBVSxDQUFDLFdBQVcsR0FBRyxDQUFDLElBQVMsRUFBRSxFQUFFO3dDQUM3QyxJQUFJLENBQUMsT0FBTyxDQUFDOzRDQUNYLEdBQUcsRUFBRSxFQUFFOzRDQUNQLEtBQUssRUFBRSxJQUFJOzRDQUNYLElBQUksRUFBRSxNQUFNO3lDQUNiLENBQUMsQ0FBQzt3Q0FDSCxJQUFJLENBQUMsSUFBSSxDQUFDOzRDQUNSLEdBQUcsRUFBRSxJQUFJOzRDQUNULEtBQUssRUFBRSxJQUFJOzRDQUNYLElBQUksRUFBRSxJQUFJOzRDQUNWLE9BQU8sRUFBRSxLQUFLO3lDQUNmLENBQUMsQ0FBQztvQ0FDTCxDQUFDLENBQUM7Z0NBQ0osQ0FBQyxDQUFDO2dDQUNGLE1BQU0sQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDO2dDQUMzQixNQUFNOzRCQUNSLEtBQUssUUFBUTtnQ0FDWCxNQUFNLENBQUMsWUFBWSxDQUFDLFVBQVUsR0FBRyxDQUFDLE9BQVksRUFBRSxFQUFFO29DQUNoRCwwREFBMEQ7b0NBQzFELE9BQU8sQ0FBQyxVQUFVLENBQUMsV0FBVyxHQUFHLENBQUMsSUFBUyxFQUFFLEVBQUU7d0NBQzdDLElBQUksQ0FBQyxPQUFPLENBQUM7NENBQ1gsR0FBRyxFQUFFLEVBQUU7NENBQ1AsS0FBSyxFQUFFLElBQUk7NENBQ1gsSUFBSSxFQUFFLE1BQU07eUNBQ2IsQ0FBQyxDQUFDO3dDQUNILElBQUksQ0FBQyxJQUFJLENBQUM7NENBQ1IsR0FBRyxFQUFFLElBQUk7NENBQ1QsS0FBSyxFQUFFLElBQUk7NENBQ1gsSUFBSSxFQUFFLElBQUk7NENBQ1YsT0FBTyxFQUFFLEtBQUs7eUNBQ2YsQ0FBQyxDQUFDO29DQUNMLENBQUMsQ0FBQztnQ0FDSixDQUFDLENBQUM7Z0NBQ0YsUUFBUSxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUU7b0NBQ3BDLEtBQUssTUFBTTt3Q0FDVCxJQUFJLE1BQU0sQ0FBQyxVQUFVLEVBQUU7NENBQ3JCLE1BQU0sQ0FBQyxVQUFVLENBQUMsZUFBZSxHQUFHO2dEQUNsQyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsZUFBZTtnREFDcEMsYUFBYSxFQUFFLEtBQUssQ0FBQyxJQUFJOzZDQUMxQixDQUFDO3lDQUNIO3dDQUNELE1BQU0sQ0FBQyxZQUFZLENBQUMsVUFBVSxHQUFHOzRDQUMvQixLQUFLLEVBQUUsSUFBSSxXQUFXLENBQUM7Z0RBQ3JCLElBQUksRUFBRSxHQUFHLEVBQUU7b0RBQ1QsT0FBTyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztnREFDbEcsQ0FBQzs2Q0FDRixDQUFDOzRDQUNGLFFBQVEsRUFBRSxJQUFJO3lDQUNmLENBQUM7d0NBQ0YsSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUU7NENBQ3BDLE1BQU0sQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDOzRDQUM5QixNQUFNLENBQUMseUJBQXlCLEdBQUcsVUFBd0IsV0FBZ0IsRUFBRSx1QkFBNEIsRUFBRSxNQUFjO2dEQUN2SCxJQUFJLElBQUksQ0FBQyxnQ0FBZ0MsRUFBRTtvREFDekMsSUFBSSxDQUFDLFdBQVcsRUFBRTt3REFDaEIsT0FBTyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztxREFDdEY7b0RBQ0QsT0FBTyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztpREFDN0Y7Z0RBQ0QsT0FBTyxFQUFFLENBQUM7NENBQ1osQ0FBQyxDQUFDO3lDQUNIOzZDQUFNOzRDQUNMLE1BQU0sQ0FBQyxTQUFTLEdBQUcsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLEdBQUcsd0JBQXdCLENBQUM7NENBQ2hFLE1BQU0sQ0FBQyx5QkFBeUIsR0FBRyxVQUFxQixXQUFnQixFQUFFLHVCQUE0QixFQUFFLE1BQWM7Z0RBQ3BILElBQUksTUFBTSxLQUFLLGNBQWMsRUFBRTtvREFDN0IsSUFBSSxJQUFJLENBQUMsZ0NBQWdDLEVBQUU7d0RBQ3pDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLEdBQUcscUJBQXFCLENBQUM7d0RBQzNELE9BQU8sSUFBSSxDQUFDLGdDQUFnQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztxREFDMUc7aURBQ0Y7Z0RBQ0QsT0FBTztvREFDTCxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsdUJBQXVCLEVBQUUsV0FBVyxDQUFDO29EQUNuRCxJQUFJO29EQUNKLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLEdBQUcscUJBQXFCLEVBQUUsdUJBQXVCLEVBQUUsV0FBVyxDQUFDO2lEQUNsRixDQUFDOzRDQUNKLENBQUMsQ0FBQzt5Q0FDSDt3Q0FDRCxNQUFNO29DQUNSLEtBQUssTUFBTTt3Q0FDVCxJQUFJLE1BQU0sQ0FBQyxVQUFVLEVBQUU7NENBQ3JCLE1BQU0sQ0FBQyxVQUFVLENBQUMsZUFBZSxHQUFHO2dEQUNsQyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsZUFBZTtnREFDcEMsYUFBYSxFQUFFLEtBQUssQ0FBQyxJQUFJOzZDQUMxQixDQUFDO3lDQUNIO3dDQUNELE1BQU0sQ0FBQyxZQUFZLENBQUMsVUFBVSxHQUFHOzRDQUMvQixLQUFLLEVBQUUsSUFBSSxXQUFXLENBQUM7Z0RBQ3JCLElBQUksRUFBRSxHQUFHLEVBQUU7b0RBQ1QsT0FBTyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztnREFDbEcsQ0FBQzs2Q0FDRixDQUFDOzRDQUNGLFFBQVEsRUFBRSxJQUFJO3lDQUNmLENBQUM7d0NBQ0YsSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUU7NENBQ3BDLE1BQU0sQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDOzRDQUM5QixNQUFNLENBQUMseUJBQXlCLEdBQUcsVUFBd0IsV0FBZ0IsRUFBRSx1QkFBNEIsRUFBRSxNQUFjO2dEQUN2SCxJQUFJLElBQUksQ0FBQyxnQ0FBZ0MsRUFBRTtvREFDekMsSUFBSSxDQUFDLFdBQVcsRUFBRTt3REFDaEIsT0FBTyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztxREFDdEY7b0RBQ0QsT0FBTyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztpREFDN0Y7Z0RBQ0QsT0FBTyxFQUFFLENBQUM7NENBQ1osQ0FBQyxDQUFDO3lDQUNIOzZDQUFNOzRDQUNMLE1BQU0sQ0FBQyxTQUFTLEdBQUcsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLEdBQUcsd0JBQXdCLENBQUM7NENBQ2hFLE1BQU0sQ0FBQyx5QkFBeUIsR0FBRyxVQUF3QixXQUFnQixFQUFFLHVCQUE0QixFQUFFLE1BQWM7Z0RBQ3ZILElBQUksTUFBTSxLQUFLLGNBQWMsRUFBRTtvREFDN0IsSUFBSSxJQUFJLENBQUMsZ0NBQWdDLEVBQUU7d0RBQ3pDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQUM7d0RBQ3ZELE9BQU8sSUFBSSxDQUFDLGdDQUFnQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztxREFDMUc7aURBQ0Y7Z0RBQ0QsT0FBTztvREFDTCxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsdUJBQXVCLEVBQUUsV0FBVyxDQUFDO29EQUNuRCxJQUFJO29EQUNKLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQUUsV0FBVyxDQUFDO2lEQUM5RSxDQUFDOzRDQUNKLENBQUMsQ0FBQzt5Q0FDSDt3Q0FDRCxNQUFNO29DQUNSLEtBQUssUUFBUTt3Q0FDWCxNQUFNLENBQUMsWUFBWSxDQUFDLFVBQVUsR0FBRzs0Q0FDL0IsS0FBSyxFQUFFLElBQUksV0FBVyxDQUFDO2dEQUNyQixJQUFJLEVBQUUsR0FBRyxFQUFFO29EQUNULE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsNkJBQTZCLENBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2dEQUN0SSxDQUFDOzZDQUNGLENBQUM7NENBQ0YsUUFBUSxFQUFFLElBQUk7eUNBQ2YsQ0FBQzt3Q0FDRixNQUFNLENBQUMsTUFBTSxHQUFHOzRDQUNkLFVBQVUsRUFBRTtnREFDVixLQUFLLEVBQUUsSUFBSSxXQUFXLENBQUM7b0RBQ3JCLElBQUksRUFBRSxHQUFHLEVBQUU7d0RBQ1QsT0FBTyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztvREFDaEcsQ0FBQztpREFDRixDQUFDO2dEQUNGLFFBQVEsRUFBRSxJQUFJOzZDQUNmOzRDQUNELFNBQVMsRUFBRSxPQUFPOzRDQUNsQixXQUFXLEVBQUUsU0FBUzt5Q0FDdkIsQ0FBQzt3Q0FDRixNQUFNLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO3dDQUM3QixJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRTs0Q0FDcEMsTUFBTSxDQUFDLHlCQUF5QixHQUFHLFVBQXdCLFdBQWdCLEVBQUUsdUJBQTRCLEVBQUUsTUFBYztnREFDdkgsSUFBSSxJQUFJLENBQUMsZ0NBQWdDLEVBQUU7b0RBQ3pDLElBQUksQ0FBQyxXQUFXLEVBQUU7d0RBQ2hCLE9BQU8sSUFBSSxDQUFDLGdDQUFnQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7cURBQ3RGO29EQUNELE9BQU8sSUFBSSxDQUFDLGdDQUFnQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7aURBQzdGO2dEQUNELE9BQU8sRUFBRSxDQUFDOzRDQUNaLENBQUMsQ0FBQzt5Q0FDSDt3Q0FDRCxNQUFNO29DQUNSO3dDQUNFLE1BQU07aUNBQ1Q7Z0NBQ0QsTUFBTTs0QkFDUixLQUFLLE1BQU07Z0NBQ1QsTUFBTSxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQztnQ0FDcEMsTUFBTTt5QkFDVDt3QkFDRCxNQUFNO29CQUNSLEtBQUssVUFBVTt3QkFDYixNQUFNLENBQUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDO3dCQUNwQyxNQUFNLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQzt3QkFDNUIsUUFBUSxLQUFLLENBQUMsWUFBWSxFQUFFOzRCQUMxQixLQUFLLGFBQWEsQ0FBQzs0QkFDbkIsS0FBSyxZQUFZO2dDQUNmLE1BQU0sQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dDQUNoQyxNQUFNOzRCQUNSO2dDQUNFLE1BQU0sQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO2dDQUM5QixNQUFNO3lCQUNUO2lCQUNKO2dCQUNELE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDdEI7WUFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVNLHNCQUFzQixDQUFDLE1BQVcsRUFBRSxTQUFjLEVBQUUsSUFBUyxFQUFFLFdBQWdCLEVBQUUsT0FBZ0IsRUFBRSxZQUFxQjtRQUM3SCxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osT0FBTyxHQUFHLEtBQUssQ0FBQztTQUNqQjtRQUNELE9BQU8sSUFBSSxXQUFXLENBQUM7WUFDckIsR0FBRyxFQUFFLE9BQU87WUFDWixLQUFLLEVBQUUsQ0FBQyxHQUFRLEVBQUUsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLEdBQUcsRUFBRTtvQkFDUixPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztpQkFDMUI7Z0JBQ0QsSUFBSSxPQUFPLEtBQUssS0FBSyxFQUFFO29CQUNyQixPQUFPLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUN4RztxQkFBTTtvQkFDTCxPQUFPLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDMUY7WUFDSCxDQUFDO1lBQ0QsSUFBSSxFQUFFLENBQUMsV0FBZ0IsRUFBRSxFQUFFO2dCQUN6QixJQUFJLFdBQVcsQ0FBQyxTQUFTLEVBQUU7b0JBQ3pCLHVFQUF1RTtvQkFDdkUsMERBQTBEO29CQUMxRCx5RUFBeUU7b0JBQ3pFLE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7aUJBQ3hHO2dCQUNELElBQUksTUFBTSxHQUFHLEdBQUcsQ0FBQztnQkFDakIsSUFBSSxXQUFXLENBQUMsSUFBSSxJQUFJLFdBQVcsQ0FBQyxJQUFJLEVBQUU7b0JBQ3hDLE1BQU0sSUFBSSxTQUFTLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQztvQkFDdkMsTUFBTSxJQUFJLFNBQVMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDO2lCQUN4QztxQkFBTTtvQkFDTCxNQUFNLElBQUksU0FBUyxDQUFDO2lCQUNyQjtnQkFDRCxJQUFJLFdBQVcsQ0FBQyxJQUFJLEVBQUU7b0JBQ3BCLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQztvQkFDakIsS0FBSyxNQUFNLFFBQVEsSUFBSSxXQUFXLENBQUMsSUFBSSxFQUFFO3dCQUN2QyxJQUFJLEtBQUssRUFBRTs0QkFDVCxNQUFNLElBQUksV0FBVyxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUM7eUJBQzNDOzZCQUFNOzRCQUNMLE1BQU0sSUFBSSxHQUFHLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQzt5QkFDbkM7d0JBQ0QsSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFOzRCQUNqQixNQUFNLElBQUksT0FBTyxDQUFDO3lCQUNuQjt3QkFDRCxLQUFLLEdBQUcsS0FBSyxDQUFDO3FCQUNmO2lCQUNGO2dCQUNELElBQUksTUFBTSxDQUFDO2dCQUNYLElBQUksV0FBVyxDQUFDLE1BQU0sRUFBRTtvQkFDdEIsTUFBTSxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUM7aUJBQzdCO2dCQUNELElBQUksV0FBVyxFQUFFO29CQUNmLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFO3dCQUMvQixXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztxQkFDdkM7b0JBQ0QsSUFBSSxNQUFNLEVBQUU7d0JBQ1YsTUFBTSxHQUFHLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztxQkFDdkM7eUJBQU07d0JBQ0wsTUFBTSxHQUFHLFdBQVcsQ0FBQztxQkFDdEI7aUJBQ0Y7Z0JBQ0QsSUFBSSxNQUFNLEVBQUU7b0JBQ1YsTUFBTSxJQUFJLFVBQVUsR0FBRyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7aUJBQ25FO2dCQUNELE1BQU0sSUFBSSxRQUFRLEdBQUcsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7Z0JBQ2xDLElBQUksWUFBWSxFQUFFO29CQUNoQixNQUFNLElBQUksZ0JBQWdCLEdBQUcsWUFBWSxDQUFDO2lCQUMzQztnQkFDRCxPQUFPLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDeEUsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7OzZHQTdXVSxlQUFlO2lIQUFmLGVBQWUsY0FGZCxNQUFNOzRGQUVQLGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEN1c3RvbVN0b3JlIGZyb20gXCJkZXZleHRyZW1lL2RhdGEvY3VzdG9tX3N0b3JlXCI7XHJcbmltcG9ydCB7bGFzdFZhbHVlRnJvbSwgbWFwLCBPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge0NvbHVtbn0gZnJvbSBcImRldmV4dHJlbWUvdWkvZGF0YV9ncmlkXCI7XHJcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtEYXRhR3JpZFNlcnZpY2V9IGZyb20gXCIuL2RhdGEtZ3JpZC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7SHR0cENsaWVudH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXRhR3JpZEZhY3Rvcnkge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkge1xyXG4gICAgdGhpcy5zZXJ2aWNlID0gbmV3IERhdGFHcmlkU2VydmljZShodHRwKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2VydmljZSE6IERhdGFHcmlkU2VydmljZTtcclxuXHJcbiAgcHJpdmF0ZSB0eXBlTWFwOiBhbnkgPSB7XHJcbiAgICBTVFJJTkc6IHtcclxuICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxyXG4gICAgICBmaWx0ZXJPcGVyYXRpb25zOiBbJ2NvbnRhaW5zJywgJ3N0YXJ0c3dpdGgnLCAnZW5kc3dpdGgnLCAnPScsICc8PiddXHJcbiAgICB9LFxyXG4gICAgVEVYVDoge1xyXG4gICAgICBkYXRhVHlwZTogJ3N0cmluZycsXHJcbiAgICAgIGZpbHRlck9wZXJhdGlvbnM6IFsnY29udGFpbnMnLCAnc3RhcnRzd2l0aCcsICdlbmRzd2l0aCcsICc9JywgJzw+J11cclxuICAgIH0sXHJcbiAgICBCT09MRUFOOiB7XHJcbiAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXHJcbiAgICAgIGZpbHRlck9wZXJhdGlvbnM6IFtdXHJcbiAgICB9LFxyXG4gICAgSU5URUdFUjoge1xyXG4gICAgICBkYXRhVHlwZTogJ251bWJlcicsXHJcbiAgICAgIGZpbHRlck9wZXJhdGlvbnM6IFsnPScsICc8PicsICc+JywgJz49JywgJzwnLCAnPD0nLCAnYmV0d2VlbiddXHJcbiAgICB9LFxyXG4gICAgRE9VQkxFOiB7XHJcbiAgICAgIGRhdGFUeXBlOiAnbnVtYmVyJyxcclxuICAgICAgZmlsdGVyT3BlcmF0aW9uczogWyc9JywgJzw+JywgJz4nLCAnPj0nLCAnPCcsICc8PScsICdiZXR3ZWVuJ11cclxuICAgIH0sXHJcbiAgICBEQVRFOiB7XHJcbiAgICAgIGRhdGFUeXBlOiAnZGF0ZScsXHJcbiAgICAgIGZpbHRlck9wZXJhdGlvbnM6IFsnPScsICc8PicsICc+JywgJz49JywgJzwnLCAnPD0nLCAnYmV0d2VlbiddLFxyXG4gICAgICBmb3JtYXQ6ICd5eXl5L01NL2RkJ1xyXG4gICAgfSxcclxuICAgIERBVEVUSU1FOiB7XHJcbiAgICAgIGRhdGFUeXBlOiAnZGF0ZXRpbWUnLFxyXG4gICAgICBmaWx0ZXJPcGVyYXRpb25zOiBbJz4nLCAnPCcsICdiZXR3ZWVuJ10sXHJcbiAgICAgIGZvcm1hdDogJ3l5eXkvTU0vZGQgSEg6bW06c3MnXHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgcHVibGljIG1ha2VEYXRhR3JpZENvbHVtbnModGVuYW50OiBhbnksIGNsYXNzTmFtZTogYW55LCB2aWV3OiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IFN1YmplY3QoKTtcclxuICAgIHRoaXMuc2VydmljZS5nZXRNZXRhZGF0YUJ5Vmlldyh0ZW5hbnQsIGNsYXNzTmFtZSwgdmlldyB8fCAnJykuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcclxuICAgICAgY29uc3QgY29sdW1ucyA9IFtdO1xyXG4gICAgICBmb3IgKGxldCBmaWVsZCBvZiByZXNwb25zZS5kYXRhLmNvbHVtbnMpIHtcclxuICAgICAgICBsZXQgY29sdW1uOiBhbnkgPSB7XHJcbiAgICAgICAgICBkYXRhRmllbGQ6IGZpZWxkLm5hbWUsXHJcbiAgICAgICAgICBjYXB0aW9uOiBmaWVsZC5jYXB0aW9uLFxyXG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxyXG4gICAgICAgICAgYWxpZ25tZW50OiAnbGVmdCcsXHJcbiAgICAgICAgICBhbGxvd0hlYWRlckZpbHRlcmluZzogdHJ1ZSxcclxuICAgICAgICAgIGFsbG93RmlsdGVyaW5nOiB0cnVlLFxyXG4gICAgICAgICAgYWxsb3dTb3J0aW5nOiB0cnVlLFxyXG4gICAgICAgICAgdmlzaWJsZTogZmllbGQudmlzaWJsZSxcclxuICAgICAgICAgIGZpeGVkOiBmaWVsZC5maXhlZFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgaWYgKGZpZWxkLnZpZXdDb25maWcuY29sdW1uV2lkdGgpIHtcclxuICAgICAgICAgIGNvbHVtbi53aWR0aCA9IGZpZWxkLnZpZXdDb25maWcuY29sdW1uV2lkdGg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChmaWVsZC52aWV3Q29uZmlnLmFsaWduQ2VudGVyKSB7XHJcbiAgICAgICAgICBjb2x1bW4uYWxpZ25tZW50ID0gJ2NlbnRlcic7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChmaWVsZC52aWV3Q29uZmlnLmNvbXBvbmVudCkge1xyXG4gICAgICAgICAgY29sdW1uLmNlbGxUZW1wbGF0ZSA9ICdjZWxsQ29tcG9uZW50VGVtcGxhdGUnO1xyXG4gICAgICAgICAgY29sdW1uLmNvbmZpZyA9IGZpZWxkLmNvbmZpZztcclxuICAgICAgICAgIGNvbHVtbi52aWV3Q29uZmlnID0gZmllbGQudmlld0NvbmZpZztcclxuICAgICAgICAgIGNvbHVtbi5yZW5kZXJBc3luYyA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHN3aXRjaCAoZmllbGQudHlwZSkge1xyXG4gICAgICAgICAgY2FzZSAnRklMRSc6XHJcbiAgICAgICAgICAgIGNvbHVtbi5hbGxvd0hlYWRlckZpbHRlcmluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICBjb2x1bW4uYWxsb3dGaWx0ZXJpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgY29sdW1uLmFsbG93U29ydGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIGNhc2UgJ05PUk1BTCc6XHJcbiAgICAgICAgICAgIGNvbHVtbi5kYXRhVHlwZSA9IHRoaXMudHlwZU1hcFtmaWVsZC5kYXRhVHlwZV0uZGF0YVR5cGU7XHJcbiAgICAgICAgICAgIGNvbHVtbi5oZWFkZXJGaWx0ZXIgPSB7XHJcbiAgICAgICAgICAgICAgYWxsb3dTZWxlY3RBbGw6IGZhbHNlXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIGNvbHVtbi5maWx0ZXJPcGVyYXRpb25zID0gdGhpcy50eXBlTWFwW2ZpZWxkLmRhdGFUeXBlXS5maWx0ZXJPcGVyYXRpb25zO1xyXG4gICAgICAgICAgICBjb2x1bW4uZm9ybWF0ID0gdGhpcy50eXBlTWFwW2ZpZWxkLmRhdGFUeXBlXS5mb3JtYXQ7XHJcbiAgICAgICAgICAgIHN3aXRjaCAoZmllbGQuZGF0YVR5cGUpIHtcclxuICAgICAgICAgICAgICBjYXNlICdCT09MRUFOJzpcclxuICAgICAgICAgICAgICAgIGNvbHVtbi5hbGxvd0hlYWRlckZpbHRlcmluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgY29sdW1uLmFsaWdubWVudCA9ICdjZW50ZXInO1xyXG4gICAgICAgICAgICAgICAgY29sdW1uLnRydWVUZXh0ID0gJ+aYryc7XHJcbiAgICAgICAgICAgICAgICBjb2x1bW4uZmFsc2VUZXh0ID0gJ+WQpic7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICBjYXNlICdEQVRFJzpcclxuICAgICAgICAgICAgICBjYXNlICdEQVRFVElNRSc6XHJcbiAgICAgICAgICAgICAgICBjb2x1bW4uaGVhZGVyRmlsdGVyLmRhdGFTb3VyY2UgPSAob3B0aW9uczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIG9wdGlvbnMuZGF0YVNvdXJjZS5ncm91cC5sZW5ndGggPSAzO1xyXG4gICAgICAgICAgICAgICAgICBvcHRpb25zLmRhdGFTb3VyY2UucG9zdFByb2Nlc3MgPSAoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGF0YS5mb3JFYWNoKCh5ZWFyOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgIHllYXIudGV4dCA9IHllYXIua2V5ICsgJ+W5tCc7XHJcbiAgICAgICAgICAgICAgICAgICAgICB5ZWFyLml0ZW1zLmZvckVhY2goKG1vbnRoOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbW9udGgudGV4dCA9IG1vbnRoLmtleSArICfmnIgnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtb250aC5pdGVtcy5mb3JFYWNoKChkYXk6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRheS50ZXh0ID0gZGF5LmtleSArICfml6UnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRheS5pdGVtcyA9IFtdO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIGRhdGEudW5zaGlmdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICBrZXk6ICcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiAnKOepuueZvSknXHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgY2FzZSAnRE9VQkxFJzpcclxuICAgICAgICAgICAgICBjYXNlICdJTlRFR0VSJzpcclxuICAgICAgICAgICAgICAgIGNvbHVtbi5oZWFkZXJGaWx0ZXIuZGF0YVNvdXJjZSA9IChvcHRpb25zOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgb3B0aW9ucy5kYXRhU291cmNlLnBvc3RQcm9jZXNzID0gKGRhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGRhdGEudW5zaGlmdCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICBrZXk6ICcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiAnKOepuueZvSknXHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgZGF0YS5wdXNoKHtcclxuICAgICAgICAgICAgICAgICAgICAgIGtleTogJ19fJyxcclxuICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiAnX18nLFxyXG4gICAgICAgICAgICAgICAgICAgICAgdGV4dDogJ19fJyxcclxuICAgICAgICAgICAgICAgICAgICAgIHZpc2libGU6IGZhbHNlXHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgY29sdW1uLmFsaWdubWVudCA9ICdyaWdodCc7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICBjYXNlICdTVFJJTkcnOlxyXG4gICAgICAgICAgICAgICAgY29sdW1uLmhlYWRlckZpbHRlci5kYXRhU291cmNlID0gKG9wdGlvbnM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAvLyBUT0RPIOi2hei/hzIw5p2h5Lya5YiG6aG15re75Yqg5aSa5qyh77yM5LiN5YiG6aG15YmN56uv5oCn6IO95beu77yM6ICD6JmR5Zyo5p6E5bu6ZGF0YVNvdXJjZeaXtuWkhOeQhu+8jOS4juaXpeacn+exu+Wei+WtmOWcqOWGsueqgVxyXG4gICAgICAgICAgICAgICAgICBvcHRpb25zLmRhdGFTb3VyY2UucG9zdFByb2Nlc3MgPSAoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGF0YS51bnNoaWZ0KHtcclxuICAgICAgICAgICAgICAgICAgICAgIGtleTogJycsXHJcbiAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgIHRleHQ6ICco56m655m9KSdcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICBkYXRhLnB1c2goe1xyXG4gICAgICAgICAgICAgICAgICAgICAga2V5OiAnX18nLFxyXG4gICAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICdfXycsXHJcbiAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiAnX18nLFxyXG4gICAgICAgICAgICAgICAgICAgICAgdmlzaWJsZTogZmFsc2VcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICBzd2l0Y2ggKGZpZWxkLmNvbmZpZy5jb25zdHJhaW50LnR5cGUpIHtcclxuICAgICAgICAgICAgICAgICAgY2FzZSAnVVNFUic6XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbHVtbi52aWV3Q29uZmlnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICBjb2x1bW4udmlld0NvbmZpZy5jb21wb25lbnRDb25maWcgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLmNvbHVtbi52aWV3Q29uZmlnLmNvbXBvbmVudENvbmZpZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3JpZ2luYWxGaWVsZDogZmllbGQubmFtZVxyXG4gICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uLmhlYWRlckZpbHRlci5kYXRhU291cmNlID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgc3RvcmU6IG5ldyBDdXN0b21TdG9yZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvYWQ6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbGFzdFZhbHVlRnJvbSh0aGlzLnNlcnZpY2UuZ2V0VXNlckNvbHVtbkRhdGFTb3VyY2UodGVuYW50LCBjbGFzc05hbWUsIHZpZXcsIGZpZWxkLm5hbWUpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICAgICAgICBwYWdpbmF0ZTogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZpZWxkLmNvbmZpZy5jb25zdHJhaW50Lm11bHRpcGxlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICBjb2x1bW4uYWxsb3dGaWx0ZXJpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi5jYWxjdWxhdGVGaWx0ZXJFeHByZXNzaW9uID0gZnVuY3Rpb24gKHRoaXM6IENvbHVtbiwgZmlsdGVyVmFsdWU6IGFueSwgc2VsZWN0ZWRGaWx0ZXJPcGVyYXRpb246IGFueSwgdGFyZ2V0OiBzdHJpbmcpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZGVmYXVsdENhbGN1bGF0ZUZpbHRlckV4cHJlc3Npb24pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWZpbHRlclZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5kZWZhdWx0Q2FsY3VsYXRlRmlsdGVyRXhwcmVzc2lvbi5hcHBseSh0aGlzLCBbZmlsdGVyVmFsdWUsICc9JywgdGFyZ2V0XSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRlZmF1bHRDYWxjdWxhdGVGaWx0ZXJFeHByZXNzaW9uLmFwcGx5KHRoaXMsIFtmaWx0ZXJWYWx1ZSwgJ2NvbnRhaW5zJywgdGFyZ2V0XSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgY29sdW1uLmRhdGFGaWVsZCA9ICdfXycgKyBmaWVsZC5uYW1lICsgJ1xcdTAwMDFVc2VyX2Rpc3BsYXlOYW1lJztcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi5jYWxjdWxhdGVGaWx0ZXJFeHByZXNzaW9uID0gZnVuY3Rpb24gKHRoaXM6IGFueSwgZmlsdGVyVmFsdWU6IGFueSwgc2VsZWN0ZWRGaWx0ZXJPcGVyYXRpb246IGFueSwgdGFyZ2V0OiBzdHJpbmcpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRhcmdldCA9PT0gJ2hlYWRlckZpbHRlcicpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5kZWZhdWx0Q2FsY3VsYXRlRmlsdGVyRXhwcmVzc2lvbikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhRmllbGQgPSAnX18nICsgZmllbGQubmFtZSArICdcXHUwMDAxVXNlcl91c2VybmFtZSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5kZWZhdWx0Q2FsY3VsYXRlRmlsdGVyRXhwcmVzc2lvbi5hcHBseSh0aGlzLCBbZmlsdGVyVmFsdWUsIHNlbGVjdGVkRmlsdGVyT3BlcmF0aW9uLCB0YXJnZXRdKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sdW1uLm5hbWUsIHNlbGVjdGVkRmlsdGVyT3BlcmF0aW9uLCBmaWx0ZXJWYWx1ZV0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ29yJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbJ19fJyArIGZpZWxkLm5hbWUgKyAnXFx1MDAwMVVzZXJfdXNlcm5hbWUnLCBzZWxlY3RlZEZpbHRlck9wZXJhdGlvbiwgZmlsdGVyVmFsdWVdXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgY2FzZSAnVU5JVCc6XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbHVtbi52aWV3Q29uZmlnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICBjb2x1bW4udmlld0NvbmZpZy5jb21wb25lbnRDb25maWcgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLmNvbHVtbi52aWV3Q29uZmlnLmNvbXBvbmVudENvbmZpZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3JpZ2luYWxGaWVsZDogZmllbGQubmFtZVxyXG4gICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uLmhlYWRlckZpbHRlci5kYXRhU291cmNlID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgc3RvcmU6IG5ldyBDdXN0b21TdG9yZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvYWQ6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbGFzdFZhbHVlRnJvbSh0aGlzLnNlcnZpY2UuZ2V0VW5pdENvbHVtbkRhdGFTb3VyY2UodGVuYW50LCBjbGFzc05hbWUsIHZpZXcsIGZpZWxkLm5hbWUpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICAgICAgICBwYWdpbmF0ZTogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZpZWxkLmNvbmZpZy5jb25zdHJhaW50Lm11bHRpcGxlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICBjb2x1bW4uYWxsb3dGaWx0ZXJpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi5jYWxjdWxhdGVGaWx0ZXJFeHByZXNzaW9uID0gZnVuY3Rpb24gKHRoaXM6IENvbHVtbiwgZmlsdGVyVmFsdWU6IGFueSwgc2VsZWN0ZWRGaWx0ZXJPcGVyYXRpb246IGFueSwgdGFyZ2V0OiBzdHJpbmcpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZGVmYXVsdENhbGN1bGF0ZUZpbHRlckV4cHJlc3Npb24pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWZpbHRlclZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5kZWZhdWx0Q2FsY3VsYXRlRmlsdGVyRXhwcmVzc2lvbi5hcHBseSh0aGlzLCBbZmlsdGVyVmFsdWUsICc9JywgdGFyZ2V0XSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRlZmF1bHRDYWxjdWxhdGVGaWx0ZXJFeHByZXNzaW9uLmFwcGx5KHRoaXMsIFtmaWx0ZXJWYWx1ZSwgJ2NvbnRhaW5zJywgdGFyZ2V0XSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgY29sdW1uLmRhdGFGaWVsZCA9ICdfXycgKyBmaWVsZC5uYW1lICsgJ1xcdTAwMDFVbml0X2Rpc3BsYXlOYW1lJztcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi5jYWxjdWxhdGVGaWx0ZXJFeHByZXNzaW9uID0gZnVuY3Rpb24gKHRoaXM6IENvbHVtbiwgZmlsdGVyVmFsdWU6IGFueSwgc2VsZWN0ZWRGaWx0ZXJPcGVyYXRpb246IGFueSwgdGFyZ2V0OiBzdHJpbmcpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRhcmdldCA9PT0gJ2hlYWRlckZpbHRlcicpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5kZWZhdWx0Q2FsY3VsYXRlRmlsdGVyRXhwcmVzc2lvbikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhRmllbGQgPSAnX18nICsgZmllbGQubmFtZSArICdcXHUwMDAxVW5pdF9uYW1lJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRlZmF1bHRDYWxjdWxhdGVGaWx0ZXJFeHByZXNzaW9uLmFwcGx5KHRoaXMsIFtmaWx0ZXJWYWx1ZSwgc2VsZWN0ZWRGaWx0ZXJPcGVyYXRpb24sIHRhcmdldF0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2x1bW4ubmFtZSwgc2VsZWN0ZWRGaWx0ZXJPcGVyYXRpb24sIGZpbHRlclZhbHVlXSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAnb3InLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFsnX18nICsgZmllbGQubmFtZSArICdcXHUwMDAxVW5pdF9uYW1lJywgc2VsZWN0ZWRGaWx0ZXJPcGVyYXRpb24sIGZpbHRlclZhbHVlXVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgIGNhc2UgJ0NVU1RPTSc6XHJcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uLmhlYWRlckZpbHRlci5kYXRhU291cmNlID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgc3RvcmU6IG5ldyBDdXN0b21TdG9yZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvYWQ6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbGFzdFZhbHVlRnJvbSh0aGlzLnNlcnZpY2UuZ2V0Q29uc3RyYWludENvbHVtbkRhdGFTb3VyY2UodGVuYW50LCBjbGFzc05hbWUsIHZpZXcsIGZpZWxkLm5hbWUsIGZpZWxkLmNvbmZpZy5jb25zdHJhaW50Lm5hbWUpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICAgICAgICBwYWdpbmF0ZTogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uLmxvb2t1cCA9IHtcclxuICAgICAgICAgICAgICAgICAgICAgIGRhdGFTb3VyY2U6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmU6IG5ldyBDdXN0b21TdG9yZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbG9hZDogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGxhc3RWYWx1ZUZyb20odGhpcy5zZXJ2aWNlLmdldENvbnN0cmFpbnRFbnRyaWVzKHRlbmFudCwgZmllbGQuY29uZmlnLmNvbnN0cmFpbnQubmFtZSkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2luYXRlOiB0cnVlXHJcbiAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgdmFsdWVFeHByOiAnc3RvcmUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgZGlzcGxheUV4cHI6ICdkaXNwbGF5J1xyXG4gICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uLmZpbHRlck9wZXJhdGlvbnMgPSBbXTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoZmllbGQuY29uZmlnLmNvbnN0cmFpbnQubXVsdGlwbGUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi5jYWxjdWxhdGVGaWx0ZXJFeHByZXNzaW9uID0gZnVuY3Rpb24gKHRoaXM6IENvbHVtbiwgZmlsdGVyVmFsdWU6IGFueSwgc2VsZWN0ZWRGaWx0ZXJPcGVyYXRpb246IGFueSwgdGFyZ2V0OiBzdHJpbmcpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZGVmYXVsdENhbGN1bGF0ZUZpbHRlckV4cHJlc3Npb24pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWZpbHRlclZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5kZWZhdWx0Q2FsY3VsYXRlRmlsdGVyRXhwcmVzc2lvbi5hcHBseSh0aGlzLCBbZmlsdGVyVmFsdWUsICc9JywgdGFyZ2V0XSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRlZmF1bHRDYWxjdWxhdGVGaWx0ZXJFeHByZXNzaW9uLmFwcGx5KHRoaXMsIFtmaWx0ZXJWYWx1ZSwgJ2NvbnRhaW5zJywgdGFyZ2V0XSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICBjYXNlICdURVhUJzpcclxuICAgICAgICAgICAgICAgIGNvbHVtbi5hbGxvd0hlYWRlckZpbHRlcmluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlICdSRUxBVElPTic6XHJcbiAgICAgICAgICAgIGNvbHVtbi5hbGxvd0hlYWRlckZpbHRlcmluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICBjb2x1bW4uYWxsb3dTb3J0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHN3aXRjaCAoZmllbGQucmVsYXRpb25UeXBlKSB7XHJcbiAgICAgICAgICAgICAgY2FzZSAnTUFOWV9UT19PTkUnOlxyXG4gICAgICAgICAgICAgIGNhc2UgJ09ORV9UT19PTkUnOlxyXG4gICAgICAgICAgICAgICAgY29sdW1uLmZpbHRlck9wZXJhdGlvbnMgPSBbJz0nXTtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICBjb2x1bW4uYWxsb3dGaWx0ZXJpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbHVtbnMucHVzaChjb2x1bW4pO1xyXG4gICAgICB9XHJcbiAgICAgIHJlc3VsdC5uZXh0KGNvbHVtbnMpO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG1ha2VEYXRhR3JpZERhdGFTb3VyY2UodGVuYW50OiBhbnksIGNsYXNzTmFtZTogYW55LCB2aWV3OiBhbnksIGV4dHJhRmlsdGVyOiBhbnksIGtleUV4cHI/OiBzdHJpbmcsIGRhdGFHcmlkTmFtZT86IHN0cmluZyk6IEN1c3RvbVN0b3JlIHtcclxuICAgIGlmICgha2V5RXhwcikge1xyXG4gICAgICBrZXlFeHByID0gJ29pZCc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbmV3IEN1c3RvbVN0b3JlKHtcclxuICAgICAga2V5OiBrZXlFeHByLFxyXG4gICAgICBieUtleTogKGtleTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKCFrZXkpIHtcclxuICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGtleUV4cHIgPT09ICdvaWQnKSB7XHJcbiAgICAgICAgICByZXR1cm4gbGFzdFZhbHVlRnJvbSh0aGlzLnNlcnZpY2UuZ2V0T25lKHRlbmFudCwgY2xhc3NOYW1lLCBrZXkpLnBpcGUobWFwKHJlc3BvbnNlID0+IHJlc3BvbnNlLmRhdGEpKSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJldHVybiBsYXN0VmFsdWVGcm9tKHRoaXMuc2VydmljZS5nZXRPbmVCeUZpbHRlcih0ZW5hbnQsIGNsYXNzTmFtZSwga2V5RXhwciwga2V5LCB2aWV3KSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBsb2FkOiAobG9hZE9wdGlvbnM6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChsb2FkT3B0aW9ucy5kYXRhRmllbGQpIHtcclxuICAgICAgICAgIC8vIOacqumHjeWGmWhlYWRlckZpbHRlcueahGRhdGFTb3VyY2Xml7bvvIxoZWFkZXJGaWx0ZXLkvJrosIPnlKhsb2Fk5pa55rOV5Yqg6L29562b6YCJ5qCR77yM6YeN5YaZ6K+l5pa55rOV5p+l6K+i6K+l6KGo5omA5pyJ5pWw5o2uXHJcbiAgICAgICAgICAvLyDor6XmlrnlvI/lrZjlnKjpo47pmanvvIzml6Dms5Xor4bliKtEZXZFeHRyZW1l5LiA5a6a5piv6YCa6L+HaGVhZGVyRmlsdGVy6L+H5ruk5omN5a2Y5ZyoZGF0YUZpZWxk5Y+C5pWwXHJcbiAgICAgICAgICAvLyBUT0RPIOmcgOimgeiAg+iZkeW3suWtmOWcqOeahOi/h+a7pOadoeS7tu+8jOS4juW4pue6puadn+eahOWtl+auteWtmOWcqOWGsueqge+8jOatpOWkhOWtmOWcqOi/h+a7pOadoeS7tu+8jOWKoOi9veWIl+aXtuW4pue6puadn+eahOWtl+auteaehOW7uueahGRhdGFTb3VyY2Xojrflj5bkuI3liLDov4fmu6TmnaHku7ZcclxuICAgICAgICAgIHJldHVybiBsYXN0VmFsdWVGcm9tKHRoaXMuc2VydmljZS5nZXRDb2x1bW5EYXRhU291cmNlKHRlbmFudCwgY2xhc3NOYW1lLCB2aWV3LCBsb2FkT3B0aW9ucy5kYXRhRmllbGQpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IHBhcmFtcyA9ICc/JztcclxuICAgICAgICBpZiAobG9hZE9wdGlvbnMuc2tpcCB8fCBsb2FkT3B0aW9ucy50YWtlKSB7XHJcbiAgICAgICAgICBwYXJhbXMgKz0gJ29mZnNldD0nICsgbG9hZE9wdGlvbnMuc2tpcDtcclxuICAgICAgICAgIHBhcmFtcyArPSAnJmxpbWl0PScgKyBsb2FkT3B0aW9ucy50YWtlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBwYXJhbXMgKz0gJ2xpbWl0PTAnO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAobG9hZE9wdGlvbnMuc29ydCkge1xyXG4gICAgICAgICAgbGV0IGZpcnN0ID0gdHJ1ZTtcclxuICAgICAgICAgIGZvciAoY29uc3QgdGhpc1NvcnQgb2YgbG9hZE9wdGlvbnMuc29ydCkge1xyXG4gICAgICAgICAgICBpZiAoZmlyc3QpIHtcclxuICAgICAgICAgICAgICBwYXJhbXMgKz0gJyZvcmRlckJ5PScgKyB0aGlzU29ydC5zZWxlY3RvcjtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBwYXJhbXMgKz0gJywnICsgdGhpc1NvcnQuc2VsZWN0b3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKHRoaXNTb3J0LmRlc2MpIHtcclxuICAgICAgICAgICAgICBwYXJhbXMgKz0gJyBkZXNjJztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBmaXJzdCA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgZmlsdGVyO1xyXG4gICAgICAgIGlmIChsb2FkT3B0aW9ucy5maWx0ZXIpIHtcclxuICAgICAgICAgIGZpbHRlciA9IGxvYWRPcHRpb25zLmZpbHRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGV4dHJhRmlsdGVyKSB7XHJcbiAgICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoZXh0cmFGaWx0ZXIpKSB7XHJcbiAgICAgICAgICAgIGV4dHJhRmlsdGVyID0gSlNPTi5wYXJzZShleHRyYUZpbHRlcik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAoZmlsdGVyKSB7XHJcbiAgICAgICAgICAgIGZpbHRlciA9IFtmaWx0ZXIsICdhbmQnLCBleHRyYUZpbHRlcl07XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBmaWx0ZXIgPSBleHRyYUZpbHRlcjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGZpbHRlcikge1xyXG4gICAgICAgICAgcGFyYW1zICs9ICcmZmlsdGVyPScgKyBlbmNvZGVVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkoZmlsdGVyKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHBhcmFtcyArPSAnJnZpZXc9JyArICh2aWV3IHx8ICcnKTtcclxuICAgICAgICBpZiAoZGF0YUdyaWROYW1lKSB7XHJcbiAgICAgICAgICBwYXJhbXMgKz0gJyZkYXRhR3JpZE5hbWU9JyArIGRhdGFHcmlkTmFtZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGxhc3RWYWx1ZUZyb20odGhpcy5zZXJ2aWNlLmdldE1hbnkodGVuYW50LCBjbGFzc05hbWUsIHBhcmFtcykpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
|
|
355
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLmZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9kYXRhLWdyaWQvZGF0YS1ncmlkLmZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxXQUFXLE1BQU0sOEJBQThCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGFBQWEsRUFBRSxHQUFHLEVBQWMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRTdELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDOzs7QUFPcEQsTUFBTSxPQUFPLGVBQWU7SUFDMUIsWUFBb0IsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQU01QixZQUFPLEdBQVE7WUFDckIsTUFBTSxFQUFFO2dCQUNOLFFBQVEsRUFBRSxRQUFRO2dCQUNsQixnQkFBZ0IsRUFBRSxDQUFDLFVBQVUsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUM7YUFDcEU7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osUUFBUSxFQUFFLFFBQVE7Z0JBQ2xCLGdCQUFnQixFQUFFLENBQUMsVUFBVSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQzthQUNwRTtZQUNELE9BQU8sRUFBRTtnQkFDUCxRQUFRLEVBQUUsU0FBUztnQkFDbkIsZ0JBQWdCLEVBQUUsRUFBRTthQUNyQjtZQUNELE9BQU8sRUFBRTtnQkFDUCxRQUFRLEVBQUUsUUFBUTtnQkFDbEIsZ0JBQWdCLEVBQUUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUM7YUFDL0Q7WUFDRCxNQUFNLEVBQUU7Z0JBQ04sUUFBUSxFQUFFLFFBQVE7Z0JBQ2xC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QUFJLEVBQUUsQ0FBQyxDQUFDO2dCQUNsQyxJQUFJLFlBQVksRUFBRTtvQkFDaEIsTUFBTSxJQUFJLGdCQUFnQixHQUFHLFlBQVksQ0FBQztpQkFDM0M7Z0JBQ0QsT0FBTyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBQ3hFLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOzs2R0FoVlUsZUFBZTtpSEFBZixlQUFlLGNBRmQsTUFBTTs0RkFFUCxlQUFlO2tCQUgzQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBDdXN0b21TdG9yZSBmcm9tIFwiZGV2ZXh0cmVtZS9kYXRhL2N1c3RvbV9zdG9yZVwiO1xyXG5pbXBvcnQge2xhc3RWYWx1ZUZyb20sIG1hcCwgT2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHtDb2x1bW59IGZyb20gXCJkZXZleHRyZW1lL3VpL2RhdGFfZ3JpZFwiO1xyXG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7RGF0YUdyaWRTZXJ2aWNlfSBmcm9tIFwiLi9kYXRhLWdyaWQuc2VydmljZVwiO1xyXG5pbXBvcnQge0h0dHBDbGllbnR9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQge0RhdGFHcmlkQ29tcG9uZW50fSBmcm9tIFwiLi9kYXRhLWdyaWQuY29tcG9uZW50XCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXRhR3JpZEZhY3Rvcnkge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkge1xyXG4gICAgdGhpcy5zZXJ2aWNlID0gbmV3IERhdGFHcmlkU2VydmljZShodHRwKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2VydmljZSE6IERhdGFHcmlkU2VydmljZTtcclxuXHJcbiAgcHJpdmF0ZSB0eXBlTWFwOiBhbnkgPSB7XHJcbiAgICBTVFJJTkc6IHtcclxuICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxyXG4gICAgICBmaWx0ZXJPcGVyYXRpb25zOiBbJ2NvbnRhaW5zJywgJ3N0YXJ0c3dpdGgnLCAnZW5kc3dpdGgnLCAnPScsICc8PiddXHJcbiAgICB9LFxyXG4gICAgVEVYVDoge1xyXG4gICAgICBkYXRhVHlwZTogJ3N0cmluZycsXHJcbiAgICAgIGZpbHRlck9wZXJhdGlvbnM6IFsnY29udGFpbnMnLCAnc3RhcnRzd2l0aCcsICdlbmRzd2l0aCcsICc9JywgJzw+J11cclxuICAgIH0sXHJcbiAgICBCT09MRUFOOiB7XHJcbiAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXHJcbiAgICAgIGZpbHRlck9wZXJhdGlvbnM6IFtdXHJcbiAgICB9LFxyXG4gICAgSU5URUdFUjoge1xyXG4gICAgICBkYXRhVHlwZTogJ251bWJlcicsXHJcbiAgICAgIGZpbHRlck9wZXJhdGlvbnM6IFsnPScsICc8PicsICc+JywgJz49JywgJzwnLCAnPD0nLCAnYmV0d2VlbiddXHJcbiAgICB9LFxyXG4gICAgRE9VQkxFOiB7XHJcbiAgICAgIGRhdGFUeXBlOiAnbnVtYmVyJyxcclxuICAgICAgZmlsdGVyT3BlcmF0aW9uczogWyc9JywgJzw+JywgJz4nLCAnPj0nLCAnPCcsICc8PScsICdiZXR3ZWVuJ11cclxuICAgIH0sXHJcbiAgICBEQVRFOiB7XHJcbiAgICAgIGRhdGFUeXBlOiAnZGF0ZScsXHJcbiAgICAgIGZpbHRlck9wZXJhdGlvbnM6IFsnPScsICc8PicsICc+JywgJz49JywgJzwnLCAnPD0nLCAnYmV0d2VlbiddLFxyXG4gICAgICBmb3JtYXQ6ICd5eXl5L01NL2RkJ1xyXG4gICAgfSxcclxuICAgIERBVEVUSU1FOiB7XHJcbiAgICAgIGRhdGFUeXBlOiAnZGF0ZXRpbWUnLFxyXG4gICAgICBmaWx0ZXJPcGVyYXRpb25zOiBbJz4nLCAnPCcsICdiZXR3ZWVuJ10sXHJcbiAgICAgIGZvcm1hdDogJ3l5eXkvTU0vZGQgSEg6bW06c3MnXHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgcHVibGljIG1ha2VEYXRhR3JpZENvbHVtbnModGVuYW50OiBhbnksIGNsYXNzTmFtZTogYW55LCB2aWV3OiBhbnksIGRhdGFHcmlkSW5zdGFuY2U6IERhdGFHcmlkQ29tcG9uZW50KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgICB0aGlzLnNlcnZpY2UuZ2V0TWV0YWRhdGFCeVZpZXcodGVuYW50LCBjbGFzc05hbWUsIHZpZXcgfHwgJycpLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XHJcbiAgICAgIGNvbnN0IGNvbHVtbnMgPSBbXTtcclxuICAgICAgZm9yIChsZXQgZmllbGQgb2YgcmVzcG9uc2UuZGF0YS5jb2x1bW5zKSB7XHJcbiAgICAgICAgbGV0IGNvbHVtbjogYW55ID0ge1xyXG4gICAgICAgICAgZGF0YUZpZWxkOiBmaWVsZC5uYW1lLFxyXG4gICAgICAgICAgY2FwdGlvbjogZmllbGQuY2FwdGlvbixcclxuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcclxuICAgICAgICAgIGFsaWdubWVudDogJ2xlZnQnLFxyXG4gICAgICAgICAgYWxsb3dIZWFkZXJGaWx0ZXJpbmc6IHRydWUsXHJcbiAgICAgICAgICBhbGxvd0ZpbHRlcmluZzogdHJ1ZSxcclxuICAgICAgICAgIGFsbG93U29ydGluZzogdHJ1ZSxcclxuICAgICAgICAgIHZpc2libGU6IGZpZWxkLnZpc2libGUsXHJcbiAgICAgICAgICBmaXhlZDogZmllbGQuZml4ZWRcclxuICAgICAgICB9O1xyXG4gICAgICAgIGlmIChmaWVsZC52aWV3Q29uZmlnLmNvbHVtbldpZHRoKSB7XHJcbiAgICAgICAgICBjb2x1bW4ud2lkdGggPSBmaWVsZC52aWV3Q29uZmlnLmNvbHVtbldpZHRoO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZmllbGQudmlld0NvbmZpZy5hbGlnbkNlbnRlcikge1xyXG4gICAgICAgICAgY29sdW1uLmFsaWdubWVudCA9ICdjZW50ZXInO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZmllbGQudmlld0NvbmZpZy5jb21wb25lbnQpIHtcclxuICAgICAgICAgIGNvbHVtbi5jZWxsVGVtcGxhdGUgPSAnY2VsbENvbXBvbmVudFRlbXBsYXRlJztcclxuICAgICAgICAgIGNvbHVtbi5jb25maWcgPSBmaWVsZC5jb25maWc7XHJcbiAgICAgICAgICBjb2x1bW4udmlld0NvbmZpZyA9IGZpZWxkLnZpZXdDb25maWc7XHJcbiAgICAgICAgICBjb2x1bW4ucmVuZGVyQXN5bmMgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzd2l0Y2ggKGZpZWxkLnR5cGUpIHtcclxuICAgICAgICAgIGNhc2UgJ0ZJTEUnOlxyXG4gICAgICAgICAgICBjb2x1bW4uYWxsb3dIZWFkZXJGaWx0ZXJpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgY29sdW1uLmFsbG93RmlsdGVyaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGNvbHVtbi5hbGxvd1NvcnRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlICdOT1JNQUwnOlxyXG4gICAgICAgICAgICBjb2x1bW4uZGF0YVR5cGUgPSB0aGlzLnR5cGVNYXBbZmllbGQuZGF0YVR5cGVdLmRhdGFUeXBlO1xyXG4gICAgICAgICAgICBjb2x1bW4uaGVhZGVyRmlsdGVyID0ge1xyXG4gICAgICAgICAgICAgIGFsbG93U2VsZWN0QWxsOiBmYWxzZVxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICBjb2x1bW4uZmlsdGVyT3BlcmF0aW9ucyA9IHRoaXMudHlwZU1hcFtmaWVsZC5kYXRhVHlwZV0uZmlsdGVyT3BlcmF0aW9ucztcclxuICAgICAgICAgICAgY29sdW1uLmZvcm1hdCA9IHRoaXMudHlwZU1hcFtmaWVsZC5kYXRhVHlwZV0uZm9ybWF0O1xyXG4gICAgICAgICAgICBzd2l0Y2ggKGZpZWxkLmRhdGFUeXBlKSB7XHJcbiAgICAgICAgICAgICAgY2FzZSAnQk9PTEVBTic6XHJcbiAgICAgICAgICAgICAgICBjb2x1bW4uYWxsb3dIZWFkZXJGaWx0ZXJpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGNvbHVtbi5hbGlnbm1lbnQgPSAnY2VudGVyJztcclxuICAgICAgICAgICAgICAgIGNvbHVtbi50cnVlVGV4dCA9ICfmmK8nO1xyXG4gICAgICAgICAgICAgICAgY29sdW1uLmZhbHNlVGV4dCA9ICflkKYnO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgY2FzZSAnREFURSc6XHJcbiAgICAgICAgICAgICAgY2FzZSAnREFURVRJTUUnOlxyXG4gICAgICAgICAgICAgICAgY29sdW1uLmhlYWRlckZpbHRlci5kYXRhU291cmNlID0gKG9wdGlvbnM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICBvcHRpb25zLmRhdGFTb3VyY2UuZ3JvdXAubGVuZ3RoID0gMztcclxuICAgICAgICAgICAgICAgICAgb3B0aW9ucy5kYXRhU291cmNlLnBvc3RQcm9jZXNzID0gKGRhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGRhdGEuZm9yRWFjaCgoeWVhcjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICB5ZWFyLnRleHQgPSB5ZWFyLmtleSArICflubQnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgeWVhci5pdGVtcy5mb3JFYWNoKChtb250aDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1vbnRoLnRleHQgPSBtb250aC5rZXkgKyAn5pyIJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgbW9udGguaXRlbXMuZm9yRWFjaCgoZGF5OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBkYXkudGV4dCA9IGRheS5rZXkgKyAn5pelJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBkYXkuaXRlbXMgPSBbXTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICBkYXRhLnVuc2hpZnQoe1xyXG4gICAgICAgICAgICAgICAgICAgICAga2V5OiAnJyxcclxuICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgdGV4dDogJyjnqbrnmb0pJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgIGNhc2UgJ0RPVUJMRSc6XHJcbiAgICAgICAgICAgICAgY2FzZSAnSU5URUdFUic6XHJcbiAgICAgICAgICAgICAgICBjb2x1bW4uYWxpZ25tZW50ID0gJ3JpZ2h0JztcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgIGNhc2UgJ1NUUklORyc6XHJcbiAgICAgICAgICAgICAgICBzd2l0Y2ggKGZpZWxkLmNvbmZpZy5jb25zdHJhaW50LnR5cGUpIHtcclxuICAgICAgICAgICAgICAgICAgY2FzZSAnVVNFUic6XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbHVtbi52aWV3Q29uZmlnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICBjb2x1bW4udmlld0NvbmZpZy5jb21wb25lbnRDb25maWcgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLmNvbHVtbi52aWV3Q29uZmlnLmNvbXBvbmVudENvbmZpZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3JpZ2luYWxGaWVsZDogZmllbGQubmFtZVxyXG4gICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uLmhlYWRlckZpbHRlci5kYXRhU291cmNlID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgc3RvcmU6IG5ldyBDdXN0b21TdG9yZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvYWQ6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBmaWx0ZXIgPSBKU09OLnN0cmluZ2lmeShkYXRhR3JpZEluc3RhbmNlLmdldENvbWJpbmVkRmlsdGVyKCkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBsYXN0VmFsdWVGcm9tKHRoaXMuc2VydmljZS5nZXRVc2VyQ29sdW1uRGF0YVNvdXJjZSh0ZW5hbnQsIGNsYXNzTmFtZSwgdmlldywgZmllbGQubmFtZSwgZmlsdGVyKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgICAgICAgcGFnaW5hdGU6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChmaWVsZC5jb25maWcuY29uc3RyYWludC5tdWx0aXBsZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgY29sdW1uLmFsbG93RmlsdGVyaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICBjb2x1bW4uY2FsY3VsYXRlRmlsdGVyRXhwcmVzc2lvbiA9IGZ1bmN0aW9uICh0aGlzOiBDb2x1bW4sIGZpbHRlclZhbHVlOiBhbnksIHNlbGVjdGVkRmlsdGVyT3BlcmF0aW9uOiBhbnksIHRhcmdldDogc3RyaW5nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmRlZmF1bHRDYWxjdWxhdGVGaWx0ZXJFeHByZXNzaW9uKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFmaWx0ZXJWYWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVmYXVsdENhbGN1bGF0ZUZpbHRlckV4cHJlc3Npb24uYXBwbHkodGhpcywgW2ZpbHRlclZhbHVlLCAnPScsIHRhcmdldF0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5kZWZhdWx0Q2FsY3VsYXRlRmlsdGVyRXhwcmVzc2lvbi5hcHBseSh0aGlzLCBbZmlsdGVyVmFsdWUsICdjb250YWlucycsIHRhcmdldF0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnJztcclxuICAgICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi5kYXRhRmllbGQgPSAnX18nICsgZmllbGQubmFtZSArICdcXHUwMDAxVXNlcl9kaXNwbGF5TmFtZSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICBjb2x1bW4uY2FsY3VsYXRlRmlsdGVyRXhwcmVzc2lvbiA9IGZ1bmN0aW9uICh0aGlzOiBhbnksIGZpbHRlclZhbHVlOiBhbnksIHNlbGVjdGVkRmlsdGVyT3BlcmF0aW9uOiBhbnksIHRhcmdldDogc3RyaW5nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0YXJnZXQgPT09ICdoZWFkZXJGaWx0ZXInKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZGVmYXVsdENhbGN1bGF0ZUZpbHRlckV4cHJlc3Npb24pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YUZpZWxkID0gJ19fJyArIGZpZWxkLm5hbWUgKyAnXFx1MDAwMVVzZXJfdXNlcm5hbWUnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVmYXVsdENhbGN1bGF0ZUZpbHRlckV4cHJlc3Npb24uYXBwbHkodGhpcywgW2ZpbHRlclZhbHVlLCBzZWxlY3RlZEZpbHRlck9wZXJhdGlvbiwgdGFyZ2V0XSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbHVtbi5uYW1lLCBzZWxlY3RlZEZpbHRlck9wZXJhdGlvbiwgZmlsdGVyVmFsdWVdLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICdvcicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgWydfXycgKyBmaWVsZC5uYW1lICsgJ1xcdTAwMDFVc2VyX3VzZXJuYW1lJywgc2VsZWN0ZWRGaWx0ZXJPcGVyYXRpb24sIGZpbHRlclZhbHVlXVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgIGNhc2UgJ1VOSVQnOlxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChjb2x1bW4udmlld0NvbmZpZykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgY29sdW1uLnZpZXdDb25maWcuY29tcG9uZW50Q29uZmlnID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5jb2x1bW4udmlld0NvbmZpZy5jb21wb25lbnRDb25maWcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yaWdpbmFsRmllbGQ6IGZpZWxkLm5hbWVcclxuICAgICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbi5oZWFkZXJGaWx0ZXIuZGF0YVNvdXJjZSA9IHtcclxuICAgICAgICAgICAgICAgICAgICAgIHN0b3JlOiBuZXcgQ3VzdG9tU3RvcmUoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsb2FkOiAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZmlsdGVyID0gSlNPTi5zdHJpbmdpZnkoZGF0YUdyaWRJbnN0YW5jZS5nZXRDb21iaW5lZEZpbHRlcigpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbGFzdFZhbHVlRnJvbSh0aGlzLnNlcnZpY2UuZ2V0VW5pdENvbHVtbkRhdGFTb3VyY2UodGVuYW50LCBjbGFzc05hbWUsIHZpZXcsIGZpZWxkLm5hbWUsIGZpbHRlcikpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICAgICAgIHBhZ2luYXRlOiB0cnVlXHJcbiAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoZmllbGQuY29uZmlnLmNvbnN0cmFpbnQubXVsdGlwbGUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi5hbGxvd0ZpbHRlcmluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgY29sdW1uLmNhbGN1bGF0ZUZpbHRlckV4cHJlc3Npb24gPSBmdW5jdGlvbiAodGhpczogQ29sdW1uLCBmaWx0ZXJWYWx1ZTogYW55LCBzZWxlY3RlZEZpbHRlck9wZXJhdGlvbjogYW55LCB0YXJnZXQ6IHN0cmluZykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5kZWZhdWx0Q2FsY3VsYXRlRmlsdGVyRXhwcmVzc2lvbikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghZmlsdGVyVmFsdWUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRlZmF1bHRDYWxjdWxhdGVGaWx0ZXJFeHByZXNzaW9uLmFwcGx5KHRoaXMsIFtmaWx0ZXJWYWx1ZSwgJz0nLCB0YXJnZXRdKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVmYXVsdENhbGN1bGF0ZUZpbHRlckV4cHJlc3Npb24uYXBwbHkodGhpcywgW2ZpbHRlclZhbHVlLCAnY29udGFpbnMnLCB0YXJnZXRdKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICBjb2x1bW4uZGF0YUZpZWxkID0gJ19fJyArIGZpZWxkLm5hbWUgKyAnXFx1MDAwMVVuaXRfZGlzcGxheU5hbWUnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgY29sdW1uLmNhbGN1bGF0ZUZpbHRlckV4cHJlc3Npb24gPSBmdW5jdGlvbiAodGhpczogQ29sdW1uLCBmaWx0ZXJWYWx1ZTogYW55LCBzZWxlY3RlZEZpbHRlck9wZXJhdGlvbjogYW55LCB0YXJnZXQ6IHN0cmluZykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodGFyZ2V0ID09PSAnaGVhZGVyRmlsdGVyJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmRlZmF1bHRDYWxjdWxhdGVGaWx0ZXJFeHByZXNzaW9uKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGFGaWVsZCA9ICdfXycgKyBmaWVsZC5uYW1lICsgJ1xcdTAwMDFVbml0X25hbWUnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVmYXVsdENhbGN1bGF0ZUZpbHRlckV4cHJlc3Npb24uYXBwbHkodGhpcywgW2ZpbHRlclZhbHVlLCBzZWxlY3RlZEZpbHRlck9wZXJhdGlvbiwgdGFyZ2V0XSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbHVtbi5uYW1lLCBzZWxlY3RlZEZpbHRlck9wZXJhdGlvbiwgZmlsdGVyVmFsdWVdLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICdvcicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgWydfXycgKyBmaWVsZC5uYW1lICsgJ1xcdTAwMDFVbml0X25hbWUnLCBzZWxlY3RlZEZpbHRlck9wZXJhdGlvbiwgZmlsdGVyVmFsdWVdXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgY2FzZSAnQ1VTVE9NJzpcclxuICAgICAgICAgICAgICAgICAgICBjb2x1bW4uaGVhZGVyRmlsdGVyLmRhdGFTb3VyY2UgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICBzdG9yZTogbmV3IEN1c3RvbVN0b3JlKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbG9hZDogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGZpbHRlciA9IEpTT04uc3RyaW5naWZ5KGRhdGFHcmlkSW5zdGFuY2UuZ2V0Q29tYmluZWRGaWx0ZXIoKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGxhc3RWYWx1ZUZyb20odGhpcy5zZXJ2aWNlLmdldENvbnN0cmFpbnRDb2x1bW5EYXRhU291cmNlKHRlbmFudCwgY2xhc3NOYW1lLCB2aWV3LCBmaWVsZC5uYW1lLCBmaWVsZC5jb25maWcuY29uc3RyYWludC5uYW1lLCBmaWx0ZXIpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICAgICAgICBwYWdpbmF0ZTogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uLmxvb2t1cCA9IHtcclxuICAgICAgICAgICAgICAgICAgICAgIGRhdGFTb3VyY2U6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmU6IG5ldyBDdXN0b21TdG9yZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbG9hZDogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGxhc3RWYWx1ZUZyb20odGhpcy5zZXJ2aWNlLmdldENvbnN0cmFpbnRFbnRyaWVzKHRlbmFudCwgZmllbGQuY29uZmlnLmNvbnN0cmFpbnQubmFtZSkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2luYXRlOiB0cnVlXHJcbiAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgdmFsdWVFeHByOiAnc3RvcmUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgZGlzcGxheUV4cHI6ICdkaXNwbGF5J1xyXG4gICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uLmZpbHRlck9wZXJhdGlvbnMgPSBbXTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoZmllbGQuY29uZmlnLmNvbnN0cmFpbnQubXVsdGlwbGUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi5jYWxjdWxhdGVGaWx0ZXJFeHByZXNzaW9uID0gZnVuY3Rpb24gKHRoaXM6IENvbHVtbiwgZmlsdGVyVmFsdWU6IGFueSwgc2VsZWN0ZWRGaWx0ZXJPcGVyYXRpb246IGFueSwgdGFyZ2V0OiBzdHJpbmcpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZGVmYXVsdENhbGN1bGF0ZUZpbHRlckV4cHJlc3Npb24pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWZpbHRlclZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5kZWZhdWx0Q2FsY3VsYXRlRmlsdGVyRXhwcmVzc2lvbi5hcHBseSh0aGlzLCBbZmlsdGVyVmFsdWUsICc9JywgdGFyZ2V0XSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRlZmF1bHRDYWxjdWxhdGVGaWx0ZXJFeHByZXNzaW9uLmFwcGx5KHRoaXMsIFtmaWx0ZXJWYWx1ZSwgJ2NvbnRhaW5zJywgdGFyZ2V0XSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICBjYXNlICdURVhUJzpcclxuICAgICAgICAgICAgICAgIGNvbHVtbi5hbGxvd0hlYWRlckZpbHRlcmluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlICdSRUxBVElPTic6XHJcbiAgICAgICAgICAgIGNvbHVtbi5hbGxvd0hlYWRlckZpbHRlcmluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICBjb2x1bW4uYWxsb3dTb3J0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHN3aXRjaCAoZmllbGQucmVsYXRpb25UeXBlKSB7XHJcbiAgICAgICAgICAgICAgY2FzZSAnTUFOWV9UT19PTkUnOlxyXG4gICAgICAgICAgICAgIGNhc2UgJ09ORV9UT19PTkUnOlxyXG4gICAgICAgICAgICAgICAgY29sdW1uLmZpbHRlck9wZXJhdGlvbnMgPSBbJz0nXTtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICBjb2x1bW4uYWxsb3dGaWx0ZXJpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbHVtbnMucHVzaChjb2x1bW4pO1xyXG4gICAgICB9XHJcbiAgICAgIHJlc3VsdC5uZXh0KGNvbHVtbnMpO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG1ha2VEYXRhR3JpZERhdGFTb3VyY2UodGVuYW50OiBhbnksIGNsYXNzTmFtZTogYW55LCB2aWV3OiBhbnksIGV4dHJhRmlsdGVyOiBhbnksIGtleUV4cHI/OiBzdHJpbmcsIGRhdGFHcmlkTmFtZT86IHN0cmluZyk6IEN1c3RvbVN0b3JlIHtcclxuICAgIGlmICgha2V5RXhwcikge1xyXG4gICAgICBrZXlFeHByID0gJ29pZCc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbmV3IEN1c3RvbVN0b3JlKHtcclxuICAgICAga2V5OiBrZXlFeHByLFxyXG4gICAgICBieUtleTogKGtleTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKCFrZXkpIHtcclxuICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGtleUV4cHIgPT09ICdvaWQnKSB7XHJcbiAgICAgICAgICByZXR1cm4gbGFzdFZhbHVlRnJvbSh0aGlzLnNlcnZpY2UuZ2V0T25lKHRlbmFudCwgY2xhc3NOYW1lLCBrZXkpLnBpcGUobWFwKHJlc3BvbnNlID0+IHJlc3BvbnNlLmRhdGEpKSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJldHVybiBsYXN0VmFsdWVGcm9tKHRoaXMuc2VydmljZS5nZXRPbmVCeUZpbHRlcih0ZW5hbnQsIGNsYXNzTmFtZSwga2V5RXhwciwga2V5LCB2aWV3KSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBsb2FkOiAobG9hZE9wdGlvbnM6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChsb2FkT3B0aW9ucy5kYXRhRmllbGQpIHtcclxuICAgICAgICAgIC8vIOacqumHjeWGmWhlYWRlckZpbHRlcueahGRhdGFTb3VyY2Xml7bvvIxoZWFkZXJGaWx0ZXLkvJrosIPnlKhsb2Fk5pa55rOV5Yqg6L29562b6YCJ5qCR77yM6YeN5YaZ6K+l5pa55rOV5p+l6K+i6K+l6KGo5omA5pyJ5pWw5o2uXHJcbiAgICAgICAgICAvLyDor6XmlrnlvI/lrZjlnKjpo47pmanvvIzml6Dms5Xor4bliKtEZXZFeHRyZW1l5LiA5a6a5piv6YCa6L+HaGVhZGVyRmlsdGVy6L+H5ruk5omN5a2Y5ZyoZGF0YUZpZWxk5Y+C5pWwXHJcbiAgICAgICAgICByZXR1cm4gbGFzdFZhbHVlRnJvbSh0aGlzLnNlcnZpY2UuZ2V0Q29sdW1uRGF0YVNvdXJjZSh0ZW5hbnQsIGNsYXNzTmFtZSwgdmlldywgbG9hZE9wdGlvbnMuZGF0YUZpZWxkLCBKU09OLnN0cmluZ2lmeShsb2FkT3B0aW9ucy5maWx0ZXIpKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBwYXJhbXMgPSAnPyc7XHJcbiAgICAgICAgaWYgKGxvYWRPcHRpb25zLnNraXAgfHwgbG9hZE9wdGlvbnMudGFrZSkge1xyXG4gICAgICAgICAgcGFyYW1zICs9ICdvZmZzZXQ9JyArIGxvYWRPcHRpb25zLnNraXA7XHJcbiAgICAgICAgICBwYXJhbXMgKz0gJyZsaW1pdD0nICsgbG9hZE9wdGlvbnMudGFrZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcGFyYW1zICs9ICdsaW1pdD0wJztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGxvYWRPcHRpb25zLnNvcnQpIHtcclxuICAgICAgICAgIGxldCBmaXJzdCA9IHRydWU7XHJcbiAgICAgICAgICBmb3IgKGNvbnN0IHRoaXNTb3J0IG9mIGxvYWRPcHRpb25zLnNvcnQpIHtcclxuICAgICAgICAgICAgaWYgKGZpcnN0KSB7XHJcbiAgICAgICAgICAgICAgcGFyYW1zICs9ICcmb3JkZXJCeT0nICsgdGhpc1NvcnQuc2VsZWN0b3I7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgcGFyYW1zICs9ICcsJyArIHRoaXNTb3J0LnNlbGVjdG9yO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmICh0aGlzU29ydC5kZXNjKSB7XHJcbiAgICAgICAgICAgICAgcGFyYW1zICs9ICcgZGVzYyc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZmlyc3QgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IGZpbHRlcjtcclxuICAgICAgICBpZiAobG9hZE9wdGlvbnMuZmlsdGVyKSB7XHJcbiAgICAgICAgICBmaWx0ZXIgPSBsb2FkT3B0aW9ucy5maWx0ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChleHRyYUZpbHRlcikge1xyXG4gICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGV4dHJhRmlsdGVyKSkge1xyXG4gICAgICAgICAgICBleHRyYUZpbHRlciA9IEpTT04ucGFyc2UoZXh0cmFGaWx0ZXIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKGZpbHRlcikge1xyXG4gICAgICAgICAgICBmaWx0ZXIgPSBbZmlsdGVyLCAnYW5kJywgZXh0cmFGaWx0ZXJdO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZmlsdGVyID0gZXh0cmFGaWx0ZXI7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChmaWx0ZXIpIHtcclxuICAgICAgICAgIHBhcmFtcyArPSAnJmZpbHRlcj0nICsgZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KGZpbHRlcikpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBwYXJhbXMgKz0gJyZ2aWV3PScgKyAodmlldyB8fCAnJyk7XHJcbiAgICAgICAgaWYgKGRhdGFHcmlkTmFtZSkge1xyXG4gICAgICAgICAgcGFyYW1zICs9ICcmZGF0YUdyaWROYW1lPScgKyBkYXRhR3JpZE5hbWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBsYXN0VmFsdWVGcm9tKHRoaXMuc2VydmljZS5nZXRNYW55KHRlbmFudCwgY2xhc3NOYW1lLCBwYXJhbXMpKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -74,14 +74,15 @@ export class DataGridService {
|
|
|
74
74
|
}
|
|
75
75
|
return window.coast.cache[key];
|
|
76
76
|
}
|
|
77
|
-
getUserColumnDataSource(tenant, className, view, field) {
|
|
77
|
+
getUserColumnDataSource(tenant, className, view, field, filter) {
|
|
78
78
|
return this.http.get('api/data/custom', {
|
|
79
79
|
params: {
|
|
80
80
|
executor: 'com.cs.system.data.grid.header.filter.GetUserColumnDataSource',
|
|
81
81
|
tenant,
|
|
82
82
|
className,
|
|
83
83
|
view: view || '',
|
|
84
|
-
field
|
|
84
|
+
field,
|
|
85
|
+
filter: filter || ''
|
|
85
86
|
}
|
|
86
87
|
}).pipe(map(response => {
|
|
87
88
|
response.data.list.unshift({
|
|
@@ -96,14 +97,15 @@ export class DataGridService {
|
|
|
96
97
|
return response.data.list;
|
|
97
98
|
}));
|
|
98
99
|
}
|
|
99
|
-
getUnitColumnDataSource(tenant, className, view, field) {
|
|
100
|
+
getUnitColumnDataSource(tenant, className, view, field, filter) {
|
|
100
101
|
return this.http.get('api/data/custom', {
|
|
101
102
|
params: {
|
|
102
103
|
executor: 'com.cs.system.data.grid.header.filter.GetUnitColumnDataSource',
|
|
103
104
|
tenant,
|
|
104
105
|
className,
|
|
105
106
|
view: view || '',
|
|
106
|
-
field
|
|
107
|
+
field,
|
|
108
|
+
filter: filter || ''
|
|
107
109
|
}
|
|
108
110
|
}).pipe(map(response => {
|
|
109
111
|
response.data.list.unshift({
|
|
@@ -118,7 +120,7 @@ export class DataGridService {
|
|
|
118
120
|
return response.data.list;
|
|
119
121
|
}));
|
|
120
122
|
}
|
|
121
|
-
getConstraintColumnDataSource(tenant, className, view, field, constraintName) {
|
|
123
|
+
getConstraintColumnDataSource(tenant, className, view, field, constraintName, filter) {
|
|
122
124
|
return this.http.get('api/data/custom', {
|
|
123
125
|
params: {
|
|
124
126
|
executor: 'com.cs.system.data.grid.header.filter.GetConstraintColumnDataSource',
|
|
@@ -126,7 +128,8 @@ export class DataGridService {
|
|
|
126
128
|
className,
|
|
127
129
|
view: view || '',
|
|
128
130
|
field,
|
|
129
|
-
constraintName
|
|
131
|
+
constraintName,
|
|
132
|
+
filter: filter || ''
|
|
130
133
|
}
|
|
131
134
|
}).pipe(map(response => {
|
|
132
135
|
response.data.list.unshift({
|
|
@@ -141,14 +144,15 @@ export class DataGridService {
|
|
|
141
144
|
return response.data.list;
|
|
142
145
|
}));
|
|
143
146
|
}
|
|
144
|
-
getColumnDataSource(tenant, className, view, field) {
|
|
147
|
+
getColumnDataSource(tenant, className, view, field, filter) {
|
|
145
148
|
return this.http.get('api/data/custom', {
|
|
146
149
|
params: {
|
|
147
150
|
executor: 'com.cs.system.data.grid.header.filter.GetColumnDataSource',
|
|
148
151
|
tenant,
|
|
149
152
|
className,
|
|
150
153
|
view: view || '',
|
|
151
|
-
field
|
|
154
|
+
field,
|
|
155
|
+
filter: filter || ''
|
|
152
156
|
}
|
|
153
157
|
}).pipe(map(response => {
|
|
154
158
|
return response.data.list;
|
|
@@ -160,4 +164,4 @@ DataGridService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", vers
|
|
|
160
164
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DataGridService, decorators: [{
|
|
161
165
|
type: Injectable
|
|
162
166
|
}], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
|
|
163
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9kYXRhLWdyaWQvZGF0YS1ncmlkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdkQsT0FBTyxFQUFDLEdBQUcsRUFBYyxXQUFXLEVBQUMsTUFBTSxNQUFNLENBQUM7OztBQUdsRCxNQUFNLE9BQU8sZUFBZTtJQUcxQixZQUFvQixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBRnBDLHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7SUFHL0MsQ0FBQztJQUVELGlCQUFpQixDQUFDLE1BQVcsRUFBRSxTQUFjLEVBQUUsSUFBVTtRQUN2RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFNLG9CQUFvQixHQUFHLFNBQVMsRUFBRTtZQUMxRCxNQUFNLEVBQUU7Z0JBQ04sTUFBTTtnQkFDTixJQUFJLEVBQUUsSUFBSSxJQUFJLEVBQUU7YUFDakI7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLE1BQVcsRUFBRSxTQUFjLEVBQUUsR0FBUSxFQUFFLFFBQWM7UUFDMUQsSUFBSSxHQUFHLEdBQUcsV0FBVyxHQUFHLFNBQVMsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQzlDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQU0sR0FBRyxFQUFFO1lBQzdCLE1BQU0sRUFBRTtnQkFDTixNQUFNO2dCQUNOLFFBQVEsRUFBRSxRQUFRLElBQUksRUFBRTthQUN6QjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxjQUFjLENBQUMsTUFBVyxFQUFFLFNBQWMsRUFBRSxHQUFRLEVBQUUsS0FBVSxFQUFFLElBQVU7UUFDMUUsSUFBSSxHQUFH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Q0gsQ0FBQztJQUNKLENBQUM7OzZHQS9LVSxlQUFlO2lIQUFmLGVBQWU7NEZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RXZlbnRFbWl0dGVyLCBJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtIdHRwQ2xpZW50fSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHttYXAsIE9ic2VydmFibGUsIHNoYXJlUmVwbGF5fSBmcm9tIFwicnhqc1wiO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgRGF0YUdyaWRTZXJ2aWNlIHtcclxuICBjZWxsVGVtcGxhdGVMb2FkZWQkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQpIHtcclxuICB9XHJcblxyXG4gIGdldE1ldGFkYXRhQnlWaWV3KHRlbmFudDogYW55LCBjbGFzc05hbWU6IGFueSwgdmlldz86IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PignYXBpL21ldGFkYXRhL3ZpZXcvJyArIGNsYXNzTmFtZSwge1xyXG4gICAgICBwYXJhbXM6IHtcclxuICAgICAgICB0ZW5hbnQsXHJcbiAgICAgICAgdmlldzogdmlldyB8fCAnJ1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldE9uZSh0ZW5hbnQ6IGFueSwgY2xhc3NOYW1lOiBhbnksIG9pZDogYW55LCB0ZW1wbGF0ZT86IGFueSkge1xyXG4gICAgbGV0IGFwaSA9ICdhcGkvZGF0YS8nICsgY2xhc3NOYW1lICsgJy8nICsgb2lkO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihhcGksIHtcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgdGVuYW50LFxyXG4gICAgICAgIHRlbXBsYXRlOiB0ZW1wbGF0ZSB8fCAnJ1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldE9uZUJ5RmlsdGVyKHRlbmFudDogYW55LCBjbGFzc05hbWU6IGFueSwga2V5OiBhbnksIHZhbHVlOiBhbnksIHZpZXc/OiBhbnkpIHtcclxuICAgIGxldCBhcGkgPSAnYXBpL2RhdGEvJyArIGNsYXNzTmFtZTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oYXBpLCB7XHJcbiAgICAgIHBhcmFtczoge1xyXG4gICAgICAgIHRlbmFudCxcclxuICAgICAgICB2aWV3OiB2aWV3IHx8ICcnLFxyXG4gICAgICAgIGZpbHRlcjogJ1tcIicgKyBrZXkgKyAnXCIsXCI9XCIsXCInICsgdmFsdWUgKyAnXCJdJyxcclxuICAgICAgICBsaW1pdDogMVxyXG4gICAgICB9XHJcbiAgICB9KS5waXBlKFxyXG4gICAgICBtYXAocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwb25zZS5kYXRhLmNvdW50ID09PSAxKSB7XHJcbiAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YS5saXN0WzBdO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4ge307XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0TWFueSh0ZW5hbnQ6IGFueSwgY2xhc3NOYW1lOiBhbnksIHBhcmFtczogYW55KSB7XHJcbiAgICBjb25zdCBhcGkgPSAnYXBpL2RhdGEvJyArIGNsYXNzTmFtZTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oYXBpICsgcGFyYW1zLCB7XHJcbiAgICAgIHBhcmFtczoge1xyXG4gICAgICAgIHRlbmFudFxyXG4gICAgICB9XHJcbiAgICB9KS5waXBlKFxyXG4gICAgICBtYXAocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBkYXRhOiByZXNwb25zZS5kYXRhLmxpc3QsXHJcbiAgICAgICAgICB0b3RhbENvdW50OiByZXNwb25zZS5kYXRhLmNvdW50XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldENvbnN0cmFpbnRFbnRyaWVzKHRlbmFudDogYW55LCBuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3Qga2V5ID0gdGVuYW50ICsgJ18nICsgbmFtZTtcclxuICAgIGlmICghKHdpbmRvdyBhcyBhbnkpLmNvYXN0LmNhY2hlLmhhc093blByb3BlcnR5KGtleSkpIHtcclxuICAgICAgKHdpbmRvdyBhcyBhbnkpLmNvYXN0LmNhY2hlW2tleV0gPSB0aGlzLmh0dHAuZ2V0PGFueT4oJ2FwaS9tZXRhZGF0YS9jb25zdHJhaW50Jywge1xyXG4gICAgICAgIHBhcmFtczoge1xyXG4gICAgICAgICAgdGVuYW50LFxyXG4gICAgICAgICAgbmFtZVxyXG4gICAgICAgIH1cclxuICAgICAgfSkucGlwZShcclxuICAgICAgICBzaGFyZVJlcGxheSgxKSxcclxuICAgICAgICBtYXAocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgICAgY29uc3QgZW50cmllcyA9IFtdO1xyXG4gICAgICAgICAgZm9yIChsZXQgZW50cnkgb2YgcmVzcG9uc2UuZGF0YSkge1xyXG4gICAgICAgICAgICBlbnRyaWVzLnB1c2goe1xyXG4gICAgICAgICAgICAgIHN0b3JlOiBlbnRyeS5zdG9yZSxcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBlbnRyeS5lbmFibGVkID8gZW50cnkuZGlzcGxheSA6IGVudHJ5LmRpc3BsYXkgKyAn77yI5bey56aB55So77yJJ1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiBlbnRyaWVzO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gKHdpbmRvdyBhcyBhbnkpLmNvYXN0LmNhY2hlW2tleV07XHJcbiAgfVxyXG5cclxuICBnZXRVc2VyQ29sdW1uRGF0YVNvdXJjZSh0ZW5hbnQ6IGFueSwgY2xhc3NOYW1lOiBhbnksIHZpZXc6IGFueSwgZmllbGQ6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PignYXBpL2RhdGEvY3VzdG9tJywge1xyXG4gICAgICBwYXJhbXM6IHtcclxuICAgICAgICBleGVjdXRvcjogJ2NvbS5jcy5zeXN0ZW0uZGF0YS5ncmlkLmhlYWRlci5maWx0ZXIuR2V0VXNlckNvbHVtbkRhdGFTb3VyY2UnLFxyXG4gICAgICAgIHRlbmFudCxcclxuICAgICAgICBjbGFzc05hbWUsXHJcbiAgICAgICAgdmlldzogdmlldyB8fCAnJyxcclxuICAgICAgICBmaWVsZFxyXG4gICAgICB9XHJcbiAgICB9KS5waXBlKFxyXG4gICAgICBtYXAocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgIHJlc3BvbnNlLmRhdGEubGlzdC51bnNoaWZ0KHtcclxuICAgICAgICAgIHZhbHVlOiAnJyxcclxuICAgICAgICAgIHRleHQ6ICco56m655m9KSdcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXNwb25zZS5kYXRhLmxpc3QucHVzaCh7XHJcbiAgICAgICAgICB2YWx1ZTogJ19fJyxcclxuICAgICAgICAgIHRleHQ6ICcnLFxyXG4gICAgICAgICAgdmlzaWJsZTogZmFsc2VcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YS5saXN0O1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldFVuaXRDb2x1bW5EYXRhU291cmNlKHRlbmFudDogYW55LCBjbGFzc05hbWU6IGFueSwgdmlldzogYW55LCBmaWVsZDogYW55KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KCdhcGkvZGF0YS9jdXN0b20nLCB7XHJcbiAgICAgIHBhcmFtczoge1xyXG4gICAgICAgIGV4ZWN1dG9yOiAnY29tLmNzLnN5c3RlbS5kYXRhLmdyaWQuaGVhZGVyLmZpbHRlci5HZXRVbml0Q29sdW1uRGF0YVNvdXJjZScsXHJcbiAgICAgICAgdGVuYW50LFxyXG4gICAgICAgIGNsYXNzTmFtZSxcclxuICAgICAgICB2aWV3OiB2aWV3IHx8ICcnLFxyXG4gICAgICAgIGZpZWxkXHJcbiAgICAgIH1cclxuICAgIH0pLnBpcGUoXHJcbiAgICAgIG1hcChyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgcmVzcG9uc2UuZGF0YS5saXN0LnVuc2hpZnQoe1xyXG4gICAgICAgICAgdmFsdWU6ICcnLFxyXG4gICAgICAgICAgdGV4dDogJyjnqbrnmb0pJ1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJlc3BvbnNlLmRhdGEubGlzdC5wdXNoKHtcclxuICAgICAgICAgIHZhbHVlOiAnX18nLFxyXG4gICAgICAgICAgdGV4dDogJycsXHJcbiAgICAgICAgICB2aXNpYmxlOiBmYWxzZVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhLmxpc3Q7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29uc3RyYWludENvbHVtbkRhdGFTb3VyY2UodGVuYW50OiBhbnksIGNsYXNzTmFtZTogYW55LCB2aWV3OiBhbnksIGZpZWxkOiBhbnksIGNvbnN0cmFpbnROYW1lOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oJ2FwaS9kYXRhL2N1c3RvbScsIHtcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgZXhlY3V0b3I6ICdjb20uY3Muc3lzdGVtLmRhdGEuZ3JpZC5oZWFkZXIuZmlsdGVyLkdldENvbnN0cmFpbnRDb2x1bW5EYXRhU291cmNlJyxcclxuICAgICAgICB0ZW5hbnQsXHJcbiAgICAgICAgY2xhc3NOYW1lLFxyXG4gICAgICAgIHZpZXc6IHZpZXcgfHwgJycsXHJcbiAgICAgICAgZmllbGQsXHJcbiAgICAgICAgY29uc3RyYWludE5hbWVcclxuICAgICAgfVxyXG4gICAgfSkucGlwZShcclxuICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICByZXNwb25zZS5kYXRhLmxpc3QudW5zaGlmdCh7XHJcbiAgICAgICAgICB2YWx1ZTogJycsXHJcbiAgICAgICAgICB0ZXh0OiAnKOepuueZvSknXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmVzcG9uc2UuZGF0YS5saXN0LnB1c2goe1xyXG4gICAgICAgICAgdmFsdWU6ICdfXycsXHJcbiAgICAgICAgICB0ZXh0OiAnJyxcclxuICAgICAgICAgIHZpc2libGU6IGZhbHNlXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGEubGlzdDtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRDb2x1bW5EYXRhU291cmNlKHRlbmFudDogYW55LCBjbGFzc05hbWU6IGFueSwgdmlldzogYW55LCBmaWVsZDogYW55KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KCdhcGkvZGF0YS9jdXN0b20nLCB7XHJcbiAgICAgIHBhcmFtczoge1xyXG4gICAgICAgIGV4ZWN1dG9yOiAnY29tLmNzLnN5c3RlbS5kYXRhLmdyaWQuaGVhZGVyLmZpbHRlci5HZXRDb2x1bW5EYXRhU291cmNlJyxcclxuICAgICAgICB0ZW5hbnQsXHJcbiAgICAgICAgY2xhc3NOYW1lLFxyXG4gICAgICAgIHZpZXc6IHZpZXcgfHwgJycsXHJcbiAgICAgICAgZmllbGRcclxuICAgICAgfVxyXG4gICAgfSkucGlwZShcclxuICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YS5saXN0O1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9kYXRhLWdyaWQvZGF0YS1ncmlkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdkQsT0FBTyxFQUFDLEdBQUcsRUFBYyxXQUFXLEVBQUMsTUFBTSxNQUFNLENBQUM7OztBQUdsRCxNQUFNLE9BQU8sZUFBZTtJQUcxQixZQUFvQixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBRnBDLHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7SUFHL0MsQ0FBQztJQUVELGlCQUFpQixDQUFDLE1BQVcsRUFBRSxTQUFjLEVBQUUsSUFBVTtRQUN2RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFNLG9CQUFvQixHQUFHLFNBQVMsRUFBRTtZQUMxRCxNQUFNLEVBQUU7Z0JBQ04sTUFBTTtnQkFDTixJQUFJLEVBQUUsSUFBSSxJQUFJLEVBQUU7YUFDakI7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLE1BQVcsRUFBRSxTQUFjLEVBQUUsR0FBUSxFQUFFLFFBQWM7UUFDMUQsSUFBSSxHQUFHLEdBQUcsV0FBVyxHQUFHLFNBQVMsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQzlDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQU0sR0FBRyxFQUFFO1lBQzdCLE1BQU0sRUFBRTtnQkFDTixNQUFNO2dCQUNOLFFBQVEsRUFBRSxRQUFRLElBQUksRUFBRTthQUN6QjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxjQUFjLENBQUMsTUFBVyxFQUFFLFNBQWMsRUFBRSxHQUFRLEVBQUUsS0FBVSxFQUFFLElBQVU7UUFDMUUsSUFBSSxHQUFHLEdBQUcsV0FBVyxHQUFHLFNBQVMsQ0FBQztRQUNsQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFNLEdBQUcsRUFBRTtZQUM3QixNQUFNLEVBQUU7Z0JBQ04sTUFBTTtnQkFDTixJQUFJLEVBQUUsSUFBSSxJQUFJLEVBQUU7Z0JBQ2hCLE1BQU0sRUFBRSxJQUFJLEdBQUcsR0FBRyxHQUFHLFNBQVMsR0FBRyxLQUFLLEdBQUcsSUFBSTtnQkFDN0MsS0FBSyxFQUFFLENBQUM7YUFDVDtTQUNGLENBQUMsQ0FBQyxJQUFJLENBQ0wsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ2IsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssS0FBSyxDQUFDLEVBQUU7Z0JBQzdCLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDOUI7WUFDRCxPQUFPLEVBQUUsQ0FBQztRQUNaLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsT0FBTyxDQUFDLE1BQVcsRUFBRSxTQUFjLEVBQUUsTUFBVztRQUM5QyxNQUFNLEdBQUcsR0FBRyxXQUFXLEdBQUcsU0FBUyxDQUFDO1FBQ3BDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQU0sR0FBRyxHQUFHLE1BQU0sRUFBRTtZQUN0QyxNQUFNLEVBQUU7Z0JBQ04sTUFBTTthQUNQO1NBQ0YsQ0FBQyxDQUFDLElBQUksQ0FDTCxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDYixPQUFPO2dCQUNMLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUk7Z0JBQ3hCLFVBQVUsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUs7YUFDaEMsQ0FBQTtRQUNILENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsb0JBQW9CLENBQUMsTUFBVyxFQUFFLElBQVk7UUFDNUMsTUFBTSxHQUFHLEdBQUcsTUFBTSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUM7UUFDaEMsSUFBSSxDQUFFLE1BQWMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNuRCxNQUFjLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBTSx5QkFBeUIsRUFBRTtnQkFDL0UsTUFBTSxFQUFFO29CQUNOLE1BQU07b0JBQ04sSUFBSTtpQkFDTDthQUNGLENBQUMsQ0FBQyxJQUFJLENBQ0wsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUNkLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDYixNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7Z0JBQ25CLEtBQUssSUFBSSxLQUFLLElBQUksUUFBUSxDQUFDLElBQUksRUFBRTtvQkFDL0IsT0FBTyxDQUFDLElBQUksQ0FBQzt3QkFDWCxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7d0JBQ2xCLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLE9BQU87cUJBQ2pFLENBQUMsQ0FBQztpQkFDSjtnQkFDRCxPQUFPLE9BQU8sQ0FBQztZQUNqQixDQUFDLENBQUMsQ0FDSCxDQUFDO1NBQ0g7UUFDRCxPQUFRLE1BQWMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxNQUFXLEVBQUUsU0FBYyxFQUFFLElBQVMsRUFBRSxLQUFVLEVBQUUsTUFBVztRQUNyRixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFNLGlCQUFpQixFQUFFO1lBQzNDLE1BQU0sRUFBRTtnQkFDTixRQUFRLEVBQUUsK0RBQStEO2dCQUN6RSxNQUFNO2dCQUNOLFNBQVM7Z0JBQ1QsSUFBSSxFQUFFLElBQUksSUFBSSxFQUFFO2dCQUNoQixLQUFLO2dCQUNMLE1BQU0sRUFBRSxNQUFNLElBQUksRUFBRTthQUNyQjtTQUNGLENBQUMsQ0FBQyxJQUFJLENBQ0wsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ2IsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO2dCQUN6QixLQUFLLEVBQUUsRUFBRTtnQkFDVCxJQUFJLEVBQUUsTUFBTTthQUNiLENBQUMsQ0FBQztZQUNILFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztnQkFDdEIsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsSUFBSSxFQUFFLEVBQUU7Z0JBQ1IsT0FBTyxFQUFFLEtBQUs7YUFDZixDQUFDLENBQUM7WUFDSCxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsdUJBQXVCLENBQUMsTUFBVyxFQUFFLFNBQWMsRUFBRSxJQUFTLEVBQUUsS0FBVSxFQUFFLE1BQVc7UUFDckYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBTSxpQkFBaUIsRUFBRTtZQUMzQyxNQUFNLEVBQUU7Z0JBQ04sUUFBUSxFQUFFLCtEQUErRDtnQkFDekUsTUFBTTtnQkFDTixTQUFTO2dCQUNULElBQUksRUFBRSxJQUFJLElBQUksRUFBRTtnQkFDaEIsS0FBSztnQkFDTCxNQUFNLEVBQUUsTUFBTSxJQUFJLEVBQUU7YUFDckI7U0FDRixDQUFDLENBQUMsSUFBSSxDQUNMLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNiLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztnQkFDekIsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsSUFBSSxFQUFFLE1BQU07YUFDYixDQUFDLENBQUM7WUFDSCxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7Z0JBQ3RCLEtBQUssRUFBRSxJQUFJO2dCQUNYLElBQUksRUFBRSxFQUFFO2dCQUNSLE9BQU8sRUFBRSxLQUFLO2FBQ2YsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELDZCQUE2QixDQUFDLE1BQVcsRUFBRSxTQUFjLEVBQUUsSUFBUyxFQUFFLEtBQVUsRUFBRSxjQUFtQixFQUFFLE1BQVc7UUFDaEgsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBTSxpQkFBaUIsRUFBRTtZQUMzQyxNQUFNLEVBQUU7Z0JBQ04sUUFBUSxFQUFFLHFFQUFxRTtnQkFDL0UsTUFBTTtnQkFDTixTQUFTO2dCQUNULElBQUksRUFBRSxJQUFJLElBQUksRUFBRTtnQkFDaEIsS0FBSztnQkFDTCxjQUFjO2dCQUNkLE1BQU0sRUFBRSxNQUFNLElBQUksRUFBRTthQUNyQjtTQUNGLENBQUMsQ0FBQyxJQUFJLENBQ0wsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ2IsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO2dCQUN6QixLQUFLLEVBQUUsRUFBRTtnQkFDVCxJQUFJLEVBQUUsTUFBTTthQUNiLENBQUMsQ0FBQztZQUNILFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztnQkFDdEIsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsSUFBSSxFQUFFLEVBQUU7Z0JBQ1IsT0FBTyxFQUFFLEtBQUs7YUFDZixDQUFDLENBQUM7WUFDSCxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsbUJBQW1CLENBQUMsTUFBVyxFQUFFLFNBQWMsRUFBRSxJQUFTLEVBQUUsS0FBVSxFQUFFLE1BQVc7UUFDakYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBTSxpQkFBaUIsRUFBRTtZQUMzQyxNQUFNLEVBQUU7Z0JBQ04sUUFBUSxFQUFFLDJEQUEyRDtnQkFDckUsTUFBTTtnQkFDTixTQUFTO2dCQUNULElBQUksRUFBRSxJQUFJLElBQUksRUFBRTtnQkFDaEIsS0FBSztnQkFDTCxNQUFNLEVBQUUsTUFBTSxJQUFJLEVBQUU7YUFDckI7U0FDRixDQUFDLENBQUMsSUFBSSxDQUNMLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNiLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7OzZHQW5MVSxlQUFlO2lIQUFmLGVBQWU7NEZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RXZlbnRFbWl0dGVyLCBJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtIdHRwQ2xpZW50fSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHttYXAsIE9ic2VydmFibGUsIHNoYXJlUmVwbGF5fSBmcm9tIFwicnhqc1wiO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgRGF0YUdyaWRTZXJ2aWNlIHtcclxuICBjZWxsVGVtcGxhdGVMb2FkZWQkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQpIHtcclxuICB9XHJcblxyXG4gIGdldE1ldGFkYXRhQnlWaWV3KHRlbmFudDogYW55LCBjbGFzc05hbWU6IGFueSwgdmlldz86IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PignYXBpL21ldGFkYXRhL3ZpZXcvJyArIGNsYXNzTmFtZSwge1xyXG4gICAgICBwYXJhbXM6IHtcclxuICAgICAgICB0ZW5hbnQsXHJcbiAgICAgICAgdmlldzogdmlldyB8fCAnJ1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldE9uZSh0ZW5hbnQ6IGFueSwgY2xhc3NOYW1lOiBhbnksIG9pZDogYW55LCB0ZW1wbGF0ZT86IGFueSkge1xyXG4gICAgbGV0IGFwaSA9ICdhcGkvZGF0YS8nICsgY2xhc3NOYW1lICsgJy8nICsgb2lkO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihhcGksIHtcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgdGVuYW50LFxyXG4gICAgICAgIHRlbXBsYXRlOiB0ZW1wbGF0ZSB8fCAnJ1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldE9uZUJ5RmlsdGVyKHRlbmFudDogYW55LCBjbGFzc05hbWU6IGFueSwga2V5OiBhbnksIHZhbHVlOiBhbnksIHZpZXc/OiBhbnkpIHtcclxuICAgIGxldCBhcGkgPSAnYXBpL2RhdGEvJyArIGNsYXNzTmFtZTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oYXBpLCB7XHJcbiAgICAgIHBhcmFtczoge1xyXG4gICAgICAgIHRlbmFudCxcclxuICAgICAgICB2aWV3OiB2aWV3IHx8ICcnLFxyXG4gICAgICAgIGZpbHRlcjogJ1tcIicgKyBrZXkgKyAnXCIsXCI9XCIsXCInICsgdmFsdWUgKyAnXCJdJyxcclxuICAgICAgICBsaW1pdDogMVxyXG4gICAgICB9XHJcbiAgICB9KS5waXBlKFxyXG4gICAgICBtYXAocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwb25zZS5kYXRhLmNvdW50ID09PSAxKSB7XHJcbiAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YS5saXN0WzBdO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4ge307XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0TWFueSh0ZW5hbnQ6IGFueSwgY2xhc3NOYW1lOiBhbnksIHBhcmFtczogYW55KSB7XHJcbiAgICBjb25zdCBhcGkgPSAnYXBpL2RhdGEvJyArIGNsYXNzTmFtZTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oYXBpICsgcGFyYW1zLCB7XHJcbiAgICAgIHBhcmFtczoge1xyXG4gICAgICAgIHRlbmFudFxyXG4gICAgICB9XHJcbiAgICB9KS5waXBlKFxyXG4gICAgICBtYXAocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBkYXRhOiByZXNwb25zZS5kYXRhLmxpc3QsXHJcbiAgICAgICAgICB0b3RhbENvdW50OiByZXNwb25zZS5kYXRhLmNvdW50XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldENvbnN0cmFpbnRFbnRyaWVzKHRlbmFudDogYW55LCBuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3Qga2V5ID0gdGVuYW50ICsgJ18nICsgbmFtZTtcclxuICAgIGlmICghKHdpbmRvdyBhcyBhbnkpLmNvYXN0LmNhY2hlLmhhc093blByb3BlcnR5KGtleSkpIHtcclxuICAgICAgKHdpbmRvdyBhcyBhbnkpLmNvYXN0LmNhY2hlW2tleV0gPSB0aGlzLmh0dHAuZ2V0PGFueT4oJ2FwaS9tZXRhZGF0YS9jb25zdHJhaW50Jywge1xyXG4gICAgICAgIHBhcmFtczoge1xyXG4gICAgICAgICAgdGVuYW50LFxyXG4gICAgICAgICAgbmFtZVxyXG4gICAgICAgIH1cclxuICAgICAgfSkucGlwZShcclxuICAgICAgICBzaGFyZVJlcGxheSgxKSxcclxuICAgICAgICBtYXAocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgICAgY29uc3QgZW50cmllcyA9IFtdO1xyXG4gICAgICAgICAgZm9yIChsZXQgZW50cnkgb2YgcmVzcG9uc2UuZGF0YSkge1xyXG4gICAgICAgICAgICBlbnRyaWVzLnB1c2goe1xyXG4gICAgICAgICAgICAgIHN0b3JlOiBlbnRyeS5zdG9yZSxcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBlbnRyeS5lbmFibGVkID8gZW50cnkuZGlzcGxheSA6IGVudHJ5LmRpc3BsYXkgKyAn77yI5bey56aB55So77yJJ1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiBlbnRyaWVzO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gKHdpbmRvdyBhcyBhbnkpLmNvYXN0LmNhY2hlW2tleV07XHJcbiAgfVxyXG5cclxuICBnZXRVc2VyQ29sdW1uRGF0YVNvdXJjZSh0ZW5hbnQ6IGFueSwgY2xhc3NOYW1lOiBhbnksIHZpZXc6IGFueSwgZmllbGQ6IGFueSwgZmlsdGVyOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oJ2FwaS9kYXRhL2N1c3RvbScsIHtcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgZXhlY3V0b3I6ICdjb20uY3Muc3lzdGVtLmRhdGEuZ3JpZC5oZWFkZXIuZmlsdGVyLkdldFVzZXJDb2x1bW5EYXRhU291cmNlJyxcclxuICAgICAgICB0ZW5hbnQsXHJcbiAgICAgICAgY2xhc3NOYW1lLFxyXG4gICAgICAgIHZpZXc6IHZpZXcgfHwgJycsXHJcbiAgICAgICAgZmllbGQsXHJcbiAgICAgICAgZmlsdGVyOiBmaWx0ZXIgfHwgJydcclxuICAgICAgfVxyXG4gICAgfSkucGlwZShcclxuICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICByZXNwb25zZS5kYXRhLmxpc3QudW5zaGlmdCh7XHJcbiAgICAgICAgICB2YWx1ZTogJycsXHJcbiAgICAgICAgICB0ZXh0OiAnKOepuueZvSknXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmVzcG9uc2UuZGF0YS5saXN0LnB1c2goe1xyXG4gICAgICAgICAgdmFsdWU6ICdfXycsXHJcbiAgICAgICAgICB0ZXh0OiAnJyxcclxuICAgICAgICAgIHZpc2libGU6IGZhbHNlXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGEubGlzdDtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRVbml0Q29sdW1uRGF0YVNvdXJjZSh0ZW5hbnQ6IGFueSwgY2xhc3NOYW1lOiBhbnksIHZpZXc6IGFueSwgZmllbGQ6IGFueSwgZmlsdGVyOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oJ2FwaS9kYXRhL2N1c3RvbScsIHtcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgZXhlY3V0b3I6ICdjb20uY3Muc3lzdGVtLmRhdGEuZ3JpZC5oZWFkZXIuZmlsdGVyLkdldFVuaXRDb2x1bW5EYXRhU291cmNlJyxcclxuICAgICAgICB0ZW5hbnQsXHJcbiAgICAgICAgY2xhc3NOYW1lLFxyXG4gICAgICAgIHZpZXc6IHZpZXcgfHwgJycsXHJcbiAgICAgICAgZmllbGQsXHJcbiAgICAgICAgZmlsdGVyOiBmaWx0ZXIgfHwgJydcclxuICAgICAgfVxyXG4gICAgfSkucGlwZShcclxuICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICByZXNwb25zZS5kYXRhLmxpc3QudW5zaGlmdCh7XHJcbiAgICAgICAgICB2YWx1ZTogJycsXHJcbiAgICAgICAgICB0ZXh0OiAnKOepuueZvSknXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmVzcG9uc2UuZGF0YS5saXN0LnB1c2goe1xyXG4gICAgICAgICAgdmFsdWU6ICdfXycsXHJcbiAgICAgICAgICB0ZXh0OiAnJyxcclxuICAgICAgICAgIHZpc2libGU6IGZhbHNlXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGEubGlzdDtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRDb25zdHJhaW50Q29sdW1uRGF0YVNvdXJjZSh0ZW5hbnQ6IGFueSwgY2xhc3NOYW1lOiBhbnksIHZpZXc6IGFueSwgZmllbGQ6IGFueSwgY29uc3RyYWludE5hbWU6IGFueSwgZmlsdGVyOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oJ2FwaS9kYXRhL2N1c3RvbScsIHtcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgZXhlY3V0b3I6ICdjb20uY3Muc3lzdGVtLmRhdGEuZ3JpZC5oZWFkZXIuZmlsdGVyLkdldENvbnN0cmFpbnRDb2x1bW5EYXRhU291cmNlJyxcclxuICAgICAgICB0ZW5hbnQsXHJcbiAgICAgICAgY2xhc3NOYW1lLFxyXG4gICAgICAgIHZpZXc6IHZpZXcgfHwgJycsXHJcbiAgICAgICAgZmllbGQsXHJcbiAgICAgICAgY29uc3RyYWludE5hbWUsXHJcbiAgICAgICAgZmlsdGVyOiBmaWx0ZXIgfHwgJydcclxuICAgICAgfVxyXG4gICAgfSkucGlwZShcclxuICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICByZXNwb25zZS5kYXRhLmxpc3QudW5zaGlmdCh7XHJcbiAgICAgICAgICB2YWx1ZTogJycsXHJcbiAgICAgICAgICB0ZXh0OiAnKOepuueZvSknXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmVzcG9uc2UuZGF0YS5saXN0LnB1c2goe1xyXG4gICAgICAgICAgdmFsdWU6ICdfXycsXHJcbiAgICAgICAgICB0ZXh0OiAnJyxcclxuICAgICAgICAgIHZpc2libGU6IGZhbHNlXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGEubGlzdDtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRDb2x1bW5EYXRhU291cmNlKHRlbmFudDogYW55LCBjbGFzc05hbWU6IGFueSwgdmlldzogYW55LCBmaWVsZDogYW55LCBmaWx0ZXI6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PignYXBpL2RhdGEvY3VzdG9tJywge1xyXG4gICAgICBwYXJhbXM6IHtcclxuICAgICAgICBleGVjdXRvcjogJ2NvbS5jcy5zeXN0ZW0uZGF0YS5ncmlkLmhlYWRlci5maWx0ZXIuR2V0Q29sdW1uRGF0YVNvdXJjZScsXHJcbiAgICAgICAgdGVuYW50LFxyXG4gICAgICAgIGNsYXNzTmFtZSxcclxuICAgICAgICB2aWV3OiB2aWV3IHx8ICcnLFxyXG4gICAgICAgIGZpZWxkLFxyXG4gICAgICAgIGZpbHRlcjogZmlsdGVyIHx8ICcnXHJcbiAgICAgIH1cclxuICAgIH0pLnBpcGUoXHJcbiAgICAgIG1hcChyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGEubGlzdDtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|