basesite-shared-grid-lib 15.3.6 → 15.5.6
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/basesite-shared-grid-lib-15.5.6.tgz +0 -0
- package/esm2020/lib/grid-library.component.mjs +22 -13
- package/fesm2015/basesite-shared-grid-lib.mjs +21 -12
- package/fesm2015/basesite-shared-grid-lib.mjs.map +1 -1
- package/fesm2020/basesite-shared-grid-lib.mjs +21 -12
- package/fesm2020/basesite-shared-grid-lib.mjs.map +1 -1
- package/package.json +1 -1
- package/src/lib/styles/styles.scss +80 -48
- package/basesite-shared-grid-lib-15.3.6.tgz +0 -0
|
Binary file
|
|
@@ -79,7 +79,7 @@ export class GridLibraryComponent {
|
|
|
79
79
|
suppressFilter: true,
|
|
80
80
|
suppressSorting: true,
|
|
81
81
|
suppressMenu: true,
|
|
82
|
-
width:
|
|
82
|
+
width: 55,
|
|
83
83
|
};
|
|
84
84
|
}
|
|
85
85
|
else if (res.columnType === 'dropdown') {
|
|
@@ -101,7 +101,7 @@ export class GridLibraryComponent {
|
|
|
101
101
|
onCellClicked: (e) => {
|
|
102
102
|
e.node.setSelected(false);
|
|
103
103
|
},
|
|
104
|
-
width:
|
|
104
|
+
width: 40,
|
|
105
105
|
pinned: res.pinPosition,
|
|
106
106
|
lockPinned: true,
|
|
107
107
|
};
|
|
@@ -169,6 +169,7 @@ export class GridLibraryComponent {
|
|
|
169
169
|
cellClass: 'action-button',
|
|
170
170
|
pinned: res.pinPosition,
|
|
171
171
|
lockPinned: true,
|
|
172
|
+
width: res.label ? 100 : 40
|
|
172
173
|
};
|
|
173
174
|
}
|
|
174
175
|
});
|
|
@@ -212,6 +213,14 @@ export class GridLibraryComponent {
|
|
|
212
213
|
Accept: 'application/json',
|
|
213
214
|
},
|
|
214
215
|
}).then((response) => response.json()),
|
|
216
|
+
afterLoadData: (options, rowData, totalCount) => {
|
|
217
|
+
if (!rowData || rowData.length <= 0) {
|
|
218
|
+
this.agGrid.api.showNoRowsOverlay();
|
|
219
|
+
}
|
|
220
|
+
else {
|
|
221
|
+
this.agGrid.api.hideOverlay();
|
|
222
|
+
}
|
|
223
|
+
},
|
|
215
224
|
}));
|
|
216
225
|
}
|
|
217
226
|
}
|
|
@@ -225,16 +234,16 @@ export class GridLibraryComponent {
|
|
|
225
234
|
else {
|
|
226
235
|
var columns = this.agGrid.columnApi.getColumns();
|
|
227
236
|
if (columns && columns.length > 0) {
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
237
|
+
if (columns.length > 15) {
|
|
238
|
+
const allColumnIds = [];
|
|
239
|
+
this.agGrid.columnApi.getColumns().forEach((column) => {
|
|
240
|
+
allColumnIds.push(column.getId());
|
|
241
|
+
});
|
|
242
|
+
this.agGrid.columnApi.autoSizeColumns(allColumnIds, false);
|
|
243
|
+
}
|
|
244
|
+
else {
|
|
245
|
+
this.agGrid.api.sizeColumnsToFit();
|
|
246
|
+
}
|
|
238
247
|
}
|
|
239
248
|
}
|
|
240
249
|
}
|
|
@@ -381,4 +390,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImpor
|
|
|
381
390
|
type: ViewChild,
|
|
382
391
|
args: [AgGridAngular]
|
|
383
392
|
}] } });
|
|
384
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saWJyYXJ5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Jhc2VzaXRlLXNoYXJlZC1ncmlkLWxpYi9zcmMvbGliL2dyaWQtbGlicmFyeS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBWWhELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNwRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scURBQXFELENBQUM7QUFDcEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saURBQWlELENBQUM7Ozs7O0FBbUNuRixNQUFNLE9BQU8sb0JBQW9CO0lBMkIvQixZQUNVLFdBQStCLEVBQy9CLFFBQWtCO1FBRGxCLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQUMvQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBekJuQixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQ3RCLGlCQUFZLEdBQVEsVUFBVSxDQUFDO1FBRy9CLDJCQUFzQixHQUFZLEtBQUssQ0FBQztRQUd4QyxtQkFBYyxHQUFXLENBQUMsQ0FBQztRQUMzQiw0QkFBdUIsR0FBWSxLQUFLLENBQUM7UUFDekMsbUJBQWMsR0FBWSxLQUFLLENBQUM7UUFDekMsZ0JBQWdCO1FBQ04sb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBTzdDLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQUNyQixxQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDeEIsaUJBQVksR0FBaUIsWUFBWSxDQUFDO1FBQzFDLGlCQUFZ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c0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFnR3JpZEFuZ3VsYXIgfSBmcm9tICdhZy1ncmlkLWFuZ3VsYXInO1xyXG5pbXBvcnQge1xyXG4gIENvbERlZixcclxuICBHZXRSb3dJZEZ1bmMsXHJcbiAgR2V0Um93SWRQYXJhbXMsXHJcbiAgR3JpZFJlYWR5RXZlbnQsXHJcbiAgUGFnaW5hdGlvbk51bWJlckZvcm1hdHRlclBhcmFtcyxcclxuICBSb3dNb2RlbFR5cGUsXHJcbiAgUm93Tm9kZSxcclxuICBWYWx1ZUZvcm1hdHRlclBhcmFtcyxcclxufSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XHJcbmltcG9ydCB7IEdyaWRMaWJyYXJ5U2VydmljZSB9IGZyb20gJy4vZ3JpZC1saWJyYXJ5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBPZGF0YVNlcnZlclNpZGVQcm92aWRlciB9IGZyb20gJy4vaGVscGVycyc7XHJcbmltcG9ydCB7IEJ1dHRvblJlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi9yZW5kZXJlci9idXR0b24tcmVuZGVyZXIvYnV0dG9uLXJlbmRlcmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1c3RvbVRvb2x0aXAgfSBmcm9tICcuL3JlbmRlcmVyL3Rvb2x0aXAtcmVuZGVyZXIvY3VzdG9tLXRvb2x0aXAtcmVuZGVyZXInO1xyXG5pbXBvcnQgeyBEcm9wZG93blJlbmRlcmVyIH0gZnJvbSAnLi9yZW5kZXJlci9kcm9wZG93bi1yZW5kZXJlci9kcm9wLWRvd24tcmVuZGVyZXInO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItYmFzZXNpdGUtc2hhcmVkLWdyaWQtbGliJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGFnLWdyaWQtYW5ndWxhclxyXG4gICAgICBzdHlsZT1cIndpZHRoOiAxMDAlO2hlaWdodDo5OC4ydmhcIlxyXG4gICAgICBjbGFzcz1cImFnLXRoZW1lLWJhbGhhbSBzaGFyZWQtZ3JpZC1saWJcIlxyXG4gICAgICBbY29sdW1uRGVmc109XCJjb2x1bW5EZWZzXCJcclxuICAgICAgW2RlZmF1bHRDb2xEZWZdPVwiZGVmYXVsdENvbERlZlwiXHJcbiAgICAgIFtyb3dEYXRhXT1cInJvd0RhdGFcIlxyXG4gICAgICBbcm93U2VsZWN0aW9uXT1cInJvd1NlbGVjdGlvblwiXHJcbiAgICAgIFthbmltYXRlUm93c109XCJ0cnVlXCJcclxuICAgICAgKGdyaWRSZWFkeSk9XCJvbkdyaWRSZWFkeSgkZXZlbnQpXCJcclxuICAgICAgW3BhZ2luYXRpb25dPVwidHJ1ZVwiXHJcbiAgICAgIFtwYWdpbmF0aW9uUGFnZVNpemVdPVwiZ3JpZFBhZ2VTaXplXCJcclxuICAgICAgW3BhZ2luYXRpb25OdW1iZXJGb3JtYXR0ZXJdPVwicGFnaW5hdGlvbk51bWJlckZvcm1hdHRlclwiXHJcbiAgICAgIChtb2RlbFVwZGF0ZWQpPVwib25Nb2RlbFVwZGF0ZWQoKVwiXHJcbiAgICAgIFt0b29sdGlwU2hvd0RlbGF5XT1cInRvb2x0aXBTaG93RGVsYXlcIlxyXG4gICAgICBbdG9vbHRpcEhpZGVEZWxheV09XCJ0b29sdGlwSGlkZURlbGF5XCJcclxuICAgICAgW3Jvd01vZGVsVHlwZV09XCJyb3dNb2RlbFR5cGVcIlxyXG4gICAgICBbY2FjaGVCbG9ja1NpemVdPVwiY2FjaGVCbG9ja1NpemVcIlxyXG4gICAgICBbbWF4Q29uY3VycmVudERhdGFzb3VyY2VSZXF1ZXN0c109XCIxXCJcclxuICAgICAgW2Jsb2NrTG9hZERlYm91bmNlTWlsbGlzXT1cIjEwMFwiXHJcbiAgICAgIChjb2x1bW5WaXNpYmxlKT1cIm9uU2F2ZUdyaWRDb2x1bW5TdGF0ZSgkZXZlbnQpXCJcclxuICAgICAgKGNvbHVtblBpbm5lZCk9XCJvblNhdmVHcmlkQ29sdW1uU3RhdGUoJGV2ZW50KVwiXHJcbiAgICAgIChjb2x1bW5SZXNpemVkKT1cIm9uU2F2ZUdyaWRDb2x1bW5TdGF0ZSgkZXZlbnQpXCJcclxuICAgICAgKGNvbHVtbk1vdmVkKT1cIm9uU2F2ZUdyaWRDb2x1bW5TdGF0ZSgkZXZlbnQpXCJcclxuICAgICAgKHNvcnRDaGFuZ2VkKT1cIm9uU29ydENoYW5nZWRFdmVudCgpXCJcclxuICAgICAgW3Jvd011bHRpU2VsZWN0V2l0aENsaWNrXT1cInJvd011bHRpU2VsZWN0V2l0aENsaWNrXCJcclxuICAgID5cclxuICAgIDwvYWctZ3JpZC1hbmd1bGFyPlxyXG4gIGAsXHJcbiAgc3R5bGVzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEdyaWRMaWJyYXJ5Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAvL2lucHV0IHBhcmFtc1xyXG4gIEBJbnB1dCgpIGNvbHVtbkRlZnM6IGFueTtcclxuICBASW5wdXQoKSByb3dEYXRhOiBhbnk7XHJcbiAgQElucHV0KCkgcGFnZVNpemU6IG51bWJlciA9IDIwO1xyXG4gIEBJbnB1dCgpIHJvd1NlbGVjdGlvbjogYW55ID0gJ211bHRpcGxlJztcclxuICBASW5wdXQoKSBncmlkSWQ6IGFueTtcclxuICBASW5wdXQoKSBsb2dnZWRJblVzZXI6IGFueTtcclxuICBASW5wdXQoKSBlbmFibGVTZXJ2ZXJTaWRlUGFnaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2VydmVyRGF0YVVybCE6IHN0cmluZztcclxuICBASW5wdXQoKSBlbnZpcm9ubWVudCE6IHN0cmluZztcclxuICBASW5wdXQoKSBjYWNoZUJsb2NrU2l6ZTogbnVtYmVyID0gMDtcclxuICBASW5wdXQoKSByb3dNdWx0aVNlbGVjdFdpdGhDbGljazogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGZsb2F0aW5nRmlsdGVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgLy9ldmVudCBlbWl0dGVyc1xyXG4gIEBPdXRwdXQoKSBidG5DbGlja0hhbmRsZXIgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgLy92aWV3Q2hpbGRzXHJcbiAgQFZpZXdDaGlsZChBZ0dyaWRBbmd1bGFyKSBhZ0dyaWQhOiBBZ0dyaWRBbmd1bGFyO1xyXG5cclxuICAvL3BhcmFtdGVyc1xyXG4gIGdyaWRDb2x1bW5TdGF0ZTogYW55O1xyXG4gIHB1YmxpYyB0b29sdGlwU2hvd0RlbGF5ID0gMDtcclxuICBwdWJsaWMgdG9vbHRpcEhpZGVEZWxheSA9IDIwMDA7XHJcbiAgcHVibGljIHJvd01vZGVsVHlwZTogUm93TW9kZWxUeXBlID0gJ2NsaWVudFNpZGUnO1xyXG4gIHB1YmxpYyBncmlkUGFnZVNpemU6IG51bWJlciA9IDA7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBncmlkU2VydmljZTogR3JpZExpYnJhcnlTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBkYXRlUGlwZTogRGF0ZVBpcGVcclxuICApIHt9XHJcblxyXG4gIG9uU29ydENoYW5nZWRFdmVudCgpIHtcclxuICAgIHRoaXMuZ3JpZENvbHVtblN0YXRlID0gdGhpcy5hZ0dyaWQuY29sdW1uQXBpLmdldENvbHVtblN0YXRlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZGVmYXVsdENvbERlZjogQ29sRGVmID0ge1xyXG4gICAgc29ydGFibGU6IHRydWUsXHJcbiAgICBmaWx0ZXI6IHRydWUsXHJcbiAgICB0b29sdGlwQ29tcG9uZW50OiBDdXN0b21Ub29sdGlwLFxyXG4gIH07XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5ncmlkUGFnZVNpemUgPSB0aGlzLnBhZ2VTaXplO1xyXG4gICAgdGhpcy5jYWNoZUJsb2NrU2l6ZSA9IHRoaXMuY2FjaGVCbG9ja1NpemUgPSAwXHJcbiAgICAgID8gdGhpcy5wYWdlU2l6ZVxyXG4gICAgICA6IHRoaXMuY2FjaGVCbG9ja1NpemU7XHJcbiAgICB0aGlzLmdyaWRTZXJ2aWNlLnNldEJhc2VVcmwodGhpcy5lbnZpcm9ubWVudCk7XHJcbiAgICB0aGlzLmdldEdyaWRTdGF0ZSgpO1xyXG4gICAgdGhpcy5nZXRDb2xEZWYoKTtcclxuICAgIGlmICh0aGlzLmVuYWJsZVNlcnZlclNpZGVQYWdpbmcgPT0gdHJ1ZSkge1xyXG4gICAgICB0aGlzLnJvd01vZGVsVHlwZSA9ICdzZXJ2ZXJTaWRlJztcclxuICAgICAgdGhpcy5yb3dEYXRhID0gJyc7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnJvd01vZGVsVHlwZSA9ICdjbGllbnRTaWRlJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBwYWdpbmF0aW9uTnVtYmVyRm9ybWF0dGVyOiAoXHJcbiAgICBwYXJhbXM6IFBhZ2luYXRpb25OdW1iZXJGb3JtYXR0ZXJQYXJhbXNcclxuICApID0+IHN0cmluZyA9IChwYXJhbXM6IFBhZ2luYXRpb25OdW1iZXJGb3JtYXR0ZXJQYXJhbXMpID0+IHtcclxuICAgIHJldHVybiAnWycgKyBwYXJhbXMudmFsdWUudG9Mb2NhbGVTdHJpbmcoKSArICddJztcclxuICB9O1xyXG5cclxuICBvbk1vZGVsVXBkYXRlZCgpIHtcclxuICAgIHRoaXMuc2V0R3JpZFN0YXRlKCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb2xEZWYoKSB7XHJcbiAgICBpZiAodGhpcy5ncmlkSWQgJiYgdGhpcy5sb2dnZWRJblVzZXIpIHtcclxuICAgICAgdGhpcy5ncmlkU2VydmljZS5nZXRDb2xEZWYodGhpcy5ncmlkSWQpLnN1YnNjcmliZSgocmVzcG9uc2U6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPT0gMSkge1xyXG4gICAgICAgICAgbGV0IGNvbGRlZjogQ29sRGVmW10gPSByZXNwb25zZS5saXN0Lm1hcCgocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKHJlcy5pc0J1dHRvbiA9PT0gZmFsc2UpIHtcclxuICAgICAgICAgICAgICBpZiAocmVzLmNvbHVtblR5cGUgPT09ICdjaGVja2JveCcpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICAgIGZpZWxkOiByZXMuZmllbGQsXHJcbiAgICAgICAgICAgICAgICAgIGhlYWRlck5hbWU6IHJlcy50aXRsZSxcclxuICAgICAgICAgICAgICAgICAgc29ydGFibGU6IGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgICB0b29sdGlwRmllbGQ6IHJlcy5maWVsZCxcclxuICAgICAgICAgICAgICAgICAgcmVzaXphYmxlOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICBoZWFkZXJDaGVja2JveFNlbGVjdGlvbjogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICAgIGZpbHRlcmFibGU6IGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgICBjaGVja2JveFNlbGVjdGlvbjogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgc2hvd0Rpc2FibGVkQ2hlY2tib3hlczogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgc3VwcHJlc3NGaWx0ZXI6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgIHN1cHByZXNzU29ydGluZzogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgc3VwcHJlc3NNZW51OiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICB3aWR0aDogMjAsXHJcbiAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAocmVzLmNvbHVtblR5cGUgPT09ICdkcm9wZG93bicpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICAgIGZpZWxkOiByZXMuZmllbGQsXHJcbiAgICAgICAgICAgICAgICAgIGhlYWRlck5hbWU6IHJlcy50aXRsZSxcclxuICAgICAgICAgICAgICAgICAgcmVzaXphYmxlOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICBzb3J0YWJsZTogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICAgIHN1cHByZXNzRmlsdGVyOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICBzdXBwcmVzc1NvcnRpbmc6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgIHN1cHByZXNzTWVudTogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgdG9vbHRpcEZpZWxkOiByZXMuZmllbGQsXHJcbiAgICAgICAgICAgICAgICAgIGNlbGxSZW5kZXJlcjogRHJvcGRvd25SZW5kZXJlcixcclxuICAgICAgICAgICAgICAgICAgY2VsbFJlbmRlcmVyUGFyYW1zOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgb25DbGljazogdGhpcy5vbkJ0bkNsaWNrLmJpbmQodGhpcyksXHJcbiAgICAgICAgICAgICAgICAgICAgdG9vbHRpcDogcmVzLnRvb2x0aXAsXHJcbiAgICAgICAgICAgICAgICAgICAgZHJvcERvd25EYXRhOiByZXMuZHJvcERvd25EYXRhLFxyXG4gICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICBvbkNlbGxDbGlja2VkOiAoZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZS5ub2RlLnNldFNlbGVjdGVkKGZhbHNlKTtcclxuICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwLFxyXG4gICAgICAgICAgICAgICAgICBwaW5uZWQ6IHJlcy5waW5Qb3NpdGlvbixcclxuICAgICAgICAgICAgICAgICAgbG9ja1Bpbm5lZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICAgIGZpZWxkOiByZXMuZmllbGQsXHJcbiAgICAgICAgICAgICAgICAgIGhlYWRlck5hbWU6IHJlcy50aXRsZSxcclxuICAgICAgICAgICAgICAgICAgcmVzaXphYmxlOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICBoaWRlOiAhcmVzLnZpc2libGUsXHJcbiAgICAgICAgICAgICAgICAgIHNvcnRhYmxlOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICB0b29sdGlwRmllbGQ6IHJlcy5maWVsZCxcclxuICAgICAgICAgICAgICAgICAgZmxvYXRpbmdGaWx0ZXI6IHRoaXMuZmxvYXRpbmdGaWx0ZXIsXHJcbiAgICAgICAgICAgICAgICAgIHZhbHVlRm9ybWF0dGVyOiB0aGlzLmNvbFZhbHVlRm9ybWF0dGVyLmJpbmQodGhpcyksXHJcbiAgICAgICAgICAgICAgICAgIGZpbHRlcmFibGU6IHJlcy5maWx0ZXJhYmxlLFxyXG4gICAgICAgICAgICAgICAgICBmaWx0ZXI6XHJcbiAgICAgICAgICAgICAgICAgICAgcmVzLmNvbHVtblR5cGUgPT0gJ3N0cmluZydcclxuICAgICAgICAgICAgICAgICAgICAgID8gJ2FnVGV4dENvbHVtbkZpbHRlcidcclxuICAgICAgICAgICAgICAgICAgICAgIDogcmVzLmNvbHVtblR5cGUgPT0gJ251bWJlcidcclxuICAgICAgICAgICAgICAgICAgICAgID8gJ2FnTnVtYmVyQ29sdW1uRmlsdGVyJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgOiAnYWdEYXRlQ29sdW1uRmlsdGVyJyxcclxuICAgICAgICAgICAgICAgICAgZmlsdGVyUGFyYW1zOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29tcGFyYXRvcjogKFxyXG4gICAgICAgICAgICAgICAgICAgICAgZmlsdGVyTG9jYWxEYXRlQXRNaWRuaWdodDogYW55LFxyXG4gICAgICAgICAgICAgICAgICAgICAgY2VsbFZhbHVlOiBhbnlcclxuICAgICAgICAgICAgICAgICAgICApID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRhdGVBc1N0cmluZyA9IGNlbGxWYWx1ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICBpZiAoZGF0ZUFzU3RyaW5nID09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzLmNvbHVtblR5cGUgPT0gJ2RhdGUnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNlbGxEYXRlID0gbmV3IERhdGUoZGF0ZUFzU3RyaW5nKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNlbGxEYXRlIDwgZmlsdGVyTG9jYWxEYXRlQXRNaWRuaWdodCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAtMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChjZWxsRGF0ZSA+IGZpbHRlckxvY2FsRGF0ZUF0TWlkbmlnaHQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICBmaWVsZDogcmVzLmZpZWxkLFxyXG4gICAgICAgICAgICAgICAgaGVhZGVyTmFtZTogcmVzLnRpdGxlLFxyXG4gICAgICAgICAgICAgICAgcmVzaXphYmxlOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgc29ydGFibGU6IGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgaGlkZTogIXJlcy52aXNpYmxlLFxyXG4gICAgICAgICAgICAgICAgc3VwcHJlc3NGaWx0ZXI6IHRydWUsXHJcbiAgICAgICAgICAgICAgICBzdXBwcmVzc1NvcnRpbmc6IHRydWUsXHJcbiAgICAgICAgICAgICAgICBzdXBwcmVzc01lbnU6IHRydWUsXHJcbiAgICAgICAgICAgICAgICB0b29sdGlwRmllbGQ6IHJlcy5maWVsZCxcclxuICAgICAgICAgICAgICAgIGNlbGxSZW5kZXJlcjogQnV0dG9uUmVuZGVyZXJDb21wb25lbnQsXHJcbiAgICAgICAgICAgICAgICBjZWxsUmVuZGVyZXJQYXJhbXM6IHtcclxuICAgICAgICAgICAgICAgICAgb25DbGljazogdGhpcy5vbkJ0bkNsaWNrLmJpbmQodGhpcyksXHJcbiAgICAgICAgICAgICAgICAgIGxhYmVsOiByZXMubGFiZWwsXHJcbiAgICAgICAgICAgICAgICAgIGljb246IHJlcy5pY29uLFxyXG4gICAgICAgICAgICAgICAgICBidXR0b25OYW1lOiByZXMuYnV0dG9uTmFtZSxcclxuICAgICAgICAgICAgICAgICAgdG9vbHRpcDogcmVzLnRvb2x0aXAsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgdmFsdWVHZXR0ZXI6IChwYXJhbXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICByZXR1cm4gcmVzLnRvb2x0aXAgfHwgcmVzLnRpdGxlO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIG1pbldpZHRoOiAyMCxcclxuICAgICAgICAgICAgICAgIGNlbGxDbGFzczogJ2FjdGlvbi1idXR0b24nLFxyXG4gICAgICAgICAgICAgICAgcGlubmVkOiByZXMucGluUG9zaXRpb24sXHJcbiAgICAgICAgICAgICAgICBsb2NrUGlubmVkOiB0cnVlLFxyXG4gICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgdGhpcy5jb2x1bW5EZWZzID0gY29sZGVmO1xyXG4gICAgICAgICAgdGhpcy5hZ0dyaWQuZ3JpZE9wdGlvbnM/LmFwaT8uc2V0Q29sdW1uRGVmcyhjb2xkZWYpO1xyXG4gICAgICAgICAgdGhpcy5nZXRHcmlkU3RhdGUoKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29uc29sZS5sb2coJ0NvbERlZiBSZWFkIEVycm9yPT4nLCByZXNwb25zZS5tZXNzYWdlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc29sZS5sb2coJ1BsZWFzZSBwYXNzIHZhbGlkIEdyaWRJZCBhbmQgbG9nZ2VkSW4gdXNlciBJZCcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0RXh0ZXJuYWxGaWx0ZXJzKG9wdGlvbnM6IGFueSkge1xyXG4gICAgdmFyIHNlcnZlclVybCA9ICcnO1xyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLnNlcnZlckRhdGFVcmwuaW5kZXhPZignZmlsdGVyJykgPj0gMCAmJlxyXG4gICAgICBvcHRpb25zLmluZGV4T2YoJ2ZpbHRlcicpID49IDBcclxuICAgICkge1xyXG4gICAgICBsZXQgc2x1ZyA9IHRoaXMuc2VydmVyRGF0YVVybC5zcGxpdCgnPyRmaWx0ZXI9Jyk7XHJcbiAgICAgIGlmIChzbHVnICYmIHNsdWcubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIG9wdGlvbnMgPSBvcHRpb25zICsgJyBhbmQgJyArIHNsdWdbMV07XHJcbiAgICAgICAgc2VydmVyVXJsID0gc2x1Z1swXTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmICh0aGlzLnNlcnZlckRhdGFVcmwuaW5kZXhPZignPycpID49IDApIHtcclxuICAgICAgc2VydmVyVXJsID0gdGhpcy5zZXJ2ZXJEYXRhVXJsO1xyXG4gICAgICBvcHRpb25zID0gb3B0aW9ucy5yZXBsYWNlKCc/JywgJyYnKTtcclxuICAgIH1cclxuICAgIHJldHVybiBgJHtzZXJ2ZXJVcmx9JHtvcHRpb25zfWA7XHJcbiAgfVxyXG5cclxuICBvbkdyaWRSZWFkeShwYXJhbXM6IEdyaWRSZWFkeUV2ZW50KSB7XHJcbiAgICB0aGlzLmdyaWRQYWdlU2l6ZSA9IHRoaXMucGFnZVNpemU7XHJcbiAgICBpZiAodGhpcy5lbmFibGVTZXJ2ZXJTaWRlUGFnaW5nID09IHRydWUpIHtcclxuICAgICAgcGFyYW1zLmFwaS5zZXRTZXJ2ZXJTaWRlRGF0YXNvdXJjZShcclxuICAgICAgICBuZXcgT2RhdGFTZXJ2ZXJTaWRlUHJvdmlkZXIoe1xyXG4gICAgICAgICAgaXNDYXNlU2Vuc2l0aXZlU3RyaW5nRmlsdGVyOiBmYWxzZSxcclxuICAgICAgICAgIGNhbGxBcGk6IChvcHRpb25zKSA9PlxyXG4gICAgICAgICAgICBmZXRjaChgJHt0aGlzLnNldEV4dGVybmFsRmlsdGVycyhvcHRpb25zKX1gLCB7XHJcbiAgICAgICAgICAgICAgaGVhZGVyczoge1xyXG4gICAgICAgICAgICAgICAgJ0NvbnRlbnQtdHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcclxuICAgICAgICAgICAgICAgIEFjY2VwdDogJ2FwcGxpY2F0aW9uL2pzb24nLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0pLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5qc29uKCkpLFxyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRHcmlkU3RhdGUoKSB7XHJcbiAgICBpZiAodGhpcy5ncmlkQ29sdW1uU3RhdGUpIHtcclxuICAgICAgdGhpcy5hZ0dyaWQuY29sdW1uQXBpLmFwcGx5Q29sdW1uU3RhdGUoe1xyXG4gICAgICAgIHN0YXRlOiB0aGlzLmdyaWRDb2x1bW5TdGF0ZSxcclxuICAgICAgICBhcHBseU9yZGVyOiB0cnVlLFxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHZhciBjb2x1bW5zID0gdGhpcy5hZ0dyaWQuY29sdW1uQXBpLmdldENvbHVtbnMoKTtcclxuICAgICAgaWYgKGNvbHVtbnMgJiYgY29sdW1ucy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgLy8gaWYgKGNvbHVtbnMubGVuZ3RoID4gMTApIHtcclxuICAgICAgICAvLyAgIHRoaXMuYWdHcmlkLmNvbHVtbkFwaS5hdXRvU2l6ZUFsbENvbHVtbnMoKTtcclxuICAgICAgICAvLyB9IGVsc2Uge1xyXG4gICAgICAgIC8vICAgdGhpcy5hZ0dyaWQuYXBpLnNpemVDb2x1bW5zVG9GaXQoKTtcclxuICAgICAgICAvLyB9XHJcbiAgICAgICAgY29uc3QgYWxsQ29sdW1uSWRzOiBzdHJpbmdbXSA9IFtdO1xyXG4gICAgICAgIHRoaXMuYWdHcmlkLmNvbHVtbkFwaSEuZ2V0Q29sdW1ucygpIS5mb3JFYWNoKChjb2x1bW4pID0+IHtcclxuICAgICAgICAgIGFsbENvbHVtbklkcy5wdXNoKGNvbHVtbi5nZXRJZCgpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLmFnR3JpZC5jb2x1bW5BcGkhLmF1dG9TaXplQ29sdW1ucyhhbGxDb2x1bW5JZHMsIGZhbHNlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0R3JpZFN0YXRlKCkge1xyXG4gICAgaWYgKHRoaXMuZ3JpZElkICYmIHRoaXMubG9nZ2VkSW5Vc2VyKSB7XHJcbiAgICAgIHRoaXMuZ3JpZFNlcnZpY2VcclxuICAgICAgICAuZ2V0R3JpZFN0YXRlKHRoaXMuZ3JpZElkLCB0aGlzLmxvZ2dlZEluVXNlcilcclxuICAgICAgICAuc3Vic2NyaWJlKChyZXNwb25zZTogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgIHJlc3BvbnNlLnN0YXR1cyA9PSAxICYmXHJcbiAgICAgICAgICAgIHJlc3BvbnNlLm9iamVjdCAmJlxyXG4gICAgICAgICAgICByZXNwb25zZS5vYmplY3QuZ3JpZENvbmZpZ1xyXG4gICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JpZENvbHVtblN0YXRlID0gSlNPTi5wYXJzZShyZXNwb25zZS5vYmplY3QuZ3JpZENvbmZpZyk7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0R3JpZFN0YXRlKCk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZygnRXJyb3Igd2hpbGUgbG9hZGluZyBncmlkIHN0YXRlJyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkJ0bkNsaWNrKGU6IGFueSkge1xyXG4gICAgY29uc29sZS5sb2coJ2J0biBjbGljaz0+JywgZSk7XHJcbiAgICB0aGlzLmJ0bkNsaWNrSGFuZGxlci5lbWl0KGUucm93RGF0YSk7XHJcbiAgfVxyXG5cclxuICBvblNhdmVHcmlkQ29sdW1uU3RhdGUoZXZlbnQ6IGFueSkge1xyXG4gICAgbGV0IGNvbHVtblN0YXRlID0gdGhpcy5hZ0dyaWQuY29sdW1uQXBpPy5nZXRDb2x1bW5TdGF0ZSgpO1xyXG4gICAgbGV0IGNvbHVtbkRhdGEgPSB7XHJcbiAgICAgIGdyaWRDb25maWc6IEpTT04uc3RyaW5naWZ5KGNvbHVtblN0YXRlKSxcclxuICAgICAgdWlHcmlkSWQ6IHRoaXMuZ3JpZElkLFxyXG4gICAgICB1c2VySWQ6IHRoaXMubG9nZ2VkSW5Vc2VyLFxyXG4gICAgfTtcclxuICAgIGlmIChldmVudC5maW5pc2hlZCA9PSB0cnVlIHx8IGV2ZW50LnR5cGUgPT09ICdjb2x1bW5QaW5uZWQnKSB7XHJcbiAgICAgIHRoaXMuZ3JpZENvbHVtblN0YXRlID0gY29sdW1uU3RhdGU7XHJcbiAgICAgIHRoaXMuZ3JpZFNlcnZpY2Uuc2F2ZUNvbHVtbkNvbmZpZyhjb2x1bW5EYXRhKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZXRHcmlkU3RhdGUoKTtcclxuICAgICAgICBpZiAocmVzLnN0YXR1cyA9PSAwKSB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZygnRXJyb3Igd2hpbGUgc2F2aW5nIGNvbHVtbiBjb25maWd1cmF0aW9uOicsIHJlcy5tZXNzYWdlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0Um93QnlJZDogR2V0Um93SWRGdW5jID0gKHBhcmFtczogR2V0Um93SWRQYXJhbXMpID0+IHtcclxuICAgIHZhciBkYXRhID0gcGFyYW1zLmRhdGE7XHJcbiAgICByZXR1cm4gZGF0YS5pZCA/PyAwO1xyXG4gIH07XHJcblxyXG4gIGNvbFZhbHVlRm9ybWF0dGVyKHBhcmFtczogVmFsdWVGb3JtYXR0ZXJQYXJhbXMpIHtcclxuICAgIGlmIChpc05hTigrcGFyYW1zLnZhbHVlKSkge1xyXG4gICAgICB2YXIgZGF0ZVdyYXBwZXIgPSBuZXcgRGF0ZShwYXJhbXMudmFsdWUpO1xyXG4gICAgICBsZXQgaXNWYWxpZERhdGUgPSAhaXNOYU4oZGF0ZVdyYXBwZXIuZ2V0RGF0ZSgpKTtcclxuICAgICAgaWYgKGlzVmFsaWREYXRlKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKHBhcmFtcy52YWx1ZSwgJ01NLWRkLXl5eXknKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gcGFyYW1zLnZhbHVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcGFyYW1zLnZhbHVlO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
393
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saWJyYXJ5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Jhc2VzaXRlLXNoYXJlZC1ncmlkLWxpYi9zcmMvbGliL2dyaWQtbGlicmFyeS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBWWhELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNwRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scURBQXFELENBQUM7QUFDcEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saURBQWlELENBQUM7Ozs7O0FBbUNuRixNQUFNLE9BQU8sb0JBQW9CO0lBMkIvQixZQUNVLFdBQStCLEVBQy9CLFFBQWtCO1FBRGxCLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQUMvQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBekJuQixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQ3RCLGlCQUFZLEdBQVEsVUFBVSxDQUFDO1FBRy9CLDJCQUFzQixHQUFZLEtBQUssQ0FBQztRQUd4QyxtQkFBYyxHQUFXLENBQUMsQ0FBQztRQUMzQiw0QkFBdUIsR0FBWSxLQUFLLENBQUM7UUFDekMsbUJBQWMsR0FBWSxLQUFLLENBQUM7UUFDekMsZ0JBQWdCO1FBQ04sb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBTzdDLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQUNyQixxQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDeEIsaUJBQVksR0FBaUIsWUFBWSxDQUFDO1FBQzFDLGlCQUFZ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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0QlQ7Z0lBS1EsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLHNCQUFzQjtzQkFBOUIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyx1QkFBdUI7c0JBQS9CLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFFSSxlQUFlO3NCQUF4QixNQUFNO2dCQUdtQixNQUFNO3NCQUEvQixTQUFTO3VCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWdHcmlkQW5ndWxhciB9IGZyb20gJ2FnLWdyaWQtYW5ndWxhcic7XHJcbmltcG9ydCB7XHJcbiAgQ29sRGVmLFxyXG4gIEdldFJvd0lkRnVuYyxcclxuICBHZXRSb3dJZFBhcmFtcyxcclxuICBHcmlkUmVhZHlFdmVudCxcclxuICBQYWdpbmF0aW9uTnVtYmVyRm9ybWF0dGVyUGFyYW1zLFxyXG4gIFJvd01vZGVsVHlwZSxcclxuICBSb3dOb2RlLFxyXG4gIFZhbHVlRm9ybWF0dGVyUGFyYW1zLFxyXG59IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcclxuaW1wb3J0IHsgR3JpZExpYnJhcnlTZXJ2aWNlIH0gZnJvbSAnLi9ncmlkLWxpYnJhcnkuc2VydmljZSc7XHJcbmltcG9ydCB7IE9kYXRhU2VydmVyU2lkZVByb3ZpZGVyIH0gZnJvbSAnLi9oZWxwZXJzJztcclxuaW1wb3J0IHsgQnV0dG9uUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL3JlbmRlcmVyL2J1dHRvbi1yZW5kZXJlci9idXR0b24tcmVuZGVyZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3VzdG9tVG9vbHRpcCB9IGZyb20gJy4vcmVuZGVyZXIvdG9vbHRpcC1yZW5kZXJlci9jdXN0b20tdG9vbHRpcC1yZW5kZXJlcic7XHJcbmltcG9ydCB7IERyb3Bkb3duUmVuZGVyZXIgfSBmcm9tICcuL3JlbmRlcmVyL2Ryb3Bkb3duLXJlbmRlcmVyL2Ryb3AtZG93bi1yZW5kZXJlcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1iYXNlc2l0ZS1zaGFyZWQtZ3JpZC1saWInLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8YWctZ3JpZC1hbmd1bGFyXHJcbiAgICAgIHN0eWxlPVwid2lkdGg6IDEwMCU7aGVpZ2h0Ojk4LjJ2aFwiXHJcbiAgICAgIGNsYXNzPVwiYWctdGhlbWUtYmFsaGFtIHNoYXJlZC1ncmlkLWxpYlwiXHJcbiAgICAgIFtjb2x1bW5EZWZzXT1cImNvbHVtbkRlZnNcIlxyXG4gICAgICBbZGVmYXVsdENvbERlZl09XCJkZWZhdWx0Q29sRGVmXCJcclxuICAgICAgW3Jvd0RhdGFdPVwicm93RGF0YVwiXHJcbiAgICAgIFtyb3dTZWxlY3Rpb25dPVwicm93U2VsZWN0aW9uXCJcclxuICAgICAgW2FuaW1hdGVSb3dzXT1cInRydWVcIlxyXG4gICAgICAoZ3JpZFJlYWR5KT1cIm9uR3JpZFJlYWR5KCRldmVudClcIlxyXG4gICAgICBbcGFnaW5hdGlvbl09XCJ0cnVlXCJcclxuICAgICAgW3BhZ2luYXRpb25QYWdlU2l6ZV09XCJncmlkUGFnZVNpemVcIlxyXG4gICAgICBbcGFnaW5hdGlvbk51bWJlckZvcm1hdHRlcl09XCJwYWdpbmF0aW9uTnVtYmVyRm9ybWF0dGVyXCJcclxuICAgICAgKG1vZGVsVXBkYXRlZCk9XCJvbk1vZGVsVXBkYXRlZCgpXCJcclxuICAgICAgW3Rvb2x0aXBTaG93RGVsYXldPVwidG9vbHRpcFNob3dEZWxheVwiXHJcbiAgICAgIFt0b29sdGlwSGlkZURlbGF5XT1cInRvb2x0aXBIaWRlRGVsYXlcIlxyXG4gICAgICBbcm93TW9kZWxUeXBlXT1cInJvd01vZGVsVHlwZVwiXHJcbiAgICAgIFtjYWNoZUJsb2NrU2l6ZV09XCJjYWNoZUJsb2NrU2l6ZVwiXHJcbiAgICAgIFttYXhDb25jdXJyZW50RGF0YXNvdXJjZVJlcXVlc3RzXT1cIjFcIlxyXG4gICAgICBbYmxvY2tMb2FkRGVib3VuY2VNaWxsaXNdPVwiMTAwXCJcclxuICAgICAgKGNvbHVtblZpc2libGUpPVwib25TYXZlR3JpZENvbHVtblN0YXRlKCRldmVudClcIlxyXG4gICAgICAoY29sdW1uUGlubmVkKT1cIm9uU2F2ZUdyaWRDb2x1bW5TdGF0ZSgkZXZlbnQpXCJcclxuICAgICAgKGNvbHVtblJlc2l6ZWQpPVwib25TYXZlR3JpZENvbHVtblN0YXRlKCRldmVudClcIlxyXG4gICAgICAoY29sdW1uTW92ZWQpPVwib25TYXZlR3JpZENvbHVtblN0YXRlKCRldmVudClcIlxyXG4gICAgICAoc29ydENoYW5nZWQpPVwib25Tb3J0Q2hhbmdlZEV2ZW50KClcIlxyXG4gICAgICBbcm93TXVsdGlTZWxlY3RXaXRoQ2xpY2tdPVwicm93TXVsdGlTZWxlY3RXaXRoQ2xpY2tcIlxyXG4gICAgPlxyXG4gICAgPC9hZy1ncmlkLWFuZ3VsYXI+XHJcbiAgYCxcclxuICBzdHlsZXM6IFtdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgR3JpZExpYnJhcnlDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIC8vaW5wdXQgcGFyYW1zXHJcbiAgQElucHV0KCkgY29sdW1uRGVmczogYW55O1xyXG4gIEBJbnB1dCgpIHJvd0RhdGE6IGFueTtcclxuICBASW5wdXQoKSBwYWdlU2l6ZTogbnVtYmVyID0gMjA7XHJcbiAgQElucHV0KCkgcm93U2VsZWN0aW9uOiBhbnkgPSAnbXVsdGlwbGUnO1xyXG4gIEBJbnB1dCgpIGdyaWRJZDogYW55O1xyXG4gIEBJbnB1dCgpIGxvZ2dlZEluVXNlcjogYW55O1xyXG4gIEBJbnB1dCgpIGVuYWJsZVNlcnZlclNpZGVQYWdpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBzZXJ2ZXJEYXRhVXJsITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGVudmlyb25tZW50ITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGNhY2hlQmxvY2tTaXplOiBudW1iZXIgPSAwO1xyXG4gIEBJbnB1dCgpIHJvd011bHRpU2VsZWN0V2l0aENsaWNrOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgZmxvYXRpbmdGaWx0ZXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAvL2V2ZW50IGVtaXR0ZXJzXHJcbiAgQE91dHB1dCgpIGJ0bkNsaWNrSGFuZGxlciA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICAvL3ZpZXdDaGlsZHNcclxuICBAVmlld0NoaWxkKEFnR3JpZEFuZ3VsYXIpIGFnR3JpZCE6IEFnR3JpZEFuZ3VsYXI7XHJcblxyXG4gIC8vcGFyYW10ZXJzXHJcbiAgZ3JpZENvbHVtblN0YXRlOiBhbnk7XHJcbiAgcHVibGljIHRvb2x0aXBTaG93RGVsYXkgPSAwO1xyXG4gIHB1YmxpYyB0b29sdGlwSGlkZURlbGF5ID0gMjAwMDtcclxuICBwdWJsaWMgcm93TW9kZWxUeXBlOiBSb3dNb2RlbFR5cGUgPSAnY2xpZW50U2lkZSc7XHJcbiAgcHVibGljIGdyaWRQYWdlU2l6ZTogbnVtYmVyID0gMDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGdyaWRTZXJ2aWNlOiBHcmlkTGlicmFyeVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGRhdGVQaXBlOiBEYXRlUGlwZVxyXG4gICkge31cclxuXHJcbiAgb25Tb3J0Q2hhbmdlZEV2ZW50KCkge1xyXG4gICAgdGhpcy5ncmlkQ29sdW1uU3RhdGUgPSB0aGlzLmFnR3JpZC5jb2x1bW5BcGkuZ2V0Q29sdW1uU3RhdGUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBkZWZhdWx0Q29sRGVmOiBDb2xEZWYgPSB7XHJcbiAgICBzb3J0YWJsZTogdHJ1ZSxcclxuICAgIGZpbHRlcjogdHJ1ZSxcclxuICAgIHRvb2x0aXBDb21wb25lbnQ6IEN1c3RvbVRvb2x0aXAsXHJcbiAgfTtcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmdyaWRQYWdlU2l6ZSA9IHRoaXMucGFnZVNpemU7XHJcbiAgICB0aGlzLmNhY2hlQmxvY2tTaXplID0gdGhpcy5jYWNoZUJsb2NrU2l6ZSA9IDBcclxuICAgICAgPyB0aGlzLnBhZ2VTaXplXHJcbiAgICAgIDogdGhpcy5jYWNoZUJsb2NrU2l6ZTtcclxuICAgIHRoaXMuZ3JpZFNlcnZpY2Uuc2V0QmFzZVVybCh0aGlzLmVudmlyb25tZW50KTtcclxuICAgIHRoaXMuZ2V0R3JpZFN0YXRlKCk7XHJcbiAgICB0aGlzLmdldENvbERlZigpO1xyXG4gICAgaWYgKHRoaXMuZW5hYmxlU2VydmVyU2lkZVBhZ2luZyA9PSB0cnVlKSB7XHJcbiAgICAgIHRoaXMucm93TW9kZWxUeXBlID0gJ3NlcnZlclNpZGUnO1xyXG4gICAgICB0aGlzLnJvd0RhdGEgPSAnJztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucm93TW9kZWxUeXBlID0gJ2NsaWVudFNpZGUnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHBhZ2luYXRpb25OdW1iZXJGb3JtYXR0ZXI6IChcclxuICAgIHBhcmFtczogUGFnaW5hdGlvbk51bWJlckZvcm1hdHRlclBhcmFtc1xyXG4gICkgPT4gc3RyaW5nID0gKHBhcmFtczogUGFnaW5hdGlvbk51bWJlckZvcm1hdHRlclBhcmFtcykgPT4ge1xyXG4gICAgcmV0dXJuICdbJyArIHBhcmFtcy52YWx1ZS50b0xvY2FsZVN0cmluZygpICsgJ10nO1xyXG4gIH07XHJcblxyXG4gIG9uTW9kZWxVcGRhdGVkKCkge1xyXG4gICAgdGhpcy5zZXRHcmlkU3RhdGUoKTtcclxuICB9XHJcblxyXG4gIGdldENvbERlZigpIHtcclxuICAgIGlmICh0aGlzLmdyaWRJZCAmJiB0aGlzLmxvZ2dlZEluVXNlcikge1xyXG4gICAgICB0aGlzLmdyaWRTZXJ2aWNlLmdldENvbERlZih0aGlzLmdyaWRJZCkuc3Vic2NyaWJlKChyZXNwb25zZTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyA9PSAxKSB7XHJcbiAgICAgICAgICBsZXQgY29sZGVmOiBDb2xEZWZbXSA9IHJlc3BvbnNlLmxpc3QubWFwKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzLmlzQnV0dG9uID09PSBmYWxzZSkge1xyXG4gICAgICAgICAgICAgIGlmIChyZXMuY29sdW1uVHlwZSA9PT0gJ2NoZWNrYm94Jykge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgICAgZmllbGQ6IHJlcy5maWVsZCxcclxuICAgICAgICAgICAgICAgICAgaGVhZGVyTmFtZTogcmVzLnRpdGxlLFxyXG4gICAgICAgICAgICAgICAgICBzb3J0YWJsZTogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICAgIHRvb2x0aXBGaWVsZDogcmVzLmZpZWxkLFxyXG4gICAgICAgICAgICAgICAgICByZXNpemFibGU6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgIGhlYWRlckNoZWNrYm94U2VsZWN0aW9uOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgICAgZmlsdGVyYWJsZTogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICAgIGNoZWNrYm94U2VsZWN0aW9uOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICBzaG93RGlzYWJsZWRDaGVja2JveGVzOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICBzdXBwcmVzc0ZpbHRlcjogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgc3VwcHJlc3NTb3J0aW5nOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICBzdXBwcmVzc01lbnU6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiA1NSxcclxuICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChyZXMuY29sdW1uVHlwZSA9PT0gJ2Ryb3Bkb3duJykge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgICAgZmllbGQ6IHJlcy5maWVsZCxcclxuICAgICAgICAgICAgICAgICAgaGVhZGVyTmFtZTogcmVzLnRpdGxlLFxyXG4gICAgICAgICAgICAgICAgICByZXNpemFibGU6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgIHNvcnRhYmxlOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgICAgc3VwcHJlc3NGaWx0ZXI6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgIHN1cHByZXNzU29ydGluZzogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgc3VwcHJlc3NNZW51OiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICB0b29sdGlwRmllbGQ6IHJlcy5maWVsZCxcclxuICAgICAgICAgICAgICAgICAgY2VsbFJlbmRlcmVyOiBEcm9wZG93blJlbmRlcmVyLFxyXG4gICAgICAgICAgICAgICAgICBjZWxsUmVuZGVyZXJQYXJhbXM6IHtcclxuICAgICAgICAgICAgICAgICAgICBvbkNsaWNrOiB0aGlzLm9uQnRuQ2xpY2suYmluZCh0aGlzKSxcclxuICAgICAgICAgICAgICAgICAgICB0b29sdGlwOiByZXMudG9vbHRpcCxcclxuICAgICAgICAgICAgICAgICAgICBkcm9wRG93bkRhdGE6IHJlcy5kcm9wRG93bkRhdGEsXHJcbiAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgIG9uQ2VsbENsaWNrZWQ6IChlOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBlLm5vZGUuc2V0U2VsZWN0ZWQoZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICB3aWR0aDogNDAsXHJcbiAgICAgICAgICAgICAgICAgIHBpbm5lZDogcmVzLnBpblBvc2l0aW9uLFxyXG4gICAgICAgICAgICAgICAgICBsb2NrUGlubmVkOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgICAgZmllbGQ6IHJlcy5maWVsZCxcclxuICAgICAgICAgICAgICAgICAgaGVhZGVyTmFtZTogcmVzLnRpdGxlLFxyXG4gICAgICAgICAgICAgICAgICByZXNpemFibGU6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgIGhpZGU6ICFyZXMudmlzaWJsZSxcclxuICAgICAgICAgICAgICAgICAgc29ydGFibGU6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgIHRvb2x0aXBGaWVsZDogcmVzLmZpZWxkLFxyXG4gICAgICAgICAgICAgICAgICBmbG9hdGluZ0ZpbHRlcjogdGhpcy5mbG9hdGluZ0ZpbHRlcixcclxuICAgICAgICAgICAgICAgICAgdmFsdWVGb3JtYXR0ZXI6IHRoaXMuY29sVmFsdWVGb3JtYXR0ZXIuYmluZCh0aGlzKSxcclxuICAgICAgICAgICAgICAgICAgZmlsdGVyYWJsZTogcmVzLmZpbHRlcmFibGUsXHJcbiAgICAgICAgICAgICAgICAgIGZpbHRlcjpcclxuICAgICAgICAgICAgICAgICAgICByZXMuY29sdW1uVHlwZSA9PSAnc3RyaW5nJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgPyAnYWdUZXh0Q29sdW1uRmlsdGVyJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgOiByZXMuY29sdW1uVHlwZSA9PSAnbnVtYmVyJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgPyAnYWdOdW1iZXJDb2x1bW5GaWx0ZXInXHJcbiAgICAgICAgICAgICAgICAgICAgICA6ICdhZ0RhdGVDb2x1bW5GaWx0ZXInLFxyXG4gICAgICAgICAgICAgICAgICBmaWx0ZXJQYXJhbXM6IHtcclxuICAgICAgICAgICAgICAgICAgICBjb21wYXJhdG9yOiAoXHJcbiAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJMb2NhbERhdGVBdE1pZG5pZ2h0OiBhbnksXHJcbiAgICAgICAgICAgICAgICAgICAgICBjZWxsVmFsdWU6IGFueVxyXG4gICAgICAgICAgICAgICAgICAgICkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGF0ZUFzU3RyaW5nID0gY2VsbFZhbHVlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgIGlmIChkYXRlQXNTdHJpbmcgPT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDtcclxuICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMuY29sdW1uVHlwZSA9PSAnZGF0ZScpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2VsbERhdGUgPSBuZXcgRGF0ZShkYXRlQXNTdHJpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2VsbERhdGUgPCBmaWx0ZXJMb2NhbERhdGVBdE1pZG5pZ2h0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGNlbGxEYXRlID4gZmlsdGVyTG9jYWxEYXRlQXRNaWRuaWdodCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDtcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgIGZpZWxkOiByZXMuZmllbGQsXHJcbiAgICAgICAgICAgICAgICBoZWFkZXJOYW1lOiByZXMudGl0bGUsXHJcbiAgICAgICAgICAgICAgICByZXNpemFibGU6IHRydWUsXHJcbiAgICAgICAgICAgICAgICBzb3J0YWJsZTogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICBoaWRlOiAhcmVzLnZpc2libGUsXHJcbiAgICAgICAgICAgICAgICBzdXBwcmVzc0ZpbHRlcjogdHJ1ZSxcclxuICAgICAgICAgICAgICAgIHN1cHByZXNzU29ydGluZzogdHJ1ZSxcclxuICAgICAgICAgICAgICAgIHN1cHByZXNzTWVudTogdHJ1ZSxcclxuICAgICAgICAgICAgICAgIHRvb2x0aXBGaWVsZDogcmVzLmZpZWxkLFxyXG4gICAgICAgICAgICAgICAgY2VsbFJlbmRlcmVyOiBCdXR0b25SZW5kZXJlckNvbXBvbmVudCxcclxuICAgICAgICAgICAgICAgIGNlbGxSZW5kZXJlclBhcmFtczoge1xyXG4gICAgICAgICAgICAgICAgICBvbkNsaWNrOiB0aGlzLm9uQnRuQ2xpY2suYmluZCh0aGlzKSxcclxuICAgICAgICAgICAgICAgICAgbGFiZWw6IHJlcy5sYWJlbCxcclxuICAgICAgICAgICAgICAgICAgaWNvbjogcmVzLmljb24sXHJcbiAgICAgICAgICAgICAgICAgIGJ1dHRvbk5hbWU6IHJlcy5idXR0b25OYW1lLFxyXG4gICAgICAgICAgICAgICAgICB0b29sdGlwOiByZXMudG9vbHRpcCxcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB2YWx1ZUdldHRlcjogKHBhcmFtczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIHJldHVybiByZXMudG9vbHRpcCB8fCByZXMudGl0bGU7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgbWluV2lkdGg6IDIwLFxyXG4gICAgICAgICAgICAgICAgY2VsbENsYXNzOiAnYWN0aW9uLWJ1dHRvbicsXHJcbiAgICAgICAgICAgICAgICBwaW5uZWQ6IHJlcy5waW5Qb3NpdGlvbixcclxuICAgICAgICAgICAgICAgIGxvY2tQaW5uZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgICB3aWR0aDpyZXMubGFiZWw/MTAwOjQwXHJcbiAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICB0aGlzLmNvbHVtbkRlZnMgPSBjb2xkZWY7XHJcbiAgICAgICAgICB0aGlzLmFnR3JpZC5ncmlkT3B0aW9ucz8uYXBpPy5zZXRDb2x1bW5EZWZzKGNvbGRlZik7XHJcbiAgICAgICAgICB0aGlzLmdldEdyaWRTdGF0ZSgpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZygnQ29sRGVmIFJlYWQgRXJyb3I9PicsIHJlc3BvbnNlLm1lc3NhZ2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zb2xlLmxvZygnUGxlYXNlIHBhc3MgdmFsaWQgR3JpZElkIGFuZCBsb2dnZWRJbiB1c2VyIElkJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRFeHRlcm5hbEZpbHRlcnMob3B0aW9uczogYW55KSB7XHJcbiAgICB2YXIgc2VydmVyVXJsID0gJyc7XHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMuc2VydmVyRGF0YVVybC5pbmRleE9mKCdmaWx0ZXInKSA+PSAwICYmXHJcbiAgICAgIG9wdGlvbnMuaW5kZXhPZignZmlsdGVyJykgPj0gMFxyXG4gICAgKSB7XHJcbiAgICAgIGxldCBzbHVnID0gdGhpcy5zZXJ2ZXJEYXRhVXJsLnNwbGl0KCc/JGZpbHRlcj0nKTtcclxuICAgICAgaWYgKHNsdWcgJiYgc2x1Zy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgKyAnIGFuZCAnICsgc2x1Z1sxXTtcclxuICAgICAgICBzZXJ2ZXJVcmwgPSBzbHVnWzBdO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuc2VydmVyRGF0YVVybC5pbmRleE9mKCc/JykgPj0gMCkge1xyXG4gICAgICBzZXJ2ZXJVcmwgPSB0aGlzLnNlcnZlckRhdGFVcmw7XHJcbiAgICAgIG9wdGlvbnMgPSBvcHRpb25zLnJlcGxhY2UoJz8nLCAnJicpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGAke3NlcnZlclVybH0ke29wdGlvbnN9YDtcclxuICB9XHJcblxyXG4gIG9uR3JpZFJlYWR5KHBhcmFtczogR3JpZFJlYWR5RXZlbnQpIHtcclxuICAgIHRoaXMuZ3JpZFBhZ2VTaXplID0gdGhpcy5wYWdlU2l6ZTtcclxuICAgIGlmICh0aGlzLmVuYWJsZVNlcnZlclNpZGVQYWdpbmcgPT0gdHJ1ZSkge1xyXG4gICAgICBwYXJhbXMuYXBpLnNldFNlcnZlclNpZGVEYXRhc291cmNlKFxyXG4gICAgICAgIG5ldyBPZGF0YVNlcnZlclNpZGVQcm92aWRlcih7XHJcbiAgICAgICAgICBpc0Nhc2VTZW5zaXRpdmVTdHJpbmdGaWx0ZXI6IGZhbHNlLFxyXG4gICAgICAgICAgY2FsbEFwaTogKG9wdGlvbnMpID0+XHJcbiAgICAgICAgICAgIGZldGNoKGAke3RoaXMuc2V0RXh0ZXJuYWxGaWx0ZXJzKG9wdGlvbnMpfWAsIHtcclxuICAgICAgICAgICAgICBoZWFkZXJzOiB7XHJcbiAgICAgICAgICAgICAgICAnQ29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxyXG4gICAgICAgICAgICAgICAgQWNjZXB0OiAnYXBwbGljYXRpb24vanNvbicsXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSkudGhlbigocmVzcG9uc2UpID0+IHJlc3BvbnNlLmpzb24oKSksXHJcbiAgICAgICAgICBhZnRlckxvYWREYXRhOiAob3B0aW9ucywgcm93RGF0YSwgdG90YWxDb3VudCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoIXJvd0RhdGEgfHwgcm93RGF0YS5sZW5ndGggPD0gMCkge1xyXG4gICAgICAgICAgICAgIHRoaXMuYWdHcmlkLmFwaS5zaG93Tm9Sb3dzT3ZlcmxheSgpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHRoaXMuYWdHcmlkLmFwaS5oaWRlT3ZlcmxheSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRHcmlkU3RhdGUoKSB7XHJcbiAgICBpZiAodGhpcy5ncmlkQ29sdW1uU3RhdGUpIHtcclxuICAgICAgdGhpcy5hZ0dyaWQuY29sdW1uQXBpLmFwcGx5Q29sdW1uU3RhdGUoe1xyXG4gICAgICAgIHN0YXRlOiB0aGlzLmdyaWRDb2x1bW5TdGF0ZSxcclxuICAgICAgICBhcHBseU9yZGVyOiB0cnVlLFxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHZhciBjb2x1bW5zID0gdGhpcy5hZ0dyaWQuY29sdW1uQXBpLmdldENvbHVtbnMoKTtcclxuICAgICAgaWYgKGNvbHVtbnMgJiYgY29sdW1ucy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgaWYgKGNvbHVtbnMubGVuZ3RoID4gMTUpIHtcclxuICAgICAgICAgIGNvbnN0IGFsbENvbHVtbklkczogc3RyaW5nW10gPSBbXTtcclxuICAgICAgICAgIHRoaXMuYWdHcmlkLmNvbHVtbkFwaSEuZ2V0Q29sdW1ucygpIS5mb3JFYWNoKChjb2x1bW4pID0+IHtcclxuICAgICAgICAgICAgYWxsQ29sdW1uSWRzLnB1c2goY29sdW1uLmdldElkKCkpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICB0aGlzLmFnR3JpZC5jb2x1bW5BcGkhLmF1dG9TaXplQ29sdW1ucyhhbGxDb2x1bW5JZHMsIGZhbHNlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5hZ0dyaWQuYXBpLnNpemVDb2x1bW5zVG9GaXQoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldEdyaWRTdGF0ZSgpIHtcclxuICAgIGlmICh0aGlzLmdyaWRJZCAmJiB0aGlzLmxvZ2dlZEluVXNlcikge1xyXG4gICAgICB0aGlzLmdyaWRTZXJ2aWNlXHJcbiAgICAgICAgLmdldEdyaWRTdGF0ZSh0aGlzLmdyaWRJZCwgdGhpcy5sb2dnZWRJblVzZXIpXHJcbiAgICAgICAgLnN1YnNjcmliZSgocmVzcG9uc2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICByZXNwb25zZS5zdGF0dXMgPT0gMSAmJlxyXG4gICAgICAgICAgICByZXNwb25zZS5vYmplY3QgJiZcclxuICAgICAgICAgICAgcmVzcG9uc2Uub2JqZWN0LmdyaWRDb25maWdcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICB0aGlzLmdyaWRDb2x1bW5TdGF0ZSA9IEpTT04ucGFyc2UocmVzcG9uc2Uub2JqZWN0LmdyaWRDb25maWcpO1xyXG4gICAgICAgICAgICB0aGlzLnNldEdyaWRTdGF0ZSgpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coJ0Vycm9yIHdoaWxlIGxvYWRpbmcgZ3JpZCBzdGF0ZScpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25CdG5DbGljayhlOiBhbnkpIHtcclxuICAgIGNvbnNvbGUubG9nKCdidG4gY2xpY2s9PicsIGUpO1xyXG4gICAgdGhpcy5idG5DbGlja0hhbmRsZXIuZW1pdChlLnJvd0RhdGEpO1xyXG4gIH1cclxuXHJcbiAgb25TYXZlR3JpZENvbHVtblN0YXRlKGV2ZW50OiBhbnkpIHtcclxuICAgIGxldCBjb2x1bW5TdGF0ZSA9IHRoaXMuYWdHcmlkLmNvbHVtbkFwaT8uZ2V0Q29sdW1uU3RhdGUoKTtcclxuICAgIGxldCBjb2x1bW5EYXRhID0ge1xyXG4gICAgICBncmlkQ29uZmlnOiBKU09OLnN0cmluZ2lmeShjb2x1bW5TdGF0ZSksXHJcbiAgICAgIHVpR3JpZElkOiB0aGlzLmdyaWRJZCxcclxuICAgICAgdXNlcklkOiB0aGlzLmxvZ2dlZEluVXNlcixcclxuICAgIH07XHJcbiAgICBpZiAoZXZlbnQuZmluaXNoZWQgPT0gdHJ1ZSB8fCBldmVudC50eXBlID09PSAnY29sdW1uUGlubmVkJykge1xyXG4gICAgICB0aGlzLmdyaWRDb2x1bW5TdGF0ZSA9IGNvbHVtblN0YXRlO1xyXG4gICAgICB0aGlzLmdyaWRTZXJ2aWNlLnNhdmVDb2x1bW5Db25maWcoY29sdW1uRGF0YSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2V0R3JpZFN0YXRlKCk7XHJcbiAgICAgICAgaWYgKHJlcy5zdGF0dXMgPT0gMCkge1xyXG4gICAgICAgICAgY29uc29sZS5sb2coJ0Vycm9yIHdoaWxlIHNhdmluZyBjb2x1bW4gY29uZmlndXJhdGlvbjonLCByZXMubWVzc2FnZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldFJvd0J5SWQ6IEdldFJvd0lkRnVuYyA9IChwYXJhbXM6IEdldFJvd0lkUGFyYW1zKSA9PiB7XHJcbiAgICB2YXIgZGF0YSA9IHBhcmFtcy5kYXRhO1xyXG4gICAgcmV0dXJuIGRhdGEuaWQgPz8gMDtcclxuICB9O1xyXG5cclxuICBjb2xWYWx1ZUZvcm1hdHRlcihwYXJhbXM6IFZhbHVlRm9ybWF0dGVyUGFyYW1zKSB7XHJcbiAgICBpZiAoaXNOYU4oK3BhcmFtcy52YWx1ZSkpIHtcclxuICAgICAgdmFyIGRhdGVXcmFwcGVyID0gbmV3IERhdGUocGFyYW1zLnZhbHVlKTtcclxuICAgICAgbGV0IGlzVmFsaWREYXRlID0gIWlzTmFOKGRhdGVXcmFwcGVyLmdldERhdGUoKSk7XHJcbiAgICAgIGlmIChpc1ZhbGlkRGF0ZSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShwYXJhbXMudmFsdWUsICdNTS1kZC15eXl5Jyk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIHBhcmFtcy52YWx1ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHBhcmFtcy52YWx1ZTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1046,7 +1046,7 @@ class GridLibraryComponent {
|
|
|
1046
1046
|
suppressFilter: true,
|
|
1047
1047
|
suppressSorting: true,
|
|
1048
1048
|
suppressMenu: true,
|
|
1049
|
-
width:
|
|
1049
|
+
width: 55,
|
|
1050
1050
|
};
|
|
1051
1051
|
}
|
|
1052
1052
|
else if (res.columnType === 'dropdown') {
|
|
@@ -1068,7 +1068,7 @@ class GridLibraryComponent {
|
|
|
1068
1068
|
onCellClicked: (e) => {
|
|
1069
1069
|
e.node.setSelected(false);
|
|
1070
1070
|
},
|
|
1071
|
-
width:
|
|
1071
|
+
width: 40,
|
|
1072
1072
|
pinned: res.pinPosition,
|
|
1073
1073
|
lockPinned: true,
|
|
1074
1074
|
};
|
|
@@ -1136,6 +1136,7 @@ class GridLibraryComponent {
|
|
|
1136
1136
|
cellClass: 'action-button',
|
|
1137
1137
|
pinned: res.pinPosition,
|
|
1138
1138
|
lockPinned: true,
|
|
1139
|
+
width: res.label ? 100 : 40
|
|
1139
1140
|
};
|
|
1140
1141
|
}
|
|
1141
1142
|
});
|
|
@@ -1179,6 +1180,14 @@ class GridLibraryComponent {
|
|
|
1179
1180
|
Accept: 'application/json',
|
|
1180
1181
|
},
|
|
1181
1182
|
}).then((response) => response.json()),
|
|
1183
|
+
afterLoadData: (options, rowData, totalCount) => {
|
|
1184
|
+
if (!rowData || rowData.length <= 0) {
|
|
1185
|
+
this.agGrid.api.showNoRowsOverlay();
|
|
1186
|
+
}
|
|
1187
|
+
else {
|
|
1188
|
+
this.agGrid.api.hideOverlay();
|
|
1189
|
+
}
|
|
1190
|
+
},
|
|
1182
1191
|
}));
|
|
1183
1192
|
}
|
|
1184
1193
|
}
|
|
@@ -1192,16 +1201,16 @@ class GridLibraryComponent {
|
|
|
1192
1201
|
else {
|
|
1193
1202
|
var columns = this.agGrid.columnApi.getColumns();
|
|
1194
1203
|
if (columns && columns.length > 0) {
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1204
|
+
if (columns.length > 15) {
|
|
1205
|
+
const allColumnIds = [];
|
|
1206
|
+
this.agGrid.columnApi.getColumns().forEach((column) => {
|
|
1207
|
+
allColumnIds.push(column.getId());
|
|
1208
|
+
});
|
|
1209
|
+
this.agGrid.columnApi.autoSizeColumns(allColumnIds, false);
|
|
1210
|
+
}
|
|
1211
|
+
else {
|
|
1212
|
+
this.agGrid.api.sizeColumnsToFit();
|
|
1213
|
+
}
|
|
1205
1214
|
}
|
|
1206
1215
|
}
|
|
1207
1216
|
}
|