@eo-sdk/client 11.3.0-rc.1 → 11.4.0-rc.2
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/app/eo-client/object-state/object-state/object-state.component.d.ts.map +1 -1
- package/app/eo-framework/accordion/simple-accordion/simple-accordion.component.d.ts +4 -1
- package/app/eo-framework/accordion/simple-accordion/simple-accordion.component.d.ts.map +1 -1
- package/app/eo-framework/grid/column-configurator/column-configurator.component.d.ts.map +1 -1
- package/app/eo-framework/grid/grid.component.d.ts.map +1 -1
- package/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.d.ts +5 -0
- package/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.d.ts.map +1 -1
- package/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.d.ts +10 -8
- package/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.d.ts.map +1 -1
- package/app/eo-framework/util/services/utilities.service.d.ts +57 -193
- package/app/eo-framework/util/services/utilities.service.d.ts.map +1 -1
- package/assets/_default/i18n/de.json +13 -1
- package/assets/_default/i18n/en.json +13 -1
- package/esm2022/app/eo-client/about-state/about-state.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-widget.component.mjs +4 -3
- package/esm2022/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-setup/hitlist-setup.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-widget.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created-setup/last-edited-and-created-setup.component.mjs +4 -4
- package/esm2022/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.component.mjs +2 -2
- package/esm2022/app/eo-client/object-state/object-state/object-state.component.mjs +4 -3
- package/esm2022/app/eo-client/settings/settings.component.mjs +1 -1
- package/esm2022/app/eo-framework/accordion/simple-accordion/simple-accordion.component.mjs +9 -3
- package/esm2022/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.mjs +2 -2
- package/esm2022/app/eo-framework/form-elements/id-reference/reference-finder/reference-finder.component.mjs +2 -2
- package/esm2022/app/eo-framework/grid/column-configurator/column-configurator.component.mjs +4 -1
- package/esm2022/app/eo-framework/grid/grid.component.mjs +5 -4
- package/esm2022/app/eo-framework/grid/row-grouping/group-stage.mjs +9 -9
- package/esm2022/app/eo-framework/grid/row-grouping/row-grouping.module.mjs +2 -2
- package/esm2022/app/eo-framework/inbox-details/inbox-details.component.mjs +1 -1
- package/esm2022/app/eo-framework/object-details/object-details.component.mjs +3 -3
- package/esm2022/app/eo-framework/object-details/object-links/object-links.component.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.mjs +1 -1
- package/esm2022/app/eo-framework/recyclebin-details/recyclebin-details.component.mjs +3 -3
- package/esm2022/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.mjs +22 -9
- package/esm2022/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.mjs +28 -24
- package/esm2022/app/eo-framework/util/services/utilities.service.mjs +59 -2
- package/fesm2022/eo-sdk-client.mjs +149 -65
- package/fesm2022/eo-sdk-client.mjs.map +1 -1
- package/misc/scripts/prebuild-about-state.js +13 -10
- package/package.json +7 -7
|
@@ -99,6 +99,9 @@ export class ColumnConfiguratorComponent {
|
|
|
99
99
|
modified: i !== index || (field.confmeta.sort || '') !== (sort || '') || !!field.confmeta.alignmentx } };
|
|
100
100
|
});
|
|
101
101
|
this.availableFields = res.available.elements.filter((col) => {
|
|
102
|
+
if (!this.configType?.maxFiles && col.qname.startsWith('sysdocument')) {
|
|
103
|
+
return false;
|
|
104
|
+
}
|
|
102
105
|
return !this.currentFields.find((c) => c.qname === col.qname);
|
|
103
106
|
}).map(el => {
|
|
104
107
|
el.confmeta = { modified: !!this.originalFields.find((c) => c.qname === el.qname) };
|
|
@@ -208,4 +211,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
208
211
|
}], eoGrid: [{
|
|
209
212
|
type: Input
|
|
210
213
|
}] } });
|
|
211
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWNvbmZpZ3VyYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9ncmlkL2NvbHVtbi1jb25maWd1cmF0b3IvY29sdW1uLWNvbmZpZ3VyYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9ncmlkL2NvbHVtbi1jb25maWd1cmF0b3IvY29sdW1uLWNvbmZpZ3VyYXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdDLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFekYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUEyQixNQUFNLGVBQWUsQ0FBQztBQUVwSCxPQUFPLEVBQXFDLGVBQWUsRUFBMkIsS0FBSyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ2pILE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7O0FBT3hFLE1BQU0sT0FBTywyQkFBMkI7SUFrQnRDLFlBQ1UsYUFBNEIsRUFDNUIsV0FBd0IsRUFDekIsU0FBMkI7UUFGMUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDekIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFwQnBDLG9CQUFlLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBT1gsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBR3RDLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFJekIsbUJBQWMsR0FBRyxXQUFXLENBQUM7UUFPM0IsSUFBSSxDQUFDLFdBQVc7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QjtJQUM5QixzQ0FBc0M7SUFDdEMsZ0RBQWdEO0lBQ2hELElBQUk7SUFFSixZQUFZLENBQUMsSUFBSSxFQUFFLE1BQU07UUFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztJQUMvQyxDQUFDO0lBRUQsUUFBUTtJQUNSLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUNsRSxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLENBQUM7SUFDSCxDQUFDOzhHQW5OVSwyQkFBMkI7a0dBQTNCLDJCQUEyQiwyU0NieEMsaTlHQW1EQTs7MkZEdENhLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSx3QkFBd0I7MklBUXpCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFJSSxlQUFlO3NCQUF4QixNQUFNO2dCQUdFLE9BQU87c0JBRGYsV0FBVzt1QkFBQyxlQUFlOztzQkFDM0IsS0FBSztnQkFFRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtEcmFnRHJvcCwgbW92ZUl0ZW1JbkFycmF5LCB0cmFuc2ZlckFycmF5SXRlbSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHtHcmlkQ29tcG9uZW50fSBmcm9tICcuLy4uL2dyaWQuY29tcG9uZW50JztcbmltcG9ydCB7Y29tYmluZUxhdGVzdH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkluaXQsIE91dHB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcbmltcG9ydCB7VXNlclNlcnZpY2UsIFNlYXJjaFNlcnZpY2UsIEVvVXNlciwgRmllbGREZWZpbml0aW9uLCBTZWFyY2hRdWVyeSwgT2JqZWN0VHlwZSwgVXRpbHN9IGZyb20gJ0Blby1zZGsvY29yZSc7XG5pbXBvcnQge0dyaWRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS9hcGkvZ3JpZC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tY29sdW1uLWNvbmZpZ3VyYXRvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2x1bW4tY29uZmlndXJhdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29sdW1uLWNvbmZpZ3VyYXRvci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIENvbHVtbkNvbmZpZ3VyYXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgaXNEZWZhdWx0Q29uZmlnID0gdHJ1ZTtcbiAgaGFzUHJpdmlsZWdlID0gZmFsc2U7XG4gIGluZm86IHN0cmluZztcbiAgQElucHV0KCkgY29uZmlnVHlwZTogT2JqZWN0VHlwZSB8IG51bGw7XG4gIEBJbnB1dCgpIGNvbmZpZ0NvbnRleHQ6IE9iamVjdFR5cGUgfCBudWxsO1xuICBjdXJyZW50RmllbGRzOiBhbnlbXTtcbiAgYXZhaWxhYmxlRmllbGRzOiBhbnlbXTtcblxuICBAT3V0cHV0KCkgb25Db25maWdDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MudmlzaWJsZScpXG4gIEBJbnB1dCgpIHZpc2libGUgPSBmYWxzZTtcblxuICBASW5wdXQoKSBlb0dyaWQ6IEdyaWRDb21wb25lbnQ7XG4gIHByaXZhdGUgb3JpZ2luYWxGaWVsZHM6IGFueVtdO1xuICBhbGlnbm1lbnRWYWx1ZSA9ICdBdXRvbWF0aWMnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSxcbiAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XG5cbiAgICB0aGlzLnVzZXJTZXJ2aWNlXG4gICAgICAudXNlciRcbiAgICAgIC5zdWJzY3JpYmUoKHVzZXI6IEVvVXNlcikgPT4ge1xuICAgICAgICB0aGlzLmhhc1ByaXZpbGVnZSA9IHVzZXIuaGFzUHJpdmlsZWdlKCdFRElUX1BST0ZJTEVfU0VUJyk7XG4gICAgICB9KTtcbiAgfVxuXG4gIC8vIHJlc2V0IGEgY29sdW1uIGNvbmZpZ3VyYXRpb24gdG8gaXRzIGRlZmF1bHRcbiAgcmVzZXREZWZhdWx0KCkge1xuICAgIC8vdGhpcy5pbml0Q29uZmlnKHRydWUpO1xuICAgIHRoaXMuc2VhcmNoU2VydmljZS5yZW1vdmVSZXN1bHRGaWVsZERlZmluaXRpb24odGhpcy5jb25maWdUeXBlLCB0aGlzLmNvbmZpZ0NvbnRleHQpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnRvZ2dsZUNvbmZpZ01vZGUodHJ1ZSkpO1xuXG4gIH1cblxuXG4gIC8qKlxuICAgKiBzYXZlIHRoZSBjdXJyZW50RmllbGRzIGNvbmZpZ3VyYXRpb25cbiAgICpcbiAgICogQHBhcmFtIGJvb2xlYW4gYXNEZWZhdWx0XG4gICAqL1xuICBzYXZlQ29uZmlnKGFzRGVmYXVsdCA9IGZhbHNlKTogdm9pZCB7XG4gICAgbGV0IGRhdGEgPSBuZXcgRmllbGREZWZpbml0aW9uKFtdLCBbXSwgW10sIFtdLCBbXSk7XG4gICAgZGF0YS5lbGVtZW50cyA9IHRoaXMuY3VycmVudEZpZWxkcy5tYXAoY29sID0+IHtcbiAgICAgIGlmIChjb2wuY29uZm1ldGEuc29ydCkge1xuICAgICAgICBkYXRhLnNvcnRvcmRlci5wdXNoKHtcbiAgICAgICAgICBxbmFtZTogY29sLnFuYW1lLFxuICAgICAgICAgIGRpcmVjdGlvbjogY29sLmNvbmZtZXRhLnNvcnRcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICBpZiAoY29sLmNvbmZtZXRhLmdyb3VwKSB7XG4gICAgICAgIGRhdGEuZ3JvdXBvcmRlci5wdXNoKHtcbiAgICAgICAgICBxbmFtZTogY29sLnFuYW1lXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgaWYgKGNvbC5jb25mbWV0YS5waW5uZWQpIHtcbiAgICAgICAgZGF0YS5waW5uZWQucHVzaCh7XG4gICAgICAgICAgcW5hbWU6IGNvbC5xbmFtZVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIGlmIChjb2wuY29uZm1ldGEuYWxpZ25tZW50eCkge1xuICAgICAgICBkYXRhLmFsaWdubWVudHgucHVzaCh7XG4gICAgICAgICAgcW5hbWU6IGNvbC5xbmFtZSxcbiAgICAgICAgICB2YWx1ZTogY29sLmNvbmZtZXRhLmFsaWdubWVudHhcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHFuYW1lOiBjb2wucW5hbWVcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICB0aGlzLnNlYXJjaFNlcnZpY2VcbiAgICAgIC5zYXZlUmVzdWx0RmllbGREZWZpbml0aW9uKHRoaXMuY29uZmlnVHlwZSwgdGhpcy5jb25maWdDb250ZXh0LCBkYXRhLCBhc0RlZmF1bHQgJiYgdGhpcy5oYXNQcml2aWxlZ2UpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMudG9nZ2xlQ29uZmlnTW9kZSh0cnVlKSk7XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSB0aGUgbGlzdHMgY29sdW1ucyBmb3IgdGhlIGN1cnJlbnRGaWVsZHMgY29uZmlnLlxuICAgKlxuICAgKiBAcGFyYW0gbG9hZERlZmF1bHRzIC0gaWYgc2V0IHRvIHRydWUsIHRoZSBjb25maWdzIGRlZmF1bHQgY29uZmlndXJhdGlvbiB3aWxsIGJlIGxvYWRlZFxuICAgKiBpbnN0ZWFkIG9mIHRoZSBvbmUgdGhhdCB3YXMgY29uZmlndXJlZCBieSB0aGUgdXNlci5cbiAgICovXG4gIGluaXRDb25maWcobG9hZERlZmF1bHRzKSB7XG5cbiAgICB0aGlzLmNyZWF0ZUNvbmZpZ0luZm8odGhpcy5jb25maWdUeXBlLCB0aGlzLmNvbmZpZ0NvbnRleHQpO1xuXG4gICAgdGhpcy5zZWFyY2hTZXJ2aWNlLmZldGNoUmVzdWx0RmllbGREZWZpbml0aW9uKHRoaXMuY29uZmlnVHlwZSwgdGhpcy5jb25maWdDb250ZXh0LCBsb2FkRGVmYXVsdHMgPyAnREVGQVVMVCcgOiBudWxsKS5waXBlKGNvbWJpbmVMYXRlc3QoXG4gICAgICB0aGlzLnNlYXJjaFNlcnZpY2UuZmV0Y2hSZXN1bHRGaWVsZERlZmluaXRpb24odGhpcy5jb25maWdUeXBlLCB0aGlzLmNvbmZpZ0NvbnRleHQsICdBTEwnKSxcbiAgICAgIChjdXJyZW50OiBGaWVsZERlZmluaXRpb24sIGF2YWlsYWJsZTogRmllbGREZWZpbml0aW9uKSA9PiB7XG4gICAgICAgIHJldHVybiB7Y3VycmVudCwgYXZhaWxhYmxlfTtcbiAgICAgIH0pKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XG4gICAgICAgIHJlcy5jdXJyZW50LmVsZW1lbnRzLmZvckVhY2goKGVsOiBhbnkpID0+IHtcbiAgICAgICAgICBsZXQgc29ydEVudHJ5ID0gcmVzLmN1cnJlbnQuc29ydG9yZGVyLmZpbmQoKGE6IGFueSkgPT4gZWwucW5hbWUgPT09IGEucW5hbWUpO1xuICAgICAgICAgIC8vIGxldCBncm91cEVudHJ5ID0gcmVzLmN1cnJlbnQuZ3JvdXBvcmRlci5maW5kKChhOiBhbnkpID0+IGVsLnFuYW1lID09PSBhLnFuYW1lKTtcbiAgICAgICAgICBsZXQgcGlubmVkRW50cnkgPSByZXMuY3VycmVudC5waW5uZWQuZmluZCgoYTogYW55KSA9PiBlbC5xbmFtZSA9PT0gYS5xbmFtZSk7XG4gICAgICAgICAgbGV0IGFsaWdubWVudEVudHJ5ID0gcmVzLmN1cnJlbnQuYWxpZ25tZW50eC5maW5kKChhOiBhbnkpID0+IGVsLnFuYW1lID09PSBhLnFuYW1lKTtcbiAgICAgICAgICBlbC5jb25mbWV0YSA9IHtcbiAgICAgICAgICAgIHNvcnQ6IHNvcnRFbnRyeSA/IChzb3J0RW50cnkuZGlyZWN0aW9uIHx8ICcnKS50b0xvd2VyQ2FzZSgpIDogbnVsbCxcbiAgICAgICAgICAgIC8vIGdyb3VwOiAhIWdyb3VwRW50cnksXG4gICAgICAgICAgICBwaW5uZWQ6ICEhcGlubmVkRW50cnksXG4gICAgICAgICAgICBtb2RpZmllZDogZmFsc2UsXG4gICAgICAgICAgICBhbGlnbm1lbnR4OiBhbGlnbm1lbnRFbnRyeSA/IGFsaWdubWVudEVudHJ5LnZhbHVlIDogbnVsbFxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuaXNEZWZhdWx0Q29uZmlnID0gcmVzLmN1cnJlbnQubW9kZSAhPT0gJ1VTRVInO1xuICAgICAgICB0aGlzLm9yaWdpbmFsRmllbGRzID0gcmVzLmN1cnJlbnQuZWxlbWVudHM7XG5cbiAgICAgICAgdGhpcy5jdXJyZW50RmllbGRzID0gdGhpcy5lb0dyaWQuY29sdW1ucy5maWx0ZXIoY29sdW1uID0+IGNvbHVtbi5pc1Zpc2libGUoKSkubWFwKCh7Y29sRGVmLCBzb3J0LCBwaW5uZWR9OiBhbnksIGluZGV4KSA9PiB7XG4gICAgICAgICAgY29uc3QgaSA9IHRoaXMub3JpZ2luYWxGaWVsZHMuZmluZEluZGV4KGYgPT4gR3JpZFNlcnZpY2UucW5hbWVNYXRjaChmLnFuYW1lLCBjb2xEZWYucmVmRGF0YS5xbmFtZSkpLCBmaWVsZCA9IHRoaXMub3JpZ2luYWxGaWVsZHNbaV07XG4gICAgICAgICAgcmV0dXJuIHsuLi5maWVsZCwgY29uZm1ldGE6IHtzb3J0LCBwaW5uZWQsIGFsaWdubWVudHg6IGZpZWxkLmNvbmZtZXRhLmFsaWdubWVudHgsXG4gICAgICAgICAgICAgIG1vZGlmaWVkOiBpICE9PSBpbmRleCB8fCAoZmllbGQuY29uZm1ldGEuc29ydCB8fCAnJykgIT09IChzb3J0IHx8ICcnKSB8fCAhIWZpZWxkLmNvbmZtZXRhLmFsaWdubWVudHh9fTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5hdmFpbGFibGVGaWVsZHMgPSByZXMuYXZhaWxhYmxlLmVsZW1lbnRzLmZpbHRlcigoY29sOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gIXRoaXMuY3VycmVudEZpZWxkcy5maW5kKChjOiBhbnkpID0+IGMucW5hbWUgPT09IGNvbC5xbmFtZSk7XG4gICAgICAgIH0pLm1hcChlbCA9PiB7XG4gICAgICAgICAgZWwuY29uZm1ldGEgPSB7bW9kaWZpZWQ6ICEhdGhpcy5vcmlnaW5hbEZpZWxkcy5maW5kKChjOiBhbnkpID0+IGMucW5hbWUgPT09IGVsLnFuYW1lKX07XG4gICAgICAgICAgcmV0dXJuIGVsO1xuICAgICAgICB9KS5zb3J0KFV0aWxzLnNvcnRWYWx1ZXMoJ2xhYmVsJykpO1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyB0aGUgaW5mbyBvYmplY3QgdGhhdCB3aWxsIGJlIGRpc3BsYXllZCB0byB0aGUgdXNlciBpbmRpY2F0aW5nIHdoYXQgcGFydGljdWxhciByZXN1bHQgbGlzdFxuICAgKiBpcyBnb2luZyB0byBiZSBjb25maWd1cmVkLiBJZiBub25lIG9mIHRoZSBwYXJhbXMgaXMgcHJvdmlkZWQsIHdlIGdvdCBhIGdlbmVyYWwgZnVsbHRleHQgcmVzdWx0LlxuICAgKlxuICAgKiBAcGFyYW0gW3R5cGVdIC0gdGhlIGNvbmZpZ3VyYXRpb25zIHRhcmdldCBvYmplY3QgdHlwZVxuICAgKiBAcGFyYW0gW2NvbnRleHRdIC0gdGhlIGNvbnRleHQgb2JqZWN0IHR5cGVcbiAgICovXG4gIGNyZWF0ZUNvbmZpZ0luZm8odHlwZSwgY29udGV4dCkge1xuICAgIGlmICh0eXBlICYmIHR5cGUubGFiZWwgJiYgY29udGV4dCkge1xuICAgICAgdGhpcy50cmFuc2xhdGUuZ2V0KCdlby5jb2x1bW4uY29uZmlnLmluZm8udHlwZS5jb250ZXh0Jywge1xuICAgICAgICB0eXBlOiB0eXBlLmxhYmVsLFxuICAgICAgICBjb250ZXh0OiBjb250ZXh0LmxhYmVsXG4gICAgICB9KS5zdWJzY3JpYmUodGV4dCA9PiB0aGlzLmluZm8gPSB0ZXh0KTtcbiAgICB9IGVsc2UgaWYgKHR5cGUgJiYgdHlwZS5sYWJlbCkge1xuICAgICAgdGhpcy50cmFuc2xhdGUuZ2V0KCdlby5jb2x1bW4uY29uZmlnLmluZm8udHlwZScsIHtcbiAgICAgICAgdHlwZTogdHlwZS5sYWJlbFxuICAgICAgfSkuc3Vic2NyaWJlKHRleHQgPT4gdGhpcy5pbmZvID0gdGV4dCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudHJhbnNsYXRlLmdldCgnZW8uY29sdW1uLmNvbmZpZy5pbmZvLmZ1bGx0ZXh0Jykuc3Vic2NyaWJlKHRleHQgPT4gdGhpcy5pbmZvID0gdGV4dCk7XG4gICAgfVxuICB9XG5cbiAgbWFya0l0ZW0oZmllbGQsIGdyb3VwKSB7XG4gICAgaWYgKGZpZWxkICYmIGdyb3VwKSB7XG4gICAgICBmaWVsZC5jb25mbWV0YS5tb2RpZmllZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgZHJvcChldmVudDogQ2RrRHJhZ0Ryb3A8YW55PiwgZ3JvdXA6ICdjdXJyZW50JyB8ICdhdmFpbGFibGUnKSB7XG4gICAgdHJhbnNmZXJBcnJheUl0ZW0oZXZlbnQucHJldmlvdXNDb250YWluZXIuZGF0YSwgZXZlbnQuY29udGFpbmVyLmRhdGEsIGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleCk7XG4gICAgdGhpcy5tYXJrSXRlbShldmVudC5pdGVtLmRhdGEsIGdyb3VwKTtcbiAgfVxuXG4gIHRvZ2dsZUNvbmZpZ01vZGUocmVmcmVzaCA9IGZhbHNlKSB7XG4gICAgdGhpcy5vbkNvbmZpZ0NoYW5nZWQuZW1pdChyZWZyZXNoKTtcbiAgfVxuXG4gIHRvZ2dsZVByZXZlbnQoaXRlbSwgJGV2ZW50KSB7XG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMubWFya0l0ZW0oaXRlbSwgJ2N1cnJlbnQnKTtcbiAgfVxuXG4gIHRvZ2dsZVNvcnQoaXRlbSwgJGV2ZW50KSB7XG4gICAgdGhpcy50b2dnbGVQcmV2ZW50KGl0ZW0sICRldmVudCk7XG4gICAgaWYgKCFpdGVtLmNvbmZtZXRhLnNvcnQpIHtcbiAgICAgIGl0ZW0uY29uZm1ldGEuc29ydCA9ICdhc2MnO1xuICAgIH0gZWxzZSBpZiAoaXRlbS5jb25mbWV0YS5zb3J0ID09PSAnYXNjJykge1xuICAgICAgaXRlbS5jb25mbWV0YS5zb3J0ID0gJ2Rlc2MnO1xuICAgIH0gZWxzZSBpZiAoaXRlbS5jb25mbWV0YS5zb3J0ID09PSAnZGVzYycpIHtcbiAgICAgIGl0ZW0uY29uZm1ldGEuc29ydCA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlQWxpZ25tZW50KGl0ZW0sICRldmVudCkge1xuICAgIHRoaXMudG9nZ2xlUHJldmVudChpdGVtLCAkZXZlbnQpO1xuICAgIGlmICghaXRlbS5jb25mbWV0YS5hbGlnbm1lbnR4KSB7XG4gICAgICBpdGVtLmNvbmZtZXRhLmFsaWdubWVudHggPSAncmlnaHQnO1xuICAgIH0gZWxzZSBpZiAoaXRlbS5jb25mbWV0YS5hbGlnbm1lbnR4ID09PSAncmlnaHQnKSB7XG4gICAgICBpdGVtLmNvbmZtZXRhLmFsaWdubWVudHggPSAnY2VudGVyJztcbiAgICB9IGVsc2UgaWYgKGl0ZW0uY29uZm1ldGEuYWxpZ25tZW50eCA9PT0gJ2NlbnRlcicpIHtcbiAgICAgIGl0ZW0uY29uZm1ldGEuYWxpZ25tZW50eCA9ICdsZWZ0JztcbiAgICB9IGVsc2UgaWYgKGl0ZW0uY29uZm1ldGEuYWxpZ25tZW50eCA9PT0gJ2xlZnQnKSB7XG4gICAgICBpdGVtLmNvbmZtZXRhLmFsaWdubWVudHggPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIC8vIHRvZ2dsZUdyb3VwKGl0ZW0sICRldmVudCkge1xuICAvLyAgIHRoaXMudG9nZ2xlUHJldmVudChpdGVtLCAkZXZlbnQpO1xuICAvLyAgIGl0ZW0uY29uZm1ldGEuZ3JvdXAgPSAhaXRlbS5jb25mbWV0YS5ncm91cDtcbiAgLy8gfVxuXG4gIHRvZ2dsZVBpbm5lZChpdGVtLCAkZXZlbnQpIHtcbiAgICB0aGlzLnRvZ2dsZVByZXZlbnQoaXRlbSwgJGV2ZW50KTtcbiAgICBpdGVtLmNvbmZtZXRhLnBpbm5lZCA9ICFpdGVtLmNvbmZtZXRhLnBpbm5lZDtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmICh0aGlzLnZpc2libGUgJiYgKGNoYW5nZXMuY29uZmlnVHlwZSB8fCBjaGFuZ2VzLmNvbmZpZ0NvbnRleHQpKSB7XG4gICAgICB0aGlzLmluaXRDb25maWcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwiY29uZmlndXJhdG9yXCI+XG5cbiAgPGRpdiBjbGFzcz1cImJhclwiPlxuICAgIDxkaXYgY2xhc3M9XCJ0aXRsZVwiIHRyYW5zbGF0ZT5lby5jb2x1bW4uY29uZmlnLnRpdGxlPC9kaXY+XG4gICAgPGJ1dHRvbiAoY2xpY2spPVwicmVzZXREZWZhdWx0KClcIiAqbmdJZj1cIiFpc0RlZmF1bHRDb25maWdcIiB0cmFuc2xhdGU+ZW8uY29sdW1uLmNvbmZpZy5hY3Rpb24ucmVzZXRkZWZhdWx0PC9idXR0b24+XG4gICAgPGJ1dHRvbiAoY2xpY2spPVwidG9nZ2xlQ29uZmlnTW9kZSgpXCIgdHJhbnNsYXRlPmVvLmNvbHVtbi5jb25maWcuYWN0aW9uLmNsb3NlPC9idXR0b24+XG4gICAgPGJ1dHRvbiAoY2xpY2spPVwic2F2ZUNvbmZpZyh0cnVlKVwiIGNsYXNzPVwicHJpbWFyeVwiIFtkaXNhYmxlZF09XCIhY3VycmVudEZpZWxkcz8ubGVuZ3RoXCIgKm5nSWY9XCJoYXNQcml2aWxlZ2VcIiB0cmFuc2xhdGU+ZW8uY29sdW1uLmNvbmZpZy5hY3Rpb24uc2F2ZS5kZWZhdWx0PC9idXR0b24+XG4gICAgPGJ1dHRvbiAoY2xpY2spPVwic2F2ZUNvbmZpZygpXCIgY2xhc3M9XCJwcmltYXJ5XCIgW2Rpc2FibGVkXT1cIiFjdXJyZW50RmllbGRzPy5sZW5ndGhcIiB0cmFuc2xhdGU+ZW8uY29sdW1uLmNvbmZpZy5hY3Rpb24uc2F2ZTwvYnV0dG9uPlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiaW5mb1wiICpuZ0lmPVwiaW5mb1wiPnt7aW5mb319PC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImNvbHVtbi1jb25maWdcIiBjZGtEcm9wTGlzdEdyb3VwPlxuXG4gICAgPGRpdiBjbGFzcz1cInNjcm9sbGVyIGN1cnJlbnRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJoZWFkbGluZVwiIHRyYW5zbGF0ZT5lby5jb2x1bW4uY29uZmlnLmhlYWRsaW5lLmN1cnJlbnQ8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJpdGVtc1wiIGNka0Ryb3BMaXN0IChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcCgkZXZlbnQsICdjdXJyZW50JylcIiBbY2RrRHJvcExpc3REYXRhXT1cImN1cnJlbnRGaWVsZHNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIml0ZW1cIiBjZGtEcmFnSGFuZGxlIGNka0RyYWcgW2Nka0RyYWdEYXRhXT1cImZpZWxkXCIgKm5nRm9yPVwibGV0IGZpZWxkIG9mIGN1cnJlbnRGaWVsZHM7IGluZGV4IGFzIGlcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZW50cnlcIiBbbmdDbGFzc109XCJ7bW9kaWZpZWQ6IGZpZWxkLmNvbmZtZXRhLm1vZGlmaWVkLCBzZmU6IGZpZWxkLnNlbGVjdGVkZm9yZW5yaWNobWVudH1cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbFwiIFtuZ0NsYXNzXT1cIntiYXNlcGFyYW06IGZpZWxkLmJhc2VwYXJhbWV0ZXJ9XCI+e3tmaWVsZC5sYWJlbH19PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JvdXBcIiBbbmdDbGFzc109XCJ7b246IGZpZWxkLmNvbmZtZXRhLnBpbm5lZH1cIiAoY2xpY2spPVwidG9nZ2xlUGlubmVkKGZpZWxkLCAkZXZlbnQpXCIgdHJhbnNsYXRlPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNvbmZpZy1sYWJlbFwiIHRyYW5zbGF0ZT5lby5jb2x1bW4uY29uZmlnLnBpbm5lZDwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPCEtLTxkaXYgY2xhc3M9XCJncm91cFwiIFtuZ0NsYXNzXT1cIntvbjogZmllbGQuY29uZm1ldGEuZ3JvdXB9XCIgKGNsaWNrKT1cInRvZ2dsZUdyb3VwKGZpZWxkLCAkZXZlbnQpXCIgdHJhbnNsYXRlPmVvLmNvbHVtbi5jb25maWcuZ3JvdXA8L2Rpdj4tLT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzb3J0XCIgW25nQ2xhc3NdPVwie29uOiBmaWVsZC5jb25mbWV0YS5zb3J0LCBhc2M6IGZpZWxkLmNvbmZtZXRhLnNvcnQgPT09ICdhc2MnLCBkZXNjOiBmaWVsZC5jb25mbWV0YS5zb3J0ID09PSAnZGVzYycsIGRpc2FibGVkOiAhZmllbGQuc29ydGFibGV9XCJcbiAgICAgICAgICAgIChjbGljayk9XCJmaWVsZC5zb3J0YWJsZSAmJiB0b2dnbGVTb3J0KGZpZWxkLCAkZXZlbnQpXCI+PHNwYW4gY2xhc3M9XCJjb25maWctbGFiZWxcIiB0cmFuc2xhdGU+ZW8uY29sdW1uLmNvbmZpZy5zb3J0PC9zcGFuPjwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsaWdubWVudFwiIFtuZ0NsYXNzXT1cIntvbjogZmllbGQuY29uZm1ldGEuYWxpZ25tZW50eCwgbGVmdDogZmllbGQuY29uZm1ldGEuYWxpZ25tZW50eCA9PT0gJ2xlZnQnLFxuICAgICAgICAgICAgcmlnaHQ6IGZpZWxkLmNvbmZtZXRhLmFsaWdubWVudHggPT09ICdyaWdodCcsIGNlbnRlcjogZmllbGQuY29uZm1ldGEuYWxpZ25tZW50eCA9PT0gJ2NlbnRlcid9XCJcbiAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZUFsaWdubWVudChmaWVsZCwgJGV2ZW50KVwiPjxzcGFuIGNsYXNzPVwiY29uZmlnLWxhYmVsXCIgdHJhbnNsYXRlPmVvLmNvbHVtbi5jb25maWcuYWxpZ25tZW50PC9zcGFuPlxuICAgICAgICAgICAgICA8aW1nICpuZ0lmPVwiZmllbGQuY29uZm1ldGEuYWxpZ25tZW50eCA9PT0gJ2NlbnRlcidcIiBjbGFzcz1cImNlbnRlci1zZWNvbmRcIiBzcmM9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFnQUFBQUlDQU1BQUFEejBVNjVBQUFBR0ZCTVZFVUFBQUQvLy84QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCNXNQRC9BQUFBQ0hSU1RsTUFBQUVuSzJ4d2lodjJlNk1BQUFBa1NVUkJWQWdkQmNHQkFRQWdETU1nbXZuL3pjSUdNTzZ4VUJIWElxTGtZa21RRGZBQkNIQUFPQ3QveFNZQUFBQUFTVVZPUks1Q1lJST1cIj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwic2Nyb2xsZXIgYXZhaWxhYmxlXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaGVhZGxpbmVcIiB0cmFuc2xhdGU+ZW8uY29sdW1uLmNvbmZpZy5oZWFkbGluZS5hdmFpbGFibGU8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJpdGVtc1wiIGNka0Ryb3BMaXN0IChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcCgkZXZlbnQsICdhdmFpbGFibGUnKVwiIFtjZGtEcm9wTGlzdERhdGFdPVwiYXZhaWxhYmxlRmllbGRzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJpdGVtXCIgY2RrRHJhZ0hhbmRsZSBjZGtEcmFnIFtjZGtEcmFnRGF0YV09XCJmaWVsZFwiICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBhdmFpbGFibGVGaWVsZHM7IGluZGV4IGFzIGlcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZW50cnlcIiBbbmdDbGFzc109XCJ7bW9kaWZpZWQ6IGZpZWxkLmNvbmZtZXRhLm1vZGlmaWVkLCBzZmU6IGZpZWxkLnNlbGVjdGVkZm9yZW5yaWNobWVudH1cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbFwiIFtuZ0NsYXNzXT1cIntiYXNlcGFyYW06IGZpZWxkLmJhc2VwYXJhbWV0ZXJ9XCI+e3tmaWVsZC5sYWJlbH19PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgPC9kaXY+XG5cbjwvZGl2PlxuIl19
|
|
214
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWNvbmZpZ3VyYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9ncmlkL2NvbHVtbi1jb25maWd1cmF0b3IvY29sdW1uLWNvbmZpZ3VyYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9ncmlkL2NvbHVtbi1jb25maWd1cmF0b3IvY29sdW1uLWNvbmZpZ3VyYXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdDLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFekYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUEyQixNQUFNLGVBQWUsQ0FBQztBQUVwSCxPQUFPLEVBQXFDLGVBQWUsRUFBMkIsS0FBSyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ2pILE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7O0FBT3hFLE1BQU0sT0FBTywyQkFBMkI7SUFrQnRDLFlBQ1UsYUFBNEIsRUFDNUIsV0FBd0IsRUFDekIsU0FBMkI7UUFGMUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDekIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFwQnBDLG9CQUFlLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBT1gsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBR3RDLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFJekIsbUJBQWMsR0FBRyxXQUFXLENBQUM7UUFPM0IsSUFBSSxDQUFDLFdBQVc7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TSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxLQUFLLE1BQU0sRUFBRSxDQUFDO1lBQy9DLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUNsQyxDQUFDO0lBQ0gsQ0FBQztJQUVELDhCQUE4QjtJQUM5QixzQ0FBc0M7SUFDdEMsZ0RBQWdEO0lBQ2hELElBQUk7SUFFSixZQUFZLENBQUMsSUFBSSxFQUFFLE1BQU07UUFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztJQUMvQyxDQUFDO0lBRUQsUUFBUTtJQUNSLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUNsRSxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLENBQUM7SUFDSCxDQUFDOzhHQXROVSwyQkFBMkI7a0dBQTNCLDJCQUEyQiwyU0NieEMsaTlHQW1EQTs7MkZEdENhLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSx3QkFBd0I7MklBUXpCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFJSSxlQUFlO3NCQUF4QixNQUFNO2dCQUdFLE9BQU87c0JBRGYsV0FBVzt1QkFBQyxlQUFlOztzQkFDM0IsS0FBSztnQkFFRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtEcmFnRHJvcCwgbW92ZUl0ZW1JbkFycmF5LCB0cmFuc2ZlckFycmF5SXRlbSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHtHcmlkQ29tcG9uZW50fSBmcm9tICcuLy4uL2dyaWQuY29tcG9uZW50JztcbmltcG9ydCB7Y29tYmluZUxhdGVzdH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkluaXQsIE91dHB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcbmltcG9ydCB7VXNlclNlcnZpY2UsIFNlYXJjaFNlcnZpY2UsIEVvVXNlciwgRmllbGREZWZpbml0aW9uLCBTZWFyY2hRdWVyeSwgT2JqZWN0VHlwZSwgVXRpbHN9IGZyb20gJ0Blby1zZGsvY29yZSc7XG5pbXBvcnQge0dyaWRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS9hcGkvZ3JpZC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tY29sdW1uLWNvbmZpZ3VyYXRvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2x1bW4tY29uZmlndXJhdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29sdW1uLWNvbmZpZ3VyYXRvci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIENvbHVtbkNvbmZpZ3VyYXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgaXNEZWZhdWx0Q29uZmlnID0gdHJ1ZTtcbiAgaGFzUHJpdmlsZWdlID0gZmFsc2U7XG4gIGluZm86IHN0cmluZztcbiAgQElucHV0KCkgY29uZmlnVHlwZTogT2JqZWN0VHlwZSB8IG51bGw7XG4gIEBJbnB1dCgpIGNvbmZpZ0NvbnRleHQ6IE9iamVjdFR5cGUgfCBudWxsO1xuICBjdXJyZW50RmllbGRzOiBhbnlbXTtcbiAgYXZhaWxhYmxlRmllbGRzOiBhbnlbXTtcblxuICBAT3V0cHV0KCkgb25Db25maWdDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MudmlzaWJsZScpXG4gIEBJbnB1dCgpIHZpc2libGUgPSBmYWxzZTtcblxuICBASW5wdXQoKSBlb0dyaWQ6IEdyaWRDb21wb25lbnQ7XG4gIHByaXZhdGUgb3JpZ2luYWxGaWVsZHM6IGFueVtdO1xuICBhbGlnbm1lbnRWYWx1ZSA9ICdBdXRvbWF0aWMnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSxcbiAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XG5cbiAgICB0aGlzLnVzZXJTZXJ2aWNlXG4gICAgICAudXNlciRcbiAgICAgIC5zdWJzY3JpYmUoKHVzZXI6IEVvVXNlcikgPT4ge1xuICAgICAgICB0aGlzLmhhc1ByaXZpbGVnZSA9IHVzZXIuaGFzUHJpdmlsZWdlKCdFRElUX1BST0ZJTEVfU0VUJyk7XG4gICAgICB9KTtcbiAgfVxuXG4gIC8vIHJlc2V0IGEgY29sdW1uIGNvbmZpZ3VyYXRpb24gdG8gaXRzIGRlZmF1bHRcbiAgcmVzZXREZWZhdWx0KCkge1xuICAgIC8vdGhpcy5pbml0Q29uZmlnKHRydWUpO1xuICAgIHRoaXMuc2VhcmNoU2VydmljZS5yZW1vdmVSZXN1bHRGaWVsZERlZmluaXRpb24odGhpcy5jb25maWdUeXBlLCB0aGlzLmNvbmZpZ0NvbnRleHQpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnRvZ2dsZUNvbmZpZ01vZGUodHJ1ZSkpO1xuXG4gIH1cblxuXG4gIC8qKlxuICAgKiBzYXZlIHRoZSBjdXJyZW50RmllbGRzIGNvbmZpZ3VyYXRpb25cbiAgICpcbiAgICogQHBhcmFtIGJvb2xlYW4gYXNEZWZhdWx0XG4gICAqL1xuICBzYXZlQ29uZmlnKGFzRGVmYXVsdCA9IGZhbHNlKTogdm9pZCB7XG4gICAgbGV0IGRhdGEgPSBuZXcgRmllbGREZWZpbml0aW9uKFtdLCBbXSwgW10sIFtdLCBbXSk7XG4gICAgZGF0YS5lbGVtZW50cyA9IHRoaXMuY3VycmVudEZpZWxkcy5tYXAoY29sID0+IHtcbiAgICAgIGlmIChjb2wuY29uZm1ldGEuc29ydCkge1xuICAgICAgICBkYXRhLnNvcnRvcmRlci5wdXNoKHtcbiAgICAgICAgICBxbmFtZTogY29sLnFuYW1lLFxuICAgICAgICAgIGRpcmVjdGlvbjogY29sLmNvbmZtZXRhLnNvcnRcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICBpZiAoY29sLmNvbmZtZXRhLmdyb3VwKSB7XG4gICAgICAgIGRhdGEuZ3JvdXBvcmRlci5wdXNoKHtcbiAgICAgICAgICBxbmFtZTogY29sLnFuYW1lXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgaWYgKGNvbC5jb25mbWV0YS5waW5uZWQpIHtcbiAgICAgICAgZGF0YS5waW5uZWQucHVzaCh7XG4gICAgICAgICAgcW5hbWU6IGNvbC5xbmFtZVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIGlmIChjb2wuY29uZm1ldGEuYWxpZ25tZW50eCkge1xuICAgICAgICBkYXRhLmFsaWdubWVudHgucHVzaCh7XG4gICAgICAgICAgcW5hbWU6IGNvbC5xbmFtZSxcbiAgICAgICAgICB2YWx1ZTogY29sLmNvbmZtZXRhLmFsaWdubWVudHhcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHFuYW1lOiBjb2wucW5hbWVcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICB0aGlzLnNlYXJjaFNlcnZpY2VcbiAgICAgIC5zYXZlUmVzdWx0RmllbGREZWZpbml0aW9uKHRoaXMuY29uZmlnVHlwZSwgdGhpcy5jb25maWdDb250ZXh0LCBkYXRhLCBhc0RlZmF1bHQgJiYgdGhpcy5oYXNQcml2aWxlZ2UpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMudG9nZ2xlQ29uZmlnTW9kZSh0cnVlKSk7XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSB0aGUgbGlzdHMgY29sdW1ucyBmb3IgdGhlIGN1cnJlbnRGaWVsZHMgY29uZmlnLlxuICAgKlxuICAgKiBAcGFyYW0gbG9hZERlZmF1bHRzIC0gaWYgc2V0IHRvIHRydWUsIHRoZSBjb25maWdzIGRlZmF1bHQgY29uZmlndXJhdGlvbiB3aWxsIGJlIGxvYWRlZFxuICAgKiBpbnN0ZWFkIG9mIHRoZSBvbmUgdGhhdCB3YXMgY29uZmlndXJlZCBieSB0aGUgdXNlci5cbiAgICovXG4gIGluaXRDb25maWcobG9hZERlZmF1bHRzKSB7XG5cbiAgICB0aGlzLmNyZWF0ZUNvbmZpZ0luZm8odGhpcy5jb25maWdUeXBlLCB0aGlzLmNvbmZpZ0NvbnRleHQpO1xuXG4gICAgdGhpcy5zZWFyY2hTZXJ2aWNlLmZldGNoUmVzdWx0RmllbGREZWZpbml0aW9uKHRoaXMuY29uZmlnVHlwZSwgdGhpcy5jb25maWdDb250ZXh0LCBsb2FkRGVmYXVsdHMgPyAnREVGQVVMVCcgOiBudWxsKS5waXBlKGNvbWJpbmVMYXRlc3QoXG4gICAgICB0aGlzLnNlYXJjaFNlcnZpY2UuZmV0Y2hSZXN1bHRGaWVsZERlZmluaXRpb24odGhpcy5jb25maWdUeXBlLCB0aGlzLmNvbmZpZ0NvbnRleHQsICdBTEwnKSxcbiAgICAgIChjdXJyZW50OiBGaWVsZERlZmluaXRpb24sIGF2YWlsYWJsZTogRmllbGREZWZpbml0aW9uKSA9PiB7XG4gICAgICAgIHJldHVybiB7Y3VycmVudCwgYXZhaWxhYmxlfTtcbiAgICAgIH0pKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XG4gICAgICAgIHJlcy5jdXJyZW50LmVsZW1lbnRzLmZvckVhY2goKGVsOiBhbnkpID0+IHtcbiAgICAgICAgICBsZXQgc29ydEVudHJ5ID0gcmVzLmN1cnJlbnQuc29ydG9yZGVyLmZpbmQoKGE6IGFueSkgPT4gZWwucW5hbWUgPT09IGEucW5hbWUpO1xuICAgICAgICAgIC8vIGxldCBncm91cEVudHJ5ID0gcmVzLmN1cnJlbnQuZ3JvdXBvcmRlci5maW5kKChhOiBhbnkpID0+IGVsLnFuYW1lID09PSBhLnFuYW1lKTtcbiAgICAgICAgICBsZXQgcGlubmVkRW50cnkgPSByZXMuY3VycmVudC5waW5uZWQuZmluZCgoYTogYW55KSA9PiBlbC5xbmFtZSA9PT0gYS5xbmFtZSk7XG4gICAgICAgICAgbGV0IGFsaWdubWVudEVudHJ5ID0gcmVzLmN1cnJlbnQuYWxpZ25tZW50eC5maW5kKChhOiBhbnkpID0+IGVsLnFuYW1lID09PSBhLnFuYW1lKTtcbiAgICAgICAgICBlbC5jb25mbWV0YSA9IHtcbiAgICAgICAgICAgIHNvcnQ6IHNvcnRFbnRyeSA/IChzb3J0RW50cnkuZGlyZWN0aW9uIHx8ICcnKS50b0xvd2VyQ2FzZSgpIDogbnVsbCxcbiAgICAgICAgICAgIC8vIGdyb3VwOiAhIWdyb3VwRW50cnksXG4gICAgICAgICAgICBwaW5uZWQ6ICEhcGlubmVkRW50cnksXG4gICAgICAgICAgICBtb2RpZmllZDogZmFsc2UsXG4gICAgICAgICAgICBhbGlnbm1lbnR4OiBhbGlnbm1lbnRFbnRyeSA/IGFsaWdubWVudEVudHJ5LnZhbHVlIDogbnVsbFxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuaXNEZWZhdWx0Q29uZmlnID0gcmVzLmN1cnJlbnQubW9kZSAhPT0gJ1VTRVInO1xuICAgICAgICB0aGlzLm9yaWdpbmFsRmllbGRzID0gcmVzLmN1cnJlbnQuZWxlbWVudHM7XG5cbiAgICAgICAgdGhpcy5jdXJyZW50RmllbGRzID0gdGhpcy5lb0dyaWQuY29sdW1ucy5maWx0ZXIoY29sdW1uID0+IGNvbHVtbi5pc1Zpc2libGUoKSkubWFwKCh7Y29sRGVmLCBzb3J0LCBwaW5uZWR9OiBhbnksIGluZGV4KSA9PiB7XG4gICAgICAgICAgY29uc3QgaSA9IHRoaXMub3JpZ2luYWxGaWVsZHMuZmluZEluZGV4KGYgPT4gR3JpZFNlcnZpY2UucW5hbWVNYXRjaChmLnFuYW1lLCBjb2xEZWYucmVmRGF0YS5xbmFtZSkpLCBmaWVsZCA9IHRoaXMub3JpZ2luYWxGaWVsZHNbaV07XG4gICAgICAgICAgcmV0dXJuIHsuLi5maWVsZCwgY29uZm1ldGE6IHtzb3J0LCBwaW5uZWQsIGFsaWdubWVudHg6IGZpZWxkLmNvbmZtZXRhLmFsaWdubWVudHgsXG4gICAgICAgICAgICAgIG1vZGlmaWVkOiBpICE9PSBpbmRleCB8fCAoZmllbGQuY29uZm1ldGEuc29ydCB8fCAnJykgIT09IChzb3J0IHx8ICcnKSB8fCAhIWZpZWxkLmNvbmZtZXRhLmFsaWdubWVudHh9fTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5hdmFpbGFibGVGaWVsZHMgPSByZXMuYXZhaWxhYmxlLmVsZW1lbnRzLmZpbHRlcigoY29sOiBhbnkpID0+IHtcbiAgICAgICAgICBpZiAoIXRoaXMuY29uZmlnVHlwZT8ubWF4RmlsZXMgJiYgY29sLnFuYW1lLnN0YXJ0c1dpdGgoJ3N5c2RvY3VtZW50JykpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuICF0aGlzLmN1cnJlbnRGaWVsZHMuZmluZCgoYzogYW55KSA9PiBjLnFuYW1lID09PSBjb2wucW5hbWUpO1xuICAgICAgICB9KS5tYXAoZWwgPT4ge1xuICAgICAgICAgIGVsLmNvbmZtZXRhID0ge21vZGlmaWVkOiAhIXRoaXMub3JpZ2luYWxGaWVsZHMuZmluZCgoYzogYW55KSA9PiBjLnFuYW1lID09PSBlbC5xbmFtZSl9O1xuICAgICAgICAgIHJldHVybiBlbDtcbiAgICAgICAgfSkuc29ydChVdGlscy5zb3J0VmFsdWVzKCdsYWJlbCcpKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgdGhlIGluZm8gb2JqZWN0IHRoYXQgd2lsbCBiZSBkaXNwbGF5ZWQgdG8gdGhlIHVzZXIgaW5kaWNhdGluZyB3aGF0IHBhcnRpY3VsYXIgcmVzdWx0IGxpc3RcbiAgICogaXMgZ29pbmcgdG8gYmUgY29uZmlndXJlZC4gSWYgbm9uZSBvZiB0aGUgcGFyYW1zIGlzIHByb3ZpZGVkLCB3ZSBnb3QgYSBnZW5lcmFsIGZ1bGx0ZXh0IHJlc3VsdC5cbiAgICpcbiAgICogQHBhcmFtIFt0eXBlXSAtIHRoZSBjb25maWd1cmF0aW9ucyB0YXJnZXQgb2JqZWN0IHR5cGVcbiAgICogQHBhcmFtIFtjb250ZXh0XSAtIHRoZSBjb250ZXh0IG9iamVjdCB0eXBlXG4gICAqL1xuICBjcmVhdGVDb25maWdJbmZvKHR5cGUsIGNvbnRleHQpIHtcbiAgICBpZiAodHlwZSAmJiB0eXBlLmxhYmVsICYmIGNvbnRleHQpIHtcbiAgICAgIHRoaXMudHJhbnNsYXRlLmdldCgnZW8uY29sdW1uLmNvbmZpZy5pbmZvLnR5cGUuY29udGV4dCcsIHtcbiAgICAgICAgdHlwZTogdHlwZS5sYWJlbCxcbiAgICAgICAgY29udGV4dDogY29udGV4dC5sYWJlbFxuICAgICAgfSkuc3Vic2NyaWJlKHRleHQgPT4gdGhpcy5pbmZvID0gdGV4dCk7XG4gICAgfSBlbHNlIGlmICh0eXBlICYmIHR5cGUubGFiZWwpIHtcbiAgICAgIHRoaXMudHJhbnNsYXRlLmdldCgnZW8uY29sdW1uLmNvbmZpZy5pbmZvLnR5cGUnLCB7XG4gICAgICAgIHR5cGU6IHR5cGUubGFiZWxcbiAgICAgIH0pLnN1YnNjcmliZSh0ZXh0ID0+IHRoaXMuaW5mbyA9IHRleHQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnRyYW5zbGF0ZS5nZXQoJ2VvLmNvbHVtbi5jb25maWcuaW5mby5mdWxsdGV4dCcpLnN1YnNjcmliZSh0ZXh0ID0+IHRoaXMuaW5mbyA9IHRleHQpO1xuICAgIH1cbiAgfVxuXG4gIG1hcmtJdGVtKGZpZWxkLCBncm91cCkge1xuICAgIGlmIChmaWVsZCAmJiBncm91cCkge1xuICAgICAgZmllbGQuY29uZm1ldGEubW9kaWZpZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIGRyb3AoZXZlbnQ6IENka0RyYWdEcm9wPGFueT4sIGdyb3VwOiAnY3VycmVudCcgfCAnYXZhaWxhYmxlJykge1xuICAgIHRyYW5zZmVyQXJyYXlJdGVtKGV2ZW50LnByZXZpb3VzQ29udGFpbmVyLmRhdGEsIGV2ZW50LmNvbnRhaW5lci5kYXRhLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xuICAgIHRoaXMubWFya0l0ZW0oZXZlbnQuaXRlbS5kYXRhLCBncm91cCk7XG4gIH1cblxuICB0b2dnbGVDb25maWdNb2RlKHJlZnJlc2ggPSBmYWxzZSkge1xuICAgIHRoaXMub25Db25maWdDaGFuZ2VkLmVtaXQocmVmcmVzaCk7XG4gIH1cblxuICB0b2dnbGVQcmV2ZW50KGl0ZW0sICRldmVudCkge1xuICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLm1hcmtJdGVtKGl0ZW0sICdjdXJyZW50Jyk7XG4gIH1cblxuICB0b2dnbGVTb3J0KGl0ZW0sICRldmVudCkge1xuICAgIHRoaXMudG9nZ2xlUHJldmVudChpdGVtLCAkZXZlbnQpO1xuICAgIGlmICghaXRlbS5jb25mbWV0YS5zb3J0KSB7XG4gICAgICBpdGVtLmNvbmZtZXRhLnNvcnQgPSAnYXNjJztcbiAgICB9IGVsc2UgaWYgKGl0ZW0uY29uZm1ldGEuc29ydCA9PT0gJ2FzYycpIHtcbiAgICAgIGl0ZW0uY29uZm1ldGEuc29ydCA9ICdkZXNjJztcbiAgICB9IGVsc2UgaWYgKGl0ZW0uY29uZm1ldGEuc29ydCA9PT0gJ2Rlc2MnKSB7XG4gICAgICBpdGVtLmNvbmZtZXRhLnNvcnQgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHRvZ2dsZUFsaWdubWVudChpdGVtLCAkZXZlbnQpIHtcbiAgICB0aGlzLnRvZ2dsZVByZXZlbnQoaXRlbSwgJGV2ZW50KTtcbiAgICBpZiAoIWl0ZW0uY29uZm1ldGEuYWxpZ25tZW50eCkge1xuICAgICAgaXRlbS5jb25mbWV0YS5hbGlnbm1lbnR4ID0gJ3JpZ2h0JztcbiAgICB9IGVsc2UgaWYgKGl0ZW0uY29uZm1ldGEuYWxpZ25tZW50eCA9PT0gJ3JpZ2h0Jykge1xuICAgICAgaXRlbS5jb25mbWV0YS5hbGlnbm1lbnR4ID0gJ2NlbnRlcic7XG4gICAgfSBlbHNlIGlmIChpdGVtLmNvbmZtZXRhLmFsaWdubWVudHggPT09ICdjZW50ZXInKSB7XG4gICAgICBpdGVtLmNvbmZtZXRhLmFsaWdubWVudHggPSAnbGVmdCc7XG4gICAgfSBlbHNlIGlmIChpdGVtLmNvbmZtZXRhLmFsaWdubWVudHggPT09ICdsZWZ0Jykge1xuICAgICAgaXRlbS5jb25mbWV0YS5hbGlnbm1lbnR4ID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICAvLyB0b2dnbGVHcm91cChpdGVtLCAkZXZlbnQpIHtcbiAgLy8gICB0aGlzLnRvZ2dsZVByZXZlbnQoaXRlbSwgJGV2ZW50KTtcbiAgLy8gICBpdGVtLmNvbmZtZXRhLmdyb3VwID0gIWl0ZW0uY29uZm1ldGEuZ3JvdXA7XG4gIC8vIH1cblxuICB0b2dnbGVQaW5uZWQoaXRlbSwgJGV2ZW50KSB7XG4gICAgdGhpcy50b2dnbGVQcmV2ZW50KGl0ZW0sICRldmVudCk7XG4gICAgaXRlbS5jb25mbWV0YS5waW5uZWQgPSAhaXRlbS5jb25mbWV0YS5waW5uZWQ7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAodGhpcy52aXNpYmxlICYmIChjaGFuZ2VzLmNvbmZpZ1R5cGUgfHwgY2hhbmdlcy5jb25maWdDb250ZXh0KSkge1xuICAgICAgdGhpcy5pbml0Q29uZmlnKGZhbHNlKTtcbiAgICB9XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cImNvbmZpZ3VyYXRvclwiPlxuXG4gIDxkaXYgY2xhc3M9XCJiYXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwidGl0bGVcIiB0cmFuc2xhdGU+ZW8uY29sdW1uLmNvbmZpZy50aXRsZTwvZGl2PlxuICAgIDxidXR0b24gKGNsaWNrKT1cInJlc2V0RGVmYXVsdCgpXCIgKm5nSWY9XCIhaXNEZWZhdWx0Q29uZmlnXCIgdHJhbnNsYXRlPmVvLmNvbHVtbi5jb25maWcuYWN0aW9uLnJlc2V0ZGVmYXVsdDwvYnV0dG9uPlxuICAgIDxidXR0b24gKGNsaWNrKT1cInRvZ2dsZUNvbmZpZ01vZGUoKVwiIHRyYW5zbGF0ZT5lby5jb2x1bW4uY29uZmlnLmFjdGlvbi5jbG9zZTwvYnV0dG9uPlxuICAgIDxidXR0b24gKGNsaWNrKT1cInNhdmVDb25maWcodHJ1ZSlcIiBjbGFzcz1cInByaW1hcnlcIiBbZGlzYWJsZWRdPVwiIWN1cnJlbnRGaWVsZHM/Lmxlbmd0aFwiICpuZ0lmPVwiaGFzUHJpdmlsZWdlXCIgdHJhbnNsYXRlPmVvLmNvbHVtbi5jb25maWcuYWN0aW9uLnNhdmUuZGVmYXVsdDwvYnV0dG9uPlxuICAgIDxidXR0b24gKGNsaWNrKT1cInNhdmVDb25maWcoKVwiIGNsYXNzPVwicHJpbWFyeVwiIFtkaXNhYmxlZF09XCIhY3VycmVudEZpZWxkcz8ubGVuZ3RoXCIgdHJhbnNsYXRlPmVvLmNvbHVtbi5jb25maWcuYWN0aW9uLnNhdmU8L2J1dHRvbj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImluZm9cIiAqbmdJZj1cImluZm9cIj57e2luZm99fTwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJjb2x1bW4tY29uZmlnXCIgY2RrRHJvcExpc3RHcm91cD5cblxuICAgIDxkaXYgY2xhc3M9XCJzY3JvbGxlciBjdXJyZW50XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaGVhZGxpbmVcIiB0cmFuc2xhdGU+ZW8uY29sdW1uLmNvbmZpZy5oZWFkbGluZS5jdXJyZW50PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiaXRlbXNcIiBjZGtEcm9wTGlzdCAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3AoJGV2ZW50LCAnY3VycmVudCcpXCIgW2Nka0Ryb3BMaXN0RGF0YV09XCJjdXJyZW50RmllbGRzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJpdGVtXCIgY2RrRHJhZ0hhbmRsZSBjZGtEcmFnIFtjZGtEcmFnRGF0YV09XCJmaWVsZFwiICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBjdXJyZW50RmllbGRzOyBpbmRleCBhcyBpXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImVudHJ5XCIgW25nQ2xhc3NdPVwie21vZGlmaWVkOiBmaWVsZC5jb25mbWV0YS5tb2RpZmllZCwgc2ZlOiBmaWVsZC5zZWxlY3RlZGZvcmVucmljaG1lbnR9XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGFiZWxcIiBbbmdDbGFzc109XCJ7YmFzZXBhcmFtOiBmaWVsZC5iYXNlcGFyYW1ldGVyfVwiPnt7ZmllbGQubGFiZWx9fTwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdyb3VwXCIgW25nQ2xhc3NdPVwie29uOiBmaWVsZC5jb25mbWV0YS5waW5uZWR9XCIgKGNsaWNrKT1cInRvZ2dsZVBpbm5lZChmaWVsZCwgJGV2ZW50KVwiIHRyYW5zbGF0ZT5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjb25maWctbGFiZWxcIiB0cmFuc2xhdGU+ZW8uY29sdW1uLmNvbmZpZy5waW5uZWQ8L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwhLS08ZGl2IGNsYXNzPVwiZ3JvdXBcIiBbbmdDbGFzc109XCJ7b246IGZpZWxkLmNvbmZtZXRhLmdyb3VwfVwiIChjbGljayk9XCJ0b2dnbGVHcm91cChmaWVsZCwgJGV2ZW50KVwiIHRyYW5zbGF0ZT5lby5jb2x1bW4uY29uZmlnLmdyb3VwPC9kaXY+LS0+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic29ydFwiIFtuZ0NsYXNzXT1cIntvbjogZmllbGQuY29uZm1ldGEuc29ydCwgYXNjOiBmaWVsZC5jb25mbWV0YS5zb3J0ID09PSAnYXNjJywgZGVzYzogZmllbGQuY29uZm1ldGEuc29ydCA9PT0gJ2Rlc2MnLCBkaXNhYmxlZDogIWZpZWxkLnNvcnRhYmxlfVwiXG4gICAgICAgICAgICAoY2xpY2spPVwiZmllbGQuc29ydGFibGUgJiYgdG9nZ2xlU29ydChmaWVsZCwgJGV2ZW50KVwiPjxzcGFuIGNsYXNzPVwiY29uZmlnLWxhYmVsXCIgdHJhbnNsYXRlPmVvLmNvbHVtbi5jb25maWcuc29ydDwvc3Bhbj48L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbGlnbm1lbnRcIiBbbmdDbGFzc109XCJ7b246IGZpZWxkLmNvbmZtZXRhLmFsaWdubWVudHgsIGxlZnQ6IGZpZWxkLmNvbmZtZXRhLmFsaWdubWVudHggPT09ICdsZWZ0JyxcbiAgICAgICAgICAgIHJpZ2h0OiBmaWVsZC5jb25mbWV0YS5hbGlnbm1lbnR4ID09PSAncmlnaHQnLCBjZW50ZXI6IGZpZWxkLmNvbmZtZXRhLmFsaWdubWVudHggPT09ICdjZW50ZXInfVwiXG4gICAgICAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVBbGlnbm1lbnQoZmllbGQsICRldmVudClcIj48c3BhbiBjbGFzcz1cImNvbmZpZy1sYWJlbFwiIHRyYW5zbGF0ZT5lby5jb2x1bW4uY29uZmlnLmFsaWdubWVudDwvc3Bhbj5cbiAgICAgICAgICAgICAgPGltZyAqbmdJZj1cImZpZWxkLmNvbmZtZXRhLmFsaWdubWVudHggPT09ICdjZW50ZXInXCIgY2xhc3M9XCJjZW50ZXItc2Vjb25kXCIgc3JjPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFBZ0FBQUFJQ0FNQUFBRHowVTY1QUFBQUdGQk1WRVVBQUFELy8vOEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQjVzUEQvQUFBQUNIUlNUbE1BQUFFbksyeHdpaHYyZTZNQUFBQWtTVVJCVkFnZEJjR0JBUUFnRE1NZ212bi96Y0lHTU82eFVCSFhJcUxrWWttUURmQUJDSEFBT0N0L3hTWUFBQUFBU1VWT1JLNUNZSUk9XCI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cInNjcm9sbGVyIGF2YWlsYWJsZVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImhlYWRsaW5lXCIgdHJhbnNsYXRlPmVvLmNvbHVtbi5jb25maWcuaGVhZGxpbmUuYXZhaWxhYmxlPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiaXRlbXNcIiBjZGtEcm9wTGlzdCAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3AoJGV2ZW50LCAnYXZhaWxhYmxlJylcIiBbY2RrRHJvcExpc3REYXRhXT1cImF2YWlsYWJsZUZpZWxkc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiaXRlbVwiIGNka0RyYWdIYW5kbGUgY2RrRHJhZyBbY2RrRHJhZ0RhdGFdPVwiZmllbGRcIiAqbmdGb3I9XCJsZXQgZmllbGQgb2YgYXZhaWxhYmxlRmllbGRzOyBpbmRleCBhcyBpXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImVudHJ5XCIgW25nQ2xhc3NdPVwie21vZGlmaWVkOiBmaWVsZC5jb25mbWV0YS5tb2RpZmllZCwgc2ZlOiBmaWVsZC5zZWxlY3RlZGZvcmVucmljaG1lbnR9XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGFiZWxcIiBbbmdDbGFzc109XCJ7YmFzZXBhcmFtOiBmaWVsZC5iYXNlcGFyYW1ldGVyfVwiPnt7ZmllbGQubGFiZWx9fTwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gIDwvZGl2PlxuXG48L2Rpdj5cbiJdfQ==
|