@lowcodeunit/applications-flow-common 1.37.137-stateApiRefactor → 1.37.139-ui-requests-10944
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/esm2020/lib/controls/security-toggle/security-toggle.component.mjs +6 -3
- package/esm2020/lib/elements/activity-card/activity-card.component.mjs +18 -12
- package/esm2020/lib/elements/breadcrumb/breadcrumb.component.mjs +11 -6
- package/esm2020/lib/elements/dashboard-toolbar/dashboard-toolbar.component.mjs +3 -3
- package/esm2020/lib/elements/feed-filter/feed-filter.component.mjs +11 -4
- package/esm2020/lib/elements/feed-header/feed-header.component.mjs +3 -3
- package/esm2020/lib/elements/slotted-card-lg/slotted-card-lg.component.mjs +2 -2
- package/fesm2015/lowcodeunit-applications-flow-common.mjs +40 -21
- package/fesm2015/lowcodeunit-applications-flow-common.mjs.map +1 -1
- package/fesm2020/lowcodeunit-applications-flow-common.mjs +40 -21
- package/fesm2020/lowcodeunit-applications-flow-common.mjs.map +1 -1
- package/lib/elements/activity-card/activity-card.component.d.ts +4 -1
- package/lib/elements/breadcrumb/breadcrumb.component.d.ts +1 -1
- package/lib/elements/feed-filter/feed-filter.component.d.ts +3 -1
- package/package.json +1 -1
@@ -35,8 +35,10 @@ export class SecurityToggleComponent {
|
|
35
35
|
}
|
36
36
|
ngOnInit() { }
|
37
37
|
ngOnChanges() {
|
38
|
-
this.IsPrivate
|
39
|
-
|
38
|
+
if (this.IsPrivate === null || this.IsPrivate === undefined) {
|
39
|
+
this.IsPrivate = this.EditingApplication.LookupConfig?.IsPrivate;
|
40
|
+
this.setupSecurityFormGroup();
|
41
|
+
}
|
40
42
|
}
|
41
43
|
SecuritySubmit() {
|
42
44
|
//save the security settings
|
@@ -47,6 +49,7 @@ export class SecurityToggleComponent {
|
|
47
49
|
this.IsPrivate = this.IsPrivateFormControl.value;
|
48
50
|
}
|
49
51
|
setupSecurityFormGroup() {
|
52
|
+
console.log('setting form');
|
50
53
|
this.ProcessorType = this.EditingApplication?.Processor?.Type || '';
|
51
54
|
this.SecurityFormGroup = this.formBldr.group({});
|
52
55
|
this.setupSecurityForm();
|
@@ -79,4 +82,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
79
82
|
type: Output,
|
80
83
|
args: ['save-form-event']
|
81
84
|
}] } });
|
82
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJpdHktdG9nZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbi9zcmMvbGliL2NvbnRyb2xzL3NlY3VyaXR5LXRvZ2dsZS9zZWN1cml0eS10b2dnbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvY29udHJvbHMvc2VjdXJpdHktdG9nZ2xlL3NlY3VyaXR5LXRvZ2dsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFJSCxVQUFVLEdBQ2IsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBU3hCLE1BQU0sT0FBTyx1QkFBdUI7SUF3Q2hDLFlBQXNCLE1BQWtCLEVBQVksUUFBcUI7UUFBbkQsV0FBTSxHQUFOLE1BQU0sQ0FBWTtRQUFZLGFBQVEsR0FBUixRQUFRLENBQWE7UUFDckUsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDO0lBQ2pDLENBQUM7SUEzQkQsSUFBVyx1QkFBdUI7UUFDOUIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLFlBQVksQ0FBQztJQUN6RCxDQUFDO0lBRUQsSUFBVyxvQkFBb0I7UUFDM0IsT0FBTyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsSUFBVywwQkFBMEI7UUFDakMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLGVBQWUsQ0FBQztJQUM1RCxDQUFDO0lBRUQsSUFBVyx5QkFBeUI7UUFDaEMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLGNBQWMsQ0FBQztJQUMzRCxDQUFDO0lBZU0sUUFBUSxLQUFVLENBQUM7SUFFbkIsV0FBVztRQUNkLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxTQUFTLENBQUM7UUFDakUsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVNLGNBQWM7UUFDakIsNEJBQTRCO1FBQzVCLE9BQU8sQ0FBQyxHQUFHLENBQ1AsOEJBQThCLEVBQzlCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQy9CLENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVNLGVBQWUsQ0FBQyxLQUFVO1FBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQztJQUNyRCxDQUFDO0lBRVMsc0JBQXNCO1FBQzVCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixFQUFFLFNBQVMsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3BFLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRVMsaUJBQWlCO1FBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQzdCLFdBQVcsRUFDWCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FDakIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxTQUFTLElBQUksS0FBSyxFQUN4RCxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FDeEIsQ0FDSixDQUFDO1FBRUYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FDN0IsaUJBQWlCLEVBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUNqQixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLGVBQWUsSUFBSSxLQUFLLEVBQzlELENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUN4QixDQUNKLENBQUM7UUFFRixJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUM3QixjQUFjLEVBQ2QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLGtCQUFrQixDQUFDLENBQ3JFLENBQUM7UUFFRixJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUM3QixnQkFBZ0IsRUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQ2pCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSwyQkFBMkIsQ0FDdkQsQ0FDSixDQUFDO0lBQ04sQ0FBQzs7b0hBbkdRLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLHVWQ2ZwQyxtbE1BMklBOzJGRDVIYSx1QkFBdUI7a0JBTG5DLFNBQVM7K0JBQ0kscUJBQXFCOzJIQU14QixrQkFBa0I7c0JBRHhCLEtBQUs7dUJBQUMscUJBQXFCO2dCQUlyQixPQUFPO3NCQURiLEtBQUs7dUJBQUMsU0FBUztnQkFJVCxZQUFZO3NCQURsQixLQUFLO3VCQUFDLGVBQWU7Z0JBSWYsY0FBYztzQkFEcEIsS0FBSzt1QkFBQyxpQkFBaUI7Z0JBSWpCLGFBQWE7c0JBRG5CLE1BQU07dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdENvbnRyb2wsXG4gICAgRm9ybUJ1aWxkZXIsXG4gICAgRm9ybUdyb3VwLFxuICAgIFZhbGlkYXRvcnMsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEVhQ0FwcGxpY2F0aW9uQXNDb2RlIH0gZnJvbSAnQHNlbWFudGljanMvY29tbW9uJztcbmltcG9ydCB7IEVhQ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lYWMuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGN1LXNlY3VyaXR5LXRvZ2dsZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NlY3VyaXR5LXRvZ2dsZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc2VjdXJpdHktdG9nZ2xlLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNlY3VyaXR5VG9nZ2xlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoJ2VkaXRpbmctYXBwbGljYXRpb24nKVxuICAgIHB1YmxpYyBFZGl0aW5nQXBwbGljYXRpb246IEVhQ0FwcGxpY2F0aW9uQXNDb2RlO1xuXG4gICAgQElucHV0KCdsb2FkaW5nJylcbiAgICBwdWJsaWMgTG9hZGluZzogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgnYWNjZXNzLXJpZ2h0cycpXG4gICAgcHVibGljIEFjY2Vzc1JpZ2h0czogYW55O1xuXG4gICAgQElucHV0KCdsaWNlbnNlLWNvbmZpZ3MnKVxuICAgIHB1YmxpYyBMaWNlbnNlQ29uZmlnczogYW55O1xuXG4gICAgQE91dHB1dCgnc2F2ZS1mb3JtLWV2ZW50JylcbiAgICBwdWJsaWMgU2F2ZUZvcm1FdmVudDogRXZlbnRFbWl0dGVyPHt9PjtcblxuICAgIHB1YmxpYyBnZXQgQWNjZXNzUmlnaHRzRm9ybUNvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuU2VjdXJpdHlGb3JtR3JvdXA/LmNvbnRyb2xzLmFjY2Vzc1JpZ2h0cztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IElzUHJpdmF0ZUZvcm1Db250cm9sKCk6IEFic3RyYWN0Q29udHJvbCB7XG4gICAgICAgIHJldHVybiB0aGlzLlNlY3VyaXR5Rm9ybUdyb3VwPy5jb250cm9scy5pc1ByaXZhdGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBJc1RyaWdnZXJTaWduSW5Gb3JtQ29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgICAgICByZXR1cm4gdGhpcy5TZWN1cml0eUZvcm1Hcm91cD8uY29udHJvbHMuaXNUcmlnZ2VyU2lnbkluO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgTGljZW5zZUNvbmZpZ3NGb3JtQ29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgICAgICByZXR1cm4gdGhpcy5TZWN1cml0eUZvcm1Hcm91cD8uY29udHJvbHMubGljZW5zZUNvbmZpZ3M7XG4gICAgfVxuXG4gICAgcHVibGljIElzUHJpdmF0ZTogYm9vbGVhbjtcblxuICAgIHB1YmxpYyBTZWN1cml0eUZvcm1Hcm91cDogRm9ybUdyb3VwO1xuXG4gICAgcHVibGljIFByb2Nlc3NvclR5cGU6IHN0cmluZztcblxuICAgIHB1YmxpYyBTa2VsZXRvbkVmZmVjdDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGVhY1N2YzogRWFDU2VydmljZSwgcHJvdGVjdGVkIGZvcm1CbGRyOiBGb3JtQnVpbGRlcikge1xuICAgICAgICB0aGlzLlNhdmVGb3JtRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgICAgIHRoaXMuU2tlbGV0b25FZmZlY3QgPSAnd2F2ZSc7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge31cblxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcygpIHtcbiAgICAgICAgdGhpcy5Jc1ByaXZhdGUgPSB0aGlzLkVkaXRpbmdBcHBsaWNhdGlvbi5Mb29rdXBDb25maWc/LklzUHJpdmF0ZTtcbiAgICAgICAgdGhpcy5zZXR1cFNlY3VyaXR5Rm9ybUdyb3VwKCk7XG4gICAgfVxuXG4gICAgcHVibGljIFNlY3VyaXR5U3VibWl0KCkge1xuICAgICAgICAvL3NhdmUgdGhlIHNlY3VyaXR5IHNldHRpbmdzXG4gICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgICAgJ3N1Ym1pdHRpbmcgc2VjdXJpdHkgdmFsdWVzOiAnLFxuICAgICAgICAgICAgdGhpcy5TZWN1cml0eUZvcm1Hcm91cC52YWx1ZVxuICAgICAgICApO1xuICAgICAgICB0aGlzLlNhdmVGb3JtRXZlbnQuZW1pdCh0aGlzLlNlY3VyaXR5Rm9ybUdyb3VwLnZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgSGFuZGxlSXNQcml2YXRlKGV2ZW50OiBhbnkpIHtcbiAgICAgICAgdGhpcy5Jc1ByaXZhdGUgPSB0aGlzLklzUHJpdmF0ZUZvcm1Db250cm9sLnZhbHVlO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBzZXR1cFNlY3VyaXR5Rm9ybUdyb3VwKCkge1xuICAgICAgICB0aGlzLlByb2Nlc3NvclR5cGUgPSB0aGlzLkVkaXRpbmdBcHBsaWNhdGlvbj8uUHJvY2Vzc29yPy5UeXBlIHx8ICcnO1xuICAgICAgICB0aGlzLlNlY3VyaXR5Rm9ybUdyb3VwID0gdGhpcy5mb3JtQmxkci5ncm91cCh7fSk7XG4gICAgICAgIHRoaXMuc2V0dXBTZWN1cml0eUZvcm0oKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2V0dXBTZWN1cml0eUZvcm0oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuU2VjdXJpdHlGb3JtR3JvdXAuYWRkQ29udHJvbChcbiAgICAgICAgICAgICdpc1ByaXZhdGUnLFxuICAgICAgICAgICAgdGhpcy5mb3JtQmxkci5jb250cm9sKFxuICAgICAgICAgICAgICAgIHRoaXMuRWRpdGluZ0FwcGxpY2F0aW9uLkxvb2t1cENvbmZpZz8uSXNQcml2YXRlIHx8IGZhbHNlLFxuICAgICAgICAgICAgICAgIFtWYWxpZGF0b3JzLnJlcXVpcmVkXVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuU2VjdXJpdHlGb3JtR3JvdXAuYWRkQ29udHJvbChcbiAgICAgICAgICAgICdpc1RyaWdnZXJTaWduSW4nLFxuICAgICAgICAgICAgdGhpcy5mb3JtQmxkci5jb250cm9sKFxuICAgICAgICAgICAgICAgIHRoaXMuRWRpdGluZ0FwcGxpY2F0aW9uLkxvb2t1cENvbmZpZz8uSXNUcmlnZ2VyU2lnbkluIHx8IGZhbHNlLFxuICAgICAgICAgICAgICAgIFtWYWxpZGF0b3JzLnJlcXVpcmVkXVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuU2VjdXJpdHlGb3JtR3JvdXAuYWRkQ29udHJvbChcbiAgICAgICAgICAgICdhY2Nlc3NSaWdodHMnLFxuICAgICAgICAgICAgdGhpcy5mb3JtQmxkci5jb250cm9sKHRoaXMuRWRpdGluZ0FwcGxpY2F0aW9uPy5BY2Nlc3NSaWdodExvb2t1cHMpXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5TZWN1cml0eUZvcm1Hcm91cC5hZGRDb250cm9sKFxuICAgICAgICAgICAgJ2xpY2Vuc2VDb25maWdzJyxcbiAgICAgICAgICAgIHRoaXMuZm9ybUJsZHIuY29udHJvbChcbiAgICAgICAgICAgICAgICB0aGlzLkVkaXRpbmdBcHBsaWNhdGlvbj8uTGljZW5zZUNvbmZpZ3VyYXRpb25Mb29rdXBzXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxufVxuIiwiPGZvcm1cbiAgICBjbGFzcz1cInNlY3VyaXR5LWZvcm1cIlxuICAgIFtmb3JtR3JvdXBdPVwiU2VjdXJpdHlGb3JtR3JvdXBcIlxuICAgIChuZ1N1Ym1pdCk9XCJTZWN1cml0eVN1Ym1pdCgpXCJcbj5cbiAgICA8bWF0LWNhcmQgY2xhc3M9XCJmbG93LWNhcmRcIj5cbiAgICAgICAgPCEtLSBTS0VMRVRPTiBMT0FESU5HIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiTG9hZGluZ1wiPlxuICAgICAgICAgICAgPG1hdC1jYXJkLWhlYWRlciBmeExheW91dEFsaWduPVwic3BhY2UtYmV0d2VlbiBjZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWNhcmQtdGl0bGUgc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCI+XG4gICAgICAgICAgICAgICAgICAgIFNlY3VyaXR5IFNldHRpbmdzXG4gICAgICAgICAgICAgICAgPC9tYXQtY2FyZC10aXRsZT5cbiAgICAgICAgICAgICAgICA8ZGl2IGZ4TGF5b3V0QWxpZ249XCJzcGFjZS1hcm91bmQgY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCI+WFhYPC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIHNrZWxldG9uLXRleHQgW2VmZmVjdF09XCJTa2VsZXRvbkVmZmVjdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgaW5mb19vdXRsaW5lXG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L21hdC1jYXJkLWhlYWRlcj5cblxuICAgICAgICAgICAgPG1hdC1jYXJkLWFjdGlvbnMgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGZ4RmxleD1cIjEwMCVcIlxuICAgICAgICAgICAgICAgICAgICBza2VsZXRvbi10ZXh0XG4gICAgICAgICAgICAgICAgICAgIFtlZmZlY3RdPVwiU2tlbGV0b25FZmZlY3RcIlxuICAgICAgICAgICAgICAgICAgICBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBzYXZlXG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LWljb24+XG5cbiAgICAgICAgICAgICAgICAgICAgU2F2ZSBTZXR0aW5nc1xuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1hY3Rpb25zPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPCEtLSBFTkQgU0tFTEVUT04gTE9BRElORyAtLT5cblxuICAgICAgICA8IS0tIEJFR0lOIEFDVFVBTCBDT05URU5UIC0tPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhTG9hZGluZ1wiPlxuICAgICAgICAgICAgPG1hdC1jYXJkLWhlYWRlcj5cbiAgICAgICAgICAgICAgICA8bWF0LWNhcmQtdGl0bGU+IFNlY3VyaXR5IFNldHRpbmdzIDwvbWF0LWNhcmQtdGl0bGU+XG5cbiAgICAgICAgICAgICAgICA8ZGl2IGZ4RmxleD48L2Rpdj5cblxuICAgICAgICAgICAgICAgIDxtYXQtc2xpZGUtdG9nZ2xlXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImlzUHJpdmF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJJcyBTZWN1cmUgQXBwbGljYXRpb24/XCJcbiAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJIYW5kbGVJc1ByaXZhdGUoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvbWF0LXNsaWRlLXRvZ2dsZT5cblxuICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICBtYXRTdWZmaXhcbiAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkEgU2VjdXJlZCBBcHBsaWNhdGlvbiBpcyBvbmUgdGhhdCByZXF1aXJlcyB0aGUgdXNlciB0byBiZSBhdXRoZW50aWNhdGVkIHRvIHVzZSB0aGUgYXBwbGljYXRpb24uIFRoZSBhcHBsaWNhdGlvbiBpcyBob3N0ZWQgYmVoaW5kIGFuIGlkZW50aXR5IHdhbGwuXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIGluZm9fb3V0bGluZVxuICAgICAgICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgICA8L21hdC1jYXJkLWhlYWRlcj5cblxuICAgICAgICAgICAgPG1hdC1jYXJkLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIklzUHJpdmF0ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvZ2dsZS1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LXNsaWRlLXRvZ2dsZSBmb3JtQ29udHJvbE5hbWU9XCJpc1RyaWdnZXJTaWduSW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSXMgVHJpZ2dlciBTaWduIEluIEFwcGxpY2F0aW9uP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LXNsaWRlLXRvZ2dsZT5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXRTdWZmaXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkEgVHJpZ2dlciBTaWduIEluIEFwcGxpY2F0aW9uIHdpbGwgZGlyZWN0IHRoZSB1c2VyIHRvIHNpZ24gaW4gaWYgdGhleSBhcmUgbm90IGFscmVhZHkuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZm9fb3V0bGluZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtbGFiZWw+QWNjZXNzIFJpZ2h0czwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LXNlbGVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiYWNjZXNzUmlnaHRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpcGxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPG1hdC1zZWxlY3QtdHJpZ2dlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7YWNjZXNzUmlnaHRzPy52YWx1ZT8uWzBdIHx8ICcnfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiKGFjY2Vzc1JpZ2h0cy52YWx1ZT8ubGVuZ3RoIHx8IDApID4gMVwiIGNsYXNzPVwiZXhhbXBsZS1hZGRpdGlvbmFsLXNlbGVjdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoK3t7KGFjY2Vzc1JpZ2h0cy52YWx1ZT8ubGVuZ3RoIHx8IDApIC0gMX19IHt7YWNjZXNzUmlnaHRzLnZhbHVlPy5sZW5ndGggPT09IDIgPyAnb3RoZXInIDogJ290aGVycyd9fSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1zZWxlY3QtdHJpZ2dlcj4gLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCByaWdodHMgb2YgQWNjZXNzUmlnaHRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwicmlnaHRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgcmlnaHRzIH19PC9tYXQtb3B0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LXNlbGVjdD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWxhYmVsPkxpY2Vuc2UgQ29uZmlnczwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LXNlbGVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwibGljZW5zZUNvbmZpZ3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlwbGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8bWF0LXNlbGVjdC10cmlnZ2VyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tsaWNlbnNlQ29uZmlncy52YWx1ZT8uWzBdIHx8ICcnfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiKGxpY2Vuc2VDb25maWdzLnZhbHVlPy5sZW5ndGggfHwgMCkgPiAxXCIgY2xhc3M9XCJleGFtcGxlLWFkZGl0aW9uYWwtc2VsZWN0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgre3sobGljZW5zZUNvbmZpZ3MudmFsdWU/Lmxlbmd0aCB8fCAwKSAtIDF9fSB7e2xpY2Vuc2VDb25maWdzLnZhbHVlPy5sZW5ndGggPT09IDIgPyAnb3RoZXInIDogJ290aGVycyd9fSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1zZWxlY3QtdHJpZ2dlcj4gLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjb25maWdzIG9mIExpY2Vuc2VDb25maWdzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiY29uZmlnc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPnt7IGNvbmZpZ3MgfX08L21hdC1vcHRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XG5cbiAgICAgICAgICAgIDxtYXQtY2FyZC1hY3Rpb25zIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwic3VibWl0XCJcbiAgICAgICAgICAgICAgICAgICAgZnhGbGV4PVwiMTAwJVwiXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICFTZWN1cml0eUZvcm1Hcm91cC52YWxpZCB8fCAhU2VjdXJpdHlGb3JtR3JvdXAuZGlydHlcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5zYXZlPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgU2F2ZSBTZXR0aW5nc1xuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1hY3Rpb25zPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L21hdC1jYXJkPlxuPC9mb3JtPlxuIl19
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJpdHktdG9nZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbi9zcmMvbGliL2NvbnRyb2xzL3NlY3VyaXR5LXRvZ2dsZS9zZWN1cml0eS10b2dnbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvY29udHJvbHMvc2VjdXJpdHktdG9nZ2xlL3NlY3VyaXR5LXRvZ2dsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFJSCxVQUFVLEdBQ2IsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBU3hCLE1BQU0sT0FBTyx1QkFBdUI7SUF3Q2hDLFlBQXNCLE1BQWtCLEVBQVksUUFBcUI7UUFBbkQsV0FBTSxHQUFOLE1BQU0sQ0FBWTtRQUFZLGFBQVEsR0FBUixRQUFRLENBQWE7UUFDckUsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDO0lBQ2pDLENBQUM7SUEzQkQsSUFBVyx1QkFBdUI7UUFDOUIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLFlBQVksQ0FBQztJQUN6RCxDQUFDO0lBRUQsSUFBVyxvQkFBb0I7UUFDM0IsT0FBTyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsSUFBVywwQkFBMEI7UUFDakMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLGVBQWUsQ0FBQztJQUM1RCxDQUFDO0lBRUQsSUFBVyx5QkFBeUI7UUFDaEMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLGNBQWMsQ0FBQztJQUMzRCxDQUFDO0lBZU0sUUFBUSxLQUFVLENBQUM7SUFFbkIsV0FBVztRQUNkLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUU7WUFDekQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLFNBQVMsQ0FBQztZQUNqRSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztTQUNqQztJQUNMLENBQUM7SUFFTSxjQUFjO1FBQ2pCLDRCQUE0QjtRQUM1QixPQUFPLENBQUMsR0FBRyxDQUNQLDhCQUE4QixFQUM5QixJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUMvQixDQUFDO1FBQ0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFTSxlQUFlLENBQUMsS0FBVTtRQUM3QixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUM7SUFDckQsQ0FBQztJQUVTLHNCQUFzQjtRQUM1QixPQUFPLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixFQUFFLFNBQVMsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3BFLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRVMsaUJBQWlCO1FBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQzdCLFdBQVcsRUFDWCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FDakIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxTQUFTLElBQUksS0FBSyxFQUN4RCxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FDeEIsQ0FDSixDQUFDO1FBRUYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FDN0IsaUJBQWlCLEVBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUNqQixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLGVBQWUsSUFBSSxLQUFLLEVBQzlELENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUN4QixDQUNKLENBQUM7UUFFRixJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUM3QixjQUFjLEVBQ2QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLGtCQUFrQixDQUFDLENBQ3JFLENBQUM7UUFFRixJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUM3QixnQkFBZ0IsRUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQ2pCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSwyQkFBMkIsQ0FDdkQsQ0FDSixDQUFDO0lBQ04sQ0FBQzs7b0hBdEdRLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLHVWQ2ZwQyxtbE1BMklBOzJGRDVIYSx1QkFBdUI7a0JBTG5DLFNBQVM7K0JBQ0kscUJBQXFCOzJIQU14QixrQkFBa0I7c0JBRHhCLEtBQUs7dUJBQUMscUJBQXFCO2dCQUlyQixPQUFPO3NCQURiLEtBQUs7dUJBQUMsU0FBUztnQkFJVCxZQUFZO3NCQURsQixLQUFLO3VCQUFDLGVBQWU7Z0JBSWYsY0FBYztzQkFEcEIsS0FBSzt1QkFBQyxpQkFBaUI7Z0JBSWpCLGFBQWE7c0JBRG5CLE1BQU07dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdENvbnRyb2wsXG4gICAgRm9ybUJ1aWxkZXIsXG4gICAgRm9ybUdyb3VwLFxuICAgIFZhbGlkYXRvcnMsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEVhQ0FwcGxpY2F0aW9uQXNDb2RlIH0gZnJvbSAnQHNlbWFudGljanMvY29tbW9uJztcbmltcG9ydCB7IEVhQ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lYWMuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGN1LXNlY3VyaXR5LXRvZ2dsZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NlY3VyaXR5LXRvZ2dsZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc2VjdXJpdHktdG9nZ2xlLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNlY3VyaXR5VG9nZ2xlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoJ2VkaXRpbmctYXBwbGljYXRpb24nKVxuICAgIHB1YmxpYyBFZGl0aW5nQXBwbGljYXRpb246IEVhQ0FwcGxpY2F0aW9uQXNDb2RlO1xuXG4gICAgQElucHV0KCdsb2FkaW5nJylcbiAgICBwdWJsaWMgTG9hZGluZzogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgnYWNjZXNzLXJpZ2h0cycpXG4gICAgcHVibGljIEFjY2Vzc1JpZ2h0czogYW55O1xuXG4gICAgQElucHV0KCdsaWNlbnNlLWNvbmZpZ3MnKVxuICAgIHB1YmxpYyBMaWNlbnNlQ29uZmlnczogYW55O1xuXG4gICAgQE91dHB1dCgnc2F2ZS1mb3JtLWV2ZW50JylcbiAgICBwdWJsaWMgU2F2ZUZvcm1FdmVudDogRXZlbnRFbWl0dGVyPHt9PjtcblxuICAgIHB1YmxpYyBnZXQgQWNjZXNzUmlnaHRzRm9ybUNvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuU2VjdXJpdHlGb3JtR3JvdXA/LmNvbnRyb2xzLmFjY2Vzc1JpZ2h0cztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IElzUHJpdmF0ZUZvcm1Db250cm9sKCk6IEFic3RyYWN0Q29udHJvbCB7XG4gICAgICAgIHJldHVybiB0aGlzLlNlY3VyaXR5Rm9ybUdyb3VwPy5jb250cm9scy5pc1ByaXZhdGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBJc1RyaWdnZXJTaWduSW5Gb3JtQ29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgICAgICByZXR1cm4gdGhpcy5TZWN1cml0eUZvcm1Hcm91cD8uY29udHJvbHMuaXNUcmlnZ2VyU2lnbkluO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgTGljZW5zZUNvbmZpZ3NGb3JtQ29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgICAgICByZXR1cm4gdGhpcy5TZWN1cml0eUZvcm1Hcm91cD8uY29udHJvbHMubGljZW5zZUNvbmZpZ3M7XG4gICAgfVxuXG4gICAgcHVibGljIElzUHJpdmF0ZTogYm9vbGVhbjtcblxuICAgIHB1YmxpYyBTZWN1cml0eUZvcm1Hcm91cDogRm9ybUdyb3VwO1xuXG4gICAgcHVibGljIFByb2Nlc3NvclR5cGU6IHN0cmluZztcblxuICAgIHB1YmxpYyBTa2VsZXRvbkVmZmVjdDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGVhY1N2YzogRWFDU2VydmljZSwgcHJvdGVjdGVkIGZvcm1CbGRyOiBGb3JtQnVpbGRlcikge1xuICAgICAgICB0aGlzLlNhdmVGb3JtRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgICAgIHRoaXMuU2tlbGV0b25FZmZlY3QgPSAnd2F2ZSc7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge31cblxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcygpIHtcbiAgICAgICAgaWYgKHRoaXMuSXNQcml2YXRlID09PSBudWxsIHx8IHRoaXMuSXNQcml2YXRlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuSXNQcml2YXRlID0gdGhpcy5FZGl0aW5nQXBwbGljYXRpb24uTG9va3VwQ29uZmlnPy5Jc1ByaXZhdGU7XG4gICAgICAgICAgICB0aGlzLnNldHVwU2VjdXJpdHlGb3JtR3JvdXAoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBTZWN1cml0eVN1Ym1pdCgpIHtcbiAgICAgICAgLy9zYXZlIHRoZSBzZWN1cml0eSBzZXR0aW5nc1xuICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICAgICdzdWJtaXR0aW5nIHNlY3VyaXR5IHZhbHVlczogJyxcbiAgICAgICAgICAgIHRoaXMuU2VjdXJpdHlGb3JtR3JvdXAudmFsdWVcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5TYXZlRm9ybUV2ZW50LmVtaXQodGhpcy5TZWN1cml0eUZvcm1Hcm91cC52YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIEhhbmRsZUlzUHJpdmF0ZShldmVudDogYW55KSB7XG4gICAgICAgIHRoaXMuSXNQcml2YXRlID0gdGhpcy5Jc1ByaXZhdGVGb3JtQ29udHJvbC52YWx1ZTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2V0dXBTZWN1cml0eUZvcm1Hcm91cCgpIHtcbiAgICAgICAgY29uc29sZS5sb2coJ3NldHRpbmcgZm9ybScpO1xuICAgICAgICB0aGlzLlByb2Nlc3NvclR5cGUgPSB0aGlzLkVkaXRpbmdBcHBsaWNhdGlvbj8uUHJvY2Vzc29yPy5UeXBlIHx8ICcnO1xuICAgICAgICB0aGlzLlNlY3VyaXR5Rm9ybUdyb3VwID0gdGhpcy5mb3JtQmxkci5ncm91cCh7fSk7XG4gICAgICAgIHRoaXMuc2V0dXBTZWN1cml0eUZvcm0oKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2V0dXBTZWN1cml0eUZvcm0oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuU2VjdXJpdHlGb3JtR3JvdXAuYWRkQ29udHJvbChcbiAgICAgICAgICAgICdpc1ByaXZhdGUnLFxuICAgICAgICAgICAgdGhpcy5mb3JtQmxkci5jb250cm9sKFxuICAgICAgICAgICAgICAgIHRoaXMuRWRpdGluZ0FwcGxpY2F0aW9uLkxvb2t1cENvbmZpZz8uSXNQcml2YXRlIHx8IGZhbHNlLFxuICAgICAgICAgICAgICAgIFtWYWxpZGF0b3JzLnJlcXVpcmVkXVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuU2VjdXJpdHlGb3JtR3JvdXAuYWRkQ29udHJvbChcbiAgICAgICAgICAgICdpc1RyaWdnZXJTaWduSW4nLFxuICAgICAgICAgICAgdGhpcy5mb3JtQmxkci5jb250cm9sKFxuICAgICAgICAgICAgICAgIHRoaXMuRWRpdGluZ0FwcGxpY2F0aW9uLkxvb2t1cENvbmZpZz8uSXNUcmlnZ2VyU2lnbkluIHx8IGZhbHNlLFxuICAgICAgICAgICAgICAgIFtWYWxpZGF0b3JzLnJlcXVpcmVkXVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuU2VjdXJpdHlGb3JtR3JvdXAuYWRkQ29udHJvbChcbiAgICAgICAgICAgICdhY2Nlc3NSaWdodHMnLFxuICAgICAgICAgICAgdGhpcy5mb3JtQmxkci5jb250cm9sKHRoaXMuRWRpdGluZ0FwcGxpY2F0aW9uPy5BY2Nlc3NSaWdodExvb2t1cHMpXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5TZWN1cml0eUZvcm1Hcm91cC5hZGRDb250cm9sKFxuICAgICAgICAgICAgJ2xpY2Vuc2VDb25maWdzJyxcbiAgICAgICAgICAgIHRoaXMuZm9ybUJsZHIuY29udHJvbChcbiAgICAgICAgICAgICAgICB0aGlzLkVkaXRpbmdBcHBsaWNhdGlvbj8uTGljZW5zZUNvbmZpZ3VyYXRpb25Mb29rdXBzXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxufVxuIiwiPGZvcm1cbiAgICBjbGFzcz1cInNlY3VyaXR5LWZvcm1cIlxuICAgIFtmb3JtR3JvdXBdPVwiU2VjdXJpdHlGb3JtR3JvdXBcIlxuICAgIChuZ1N1Ym1pdCk9XCJTZWN1cml0eVN1Ym1pdCgpXCJcbj5cbiAgICA8bWF0LWNhcmQgY2xhc3M9XCJmbG93LWNhcmRcIj5cbiAgICAgICAgPCEtLSBTS0VMRVRPTiBMT0FESU5HIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiTG9hZGluZ1wiPlxuICAgICAgICAgICAgPG1hdC1jYXJkLWhlYWRlciBmeExheW91dEFsaWduPVwic3BhY2UtYmV0d2VlbiBjZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWNhcmQtdGl0bGUgc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCI+XG4gICAgICAgICAgICAgICAgICAgIFNlY3VyaXR5IFNldHRpbmdzXG4gICAgICAgICAgICAgICAgPC9tYXQtY2FyZC10aXRsZT5cbiAgICAgICAgICAgICAgICA8ZGl2IGZ4TGF5b3V0QWxpZ249XCJzcGFjZS1hcm91bmQgY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCI+WFhYPC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIHNrZWxldG9uLXRleHQgW2VmZmVjdF09XCJTa2VsZXRvbkVmZmVjdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgaW5mb19vdXRsaW5lXG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L21hdC1jYXJkLWhlYWRlcj5cblxuICAgICAgICAgICAgPG1hdC1jYXJkLWFjdGlvbnMgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGZ4RmxleD1cIjEwMCVcIlxuICAgICAgICAgICAgICAgICAgICBza2VsZXRvbi10ZXh0XG4gICAgICAgICAgICAgICAgICAgIFtlZmZlY3RdPVwiU2tlbGV0b25FZmZlY3RcIlxuICAgICAgICAgICAgICAgICAgICBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBzYXZlXG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LWljb24+XG5cbiAgICAgICAgICAgICAgICAgICAgU2F2ZSBTZXR0aW5nc1xuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1hY3Rpb25zPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPCEtLSBFTkQgU0tFTEVUT04gTE9BRElORyAtLT5cblxuICAgICAgICA8IS0tIEJFR0lOIEFDVFVBTCBDT05URU5UIC0tPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhTG9hZGluZ1wiPlxuICAgICAgICAgICAgPG1hdC1jYXJkLWhlYWRlcj5cbiAgICAgICAgICAgICAgICA8bWF0LWNhcmQtdGl0bGU+IFNlY3VyaXR5IFNldHRpbmdzIDwvbWF0LWNhcmQtdGl0bGU+XG5cbiAgICAgICAgICAgICAgICA8ZGl2IGZ4RmxleD48L2Rpdj5cblxuICAgICAgICAgICAgICAgIDxtYXQtc2xpZGUtdG9nZ2xlXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImlzUHJpdmF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJJcyBTZWN1cmUgQXBwbGljYXRpb24/XCJcbiAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJIYW5kbGVJc1ByaXZhdGUoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvbWF0LXNsaWRlLXRvZ2dsZT5cblxuICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICBtYXRTdWZmaXhcbiAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkEgU2VjdXJlZCBBcHBsaWNhdGlvbiBpcyBvbmUgdGhhdCByZXF1aXJlcyB0aGUgdXNlciB0byBiZSBhdXRoZW50aWNhdGVkIHRvIHVzZSB0aGUgYXBwbGljYXRpb24uIFRoZSBhcHBsaWNhdGlvbiBpcyBob3N0ZWQgYmVoaW5kIGFuIGlkZW50aXR5IHdhbGwuXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIGluZm9fb3V0bGluZVxuICAgICAgICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgICA8L21hdC1jYXJkLWhlYWRlcj5cblxuICAgICAgICAgICAgPG1hdC1jYXJkLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIklzUHJpdmF0ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvZ2dsZS1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LXNsaWRlLXRvZ2dsZSBmb3JtQ29udHJvbE5hbWU9XCJpc1RyaWdnZXJTaWduSW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSXMgVHJpZ2dlciBTaWduIEluIEFwcGxpY2F0aW9uP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LXNsaWRlLXRvZ2dsZT5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXRTdWZmaXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkEgVHJpZ2dlciBTaWduIEluIEFwcGxpY2F0aW9uIHdpbGwgZGlyZWN0IHRoZSB1c2VyIHRvIHNpZ24gaW4gaWYgdGhleSBhcmUgbm90IGFscmVhZHkuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZm9fb3V0bGluZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtbGFiZWw+QWNjZXNzIFJpZ2h0czwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LXNlbGVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiYWNjZXNzUmlnaHRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpcGxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPG1hdC1zZWxlY3QtdHJpZ2dlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7YWNjZXNzUmlnaHRzPy52YWx1ZT8uWzBdIHx8ICcnfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiKGFjY2Vzc1JpZ2h0cy52YWx1ZT8ubGVuZ3RoIHx8IDApID4gMVwiIGNsYXNzPVwiZXhhbXBsZS1hZGRpdGlvbmFsLXNlbGVjdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoK3t7KGFjY2Vzc1JpZ2h0cy52YWx1ZT8ubGVuZ3RoIHx8IDApIC0gMX19IHt7YWNjZXNzUmlnaHRzLnZhbHVlPy5sZW5ndGggPT09IDIgPyAnb3RoZXInIDogJ290aGVycyd9fSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1zZWxlY3QtdHJpZ2dlcj4gLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCByaWdodHMgb2YgQWNjZXNzUmlnaHRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwicmlnaHRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgcmlnaHRzIH19PC9tYXQtb3B0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LXNlbGVjdD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWxhYmVsPkxpY2Vuc2UgQ29uZmlnczwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LXNlbGVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwibGljZW5zZUNvbmZpZ3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlwbGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8bWF0LXNlbGVjdC10cmlnZ2VyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tsaWNlbnNlQ29uZmlncy52YWx1ZT8uWzBdIHx8ICcnfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiKGxpY2Vuc2VDb25maWdzLnZhbHVlPy5sZW5ndGggfHwgMCkgPiAxXCIgY2xhc3M9XCJleGFtcGxlLWFkZGl0aW9uYWwtc2VsZWN0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgre3sobGljZW5zZUNvbmZpZ3MudmFsdWU/Lmxlbmd0aCB8fCAwKSAtIDF9fSB7e2xpY2Vuc2VDb25maWdzLnZhbHVlPy5sZW5ndGggPT09IDIgPyAnb3RoZXInIDogJ290aGVycyd9fSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1zZWxlY3QtdHJpZ2dlcj4gLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjb25maWdzIG9mIExpY2Vuc2VDb25maWdzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiY29uZmlnc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPnt7IGNvbmZpZ3MgfX08L21hdC1vcHRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XG5cbiAgICAgICAgICAgIDxtYXQtY2FyZC1hY3Rpb25zIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwic3VibWl0XCJcbiAgICAgICAgICAgICAgICAgICAgZnhGbGV4PVwiMTAwJVwiXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICFTZWN1cml0eUZvcm1Hcm91cC52YWxpZCB8fCAhU2VjdXJpdHlGb3JtR3JvdXAuZGlydHlcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5zYXZlPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgU2F2ZSBTZXR0aW5nc1xuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1hY3Rpb25zPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L21hdC1jYXJkPlxuPC9mb3JtPlxuIl19
|
@@ -1,21 +1,27 @@
|
|
1
1
|
import { Component, Input } from '@angular/core';
|
2
2
|
import * as i0 from "@angular/core";
|
3
|
-
import * as i1 from "
|
4
|
-
import * as i2 from "
|
5
|
-
import * as i3 from "../feed-
|
6
|
-
import * as i4 from "../
|
7
|
-
import * as i5 from "../
|
8
|
-
import * as i6 from "
|
3
|
+
import * as i1 from "../../services/eac.service";
|
4
|
+
import * as i2 from "@angular/material/card";
|
5
|
+
import * as i3 from "../feed-header/feed-header.component";
|
6
|
+
import * as i4 from "../feed-filter/feed-filter.component";
|
7
|
+
import * as i5 from "../skeleton-feed-card/skeleton-feed-card.component";
|
8
|
+
import * as i6 from "../main-feed-card/main-feed-card.component";
|
9
|
+
import * as i7 from "@angular/common";
|
9
10
|
export class ActivityCardComponent {
|
10
|
-
constructor() {
|
11
|
+
constructor(eacSvc) {
|
12
|
+
this.eacSvc = eacSvc;
|
13
|
+
}
|
11
14
|
ngOnInit() { }
|
15
|
+
ReloadFeed() {
|
16
|
+
this.eacSvc.ReloadFeed();
|
17
|
+
}
|
12
18
|
}
|
13
|
-
ActivityCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: ActivityCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
14
|
-
ActivityCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: ActivityCardComponent, selector: "lcu-activity-card", inputs: { ActiveEnvironmentLookup: ["active-environment-lookup", "ActiveEnvironmentLookup"], Feed: ["feed", "Feed"], LoadingFeed: ["loading-feed", "LoadingFeed"], FilterTypes: ["filter-types", "FilterTypes"], FeedCheck: ["feed-check", "FeedCheck"], SourceControlLookup: ["source-control-lookup", "SourceControlLookup"], HasGHConnection: ["has-gh-connection", "HasGHConnection"], FeedHeaderActions: ["feed-header-actions", "FeedHeaderActions"] }, ngImport: i0, template: "<mat-card class=\"feed-card\">\n <div class=\"activity-feed-header\">\n <mat-card-title class=\"card-title\">Activity</mat-card-title>\n <lcu-feed-header\n [active-environment-lookup]=\"ActiveEnvironmentLookup\"\n [feed]=\"Feed\"\n [feed-check]=\"FeedCheck\"\n [source-control-lookup]=\"SourceControlLookup\"\n [has-gh-connection]=\"HasGHConnection\"\n [feed-header-actions]=\"FeedHeaderActions\"\n [loading-feed]=\"LoadingFeed\"\n ></lcu-feed-header>\n\n <lcu-feed-filter
|
19
|
+
ActivityCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: ActivityCardComponent, deps: [{ token: i1.EaCService }], target: i0.ɵɵFactoryTarget.Component });
|
20
|
+
ActivityCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: ActivityCardComponent, selector: "lcu-activity-card", inputs: { ActiveEnvironmentLookup: ["active-environment-lookup", "ActiveEnvironmentLookup"], Feed: ["feed", "Feed"], LoadingFeed: ["loading-feed", "LoadingFeed"], FilterTypes: ["filter-types", "FilterTypes"], FeedCheck: ["feed-check", "FeedCheck"], SourceControlLookup: ["source-control-lookup", "SourceControlLookup"], HasGHConnection: ["has-gh-connection", "HasGHConnection"], FeedHeaderActions: ["feed-header-actions", "FeedHeaderActions"] }, ngImport: i0, template: "<mat-card class=\"feed-card\">\n <div class=\"activity-feed-header\">\n <mat-card-title class=\"card-title\">Activity</mat-card-title>\n <lcu-feed-header\n [active-environment-lookup]=\"ActiveEnvironmentLookup\"\n [feed]=\"Feed\"\n [feed-check]=\"FeedCheck\"\n [source-control-lookup]=\"SourceControlLookup\"\n [has-gh-connection]=\"HasGHConnection\"\n [feed-header-actions]=\"FeedHeaderActions\"\n [loading-feed]=\"LoadingFeed\"\n ></lcu-feed-header>\n\n <lcu-feed-filter\n [filter-types]=\"FilterTypes\"\n [feed-check]=\"FeedCheck\"\n ></lcu-feed-filter>\n </div>\n <mat-card-content class=\"feed-container\">\n <lcu-skeleton-feed-card\n *ngIf=\"LoadingFeed || !Feed\"\n ></lcu-skeleton-feed-card>\n\n <ng-container *ngIf=\"!LoadingFeed && Feed\">\n <lcu-main-feed-card\n *ngFor=\"let feedItem of Feed\"\n [active-environment]=\"ActiveEnvironment\"\n [active-environment-lookup]=\"ActiveEnvironmentLookup\"\n [environment]=\"Environment\"\n [feed-item]=\"feedItem\"\n >\n </lcu-main-feed-card>\n </ng-container>\n </mat-card-content>\n</mat-card>\n", styles: [".feed-card{height:inherit;margin:20px;padding:0;overflow-y:hidden}.card-title{padding:10px}.feed-container{height:275px;overflow-y:scroll}\n"], components: [{ type: i2.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { type: i3.FeedHeaderComponent, selector: "lcu-feed-header", inputs: ["active-environment-lookup", "feed", "feed-check", "source-control-lookup", "has-gh-connection", "feed-header-actions", "loading-feed"] }, { type: i4.FeedFilterComponent, selector: "lcu-feed-filter", inputs: ["feed-check", "filter-types"] }, { type: i5.SkeletonFeedCardComponent, selector: "lcu-skeleton-feed-card" }, { type: i6.MainFeedCardComponent, selector: "lcu-main-feed-card", inputs: ["active-environment", "active-environment-lookup", "environment", "feed-item"] }], directives: [{ type: i2.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { type: i2.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
15
21
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: ActivityCardComponent, decorators: [{
|
16
22
|
type: Component,
|
17
|
-
args: [{ selector: 'lcu-activity-card', template: "<mat-card class=\"feed-card\">\n <div class=\"activity-feed-header\">\n <mat-card-title class=\"card-title\">Activity</mat-card-title>\n <lcu-feed-header\n [active-environment-lookup]=\"ActiveEnvironmentLookup\"\n [feed]=\"Feed\"\n [feed-check]=\"FeedCheck\"\n [source-control-lookup]=\"SourceControlLookup\"\n [has-gh-connection]=\"HasGHConnection\"\n [feed-header-actions]=\"FeedHeaderActions\"\n [loading-feed]=\"LoadingFeed\"\n ></lcu-feed-header>\n\n <lcu-feed-filter
|
18
|
-
}], ctorParameters: function () { return []; }, propDecorators: { ActiveEnvironmentLookup: [{
|
23
|
+
args: [{ selector: 'lcu-activity-card', template: "<mat-card class=\"feed-card\">\n <div class=\"activity-feed-header\">\n <mat-card-title class=\"card-title\">Activity</mat-card-title>\n <lcu-feed-header\n [active-environment-lookup]=\"ActiveEnvironmentLookup\"\n [feed]=\"Feed\"\n [feed-check]=\"FeedCheck\"\n [source-control-lookup]=\"SourceControlLookup\"\n [has-gh-connection]=\"HasGHConnection\"\n [feed-header-actions]=\"FeedHeaderActions\"\n [loading-feed]=\"LoadingFeed\"\n ></lcu-feed-header>\n\n <lcu-feed-filter\n [filter-types]=\"FilterTypes\"\n [feed-check]=\"FeedCheck\"\n ></lcu-feed-filter>\n </div>\n <mat-card-content class=\"feed-container\">\n <lcu-skeleton-feed-card\n *ngIf=\"LoadingFeed || !Feed\"\n ></lcu-skeleton-feed-card>\n\n <ng-container *ngIf=\"!LoadingFeed && Feed\">\n <lcu-main-feed-card\n *ngFor=\"let feedItem of Feed\"\n [active-environment]=\"ActiveEnvironment\"\n [active-environment-lookup]=\"ActiveEnvironmentLookup\"\n [environment]=\"Environment\"\n [feed-item]=\"feedItem\"\n >\n </lcu-main-feed-card>\n </ng-container>\n </mat-card-content>\n</mat-card>\n", styles: [".feed-card{height:inherit;margin:20px;padding:0;overflow-y:hidden}.card-title{padding:10px}.feed-container{height:275px;overflow-y:scroll}\n"] }]
|
24
|
+
}], ctorParameters: function () { return [{ type: i1.EaCService }]; }, propDecorators: { ActiveEnvironmentLookup: [{
|
19
25
|
type: Input,
|
20
26
|
args: ['active-environment-lookup']
|
21
27
|
}], Feed: [{
|
@@ -40,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
40
46
|
type: Input,
|
41
47
|
args: ['feed-header-actions']
|
42
48
|
}] } });
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb24vc3JjL2xpYi9lbGVtZW50cy9hY3Rpdml0eS1jYXJkL2FjdGl2aXR5LWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvYWN0aXZpdHktY2FyZC9hY3Rpdml0eS1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7QUFTekQsTUFBTSxPQUFPLHFCQUFxQjtJQXlCOUIsWUFBc0IsTUFBa0I7UUFBbEIsV0FBTSxHQUFOLE1BQU0sQ0FBWTtJQUFHLENBQUM7SUFFNUMsUUFBUSxLQUFVLENBQUM7SUFFWixVQUFVO1FBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUM3QixDQUFDOztrSEEvQlEscUJBQXFCO3NHQUFyQixxQkFBcUIsdWZDVGxDLGkwQ0FtQ0E7MkZEMUJhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDSSxtQkFBbUI7aUdBTXRCLHVCQUF1QjtzQkFEN0IsS0FBSzt1QkFBQywyQkFBMkI7Z0JBSTNCLElBQUk7c0JBRFYsS0FBSzt1QkFBQyxNQUFNO2dCQUlOLFdBQVc7c0JBRGpCLEtBQUs7dUJBQUMsY0FBYztnQkFJZCxXQUFXO3NCQURqQixLQUFLO3VCQUFDLGNBQWM7Z0JBSWQsU0FBUztzQkFEZixLQUFLO3VCQUFDLFlBQVk7Z0JBSVosbUJBQW1CO3NCQUR6QixLQUFLO3VCQUFDLHVCQUF1QjtnQkFJdkIsZUFBZTtzQkFEckIsS0FBSzt1QkFBQyxtQkFBbUI7Z0JBSW5CLGlCQUFpQjtzQkFEdkIsS0FBSzt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZlZWRJdGVtLCBGZWVkSXRlbUFjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy91c2VyLWZlZWQubW9kZWwnO1xuaW1wb3J0IHsgRWFDU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VhYy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsY3UtYWN0aXZpdHktY2FyZCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2FjdGl2aXR5LWNhcmQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2FjdGl2aXR5LWNhcmQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQWN0aXZpdHlDYXJkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoJ2FjdGl2ZS1lbnZpcm9ubWVudC1sb29rdXAnKVxuICAgIHB1YmxpYyBBY3RpdmVFbnZpcm9ubWVudExvb2t1cDogc3RyaW5nO1xuXG4gICAgQElucHV0KCdmZWVkJylcbiAgICBwdWJsaWMgRmVlZDogQXJyYXk8RmVlZEl0ZW0+O1xuXG4gICAgQElucHV0KCdsb2FkaW5nLWZlZWQnKVxuICAgIHB1YmxpYyBMb2FkaW5nRmVlZDogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgnZmlsdGVyLXR5cGVzJylcbiAgICBwdWJsaWMgRmlsdGVyVHlwZXM6IEFycmF5PHN0cmluZz47XG5cbiAgICBASW5wdXQoJ2ZlZWQtY2hlY2snKVxuICAgIHB1YmxpYyBGZWVkQ2hlY2s6IGFueTtcblxuICAgIEBJbnB1dCgnc291cmNlLWNvbnRyb2wtbG9va3VwJylcbiAgICBwdWJsaWMgU291cmNlQ29udHJvbExvb2t1cDogc3RyaW5nO1xuXG4gICAgQElucHV0KCdoYXMtZ2gtY29ubmVjdGlvbicpXG4gICAgcHVibGljIEhhc0dIQ29ubmVjdGlvbjogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgnZmVlZC1oZWFkZXItYWN0aW9ucycpXG4gICAgcHVibGljIEZlZWRIZWFkZXJBY3Rpb25zOiBBcnJheTxGZWVkSXRlbUFjdGlvbj47XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgZWFjU3ZjOiBFYUNTZXJ2aWNlKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gICAgcHVibGljIFJlbG9hZEZlZWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWFjU3ZjLlJlbG9hZEZlZWQoKTtcbiAgICB9XG59XG4iLCI8bWF0LWNhcmQgY2xhc3M9XCJmZWVkLWNhcmRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYWN0aXZpdHktZmVlZC1oZWFkZXJcIj5cbiAgICAgICAgPG1hdC1jYXJkLXRpdGxlIGNsYXNzPVwiY2FyZC10aXRsZVwiPkFjdGl2aXR5PC9tYXQtY2FyZC10aXRsZT5cbiAgICAgICAgPGxjdS1mZWVkLWhlYWRlclxuICAgICAgICAgICAgW2FjdGl2ZS1lbnZpcm9ubWVudC1sb29rdXBdPVwiQWN0aXZlRW52aXJvbm1lbnRMb29rdXBcIlxuICAgICAgICAgICAgW2ZlZWRdPVwiRmVlZFwiXG4gICAgICAgICAgICBbZmVlZC1jaGVja109XCJGZWVkQ2hlY2tcIlxuICAgICAgICAgICAgW3NvdXJjZS1jb250cm9sLWxvb2t1cF09XCJTb3VyY2VDb250cm9sTG9va3VwXCJcbiAgICAgICAgICAgIFtoYXMtZ2gtY29ubmVjdGlvbl09XCJIYXNHSENvbm5lY3Rpb25cIlxuICAgICAgICAgICAgW2ZlZWQtaGVhZGVyLWFjdGlvbnNdPVwiRmVlZEhlYWRlckFjdGlvbnNcIlxuICAgICAgICAgICAgW2xvYWRpbmctZmVlZF09XCJMb2FkaW5nRmVlZFwiXG4gICAgICAgID48L2xjdS1mZWVkLWhlYWRlcj5cblxuICAgICAgICA8bGN1LWZlZWQtZmlsdGVyXG4gICAgICAgICAgICBbZmlsdGVyLXR5cGVzXT1cIkZpbHRlclR5cGVzXCJcbiAgICAgICAgICAgIFtmZWVkLWNoZWNrXT1cIkZlZWRDaGVja1wiXG4gICAgICAgID48L2xjdS1mZWVkLWZpbHRlcj5cbiAgICA8L2Rpdj5cbiAgICA8bWF0LWNhcmQtY29udGVudCBjbGFzcz1cImZlZWQtY29udGFpbmVyXCI+XG4gICAgICAgIDxsY3Utc2tlbGV0b24tZmVlZC1jYXJkXG4gICAgICAgICAgICAqbmdJZj1cIkxvYWRpbmdGZWVkIHx8ICFGZWVkXCJcbiAgICAgICAgPjwvbGN1LXNrZWxldG9uLWZlZWQtY2FyZD5cblxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIUxvYWRpbmdGZWVkICYmIEZlZWRcIj5cbiAgICAgICAgICAgIDxsY3UtbWFpbi1mZWVkLWNhcmRcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZmVlZEl0ZW0gb2YgRmVlZFwiXG4gICAgICAgICAgICAgICAgW2FjdGl2ZS1lbnZpcm9ubWVudF09XCJBY3RpdmVFbnZpcm9ubWVudFwiXG4gICAgICAgICAgICAgICAgW2FjdGl2ZS1lbnZpcm9ubWVudC1sb29rdXBdPVwiQWN0aXZlRW52aXJvbm1lbnRMb29rdXBcIlxuICAgICAgICAgICAgICAgIFtlbnZpcm9ubWVudF09XCJFbnZpcm9ubWVudFwiXG4gICAgICAgICAgICAgICAgW2ZlZWQtaXRlbV09XCJmZWVkSXRlbVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L2xjdS1tYWluLWZlZWQtY2FyZD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9tYXQtY2FyZC1jb250ZW50PlxuPC9tYXQtY2FyZD5cbiJdfQ==
|
@@ -25,6 +25,11 @@ export class BreadcrumbComponent {
|
|
25
25
|
else {
|
26
26
|
this.IsSmScreen = false;
|
27
27
|
}
|
28
|
+
console.log('small: ', this.IsSmScreen);
|
29
|
+
if (this.IsSmScreen) {
|
30
|
+
this.CurrentLevel = this.determineCurrentLevel();
|
31
|
+
this.ReturnRouterLink = this.determineReturnRouterLink();
|
32
|
+
}
|
28
33
|
});
|
29
34
|
}
|
30
35
|
ngOnChanges() {
|
@@ -57,7 +62,7 @@ export class BreadcrumbComponent {
|
|
57
62
|
});
|
58
63
|
}
|
59
64
|
if (this.IsSmScreen) {
|
60
|
-
this.CurrentLevel = this.
|
65
|
+
this.CurrentLevel = this.determineCurrentLevel();
|
61
66
|
this.ReturnRouterLink = this.determineReturnRouterLink();
|
62
67
|
}
|
63
68
|
}
|
@@ -67,7 +72,7 @@ export class BreadcrumbComponent {
|
|
67
72
|
SetActiveEnterprise(entLookup) {
|
68
73
|
this.eacSvc.SetActiveEnterprise(entLookup).then(() => { });
|
69
74
|
}
|
70
|
-
|
75
|
+
determineCurrentLevel() {
|
71
76
|
let lastLevel;
|
72
77
|
if (this.Enterprise) {
|
73
78
|
lastLevel = 'ent';
|
@@ -75,9 +80,9 @@ export class BreadcrumbComponent {
|
|
75
80
|
if (this.ProjectLookup) {
|
76
81
|
lastLevel = 'project';
|
77
82
|
}
|
78
|
-
if (this.SelectedRoute) {
|
79
|
-
|
80
|
-
}
|
83
|
+
// if (this.SelectedRoute) {
|
84
|
+
// lastLevel = 'route';
|
85
|
+
// }
|
81
86
|
if (this.SelectedApplication) {
|
82
87
|
lastLevel = 'app';
|
83
88
|
}
|
@@ -135,4 +140,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
135
140
|
type: Input,
|
136
141
|
args: ['applications-bank']
|
137
142
|
}] } });
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb24vc3JjL2xpYi9lbGVtZW50cy9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7QUFVcEUsTUFBTSxPQUFPLG1CQUFtQjtJQW9ENUIsWUFDYyxNQUFrQixFQUNyQixrQkFBc0M7UUFEbkMsV0FBTSxHQUFOLE1BQU0sQ0FBWTtRQUNyQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBRTdDLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsa0JBQWtCO2FBQy9CLE9BQU8sQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUM7YUFDL0IsU0FBUyxDQUFDLENBQUMsS0FBc0IsRUFBRSxFQUFFO1lBQ2xDLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRTtnQkFDZixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQzthQUMxQjtpQkFBTTtnQkFDSCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQzthQUMzQjtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDakQsSUFBSSxDQUFDLG1CQUFtQjtnQkFDcEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxp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QjtRQUNELElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUNwQixLQUFLLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQzVDO1FBQ0QsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDMUIsS0FBSyxHQUFHLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUV6Qyw4REFBOEQ7U0FDakU7UUFDRCxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM5QixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDOztnSEFuS1EsbUJBQW1CO29HQUFuQixtQkFBbUIsMGhCQ1hoQyxxdVVBK1JBOzJGRHBSYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0ksZ0JBQWdCO2tJQU1uQixpQkFBaUI7c0JBRHZCLEtBQUs7dUJBQUMsb0JBQW9CO2dCQUlwQixVQUFVO3NCQURoQixLQUFLO3VCQUFDLFlBQVk7Z0JBSVosV0FBVztzQkFEakIsS0FBSzt1QkFBQyxhQUFhO2dCQUliLE9BQU87c0JBRGIsS0FBSzt1QkFBQyxTQUFTO2dCQUlULFFBQVE7c0JBRGQsS0FBSzt1QkFBQyxVQUFVO2dCQUlWLGFBQWE7c0JBRG5CLEtBQUs7dUJBQUMsZ0JBQWdCO2dCQUloQixrQkFBa0I7c0JBRHhCLEtBQUs7dUJBQUMsb0JBQW9CO2dCQU1wQixhQUFhO3NCQURuQixLQUFLO3VCQUFDLGdCQUFnQjtnQkFJaEIsZ0JBQWdCO3NCQUR0QixLQUFLO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJyZWFrcG9pbnRPYnNlcnZlciwgQnJlYWtwb2ludFN0YXRlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2xheW91dCc7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRWFDQXBwbGljYXRpb25Bc0NvZGUsIEVhQ1Byb2plY3RBc0NvZGUgfSBmcm9tICdAc2VtYW50aWNqcy9jb21tb24nO1xuaW1wb3J0IHsgU3Vic2NyaWJhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEVhQ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lYWMuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGN1LWJyZWFkY3J1bWInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9icmVhZGNydW1iLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9icmVhZGNydW1iLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEJyZWFkY3J1bWJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgQElucHV0KCdhcHBsaWNhdGlvbi1sb29rdXAnKVxuICAgIHB1YmxpYyBBcHBsaWNhdGlvbkxvb2t1cDogc3RyaW5nO1xuXG4gICAgQElucHV0KCdlbnRlcnByaXNlJylcbiAgICBwdWJsaWMgRW50ZXJwcmlzZTogYW55O1xuXG4gICAgQElucHV0KCdlbnRlcnByaXNlcycpXG4gICAgcHVibGljIEVudGVycHJpc2VzOiBBcnJheTxhbnk+O1xuXG4gICAgQElucHV0KCdsb2FkaW5nJylcbiAgICBwdWJsaWMgTG9hZGluZzogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgncHJvamVjdHMnKVxuICAgIHB1YmxpYyBQcm9qZWN0czogYW55O1xuXG4gICAgQElucHV0KCdwcm9qZWN0LWxvb2t1cCcpXG4gICAgcHVibGljIFByb2plY3RMb29rdXA6IHN0cmluZztcblxuICAgIEBJbnB1dCgncm91dGVkLWFwcGxpY2F0aW9uJylcbiAgICBwdWJsaWMgUm91dGVkQXBwbGljYXRpb25zOiB7XG4gICAgICAgIFtyb3V0ZTogc3RyaW5nXTogeyBbbG9va3VwOiBzdHJpbmddOiBFYUNBcHBsaWNhdGlvbkFzQ29kZSB9O1xuICAgIH07XG5cbiAgICBASW5wdXQoJ3NlbGVjdGVkLXJvdXRlJylcbiAgICBwdWJsaWMgU2VsZWN0ZWRSb3V0ZTogc3RyaW5nO1xuXG4gICAgQElucHV0KCdhcHBsaWNhdGlvbnMtYmFuaycpXG4gICAgcHVibGljIEFwcGxpY2F0aW9uc0Jhbms6IHsgW2xvb2t1cDogc3RyaW5nXTogRWFDQXBwbGljYXRpb25Bc0NvZGUgfTtcblxuICAgIHB1YmxpYyBBcHBsaWNhdGlvbnM6IHsgW2xvb2t1cDogc3RyaW5nXTogRWFDQXBwbGljYXRpb25Bc0NvZGUgfTtcblxuICAgIHB1YmxpYyBCUFN1YjogU3Vic2NyaXB0aW9uO1xuXG4gICAgcHVibGljIEN1cnJlbnRMZXZlbDogc3RyaW5nO1xuXG4gICAgcHVibGljIEN1cnJlbnRSb3V0ZUFwcGxpY2F0aW9uTG9va3VwczogQXJyYXk8c3RyaW5nPjtcblxuICAgIHB1YmxpYyBJc1NtU2NyZWVuOiBib29sZWFuO1xuXG4gICAgcHVibGljIFJldHVyblJvdXRlckxpbms6IGFueTtcblxuICAgIHB1YmxpYyBSb3V0ZXM6IEFycmF5PHN0cmluZz47XG5cbiAgICBwdWJsaWMgU2VsZWN0ZWRQcm9qZWN0OiBFYUNQcm9qZWN0QXNDb2RlO1xuXG4gICAgcHVibGljIFNrZWxldG9uRWZmZWN0OiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgU2VsZWN0ZWRBcHBsaWNhdGlvbjogRWFDQXBwbGljYXRpb25Bc0NvZGU7XG5cbiAgICBwdWJsaWMgUHJvamVjdExvb2t1cHM6IEFycmF5PHN0cmluZz47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIGVhY1N2YzogRWFDU2VydmljZSxcbiAgICAgICAgcHVibGljIGJyZWFrcG9pbnRPYnNlcnZlcjogQnJlYWtwb2ludE9ic2VydmVyXG4gICAgKSB7XG4gICAgICAgIHRoaXMuU2tlbGV0b25FZmZlY3QgPSAnd2F2ZSc7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuQlBTdWIgPSB0aGlzLmJyZWFrcG9pbnRPYnNlcnZlclxuICAgICAgICAgICAgLm9ic2VydmUoWycobWF4LXdpZHRoOiA5NTlweCknXSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHN0YXRlOiBCcmVha3BvaW50U3RhdGUpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoc3RhdGUubWF0Y2hlcykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLklzU21TY3JlZW4gPSB0cnVlO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuSXNTbVNjcmVlbiA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKCkge1xuICAgICAgICBpZiAodGhpcy5BcHBsaWNhdGlvbnNCYW5rICYmIHRoaXMuQXBwbGljYXRpb25Mb29rdXApIHtcbiAgICAgICAgICAgIHRoaXMuU2VsZWN0ZWRBcHBsaWNhdGlvbiA9XG4gICAgICAgICAgICAgICAgdGhpcy5BcHBsaWNhdGlvbnNCYW5rW3RoaXMuQXBwbGljYXRpb25Mb29rdXBdO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuUHJvamVjdHMpIHtcbiAgICAgICAgICAgIHRoaXMuUHJvamVjdExvb2t1cHMgPSBPYmplY3Qua2V5cyh0aGlzLlByb2plY3RzIHx8IHt9KTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuUHJvamVjdExvb2t1cCkge1xuICAgICAgICAgICAgICAgIHRoaXMuU2VsZWN0ZWRQcm9qZWN0ID0gdGhpcy5Qcm9qZWN0c1t0aGlzLlByb2plY3RMb29rdXBdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy5Sb3V0ZWRBcHBsaWNhdGlvbnMgJiZcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHRoaXMuUm91dGVkQXBwbGljYXRpb25zKT8ubGVuZ3RoICE9PSAwXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5Sb3V0ZXMgPSBPYmplY3Qua2V5cyh0aGlzLlJvdXRlZEFwcGxpY2F0aW9ucyB8fCB7fSk7XG5cbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdyb3V0ZWQgYXBwczogJywgdGhpcy5Sb3V0ZWRBcHBsaWNhdGlvbnMpO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5TZWxlY3RlZFJvdXRlKSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ3NlbGVjdGVkIHJvdXRlOiAnLCB0aGlzLlNlbGVjdGVkUm91dGUpO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5DdXJyZW50Um91dGVBcHBsaWNhdGlvbkxvb2t1cHMgPVxuICAgICAgICAgICAgICAgICAgICBPYmplY3Qua2V5cyh0aGlzLlJvdXRlZEFwcGxpY2F0aW9uc1t0aGlzLlNlbGVjdGVkUm91dGVdKSB8fFxuICAgICAgICAgICAgICAgICAgICBbXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLlNlbGVjdGVkUHJvamVjdCAmJiB0aGlzLkFwcGxpY2F0aW9uc0JhbmspIHtcbiAgICAgICAgICAgIHRoaXMuQXBwbGljYXRpb25zID0ge307XG5cbiAgICAgICAgICAgIHRoaXMuU2VsZWN0ZWRQcm9qZWN0Py5BcHBsaWNhdGlvbkxvb2t1cHM/LmZvckVhY2goXG4gICAgICAgICAgICAgICAgKGFwcExvb2t1cDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuQXBwbGljYXRpb25zW2FwcExvb2t1cF0gPVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5BcHBsaWNhdGlvbnNCYW5rW2FwcExvb2t1cF07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLklzU21TY3JlZW4pIHtcbiAgICAgICAgICAgIHRoaXMuQ3VycmVudExldmVsID0gdGhpcy5kZXRlcm1pbmVMYXN0TGV2ZWwoKTtcblxuICAgICAgICAgICAgdGhpcy5SZXR1cm5Sb3V0ZXJMaW5rID0gdGhpcy5kZXRlcm1pbmVSZXR1cm5Sb3V0ZXJMaW5rKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuQlBTdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgU2V0QWN0aXZlRW50ZXJwcmlzZShlbnRMb29rdXA6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmVhY1N2Yy5TZXRBY3RpdmVFbnRlcnByaXNlKGVudExvb2t1cCkudGhlbigoKSA9PiB7fSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGRldGVybWluZUxhc3RMZXZlbCgpOiBzdHJpbmcge1xuICAgICAgICBsZXQgbGFzdExldmVsOiBzdHJpbmc7XG4gICAgICAgIGlmICh0aGlzLkVudGVycHJpc2UpIHtcbiAgICAgICAgICAgIGxhc3RMZXZlbCA9ICdlbnQnO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLlByb2plY3RMb29rdXApIHtcbiAgICAgICAgICAgIGxhc3RMZXZlbCA9ICdwcm9qZWN0JztcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5TZWxlY3RlZFJvdXRlKSB7XG4gICAgICAgICAgICBsYXN0TGV2ZWwgPSAncm91dGUnO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLlNlbGVjdGVkQXBwbGljYXRpb24pIHtcbiAgICAgICAgICAgIGxhc3RMZXZlbCA9ICdhcHAnO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBsYXN0TGV2ZWw7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGRldGVybWluZVJldHVyblJvdXRlckxpbmsoKTogYW55IHtcbiAgICAgICAgbGV0IHJMaW5rO1xuICAgICAgICBpZiAodGhpcy5FbnRlcnByaXNlKSB7XG4gICAgICAgICAgICByTGluayA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuUHJvamVjdExvb2t1cCkge1xuICAgICAgICAgICAgckxpbmsgPSBbJy9lbnRlcnByaXNlJ107XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuU2VsZWN0ZWRSb3V0ZSkge1xuICAgICAgICAgICAgckxpbmsgPSBbJy9wcm9qZWN0JywgdGhpcy5Qcm9qZWN0TG9va3VwXTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5TZWxlY3RlZEFwcGxpY2F0aW9uKSB7XG4gICAgICAgICAgICByTGluayA9IFsnL3Byb2plY3QnLCB0aGlzLlByb2plY3RMb29rdXBdO1xuXG4gICAgICAgICAgICAvLyByTGluayA9IFsnL3JvdXRlJywgdGhpcy5TZWxlY3RlZFJvdXRlLCB0aGlzLlByb2plY3RMb29rdXBdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnNvbGUubG9nKCdybGluazogJywgckxpbmspO1xuICAgICAgICByZXR1cm4gckxpbms7XG4gICAgfVxuXG4gICAgLy8gcHJvdGVjdGVkIGFzeW5jIGhhbmRsZVN0YXRlQ2hhbmdlKCk6IFByb21pc2U8dm9pZD4ge31cbn1cbiIsIjxkaXYgY2xhc3M9XCJicmVhZGNydW1iLWNvbnRhaW5lclwiICpuZ0lmPVwiIUlzU21TY3JlZW5cIiBmeExheW91dD1cInJvdyB3cmFwXCI+XG4gICAgPGRpdiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJMb2FkaW5nXCI+XG4gICAgICAgICAgICA8bWF0LWljb24gc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCI+aG9tZTwvbWF0LWljb24+XG5cbiAgICAgICAgICAgIDxkaXYgc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCI+RW50ZXJwcmlzZSBOYW1lPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJFbnRlcnByaXNlICYmICFMb2FkaW5nXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY3J1bWItbmFtZVwiIFtyb3V0ZXJMaW5rXT1cIlsnL2VudGVycHJpc2UnXVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5ob21lPC9tYXQtaWNvbj5cblxuICAgICAgICAgICAgICAgIHt7IEVudGVycHJpc2U/Lk5hbWUgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbbWF0TWVudVRyaWdnZXJGb3JdPVwiZW50ZXJwcmlzZU1lbnVcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24+ZXhwYW5kX21vcmU8L21hdC1pY29uPlxuICAgICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICAgIDxtYXQtbWVudSAjZW50ZXJwcmlzZU1lbnU9XCJtYXRNZW51XCIgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBtYXQtbWVudS1pdGVtXG4gICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlsnL2VudGVycHJpc2UnXVwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJTZXRBY3RpdmVFbnRlcnByaXNlKGVudC5Mb29rdXApXCJcbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGVudCBvZiBFbnRlcnByaXNlc1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyBlbnQuTmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvbWF0LW1lbnU+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdlxuICAgICAgICAqbmdJZj1cIlByb2plY3RMb29rdXAgJiYgU2VsZWN0ZWRQcm9qZWN0XCJcbiAgICAgICAgZnhMYXlvdXQ9XCJyb3dcIlxuICAgICAgICBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiXG4gICAgPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNlcGVyYXRvclwiPi88L3NwYW4+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIkxvYWRpbmdcIj5cbiAgICAgICAgICAgIDxkaXYgc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCI+UHJvamVjdCBOYW1lPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhTG9hZGluZ1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNydW1iLW5hbWVcIiBbcm91dGVyTGlua109XCJbJy9wcm9qZWN0JywgUHJvamVjdExvb2t1cF1cIj5cbiAgICAgICAgICAgICAgICB7eyBTZWxlY3RlZFByb2plY3Q/LlByb2plY3Q/Lk5hbWUgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbbWF0TWVudVRyaWdnZXJGb3JdPVwicHJvamVjdE1lbnVcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24+ZXhwYW5kX21vcmU8L21hdC1pY29uPlxuICAgICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICAgIDxtYXQtbWVudSAjcHJvamVjdE1lbnU9XCJtYXRNZW51XCIgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBtYXQtbWVudS1pdGVtXG4gICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBwcm9qZWN0TG9va3VwIG9mIFByb2plY3RMb29rdXBzXCJcbiAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiWycvcHJvamVjdCcsIHByb2plY3RMb29rdXBdXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiUHJvamVjdHNbcHJvamVjdExvb2t1cF07IGxldCBwcm9cIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgcHJvLlByb2plY3Q/Lk5hbWVcbiAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L21hdC1tZW51PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cblxuICAgIDwhLS0gPGRpdiAqbmdJZj1cIlNlbGVjdGVkUm91dGVcIiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2VwZXJhdG9yXCI+Lzwvc3Bhbj5cblxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiTG9hZGluZ1wiPlxuICAgICAgICAgICAgPGRpdiBza2VsZXRvbi10ZXh0IFtlZmZlY3RdPVwiU2tlbGV0b25FZmZlY3RcIj5Sb3V0ZSBOYW1lPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhTG9hZGluZ1wiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiY3J1bWItbmFtZVwiXG4gICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiWycvcm91dGUnLCBTZWxlY3RlZFJvdXRlLCBQcm9qZWN0TG9va3VwXVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgU2VsZWN0ZWRSb3V0ZSB9fVxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJyb3V0ZU1lbnVcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24+ZXhwYW5kX21vcmU8L21hdC1pY29uPlxuICAgICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICAgIDxtYXQtbWVudSAjcm91dGVNZW51PVwibWF0TWVudVwiIHhQb3NpdGlvbj1cImJlZm9yZVwiPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgbWF0LW1lbnUtaXRlbVxuICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgYXBwUm91dGUgb2YgUm91dGVzXCJcbiAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiWycvcm91dGUnLCBhcHBSb3V0ZSwgUHJvamVjdExvb2t1cF1cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJhcHBSb3V0ZVwiPnt7IGFwcFJvdXRlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9tYXQtbWVudT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+IC0tPlxuXG4gICAgPGRpdlxuICAgICAgICAqbmdJZj1cIlNlbGVjdGVkQXBwbGljYXRpb24gJiYgQXBwbGljYXRpb25Mb29rdXBcIlxuICAgICAgICBmeExheW91dD1cInJvd1wiXG4gICAgICAgIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCJcbiAgICA+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2VwZXJhdG9yXCI+Lzwvc3Bhbj5cblxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiTG9hZGluZ1wiPlxuICAgICAgICAgICAgPGRpdiBza2VsZXRvbi10ZXh0IFtlZmZlY3RdPVwiU2tlbGV0b25FZmZlY3RcIj5BcHBsaWNhdGlvbiBOYW1lPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhTG9hZGluZ1wiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiY3J1bWItbmFtZVwiXG4gICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiW1xuICAgICAgICAgICAgICAgICAgICAnL2FwcGxpY2F0aW9uJyxcbiAgICAgICAgICAgICAgICAgICAgQXBwbGljYXRpb25Mb29rdXAsXG4gICAgICAgICAgICAgICAgICAgIFNlbGVjdGVkUm91dGUsXG4gICAgICAgICAgICAgICAgICAgIFByb2plY3RMb29rdXBcbiAgICAgICAgICAgICAgICBdXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBTZWxlY3RlZEFwcGxpY2F0aW9uPy5BcHBsaWNhdGlvbj8uTmFtZSB9fVxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJhcHBsaWNhdGlvbk1lbnVcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24+ZXhwYW5kX21vcmU8L21hdC1pY29uPlxuICAgICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICAgIDxtYXQtbWVudSAjYXBwbGljYXRpb25NZW51PVwibWF0TWVudVwiIHhQb3NpdGlvbj1cImJlZm9yZVwiPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgbWF0LW1lbnUtaXRlbVxuICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgYXBwTG9va3VwIG9mIEN1cnJlbnRSb3V0ZUFwcGxpY2F0aW9uTG9va3Vwc1wiXG4gICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIltcbiAgICAgICAgICAgICAgICAgICAgICAgICcvYXBwbGljYXRpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgYXBwTG9va3VwLFxuICAgICAgICAgICAgICAgICAgICAgICAgU2VsZWN0ZWRSb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFByb2plY3RMb29rdXBcbiAgICAgICAgICAgICAgICAgICAgXVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSb3V0ZWRBcHBsaWNhdGlvbnNbU2VsZWN0ZWRSb3V0ZV1bYXBwTG9va3VwXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgYXBwXG4gICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPnt7IGFwcC5BcHBsaWNhdGlvbj8uTmFtZSB9fTwvc3BhblxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L21hdC1tZW51PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuXG48IS0tIE1PQklMRSBWSUVXIC0tPlxuXG48ZGl2XG4gICAgY2xhc3M9XCJicmVhZGNydW1iLWNvbnRhaW5lclwiXG4gICAgKm5nSWY9XCJJc1NtU2NyZWVuXCJcbiAgICBmeExheW91dD1cInJvd1wiXG4gICAgZnhMYXlvdXRBbGlnbj1cInN0YXJ0IGNlbnRlclwiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIkxvYWRpbmdcIj5cbiAgICAgICAgPG1hdC1pY29uIHNrZWxldG9uLXRleHQgW2VmZmVjdF09XCJTa2VsZXRvbkVmZmVjdFwiXG4gICAgICAgICAgICA+Y2hldnJvbl9sZWZ0PC9tYXQtaWNvblxuICAgICAgICA+XG5cbiAgICAgICAgPGRpdiBza2VsZXRvbi10ZXh0IFtlZmZlY3RdPVwiU2tlbGV0b25FZmZlY3RcIj5DdXJyZW50IFBhdGg8L2Rpdj5cblxuICAgICAgICA8bWF0LWljb24gc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCI+ZXhwYW5kX21vcmU8L21hdC1pY29uPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFMb2FkaW5nXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICpuZ0lmPVwiUmV0dXJuUm91dGVyTGlua1wiXG4gICAgICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlJldHVyblJvdXRlckxpbmtcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8bWF0LWljb24+Y2hldnJvbl9sZWZ0PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cIkN1cnJlbnRMZXZlbFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2VudCdcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY3J1bWItbmFtZVwiIFtyb3V0ZXJMaW5rXT1cIlsnL2VudGVycHJpc2UnXVwiPlxuICAgICAgICAgICAgICAgICAgICA8IS0tIDxtYXQtaWNvbj5ob21lPC9tYXQtaWNvbj4gLS0+XG5cbiAgICAgICAgICAgICAgICAgICAge3sgRW50ZXJwcmlzZT8uTmFtZSB9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cImVudGVycHJpc2VNZW51XCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5leHBhbmRfbW9yZTwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICAgICAgICA8bWF0LW1lbnUgI2VudGVycHJpc2VNZW51PVwibWF0TWVudVwiIHhQb3NpdGlvbj1cImJlZm9yZVwiPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXQtbWVudS1pdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbJy9lbnRlcnByaXNlJ11cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIlNldEFjdGl2ZUVudGVycHJpc2UoZW50Lkxvb2t1cClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGVudCBvZiBFbnRlcnByaXNlc1wiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGVudC5OYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8L21hdC1tZW51PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidwcm9qZWN0J1wiPlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjcnVtYi1uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiWycvcHJvamVjdCcsIFByb2plY3RMb29rdXBdXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHt7IFNlbGVjdGVkUHJvamVjdD8uUHJvamVjdD8uTmFtZSB9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cInByb2plY3RNZW51XCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5leHBhbmRfbW9yZTwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICAgICAgICA8bWF0LW1lbnUgI3Byb2plY3RNZW51PVwibWF0TWVudVwiIHhQb3NpdGlvbj1cImJlZm9yZVwiPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXQtbWVudS1pdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgcHJvamVjdExvb2t1cCBvZiBQcm9qZWN0TG9va3Vwc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbJy9wcm9qZWN0JywgcHJvamVjdExvb2t1cF1cIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIlByb2plY3RzW3Byb2plY3RMb29rdXBdOyBsZXQgcHJvXCI+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm8uUHJvamVjdD8uTmFtZVxuICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvbWF0LW1lbnU+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3JvdXRlJ1wiPlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjcnVtYi1uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiWycvcm91dGUnLCBTZWxlY3RlZFJvdXRlLCBQcm9qZWN0TG9va3VwXVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7eyBTZWxlY3RlZFJvdXRlIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbbWF0TWVudVRyaWdnZXJGb3JdPVwicm91dGVNZW51XCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5leHBhbmRfbW9yZTwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICAgICAgICA8bWF0LW1lbnUgI3JvdXRlTWVudT1cIm1hdE1lbnVcIiB4UG9zaXRpb249XCJiZWZvcmVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgbWF0LW1lbnUtaXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGFwcFJvdXRlIG9mIFJvdXRlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbJy9yb3V0ZScsIGFwcFJvdXRlLCBQcm9qZWN0TG9va3VwXVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiYXBwUm91dGVcIj57eyBhcHBSb3V0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPC9tYXQtbWVudT5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInYXBwJ1wiPlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjcnVtYi1uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiW1xuICAgICAgICAgICAgICAgICAgICAgICAgJy9hcHBsaWNhdGlvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICBBcHBsaWNhdGlvbkxvb2t1cCxcbiAgICAgICAgICAgICAgICAgICAgICAgIFNlbGVjdGVkUm91dGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBQcm9qZWN0TG9va3VwXG4gICAgICAgICAgICAgICAgICAgIF1cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sgU2VsZWN0ZWRBcHBsaWNhdGlvbj8uQXBwbGljYXRpb24/Lk5hbWUgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbbWF0TWVudVRyaWdnZXJGb3JdPVwiYXBwbGljYXRpb25NZW51XCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5leHBhbmRfbW9yZTwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICAgICAgICA8bWF0LW1lbnUgI2FwcGxpY2F0aW9uTWVudT1cIm1hdE1lbnVcIiB4UG9zaXRpb249XCJiZWZvcmVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgbWF0LW1lbnUtaXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGFwcExvb2t1cCBvZiBDdXJyZW50Um91dGVBcHBsaWNhdGlvbkxvb2t1cHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICcvYXBwbGljYXRpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcExvb2t1cCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZWxlY3RlZFJvdXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByb2plY3RMb29rdXBcbiAgICAgICAgICAgICAgICAgICAgICAgIF1cIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJvdXRlZEFwcGxpY2F0aW9uc1tTZWxlY3RlZFJvdXRlXVthcHBMb29rdXBdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgYXBwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgYXBwLkFwcGxpY2F0aW9uPy5OYW1lIH19PC9zcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvbWF0LW1lbnU+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb24vc3JjL2xpYi9lbGVtZW50cy9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7QUFVcEUsTUFBTSxPQUFPLG1CQUFtQjtJQW9ENUIsWUFDYyxNQUFrQixFQUNyQixrQkFBc0M7UUFEbkMsV0FBTSxHQUFOLE1BQU0sQ0FBWTtRQUNyQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBRTdDLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsa0JBQWtCO2FBQy9CLE9BQU8sQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUM7YUFDL0IsU0FBUyxDQUFDLENBQUMsS0FBc0IsRUFBRSxFQUFFO1lBQ2xDLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRTtnQkFDZixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQzthQUMxQjtpQkFBTTtnQkFDSCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQzthQUMzQjtZQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUV4QyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7Z0JBRWpELElBQUks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eyBCcmVha3BvaW50T2JzZXJ2ZXIsIEJyZWFrcG9pbnRTdGF0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9sYXlvdXQnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVhQ0FwcGxpY2F0aW9uQXNDb2RlLCBFYUNQcm9qZWN0QXNDb2RlIH0gZnJvbSAnQHNlbWFudGljanMvY29tbW9uJztcbmltcG9ydCB7IFN1YnNjcmliYWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBFYUNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZWFjLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xjdS1icmVhZGNydW1iJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYnJlYWRjcnVtYi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYnJlYWRjcnVtYi5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBCcmVhZGNydW1iQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIEBJbnB1dCgnYXBwbGljYXRpb24tbG9va3VwJylcbiAgICBwdWJsaWMgQXBwbGljYXRpb25Mb29rdXA6IHN0cmluZztcblxuICAgIEBJbnB1dCgnZW50ZXJwcmlzZScpXG4gICAgcHVibGljIEVudGVycHJpc2U6IGFueTtcblxuICAgIEBJbnB1dCgnZW50ZXJwcmlzZXMnKVxuICAgIHB1YmxpYyBFbnRlcnByaXNlczogQXJyYXk8YW55PjtcblxuICAgIEBJbnB1dCgnbG9hZGluZycpXG4gICAgcHVibGljIExvYWRpbmc6IGJvb2xlYW47XG5cbiAgICBASW5wdXQoJ3Byb2plY3RzJylcbiAgICBwdWJsaWMgUHJvamVjdHM6IGFueTtcblxuICAgIEBJbnB1dCgncHJvamVjdC1sb29rdXAnKVxuICAgIHB1YmxpYyBQcm9qZWN0TG9va3VwOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoJ3JvdXRlZC1hcHBsaWNhdGlvbicpXG4gICAgcHVibGljIFJvdXRlZEFwcGxpY2F0aW9uczoge1xuICAgICAgICBbcm91dGU6IHN0cmluZ106IHsgW2xvb2t1cDogc3RyaW5nXTogRWFDQXBwbGljYXRpb25Bc0NvZGUgfTtcbiAgICB9O1xuXG4gICAgQElucHV0KCdzZWxlY3RlZC1yb3V0ZScpXG4gICAgcHVibGljIFNlbGVjdGVkUm91dGU6IHN0cmluZztcblxuICAgIEBJbnB1dCgnYXBwbGljYXRpb25zLWJhbmsnKVxuICAgIHB1YmxpYyBBcHBsaWNhdGlvbnNCYW5rOiB7IFtsb29rdXA6IHN0cmluZ106IEVhQ0FwcGxpY2F0aW9uQXNDb2RlIH07XG5cbiAgICBwdWJsaWMgQXBwbGljYXRpb25zOiB7IFtsb29rdXA6IHN0cmluZ106IEVhQ0FwcGxpY2F0aW9uQXNDb2RlIH07XG5cbiAgICBwdWJsaWMgQlBTdWI6IFN1YnNjcmlwdGlvbjtcblxuICAgIHB1YmxpYyBDdXJyZW50TGV2ZWw6IHN0cmluZztcblxuICAgIHB1YmxpYyBDdXJyZW50Um91dGVBcHBsaWNhdGlvbkxvb2t1cHM6IEFycmF5PHN0cmluZz47XG5cbiAgICBwdWJsaWMgSXNTbVNjcmVlbjogYm9vbGVhbjtcblxuICAgIHB1YmxpYyBSZXR1cm5Sb3V0ZXJMaW5rOiBhbnk7XG5cbiAgICBwdWJsaWMgUm91dGVzOiBBcnJheTxzdHJpbmc+O1xuXG4gICAgcHVibGljIFNlbGVjdGVkUHJvamVjdDogRWFDUHJvamVjdEFzQ29kZTtcblxuICAgIHB1YmxpYyBTa2VsZXRvbkVmZmVjdDogc3RyaW5nO1xuXG4gICAgcHVibGljIFNlbGVjdGVkQXBwbGljYXRpb246IEVhQ0FwcGxpY2F0aW9uQXNDb2RlO1xuXG4gICAgcHVibGljIFByb2plY3RMb29rdXBzOiBBcnJheTxzdHJpbmc+O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBlYWNTdmM6IEVhQ1NlcnZpY2UsXG4gICAgICAgIHB1YmxpYyBicmVha3BvaW50T2JzZXJ2ZXI6IEJyZWFrcG9pbnRPYnNlcnZlclxuICAgICkge1xuICAgICAgICB0aGlzLlNrZWxldG9uRWZmZWN0ID0gJ3dhdmUnO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLkJQU3ViID0gdGhpcy5icmVha3BvaW50T2JzZXJ2ZXJcbiAgICAgICAgICAgIC5vYnNlcnZlKFsnKG1heC13aWR0aDogOTU5cHgpJ10pXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChzdGF0ZTogQnJlYWtwb2ludFN0YXRlKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHN0YXRlLm1hdGNoZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5Jc1NtU2NyZWVuID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLklzU21TY3JlZW4gPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ3NtYWxsOiAnLCB0aGlzLklzU21TY3JlZW4pO1xuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuSXNTbVNjcmVlbikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLkN1cnJlbnRMZXZlbCA9IHRoaXMuZGV0ZXJtaW5lQ3VycmVudExldmVsKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5SZXR1cm5Sb3V0ZXJMaW5rID0gdGhpcy5kZXRlcm1pbmVSZXR1cm5Sb3V0ZXJMaW5rKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoKSB7XG4gICAgICAgIGlmICh0aGlzLkFwcGxpY2F0aW9uc0JhbmsgJiYgdGhpcy5BcHBsaWNhdGlvbkxvb2t1cCkge1xuICAgICAgICAgICAgdGhpcy5TZWxlY3RlZEFwcGxpY2F0aW9uID1cbiAgICAgICAgICAgICAgICB0aGlzLkFwcGxpY2F0aW9uc0JhbmtbdGhpcy5BcHBsaWNhdGlvbkxvb2t1cF07XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5Qcm9qZWN0cykge1xuICAgICAgICAgICAgdGhpcy5Qcm9qZWN0TG9va3VwcyA9IE9iamVjdC5rZXlzKHRoaXMuUHJvamVjdHMgfHwge30pO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5Qcm9qZWN0TG9va3VwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5TZWxlY3RlZFByb2plY3QgPSB0aGlzLlByb2plY3RzW3RoaXMuUHJvamVjdExvb2t1cF07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICB0aGlzLlJvdXRlZEFwcGxpY2F0aW9ucyAmJlxuICAgICAgICAgICAgT2JqZWN0LmtleXModGhpcy5Sb3V0ZWRBcHBsaWNhdGlvbnMpPy5sZW5ndGggIT09IDBcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLlJvdXRlcyA9IE9iamVjdC5rZXlzKHRoaXMuUm91dGVkQXBwbGljYXRpb25zIHx8IHt9KTtcblxuICAgICAgICAgICAgY29uc29sZS5sb2coJ3JvdXRlZCBhcHBzOiAnLCB0aGlzLlJvdXRlZEFwcGxpY2F0aW9ucyk7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLlNlbGVjdGVkUm91dGUpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnc2VsZWN0ZWQgcm91dGU6ICcsIHRoaXMuU2VsZWN0ZWRSb3V0ZSk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLkN1cnJlbnRSb3V0ZUFwcGxpY2F0aW9uTG9va3VwcyA9XG4gICAgICAgICAgICAgICAgICAgIE9iamVjdC5rZXlzKHRoaXMuUm91dGVkQXBwbGljYXRpb25zW3RoaXMuU2VsZWN0ZWRSb3V0ZV0pIHx8XG4gICAgICAgICAgICAgICAgICAgIFtdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuU2VsZWN0ZWRQcm9qZWN0ICYmIHRoaXMuQXBwbGljYXRpb25zQmFuaykge1xuICAgICAgICAgICAgdGhpcy5BcHBsaWNhdGlvbnMgPSB7fTtcblxuICAgICAgICAgICAgdGhpcy5TZWxlY3RlZFByb2plY3Q/LkFwcGxpY2F0aW9uTG9va3Vwcz8uZm9yRWFjaChcbiAgICAgICAgICAgICAgICAoYXBwTG9va3VwOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5BcHBsaWNhdGlvbnNbYXBwTG9va3VwXSA9XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLkFwcGxpY2F0aW9uc0JhbmtbYXBwTG9va3VwXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuSXNTbVNjcmVlbikge1xuICAgICAgICAgICAgdGhpcy5DdXJyZW50TGV2ZWwgPSB0aGlzLmRldGVybWluZUN1cnJlbnRMZXZlbCgpO1xuXG4gICAgICAgICAgICB0aGlzLlJldHVyblJvdXRlckxpbmsgPSB0aGlzLmRldGVybWluZVJldHVyblJvdXRlckxpbmsoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5CUFN1Yi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBTZXRBY3RpdmVFbnRlcnByaXNlKGVudExvb2t1cDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWFjU3ZjLlNldEFjdGl2ZUVudGVycHJpc2UoZW50TG9va3VwKS50aGVuKCgpID0+IHt9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZGV0ZXJtaW5lQ3VycmVudExldmVsKCk6IHN0cmluZyB7XG4gICAgICAgIGxldCBsYXN0TGV2ZWw6IHN0cmluZztcbiAgICAgICAgaWYgKHRoaXMuRW50ZXJwcmlzZSkge1xuICAgICAgICAgICAgbGFzdExldmVsID0gJ2VudCc7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuUHJvamVjdExvb2t1cCkge1xuICAgICAgICAgICAgbGFzdExldmVsID0gJ3Byb2plY3QnO1xuICAgICAgICB9XG4gICAgICAgIC8vIGlmICh0aGlzLlNlbGVjdGVkUm91dGUpIHtcbiAgICAgICAgLy8gICAgIGxhc3RMZXZlbCA9ICdyb3V0ZSc7XG4gICAgICAgIC8vIH1cbiAgICAgICAgaWYgKHRoaXMuU2VsZWN0ZWRBcHBsaWNhdGlvbikge1xuICAgICAgICAgICAgbGFzdExldmVsID0gJ2FwcCc7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGxhc3RMZXZlbDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZGV0ZXJtaW5lUmV0dXJuUm91dGVyTGluaygpOiBhbnkge1xuICAgICAgICBsZXQgckxpbms7XG4gICAgICAgIGlmICh0aGlzLkVudGVycHJpc2UpIHtcbiAgICAgICAgICAgIHJMaW5rID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5Qcm9qZWN0TG9va3VwKSB7XG4gICAgICAgICAgICByTGluayA9IFsnL2VudGVycHJpc2UnXTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5TZWxlY3RlZFJvdXRlKSB7XG4gICAgICAgICAgICByTGluayA9IFsnL3Byb2plY3QnLCB0aGlzLlByb2plY3RMb29rdXBdO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLlNlbGVjdGVkQXBwbGljYXRpb24pIHtcbiAgICAgICAgICAgIHJMaW5rID0gWycvcHJvamVjdCcsIHRoaXMuUHJvamVjdExvb2t1cF07XG5cbiAgICAgICAgICAgIC8vIHJMaW5rID0gWycvcm91dGUnLCB0aGlzLlNlbGVjdGVkUm91dGUsIHRoaXMuUHJvamVjdExvb2t1cF07XG4gICAgICAgIH1cbiAgICAgICAgY29uc29sZS5sb2coJ3JsaW5rOiAnLCByTGluayk7XG4gICAgICAgIHJldHVybiByTGluaztcbiAgICB9XG5cbiAgICAvLyBwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlU3RhdGVDaGFuZ2UoKTogUHJvbWlzZTx2b2lkPiB7fVxufVxuIiwiPGRpdiBjbGFzcz1cImJyZWFkY3J1bWItY29udGFpbmVyXCIgKm5nSWY9XCIhSXNTbVNjcmVlblwiIGZ4TGF5b3V0PVwicm93IHdyYXBcIj5cbiAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIkxvYWRpbmdcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBza2VsZXRvbi10ZXh0IFtlZmZlY3RdPVwiU2tlbGV0b25FZmZlY3RcIj5ob21lPC9tYXQtaWNvbj5cblxuICAgICAgICAgICAgPGRpdiBza2VsZXRvbi10ZXh0IFtlZmZlY3RdPVwiU2tlbGV0b25FZmZlY3RcIj5FbnRlcnByaXNlIE5hbWU8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIkVudGVycHJpc2UgJiYgIUxvYWRpbmdcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjcnVtYi1uYW1lXCIgW3JvdXRlckxpbmtdPVwiWycvZW50ZXJwcmlzZSddXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uPmhvbWU8L21hdC1pY29uPlxuXG4gICAgICAgICAgICAgICAge3sgRW50ZXJwcmlzZT8uTmFtZSB9fVxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJlbnRlcnByaXNlTWVudVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5leHBhbmRfbW9yZTwvbWF0LWljb24+XG4gICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgPG1hdC1tZW51ICNlbnRlcnByaXNlTWVudT1cIm1hdE1lbnVcIiB4UG9zaXRpb249XCJiZWZvcmVcIj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIG1hdC1tZW51LWl0ZW1cbiAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiWycvZW50ZXJwcmlzZSddXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIlNldEFjdGl2ZUVudGVycHJpc2UoZW50Lkxvb2t1cClcIlxuICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZW50IG9mIEVudGVycHJpc2VzXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGVudC5OYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9tYXQtbWVudT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiUHJvamVjdExvb2t1cCAmJiBTZWxlY3RlZFByb2plY3RcIlxuICAgICAgICBmeExheW91dD1cInJvd1wiXG4gICAgICAgIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCJcbiAgICA+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2VwZXJhdG9yXCI+Lzwvc3Bhbj5cblxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiTG9hZGluZ1wiPlxuICAgICAgICAgICAgPGRpdiBza2VsZXRvbi10ZXh0IFtlZmZlY3RdPVwiU2tlbGV0b25FZmZlY3RcIj5Qcm9qZWN0IE5hbWU8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFMb2FkaW5nXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY3J1bWItbmFtZVwiIFtyb3V0ZXJMaW5rXT1cIlsnL3Byb2plY3QnLCBQcm9qZWN0TG9va3VwXVwiPlxuICAgICAgICAgICAgICAgIHt7IFNlbGVjdGVkUHJvamVjdD8uUHJvamVjdD8uTmFtZSB9fVxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJwcm9qZWN0TWVudVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5leHBhbmRfbW9yZTwvbWF0LWljb24+XG4gICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgPG1hdC1tZW51ICNwcm9qZWN0TWVudT1cIm1hdE1lbnVcIiB4UG9zaXRpb249XCJiZWZvcmVcIj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIG1hdC1tZW51LWl0ZW1cbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHByb2plY3RMb29rdXAgb2YgUHJvamVjdExvb2t1cHNcIlxuICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbJy9wcm9qZWN0JywgcHJvamVjdExvb2t1cF1cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJQcm9qZWN0c1twcm9qZWN0TG9va3VwXTsgbGV0IHByb1wiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICBwcm8uUHJvamVjdD8uTmFtZVxuICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvbWF0LW1lbnU+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSA8ZGl2ICpuZ0lmPVwiU2VsZWN0ZWRSb3V0ZVwiIGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzZXBlcmF0b3JcIj4vPC9zcGFuPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJMb2FkaW5nXCI+XG4gICAgICAgICAgICA8ZGl2IHNrZWxldG9uLXRleHQgW2VmZmVjdF09XCJTa2VsZXRvbkVmZmVjdFwiPlJvdXRlIE5hbWU8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFMb2FkaW5nXCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJjcnVtYi1uYW1lXCJcbiAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbJy9yb3V0ZScsIFNlbGVjdGVkUm91dGUsIFByb2plY3RMb29rdXBdXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBTZWxlY3RlZFJvdXRlIH19XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cInJvdXRlTWVudVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5leHBhbmRfbW9yZTwvbWF0LWljb24+XG4gICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgPG1hdC1tZW51ICNyb3V0ZU1lbnU9XCJtYXRNZW51XCIgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBtYXQtbWVudS1pdGVtXG4gICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBhcHBSb3V0ZSBvZiBSb3V0ZXNcIlxuICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbJy9yb3V0ZScsIGFwcFJvdXRlLCBQcm9qZWN0TG9va3VwXVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImFwcFJvdXRlXCI+e3sgYXBwUm91dGUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L21hdC1tZW51PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj4gLS0+XG5cbiAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiU2VsZWN0ZWRBcHBsaWNhdGlvbiAmJiBBcHBsaWNhdGlvbkxvb2t1cFwiXG4gICAgICAgIGZ4TGF5b3V0PVwicm93XCJcbiAgICAgICAgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIlxuICAgID5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzZXBlcmF0b3JcIj4vPC9zcGFuPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJMb2FkaW5nXCI+XG4gICAgICAgICAgICA8ZGl2IHNrZWxldG9uLXRleHQgW2VmZmVjdF09XCJTa2VsZXRvbkVmZmVjdFwiPkFwcGxpY2F0aW9uIE5hbWU8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFMb2FkaW5nXCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJjcnVtYi1uYW1lXCJcbiAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbXG4gICAgICAgICAgICAgICAgICAgICcvYXBwbGljYXRpb24nLFxuICAgICAgICAgICAgICAgICAgICBBcHBsaWNhdGlvbkxvb2t1cCxcbiAgICAgICAgICAgICAgICAgICAgU2VsZWN0ZWRSb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgUHJvamVjdExvb2t1cFxuICAgICAgICAgICAgICAgIF1cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IFNlbGVjdGVkQXBwbGljYXRpb24/LkFwcGxpY2F0aW9uPy5OYW1lIH19XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cImFwcGxpY2F0aW9uTWVudVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5leHBhbmRfbW9yZTwvbWF0LWljb24+XG4gICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgPG1hdC1tZW51ICNhcHBsaWNhdGlvbk1lbnU9XCJtYXRNZW51XCIgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBtYXQtbWVudS1pdGVtXG4gICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBhcHBMb29rdXAgb2YgQ3VycmVudFJvdXRlQXBwbGljYXRpb25Mb29rdXBzXCJcbiAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiW1xuICAgICAgICAgICAgICAgICAgICAgICAgJy9hcHBsaWNhdGlvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICBhcHBMb29rdXAsXG4gICAgICAgICAgICAgICAgICAgICAgICBTZWxlY3RlZFJvdXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgUHJvamVjdExvb2t1cFxuICAgICAgICAgICAgICAgICAgICBdXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJvdXRlZEFwcGxpY2F0aW9uc1tTZWxlY3RlZFJvdXRlXVthcHBMb29rdXBdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBhcHBcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+e3sgYXBwLkFwcGxpY2F0aW9uPy5OYW1lIH19PC9zcGFuXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvbWF0LW1lbnU+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuPC9kaXY+XG5cbjwhLS0gTU9CSUxFIFZJRVcgLS0+XG5cbjxkaXZcbiAgICBjbGFzcz1cImJyZWFkY3J1bWItY29udGFpbmVyXCJcbiAgICAqbmdJZj1cIklzU21TY3JlZW5cIlxuICAgIGZ4TGF5b3V0PVwicm93XCJcbiAgICBmeExheW91dEFsaWduPVwic3RhcnQgY2VudGVyXCJcbj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiTG9hZGluZ1wiPlxuICAgICAgICA8bWF0LWljb24gc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCJcbiAgICAgICAgICAgID5jaGV2cm9uX2xlZnQ8L21hdC1pY29uXG4gICAgICAgID5cblxuICAgICAgICA8ZGl2IHNrZWxldG9uLXRleHQgW2VmZmVjdF09XCJTa2VsZXRvbkVmZmVjdFwiPkN1cnJlbnQgUGF0aDwvZGl2PlxuXG4gICAgICAgIDxtYXQtaWNvbiBza2VsZXRvbi10ZXh0IFtlZmZlY3RdPVwiU2tlbGV0b25FZmZlY3RcIj5leHBhbmRfbW9yZTwvbWF0LWljb24+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIUxvYWRpbmdcIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKm5nSWY9XCJSZXR1cm5Sb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiUmV0dXJuUm91dGVyTGlua1wiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxtYXQtaWNvbj5jaGV2cm9uX2xlZnQ8L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiQ3VycmVudExldmVsXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZW50J1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjcnVtYi1uYW1lXCIgW3JvdXRlckxpbmtdPVwiWycvZW50ZXJwcmlzZSddXCI+XG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPG1hdC1pY29uPmhvbWU8L21hdC1pY29uPiAtLT5cblxuICAgICAgICAgICAgICAgICAgICB7eyBFbnRlcnByaXNlPy5OYW1lIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbbWF0TWVudVRyaWdnZXJGb3JdPVwiZW50ZXJwcmlzZU1lbnVcIj5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPmV4cGFuZF9tb3JlPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgICAgIDxtYXQtbWVudSAjZW50ZXJwcmlzZU1lbnU9XCJtYXRNZW51XCIgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIG1hdC1tZW51LWl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlsnL2VudGVycHJpc2UnXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiU2V0QWN0aXZlRW50ZXJwcmlzZShlbnQuTG9va3VwKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZW50IG9mIEVudGVycHJpc2VzXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgZW50Lk5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvbWF0LW1lbnU+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3Byb2plY3QnXCI+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNydW1iLW5hbWVcIlxuICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbJy9wcm9qZWN0JywgUHJvamVjdExvb2t1cF1cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sgU2VsZWN0ZWRQcm9qZWN0Py5Qcm9qZWN0Py5OYW1lIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbbWF0TWVudVRyaWdnZXJGb3JdPVwicHJvamVjdE1lbnVcIj5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPmV4cGFuZF9tb3JlPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgICAgIDxtYXQtbWVudSAjcHJvamVjdE1lbnU9XCJtYXRNZW51XCIgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIG1hdC1tZW51LWl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBwcm9qZWN0TG9va3VwIG9mIFByb2plY3RMb29rdXBzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlsnL3Byb2plY3QnLCBwcm9qZWN0TG9va3VwXVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiUHJvamVjdHNbcHJvamVjdExvb2t1cF07IGxldCBwcm9cIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByby5Qcm9qZWN0Py5OYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPC9tYXQtbWVudT5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIncm91dGUnXCI+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNydW1iLW5hbWVcIlxuICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbJy9yb3V0ZScsIFNlbGVjdGVkUm91dGUsIFByb2plY3RMb29rdXBdXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHt7IFNlbGVjdGVkUm91dGUgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJyb3V0ZU1lbnVcIj5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPmV4cGFuZF9tb3JlPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgICAgIDxtYXQtbWVudSAjcm91dGVNZW51PVwibWF0TWVudVwiIHhQb3NpdGlvbj1cImJlZm9yZVwiPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXQtbWVudS1pdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgYXBwUm91dGUgb2YgUm91dGVzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlsnL3JvdXRlJywgYXBwUm91dGUsIFByb2plY3RMb29rdXBdXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJhcHBSb3V0ZVwiPnt7IGFwcFJvdXRlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8L21hdC1tZW51PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidhcHAnXCI+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNydW1iLW5hbWVcIlxuICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbXG4gICAgICAgICAgICAgICAgICAgICAgICAnL2FwcGxpY2F0aW9uJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIEFwcGxpY2F0aW9uTG9va3VwLFxuICAgICAgICAgICAgICAgICAgICAgICAgU2VsZWN0ZWRSb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFByb2plY3RMb29rdXBcbiAgICAgICAgICAgICAgICAgICAgXVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7eyBTZWxlY3RlZEFwcGxpY2F0aW9uPy5BcHBsaWNhdGlvbj8uTmFtZSB9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJhcHBsaWNhdGlvbk1lbnVcIj5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPmV4cGFuZF9tb3JlPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgICAgIDxtYXQtbWVudSAjYXBwbGljYXRpb25NZW51PVwibWF0TWVudVwiIHhQb3NpdGlvbj1cImJlZm9yZVwiPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXQtbWVudS1pdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgYXBwTG9va3VwIG9mIEN1cnJlbnRSb3V0ZUFwcGxpY2F0aW9uTG9va3Vwc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJy9hcHBsaWNhdGlvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwTG9va3VwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNlbGVjdGVkUm91dGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJvamVjdExvb2t1cFxuICAgICAgICAgICAgICAgICAgICAgICAgXVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUm91dGVkQXBwbGljYXRpb25zW1NlbGVjdGVkUm91dGVdW2FwcExvb2t1cF07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBhcHBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID57eyBhcHAuQXBwbGljYXRpb24/Lk5hbWUgfX08L3NwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPC9tYXQtbWVudT5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
|
@@ -27,10 +27,10 @@ export class DashboardToolbarComponent {
|
|
27
27
|
}
|
28
28
|
}
|
29
29
|
DashboardToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: DashboardToolbarComponent, deps: [{ token: i1.BreakpointObserver }, { token: i2.EaCService }], target: i0.ɵɵFactoryTarget.Component });
|
30
|
-
DashboardToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: DashboardToolbarComponent, selector: "lcu-dashboard-toolbar", inputs: { ProjectLookups: ["project-lookups", "ProjectLookups"], Loading: ["loading", "Loading"], ProjectLookup: ["project-lookup", "ProjectLookup"] }, ngImport: i0, template: "<mat-toolbar class=\"dashboard-toolbar\">\n <ng-container *ngIf=\"ProjectLookups\">\n <a class=\"toolbar-item\" href=\"/dashboard/enterprise\">Overview</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/projects\">Projects</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a\n *ngIf=\"ProjectLookups?.length > 0 || Loading\"\n class=\"toolbar-item\"\n href=\"/dashboard/devops\"\n >DevOps</a\n >\n <a\n *ngIf=\"ProjectLookups?.length <= 0 && !Loading\"\n matTooltip=\"Add a project to unlock this feature\"\n class=\"toolbar-item disabled\"\n >DevOps</a\n >\n <div class=\"vl\"></div>\n\n <!-- <span>Domains</span> -->\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers\">Mods</a>\n <!-- <span>Manage (krakyn)</span> -->\n </ng-container>\n\n <ng-container *ngIf=\"ProjectLookup\">\n <a class=\"toolbar-item\" href=\"/dashboard/project/{{ ProjectLookup }}\"\n >Project Overview</a\n >\n <div class=\"vl\"></div>\n\n <a
|
30
|
+
DashboardToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: DashboardToolbarComponent, selector: "lcu-dashboard-toolbar", inputs: { ProjectLookups: ["project-lookups", "ProjectLookups"], Loading: ["loading", "Loading"], ProjectLookup: ["project-lookup", "ProjectLookup"] }, ngImport: i0, template: "<mat-toolbar class=\"dashboard-toolbar\">\n <ng-container *ngIf=\"ProjectLookups\">\n <a class=\"toolbar-item\" href=\"/dashboard/enterprise\">Overview</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/projects\">Projects</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a\n *ngIf=\"ProjectLookups?.length > 0 || Loading\"\n class=\"toolbar-item\"\n href=\"/dashboard/devops\"\n >DevOps</a\n >\n <a\n *ngIf=\"ProjectLookups?.length <= 0 && !Loading\"\n matTooltip=\"Add a project to unlock this feature\"\n class=\"toolbar-item disabled\"\n >DevOps</a\n >\n <div class=\"vl\"></div>\n\n <!-- <span>Domains</span> -->\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers\">Mods</a>\n <!-- <span>Manage (krakyn)</span> -->\n </ng-container>\n\n <ng-container *ngIf=\"ProjectLookup\">\n <a class=\"toolbar-item\" href=\"/dashboard/project/{{ ProjectLookup }}\"\n >Project Overview</a\n >\n <div class=\"vl\"></div>\n\n <a\n class=\"toolbar-item\"\n href=\"/dashboard/applications/{{ ProjectLookup }}\"\n >Applications</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/domains/{{ ProjectLookup }}\"\n >Domains</a\n >\n <div class=\"vl\"></div>\n\n <!-- <a class=\"toolbar-item disabled\" href=\"/dashboard/state-config\"\n >State Config</a\n >\n <div class=\"vl\"></div> -->\n\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers/{{ ProjectLookup }}\"\n >Mods</a\n >\n </ng-container>\n</mat-toolbar>\n", styles: [".dashboard-toolbar{background-color:#fff}.toolbar-item{margin:10px;text-decoration:none;color:#000}.vl{border-left:2px solid black;height:20px}.disabled{color:gray;pointer-events:none}@media only screen and (max-width: 959px){.dashboard-toolbar{height:45px}.toolbar-item{font-size:11px;margin:5px}.vl{border-left:1px solid black;height:12px}}\n"], components: [{ type: i3.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
|
31
31
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: DashboardToolbarComponent, decorators: [{
|
32
32
|
type: Component,
|
33
|
-
args: [{ selector: 'lcu-dashboard-toolbar', template: "<mat-toolbar class=\"dashboard-toolbar\">\n <ng-container *ngIf=\"ProjectLookups\">\n <a class=\"toolbar-item\" href=\"/dashboard/enterprise\">Overview</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/projects\">Projects</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a\n *ngIf=\"ProjectLookups?.length > 0 || Loading\"\n class=\"toolbar-item\"\n href=\"/dashboard/devops\"\n >DevOps</a\n >\n <a\n *ngIf=\"ProjectLookups?.length <= 0 && !Loading\"\n matTooltip=\"Add a project to unlock this feature\"\n class=\"toolbar-item disabled\"\n >DevOps</a\n >\n <div class=\"vl\"></div>\n\n <!-- <span>Domains</span> -->\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers\">Mods</a>\n <!-- <span>Manage (krakyn)</span> -->\n </ng-container>\n\n <ng-container *ngIf=\"ProjectLookup\">\n <a class=\"toolbar-item\" href=\"/dashboard/project/{{ ProjectLookup }}\"\n >Project Overview</a\n >\n <div class=\"vl\"></div>\n\n <a
|
33
|
+
args: [{ selector: 'lcu-dashboard-toolbar', template: "<mat-toolbar class=\"dashboard-toolbar\">\n <ng-container *ngIf=\"ProjectLookups\">\n <a class=\"toolbar-item\" href=\"/dashboard/enterprise\">Overview</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/projects\">Projects</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a\n *ngIf=\"ProjectLookups?.length > 0 || Loading\"\n class=\"toolbar-item\"\n href=\"/dashboard/devops\"\n >DevOps</a\n >\n <a\n *ngIf=\"ProjectLookups?.length <= 0 && !Loading\"\n matTooltip=\"Add a project to unlock this feature\"\n class=\"toolbar-item disabled\"\n >DevOps</a\n >\n <div class=\"vl\"></div>\n\n <!-- <span>Domains</span> -->\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers\">Mods</a>\n <!-- <span>Manage (krakyn)</span> -->\n </ng-container>\n\n <ng-container *ngIf=\"ProjectLookup\">\n <a class=\"toolbar-item\" href=\"/dashboard/project/{{ ProjectLookup }}\"\n >Project Overview</a\n >\n <div class=\"vl\"></div>\n\n <a\n class=\"toolbar-item\"\n href=\"/dashboard/applications/{{ ProjectLookup }}\"\n >Applications</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/domains/{{ ProjectLookup }}\"\n >Domains</a\n >\n <div class=\"vl\"></div>\n\n <!-- <a class=\"toolbar-item disabled\" href=\"/dashboard/state-config\"\n >State Config</a\n >\n <div class=\"vl\"></div> -->\n\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers/{{ ProjectLookup }}\"\n >Mods</a\n >\n </ng-container>\n</mat-toolbar>\n", styles: [".dashboard-toolbar{background-color:#fff}.toolbar-item{margin:10px;text-decoration:none;color:#000}.vl{border-left:2px solid black;height:20px}.disabled{color:gray;pointer-events:none}@media only screen and (max-width: 959px){.dashboard-toolbar{height:45px}.toolbar-item{font-size:11px;margin:5px}.vl{border-left:1px solid black;height:12px}}\n"] }]
|
34
34
|
}], ctorParameters: function () { return [{ type: i1.BreakpointObserver }, { type: i2.EaCService }]; }, propDecorators: { ProjectLookups: [{
|
35
35
|
type: Input,
|
36
36
|
args: ['project-lookups']
|
@@ -41,4 +41,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
41
41
|
type: Input,
|
42
42
|
args: ['project-lookup']
|
43
43
|
}] } });
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvZGFzaGJvYXJkLXRvb2xiYXIvZGFzaGJvYXJkLXRvb2xiYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvZGFzaGJvYXJkLXRvb2xiYXIvZGFzaGJvYXJkLXRvb2xiYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7QUFRekQsTUFBTSxPQUFPLHlCQUF5QjtJQWVsQyxZQUNXLGtCQUFzQyxFQUNuQyxNQUFrQjtRQURyQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ25DLFdBQU0sR0FBTixNQUFNLENBQVk7SUFDN0IsQ0FBQztJQUVKLFFBQVE7UUFDSixJQUFJLENBQUMsa0JBQWtCO2FBQ2xCLE9BQU8sQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUM7YUFDL0IsU0FBUyxDQUFDLENBQUMsS0FBc0IsRUFBRSxFQUFFO1lBQ2xDLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRTtnQkFDZixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQzthQUMxQjtpQkFBTTtnQkFDSCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQzthQUMzQjtRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRVAsa0JBQWtCO1FBQ2xCLHlCQUF5QjtRQUN6QixJQUFJO0lBQ1IsQ0FBQzs7c0hBbENRLHlCQUF5QjswR0FBekIseUJBQXlCLHFOQ1R0QywyK0RBNkRBOzJGRHBEYSx5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0ksdUJBQXVCO2tJQU0xQixjQUFjO3NCQURwQixLQUFLO3VCQUFDLGlCQUFpQjtnQkFJakIsT0FBTztzQkFEYixLQUFLO3VCQUFDLFNBQVM7Z0JBT1QsYUFBYTtzQkFEbkIsS0FBSzt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCcmVha3BvaW50T2JzZXJ2ZXIsIEJyZWFrcG9pbnRTdGF0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9sYXlvdXQnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFYUNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZWFjLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xjdS1kYXNoYm9hcmQtdG9vbGJhcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Rhc2hib2FyZC10b29sYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kYXNoYm9hcmQtdG9vbGJhci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBEYXNoYm9hcmRUb29sYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoJ3Byb2plY3QtbG9va3VwcycpXG4gICAgcHVibGljIFByb2plY3RMb29rdXBzOiBBcnJheTxzdHJpbmc+O1xuXG4gICAgQElucHV0KCdsb2FkaW5nJylcbiAgICBwdWJsaWMgTG9hZGluZzogYm9vbGVhbjtcblxuICAgIC8vIEBJbnB1dCgndHlwZScpXG4gICAgLy8gcHVibGljIFR5cGU6IHN0cmluZztcblxuICAgIEBJbnB1dCgncHJvamVjdC1sb29rdXAnKVxuICAgIHB1YmxpYyBQcm9qZWN0TG9va3VwOiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgSXNTbVNjcmVlbjogYm9vbGVhbjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgYnJlYWtwb2ludE9ic2VydmVyOiBCcmVha3BvaW50T2JzZXJ2ZXIsXG4gICAgICAgIHByb3RlY3RlZCBlYWNTdmM6IEVhQ1NlcnZpY2VcbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5icmVha3BvaW50T2JzZXJ2ZXJcbiAgICAgICAgICAgIC5vYnNlcnZlKFsnKG1heC13aWR0aDogOTU5cHgpJ10pXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChzdGF0ZTogQnJlYWtwb2ludFN0YXRlKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHN0YXRlLm1hdGNoZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5Jc1NtU2NyZWVuID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLklzU21TY3JlZW4gPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAvLyBpZighdGhpcy5UeXBlKXtcbiAgICAgICAgLy8gICAgIHRoaXMuVHlwZSA9IFwiZW50XCI7XG4gICAgICAgIC8vIH1cbiAgICB9XG59XG4iLCI8bWF0LXRvb2xiYXIgY2xhc3M9XCJkYXNoYm9hcmQtdG9vbGJhclwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJQcm9qZWN0TG9va3Vwc1wiPlxuICAgICAgICA8YSBjbGFzcz1cInRvb2xiYXItaXRlbVwiIGhyZWY9XCIvZGFzaGJvYXJkL2VudGVycHJpc2VcIj5PdmVydmlldzwvYT5cbiAgICAgICAgPGRpdiBjbGFzcz1cInZsXCI+PC9kaXY+XG5cbiAgICAgICAgPGEgY2xhc3M9XCJ0b29sYmFyLWl0ZW1cIiBocmVmPVwiL2Rhc2hib2FyZC9wcm9qZWN0c1wiPlByb2plY3RzPC9hPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidmxcIj48L2Rpdj5cblxuICAgICAgICA8YSBjbGFzcz1cInRvb2xiYXItaXRlbVwiIGhyZWY9XCIvZGFzaGJvYXJkL3RlYW1zXCI+VGVhbXM8L2E+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2bFwiPjwvZGl2PlxuXG4gICAgICAgIDxhXG4gICAgICAgICAgICAqbmdJZj1cIlByb2plY3RMb29rdXBzPy5sZW5ndGggPiAwIHx8IExvYWRpbmdcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0b29sYmFyLWl0ZW1cIlxuICAgICAgICAgICAgaHJlZj1cIi9kYXNoYm9hcmQvZGV2b3BzXCJcbiAgICAgICAgICAgID5EZXZPcHM8L2FcbiAgICAgICAgPlxuICAgICAgICA8YVxuICAgICAgICAgICAgKm5nSWY9XCJQcm9qZWN0TG9va3Vwcz8ubGVuZ3RoIDw9IDAgJiYgIUxvYWRpbmdcIlxuICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkFkZCBhIHByb2plY3QgdG8gdW5sb2NrIHRoaXMgZmVhdHVyZVwiXG4gICAgICAgICAgICBjbGFzcz1cInRvb2xiYXItaXRlbSBkaXNhYmxlZFwiXG4gICAgICAgICAgICA+RGV2T3BzPC9hXG4gICAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cInZsXCI+PC9kaXY+XG5cbiAgICAgICAgPCEtLSA8c3Bhbj5Eb21haW5zPC9zcGFuPiAtLT5cbiAgICAgICAgPGEgY2xhc3M9XCJ0b29sYmFyLWl0ZW1cIiBocmVmPVwiL2Rhc2hib2FyZC9tb2RpZmllcnNcIj5Nb2RzPC9hPlxuICAgICAgICA8IS0tIDxzcGFuPk1hbmFnZSAoa3Jha3luKTwvc3Bhbj4gLS0+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiUHJvamVjdExvb2t1cFwiPlxuICAgICAgICA8YSBjbGFzcz1cInRvb2xiYXItaXRlbVwiIGhyZWY9XCIvZGFzaGJvYXJkL3Byb2plY3Qve3sgUHJvamVjdExvb2t1cCB9fVwiXG4gICAgICAgICAgICA+UHJvamVjdCBPdmVydmlldzwvYVxuICAgICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2bFwiPjwvZGl2PlxuXG4gICAgICAgIDxhXG4gICAgICAgICAgICBjbGFzcz1cInRvb2xiYXItaXRlbVwiXG4gICAgICAgICAgICBocmVmPVwiL2Rhc2hib2FyZC9hcHBsaWNhdGlvbnMve3sgUHJvamVjdExvb2t1cCB9fVwiXG4gICAgICAgICAgICA+QXBwbGljYXRpb25zPC9hXG4gICAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cInZsXCI+PC9kaXY+XG5cbiAgICAgICAgPGEgY2xhc3M9XCJ0b29sYmFyLWl0ZW1cIiBocmVmPVwiL2Rhc2hib2FyZC90ZWFtc1wiPlRlYW1zPC9hPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidmxcIj48L2Rpdj5cblxuICAgICAgICA8YSBjbGFzcz1cInRvb2xiYXItaXRlbVwiIGhyZWY9XCIvZGFzaGJvYXJkL2RvbWFpbnMve3sgUHJvamVjdExvb2t1cCB9fVwiXG4gICAgICAgICAgICA+RG9tYWluczwvYVxuICAgICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2bFwiPjwvZGl2PlxuXG4gICAgICAgIDwhLS0gPGEgY2xhc3M9XCJ0b29sYmFyLWl0ZW0gZGlzYWJsZWRcIiBocmVmPVwiL2Rhc2hib2FyZC9zdGF0ZS1jb25maWdcIlxuICAgICAgICAgICAgPlN0YXRlIENvbmZpZzwvYVxuICAgICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2bFwiPjwvZGl2PiAtLT5cblxuICAgICAgICA8YSBjbGFzcz1cInRvb2xiYXItaXRlbVwiIGhyZWY9XCIvZGFzaGJvYXJkL21vZGlmaWVycy97eyBQcm9qZWN0TG9va3VwIH19XCJcbiAgICAgICAgICAgID5Nb2RzPC9hXG4gICAgICAgID5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvbWF0LXRvb2xiYXI+XG4iXX0=
|
@@ -8,6 +8,7 @@ import * as i4 from "@angular/material/icon";
|
|
8
8
|
import * as i5 from "@angular/material/menu";
|
9
9
|
import * as i6 from "@angular/flex-layout/flex";
|
10
10
|
import * as i7 from "@angular/common";
|
11
|
+
import * as i8 from "@angular/material/tooltip";
|
11
12
|
export class FeedFilterComponent {
|
12
13
|
constructor(eacSvc, formBuilder) {
|
13
14
|
this.eacSvc = eacSvc;
|
@@ -99,6 +100,9 @@ export class FeedFilterComponent {
|
|
99
100
|
}
|
100
101
|
return fString;
|
101
102
|
}
|
103
|
+
ReloadFeed() {
|
104
|
+
this.eacSvc.ReloadFeed();
|
105
|
+
}
|
102
106
|
ToggleFilter(name) {
|
103
107
|
let filt = this.Filters.find((filter) => filter.Name === name);
|
104
108
|
let allFilt = this.Filters.find((filter) => filter.Name.toLowerCase() === 'all');
|
@@ -140,12 +144,15 @@ export class FeedFilterComponent {
|
|
140
144
|
}
|
141
145
|
}
|
142
146
|
FeedFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: FeedFilterComponent, deps: [{ token: i1.EaCService }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
143
|
-
FeedFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: FeedFilterComponent, selector: "lcu-feed-filter", inputs: { FilterTypes: ["filter-types", "FilterTypes"] }, usesOnChanges: true, ngImport: i0, template: "<div class=\"filter-area\" fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <div class=\"seperator\"></div>\n <div class=\"filter-text\">Filter feed by:</div>\n <button\n mat-icon-button\n [matMenuTriggerFor]=\"menu\"\n aria-label=\"View Filters\"\n [disabled]=\"Filters?.length === 0\"\n #trigger=\"matMenuTrigger\"\n (menuOpened)=\"MenuOpen = trigger.menuOpen\"\n (menuClosed)=\"MenuOpen = trigger.menuOpen\"\n >\n <mat-icon *ngIf=\"!MenuOpen\">expand_more</mat-icon>\n <mat-icon *ngIf=\"MenuOpen\">expand_less</mat-icon>\n </button>\n <mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <form\n [formGroup]=\"FilterFormGroup\"\n fxLayout=\"column\"\n (ngSubmit)=\"Apply()\"\n >\n <label\n class=\"filter-label\"\n formArrayName=\"filters\"\n *ngFor=\"let filter of filtersFormArray.controls; let i = index\"\n (click)=\"$event.stopPropagation()\"\n >\n <input\n type=\"checkbox\"\n [formControlName]=\"i\"\n (click)=\"\n $event.stopPropagation(); ToggleFilter(Filters[i].Name)\n \"\n />\n {{ Filters[i].Name }}\n\n <span class=\"checkmark\"></span>\n </label>\n <button class=\"filter-button\">Apply</button>\n </form>\n </mat-menu>\n</div>\n", styles: [".filter-area{margin:0 20px}.seperator{width:83%;margin:5px;border-top:1px solid black}.filter-text{font-size:8px}.filter-label{margin:0 10px;cursor:pointer}.filter-button{margin:10px}\n"], components: [{ type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i5.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }], directives: [{ type: i6.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i6.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i5.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
147
|
+
FeedFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: FeedFilterComponent, selector: "lcu-feed-filter", inputs: { FeedCheck: ["feed-check", "FeedCheck"], FilterTypes: ["filter-types", "FilterTypes"] }, usesOnChanges: true, ngImport: i0, template: "<div class=\"filter-area\" fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <div class=\"seperator\"></div>\n <div class=\"filter-text\">Filter feed by:</div>\n <button\n mat-icon-button\n [matMenuTriggerFor]=\"menu\"\n aria-label=\"View Filters\"\n [disabled]=\"Filters?.length === 0\"\n #trigger=\"matMenuTrigger\"\n (menuOpened)=\"MenuOpen = trigger.menuOpen\"\n (menuClosed)=\"MenuOpen = trigger.menuOpen\"\n >\n <mat-icon *ngIf=\"!MenuOpen\">expand_more</mat-icon>\n <mat-icon *ngIf=\"MenuOpen\">expand_less</mat-icon>\n </button>\n <mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <form\n [formGroup]=\"FilterFormGroup\"\n fxLayout=\"column\"\n (ngSubmit)=\"Apply()\"\n >\n <label\n class=\"filter-label\"\n formArrayName=\"filters\"\n *ngFor=\"let filter of filtersFormArray.controls; let i = index\"\n (click)=\"$event.stopPropagation()\"\n >\n <input\n type=\"checkbox\"\n [formControlName]=\"i\"\n (click)=\"\n $event.stopPropagation(); ToggleFilter(Filters[i].Name)\n \"\n />\n {{ Filters[i].Name }}\n\n <span class=\"checkmark\"></span>\n </label>\n <button class=\"filter-button\">Apply</button>\n </form>\n </mat-menu>\n <!-- *ngIf=\"FeedCheck\" -->\n <mat-icon\n *ngIf=\"FeedCheck\"\n matTooltip=\"Refresh for the latest feed items\"\n class=\"refresh-btn\"\n (click)=\"ReloadFeed()\"\n >refresh</mat-icon\n >\n</div>\n", styles: [".filter-area{margin:0 20px}.seperator{width:83%;margin:5px;border-top:1px solid black}.filter-text{font-size:8px}.filter-label{margin:0 10px;cursor:pointer}.filter-button{margin:10px}.refresh-btn{box-shadow:0 0 #000;transform:scale(1);animation:pulse 3s infinite;border-radius:50%;cursor:pointer}@keyframes pulse{0%{box-shadow:0 0 #000000b3}70%{box-shadow:0 0 0 10px #0000}to{box-shadow:0 0 #0000}}\n"], components: [{ type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i5.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }], directives: [{ type: i6.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i6.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i5.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i8.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
|
144
148
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: FeedFilterComponent, decorators: [{
|
145
149
|
type: Component,
|
146
|
-
args: [{ selector: 'lcu-feed-filter', template: "<div class=\"filter-area\" fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <div class=\"seperator\"></div>\n <div class=\"filter-text\">Filter feed by:</div>\n <button\n mat-icon-button\n [matMenuTriggerFor]=\"menu\"\n aria-label=\"View Filters\"\n [disabled]=\"Filters?.length === 0\"\n #trigger=\"matMenuTrigger\"\n (menuOpened)=\"MenuOpen = trigger.menuOpen\"\n (menuClosed)=\"MenuOpen = trigger.menuOpen\"\n >\n <mat-icon *ngIf=\"!MenuOpen\">expand_more</mat-icon>\n <mat-icon *ngIf=\"MenuOpen\">expand_less</mat-icon>\n </button>\n <mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <form\n [formGroup]=\"FilterFormGroup\"\n fxLayout=\"column\"\n (ngSubmit)=\"Apply()\"\n >\n <label\n class=\"filter-label\"\n formArrayName=\"filters\"\n *ngFor=\"let filter of filtersFormArray.controls; let i = index\"\n (click)=\"$event.stopPropagation()\"\n >\n <input\n type=\"checkbox\"\n [formControlName]=\"i\"\n (click)=\"\n $event.stopPropagation(); ToggleFilter(Filters[i].Name)\n \"\n />\n {{ Filters[i].Name }}\n\n <span class=\"checkmark\"></span>\n </label>\n <button class=\"filter-button\">Apply</button>\n </form>\n </mat-menu>\n</div>\n", styles: [".filter-area{margin:0 20px}.seperator{width:83%;margin:5px;border-top:1px solid black}.filter-text{font-size:8px}.filter-label{margin:0 10px;cursor:pointer}.filter-button{margin:10px}\n"] }]
|
147
|
-
}], ctorParameters: function () { return [{ type: i1.EaCService }, { type: i2.FormBuilder }]; }, propDecorators: {
|
150
|
+
args: [{ selector: 'lcu-feed-filter', template: "<div class=\"filter-area\" fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <div class=\"seperator\"></div>\n <div class=\"filter-text\">Filter feed by:</div>\n <button\n mat-icon-button\n [matMenuTriggerFor]=\"menu\"\n aria-label=\"View Filters\"\n [disabled]=\"Filters?.length === 0\"\n #trigger=\"matMenuTrigger\"\n (menuOpened)=\"MenuOpen = trigger.menuOpen\"\n (menuClosed)=\"MenuOpen = trigger.menuOpen\"\n >\n <mat-icon *ngIf=\"!MenuOpen\">expand_more</mat-icon>\n <mat-icon *ngIf=\"MenuOpen\">expand_less</mat-icon>\n </button>\n <mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <form\n [formGroup]=\"FilterFormGroup\"\n fxLayout=\"column\"\n (ngSubmit)=\"Apply()\"\n >\n <label\n class=\"filter-label\"\n formArrayName=\"filters\"\n *ngFor=\"let filter of filtersFormArray.controls; let i = index\"\n (click)=\"$event.stopPropagation()\"\n >\n <input\n type=\"checkbox\"\n [formControlName]=\"i\"\n (click)=\"\n $event.stopPropagation(); ToggleFilter(Filters[i].Name)\n \"\n />\n {{ Filters[i].Name }}\n\n <span class=\"checkmark\"></span>\n </label>\n <button class=\"filter-button\">Apply</button>\n </form>\n </mat-menu>\n <!-- *ngIf=\"FeedCheck\" -->\n <mat-icon\n *ngIf=\"FeedCheck\"\n matTooltip=\"Refresh for the latest feed items\"\n class=\"refresh-btn\"\n (click)=\"ReloadFeed()\"\n >refresh</mat-icon\n >\n</div>\n", styles: [".filter-area{margin:0 20px}.seperator{width:83%;margin:5px;border-top:1px solid black}.filter-text{font-size:8px}.filter-label{margin:0 10px;cursor:pointer}.filter-button{margin:10px}.refresh-btn{box-shadow:0 0 #000;transform:scale(1);animation:pulse 3s infinite;border-radius:50%;cursor:pointer}@keyframes pulse{0%{box-shadow:0 0 #000000b3}70%{box-shadow:0 0 0 10px #0000}to{box-shadow:0 0 #0000}}\n"] }]
|
151
|
+
}], ctorParameters: function () { return [{ type: i1.EaCService }, { type: i2.FormBuilder }]; }, propDecorators: { FeedCheck: [{
|
152
|
+
type: Input,
|
153
|
+
args: ['feed-check']
|
154
|
+
}], FilterTypes: [{
|
148
155
|
type: Input,
|
149
156
|
args: ['filter-types']
|
150
157
|
}] } });
|
151
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVlZC1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvZmVlZC1maWx0ZXIvZmVlZC1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvZmVlZC1maWx0ZXIvZmVlZC1maWx0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFNBQVMsRUFBZSxXQUFXLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBUWhGLE1BQU0sT0FBTyxtQkFBbUI7SUFnQjVCLFlBQ2MsTUFBa0IsRUFDbEIsV0FBd0I7UUFEeEIsV0FBTSxHQUFOLE1BQU0sQ0FBWTtRQUNsQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUVsQyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO1lBQzFDLE9BQU8sRUFBRSxJQUFJLFNBQVMsQ0FBQyxFQUFFLENBQUM7U0FDN0IsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLEtBQUssRUFBTyxDQUFDO0lBQ3BDLENBQUM7SUFiRCxJQUFJLGdCQUFnQjtRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLE9BQW9CLENBQUM7SUFDOUQsQ0FBQztJQWFNLFFBQVE7UUFDWCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUM5QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQzlEO1FBRUQsSUFBSSxJQUFJLENB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SUFBSSxDQUFDLFdBQVcsRUFBRSxHQUFHLEdBQUcsQ0FBQzthQUNyQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFO1lBQ3hDLEtBQUssR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ2hEO1FBQ0QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTlCLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxLQUFhO1FBQ2xDLFlBQVksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2hELENBQUM7O2dIQW5LUSxtQkFBbUI7b0dBQW5CLG1CQUFtQixzSUNUaEMsK2dEQTBDQTsyRkRqQ2EsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNJLGlCQUFpQjsySEFNcEIsV0FBVztzQkFEakIsS0FBSzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQXJyYXksIEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRWFDU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VhYy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsY3UtZmVlZC1maWx0ZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mZWVkLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZmVlZC1maWx0ZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRmVlZEZpbHRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCdmaWx0ZXItdHlwZXMnKVxuICAgIHB1YmxpYyBGaWx0ZXJUeXBlczogQXJyYXk8c3RyaW5nPjtcblxuICAgIHB1YmxpYyBGaWx0ZXJGb3JtR3JvdXA6IEZvcm1Hcm91cDtcblxuICAgIHB1YmxpYyBGaWx0ZXJzOiBBcnJheTxhbnk+O1xuXG4gICAgcHVibGljIE1lbnVPcGVuOiBib29sZWFuO1xuXG4gICAgcHJvdGVjdGVkIGZpbHRlclN0cmluZzogc3RyaW5nO1xuXG4gICAgZ2V0IGZpbHRlcnNGb3JtQXJyYXkoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLkZpbHRlckZvcm1Hcm91cC5jb250cm9scy5maWx0ZXJzIGFzIEZvcm1BcnJheTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIGVhY1N2YzogRWFDU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlclxuICAgICkge1xuICAgICAgICB0aGlzLkZpbHRlckZvcm1Hcm91cCA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgICAgICAgZmlsdGVyczogbmV3IEZvcm1BcnJheShbXSksXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuRmlsdGVycyA9IG5ldyBBcnJheTxhbnk+KCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5GaWx0ZXJUeXBlcz8ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJTdHJpbmcgPSB0aGlzLnNldEZpbHRlclN0cmluZyh0aGlzLkZpbHRlclR5cGVzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmZpbHRlclN0cmluZz8ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5GaWx0ZXJzID0gdGhpcy5idWlsZEZpbHRlck9iamVjdCh0aGlzLmZpbHRlclN0cmluZyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5GaWx0ZXJzPy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB0aGlzLmFkZENoZWNrYm94ZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcygpIHtcbiAgICAgICAgaWYgKHRoaXMuRmlsdGVyVHlwZXM/Lmxlbmd0aCA+IHRoaXMuRmlsdGVycz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmZpbHRlclN0cmluZyA9IHRoaXMuc2V0RmlsdGVyU3RyaW5nKHRoaXMuRmlsdGVyVHlwZXMpO1xuICAgICAgICAgICAgdGhpcy5GaWx0ZXJzID0gdGhpcy5idWlsZEZpbHRlck9iamVjdCh0aGlzLmZpbHRlclN0cmluZyk7XG4gICAgICAgICAgICB0aGlzLmFkZENoZWNrYm94ZXMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGlmICh0aGlzLmZpbHRlclN0cmluZz8ubGVuZ3RoID4gMCkge1xuXG4gICAgICAgIC8vIH1cblxuICAgICAgICAvLyBpZiAodGhpcy5GaWx0ZXJzPy5sZW5ndGggPiAwKSB7XG5cbiAgICAgICAgLy8gfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBhZGRDaGVja2JveGVzKCkge1xuICAgICAgICB0aGlzLmZpbHRlcnNGb3JtQXJyYXkuY2xlYXIoKTtcbiAgICAgICAgdGhpcy5GaWx0ZXJzLmZvckVhY2goKGZpbHRlcikgPT5cbiAgICAgICAgICAgIHRoaXMuZmlsdGVyc0Zvcm1BcnJheS5wdXNoKG5ldyBGb3JtQ29udHJvbChmaWx0ZXIuVmFsdWUpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBidWlsZEZpbHRlck9iamVjdChmc3RyaW5nOiBzdHJpbmcpOiBBcnJheTxhbnk+IHtcbiAgICAgICAgbGV0IGZpbHRlckxpc3QgPSBmc3RyaW5nLnNwbGl0KCc7Jyk7XG5cbiAgICAgICAgbGV0IGZpbHRlck9iakxpc3QgPSBuZXcgQXJyYXk8YW55PigpO1xuXG4gICAgICAgIGZpbHRlckxpc3QuZm9yRWFjaCgoaXRtKSA9PiB7XG4gICAgICAgICAgICBpZiAoaXRtLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICBmaWx0ZXJPYmpMaXN0LnB1c2goSlNPTi5wYXJzZShpdG0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIGZpbHRlck9iakxpc3Q7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHNldEZpbHRlclN0cmluZyhmVHlwZXM6IEFycmF5PHN0cmluZz4pOiBzdHJpbmcge1xuICAgICAgICBsZXQgZlN0cmluZyA9ICcnO1xuICAgICAgICBsZXQgZmlsdGVycyA9IGZUeXBlcztcbiAgICAgICAgaWYgKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdhY3RpdmVGaWx0ZXInKSkge1xuICAgICAgICAgICAgbGV0IGFjdGl2ZUYgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnYWN0aXZlRmlsdGVyJykuc3BsaXQoJywnKTtcbiAgICAgICAgICAgIGFjdGl2ZUYuZm9yRWFjaCgoZikgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChmLmluY2x1ZGVzKCctJykpIHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGkgPSBhY3RpdmVGLmluZGV4T2YoZik7XG4gICAgICAgICAgICAgICAgICAgIGYgPSBmLnJlcGxhY2UoJy0nLCAnICcpO1xuICAgICAgICAgICAgICAgICAgICBhY3RpdmVGW2ldID0gZjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgZmlsdGVycy5mb3JFYWNoKChmaWx0ZXIpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoYWN0aXZlRi5pbmNsdWRlcyhmaWx0ZXIudG9Mb3dlckNhc2UoKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgZlN0cmluZyArPSAneyBcIk5hbWVcIjpcIicgKyBmaWx0ZXIgKyAnXCIsXCJWYWx1ZVwiOnRydWUgfTsnO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgICAgICAgICAgIGFjdGl2ZUYuaW5jbHVkZXMoZmlsdGVyLnRvTG93ZXJDYXNlKCkpICYmXG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcnMuaW5kZXhPZihmaWx0ZXIpID09PSBmaWx0ZXJzLmxlbmd0aCAtIDFcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgZlN0cmluZyArPSAneyBcIk5hbWVcIjpcIicgKyBmaWx0ZXIgKyAnXCIsXCJWYWx1ZVwiOnRydWUgfSc7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChmaWx0ZXJzLmluZGV4T2YoZmlsdGVyKSA9PT0gZmlsdGVycy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgICAgICAgICAgIGZTdHJpbmcgKz0gJ3sgXCJOYW1lXCI6XCInICsgZmlsdGVyICsgJ1wiLFwiVmFsdWVcIjpmYWxzZSB9JztcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBmU3RyaW5nICs9ICd7IFwiTmFtZVwiOlwiJyArIGZpbHRlciArICdcIixcIlZhbHVlXCI6ZmFsc2UgfTsnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZmlsdGVycy5mb3JFYWNoKChmaWx0ZXIpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZmlsdGVyLnRvTG93ZXJDYXNlKCkgPT09ICdhbGwnKSB7XG4gICAgICAgICAgICAgICAgICAgIGZTdHJpbmcgKz0gJ3sgXCJOYW1lXCI6XCInICsgZmlsdGVyICsgJ1wiLFwiVmFsdWVcIjp0cnVlIH07JztcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGZpbHRlcnMuaW5kZXhPZihmaWx0ZXIpID09PSBmaWx0ZXJzLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgZlN0cmluZyArPSAneyBcIk5hbWVcIjpcIicgKyBmaWx0ZXIgKyAnXCIsXCJWYWx1ZVwiOnRydWUgfSc7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgZlN0cmluZyArPSAneyBcIk5hbWVcIjpcIicgKyBmaWx0ZXIgKyAnXCIsXCJWYWx1ZVwiOnRydWUgfTsnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmU3RyaW5nO1xuICAgIH1cblxuICAgIHB1YmxpYyBUb2dnbGVGaWx0ZXIobmFtZTogc3RyaW5nKSB7XG4gICAgICAgIGxldCBmaWx0ID0gdGhpcy5GaWx0ZXJzLmZpbmQoKGZpbHRlcikgPT4gZmlsdGVyLk5hbWUgPT09IG5hbWUpO1xuICAgICAgICBsZXQgYWxsRmlsdCA9IHRoaXMuRmlsdGVycy5maW5kKFxuICAgICAgICAgICAgKGZpbHRlcikgPT4gZmlsdGVyLk5hbWUudG9Mb3dlckNhc2UoKSA9PT0gJ2FsbCdcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAobmFtZS50b0xvd2VyQ2FzZSgpID09PSAnYWxsJykge1xuICAgICAgICAgICAgYWxsRmlsdC5WYWx1ZSA9ICFhbGxGaWx0LlZhbHVlO1xuICAgICAgICAgICAgdGhpcy5GaWx0ZXJzLmZvckVhY2goKGZpbHRlcikgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChmaWx0ZXIuTmFtZS50b0xvd2VyQ2FzZSgpICE9PSAnYWxsJykge1xuICAgICAgICAgICAgICAgICAgICBmaWx0ZXIuVmFsdWUgPSBhbGxGaWx0LlZhbHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2UgaWYgKGZpbHQuTmFtZSA9PT0gbmFtZSkge1xuICAgICAgICAgICAgZmlsdC5WYWx1ZSA9ICFmaWx0LlZhbHVlO1xuICAgICAgICAgICAgaWYgKGFsbEZpbHQuVmFsdWUgPT09IHRydWUpIHtcbiAgICAgICAgICAgICAgICBhbGxGaWx0LlZhbHVlID0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFkZENoZWNrYm94ZXMoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgQXBwbHkoKSB7XG4gICAgICAgIGxldCB0eXBlcyA9ICcnO1xuICAgICAgICB0aGlzLkZpbHRlcnMuZm9yRWFjaCgoZmlsKSA9PiB7XG4gICAgICAgICAgICBpZiAoZmlsLlZhbHVlID09PSB0cnVlKSB7XG4gICAgICAgICAgICAgICAgbGV0IHRlbXAgPSBmaWwuTmFtZTtcbiAgICAgICAgICAgICAgICBpZiAodGVtcC5pbmNsdWRlcygnICcpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRlbXAgPSB0ZW1wLnJlcGxhY2UoJyAnLCAnLScpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0eXBlcyArPSB0ZW1wLnRvTG93ZXJDYXNlKCkgKyAnLCc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodHlwZXMuY2hhckF0KHR5cGVzLmxlbmd0aCAtIDEpID09PSAnLCcpIHtcbiAgICAgICAgICAgIHR5cGVzID0gdHlwZXMuc3Vic3RyaW5nKDAsIHR5cGVzLmxlbmd0aCAtIDEpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuU3RvcmVBY3RpdmVGaWx0ZXIodHlwZXMpO1xuXG4gICAgICAgIHRoaXMuZWFjU3ZjLkxvYWRVc2VyRmVlZCgxLCAyNSwgZmFsc2UsIHR5cGVzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgU3RvcmVBY3RpdmVGaWx0ZXIodHlwZXM6IHN0cmluZykge1xuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnYWN0aXZlRmlsdGVyJywgdHlwZXMpO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmaWx0ZXItYXJlYVwiIGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2VwZXJhdG9yXCI+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZpbHRlci10ZXh0XCI+RmlsdGVyIGZlZWQgYnk6PC9kaXY+XG4gICAgPGJ1dHRvblxuICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiVmlldyBGaWx0ZXJzXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cIkZpbHRlcnM/Lmxlbmd0aCA9PT0gMFwiXG4gICAgICAgICN0cmlnZ2VyPVwibWF0TWVudVRyaWdnZXJcIlxuICAgICAgICAobWVudU9wZW5lZCk9XCJNZW51T3BlbiA9IHRyaWdnZXIubWVudU9wZW5cIlxuICAgICAgICAobWVudUNsb3NlZCk9XCJNZW51T3BlbiA9IHRyaWdnZXIubWVudU9wZW5cIlxuICAgID5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiIU1lbnVPcGVuXCI+ZXhwYW5kX21vcmU8L21hdC1pY29uPlxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJNZW51T3BlblwiPmV4cGFuZF9sZXNzPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8bWF0LW1lbnUgI21lbnU9XCJtYXRNZW51XCIgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XG4gICAgICAgIDxmb3JtXG4gICAgICAgICAgICBbZm9ybUdyb3VwXT1cIkZpbHRlckZvcm1Hcm91cFwiXG4gICAgICAgICAgICBmeExheW91dD1cImNvbHVtblwiXG4gICAgICAgICAgICAobmdTdWJtaXQpPVwiQXBwbHkoKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZmlsdGVyLWxhYmVsXCJcbiAgICAgICAgICAgICAgICBmb3JtQXJyYXlOYW1lPVwiZmlsdGVyc1wiXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGZpbHRlciBvZiBmaWx0ZXJzRm9ybUFycmF5LmNvbnRyb2xzOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJpXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyBUb2dnbGVGaWx0ZXIoRmlsdGVyc1tpXS5OYW1lKVxuICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAge3sgRmlsdGVyc1tpXS5OYW1lIH19XG5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoZWNrbWFya1wiPjwvc3Bhbj5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiZmlsdGVyLWJ1dHRvblwiPkFwcGx5PC9idXR0b24+XG4gICAgICAgIDwvZm9ybT5cbiAgICA8L21hdC1tZW51PlxuPC9kaXY+XG4iXX0=
|
158
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVlZC1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvZmVlZC1maWx0ZXIvZmVlZC1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvZmVlZC1maWx0ZXIvZmVlZC1maWx0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFNBQVMsRUFBZSxXQUFXLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7OztBQVFoRixNQUFNLE9BQU8sbUJBQW1CO0lBbUI1QixZQUNjLE1BQWtCLEVBQ2xCLFdBQXdCO1FBRHhCLFdBQU0sR0FBTixNQUFNLENBQVk7UUFDbEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFFbEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztZQUMxQyxPQUFPLEVBQUUsSUFBSSxTQUFTLENBQUMsRUFBRSxDQUFDO1NBQzdCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxLQUFLLEVBQU8sQ0FBQztJQUNwQyxDQUFDO0lBYkQsSUFBSSxnQkFBZ0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxPQUFvQixDQUFDO0lBQzlELENBQUM7SUFhTSxRQUFRO1FBQ1gsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDOUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUM5RDtRQUVELElBQUksSUFBSSxD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QUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7aUJBQ2pDO2dCQUNELEtBQUssSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLEdBQUcsR0FBRyxDQUFDO2FBQ3JDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUU7WUFDeEMsS0FBSyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDaEQ7UUFDRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFOUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVNLGlCQUFpQixDQUFDLEtBQWE7UUFDbEMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDaEQsQ0FBQzs7Z0hBMUtRLG1CQUFtQjtvR0FBbkIsbUJBQW1CLDhLQ1RoQywydkRBa0RBOzJGRHpDYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0ksaUJBQWlCOzJIQU1wQixTQUFTO3NCQURmLEtBQUs7dUJBQUMsWUFBWTtnQkFJWixXQUFXO3NCQURqQixLQUFLO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1BcnJheSwgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFYUNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZWFjLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xjdS1mZWVkLWZpbHRlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZlZWQtZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9mZWVkLWZpbHRlci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBGZWVkRmlsdGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoJ2ZlZWQtY2hlY2snKVxuICAgIHB1YmxpYyBGZWVkQ2hlY2s6IGFueTtcblxuICAgIEBJbnB1dCgnZmlsdGVyLXR5cGVzJylcbiAgICBwdWJsaWMgRmlsdGVyVHlwZXM6IEFycmF5PHN0cmluZz47XG5cbiAgICBwdWJsaWMgRmlsdGVyRm9ybUdyb3VwOiBGb3JtR3JvdXA7XG5cbiAgICBwdWJsaWMgRmlsdGVyczogQXJyYXk8YW55PjtcblxuICAgIHB1YmxpYyBNZW51T3BlbjogYm9vbGVhbjtcblxuICAgIHByb3RlY3RlZCBmaWx0ZXJTdHJpbmc6IHN0cmluZztcblxuICAgIGdldCBmaWx0ZXJzRm9ybUFycmF5KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5GaWx0ZXJGb3JtR3JvdXAuY29udHJvbHMuZmlsdGVycyBhcyBGb3JtQXJyYXk7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBlYWNTdmM6IEVhQ1NlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXJcbiAgICApIHtcbiAgICAgICAgdGhpcy5GaWx0ZXJGb3JtR3JvdXAgPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgICAgICAgIGZpbHRlcnM6IG5ldyBGb3JtQXJyYXkoW10pLFxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLkZpbHRlcnMgPSBuZXcgQXJyYXk8YW55PigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuRmlsdGVyVHlwZXM/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyU3RyaW5nID0gdGhpcy5zZXRGaWx0ZXJTdHJpbmcodGhpcy5GaWx0ZXJUeXBlcyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5maWx0ZXJTdHJpbmc/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuRmlsdGVycyA9IHRoaXMuYnVpbGRGaWx0ZXJPYmplY3QodGhpcy5maWx0ZXJTdHJpbmcpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuRmlsdGVycz8ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5hZGRDaGVja2JveGVzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoKSB7XG4gICAgICAgIGlmICh0aGlzLkZpbHRlclR5cGVzPy5sZW5ndGggPiB0aGlzLkZpbHRlcnM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJTdHJpbmcgPSB0aGlzLnNldEZpbHRlclN0cmluZyh0aGlzLkZpbHRlclR5cGVzKTtcbiAgICAgICAgICAgIHRoaXMuRmlsdGVycyA9IHRoaXMuYnVpbGRGaWx0ZXJPYmplY3QodGhpcy5maWx0ZXJTdHJpbmcpO1xuICAgICAgICAgICAgdGhpcy5hZGRDaGVja2JveGVzKCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBpZiAodGhpcy5maWx0ZXJTdHJpbmc/Lmxlbmd0aCA+IDApIHtcblxuICAgICAgICAvLyB9XG5cbiAgICAgICAgLy8gaWYgKHRoaXMuRmlsdGVycz8ubGVuZ3RoID4gMCkge1xuXG4gICAgICAgIC8vIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgYWRkQ2hlY2tib3hlcygpIHtcbiAgICAgICAgdGhpcy5maWx0ZXJzRm9ybUFycmF5LmNsZWFyKCk7XG4gICAgICAgIHRoaXMuRmlsdGVycy5mb3JFYWNoKChmaWx0ZXIpID0+XG4gICAgICAgICAgICB0aGlzLmZpbHRlcnNGb3JtQXJyYXkucHVzaChuZXcgRm9ybUNvbnRyb2woZmlsdGVyLlZhbHVlKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgYnVpbGRGaWx0ZXJPYmplY3QoZnN0cmluZzogc3RyaW5nKTogQXJyYXk8YW55PiB7XG4gICAgICAgIGxldCBmaWx0ZXJMaXN0ID0gZnN0cmluZy5zcGxpdCgnOycpO1xuXG4gICAgICAgIGxldCBmaWx0ZXJPYmpMaXN0ID0gbmV3IEFycmF5PGFueT4oKTtcblxuICAgICAgICBmaWx0ZXJMaXN0LmZvckVhY2goKGl0bSkgPT4ge1xuICAgICAgICAgICAgaWYgKGl0bS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgZmlsdGVyT2JqTGlzdC5wdXNoKEpTT04ucGFyc2UoaXRtKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBmaWx0ZXJPYmpMaXN0O1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBzZXRGaWx0ZXJTdHJpbmcoZlR5cGVzOiBBcnJheTxzdHJpbmc+KTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGZTdHJpbmcgPSAnJztcbiAgICAgICAgbGV0IGZpbHRlcnMgPSBmVHlwZXM7XG4gICAgICAgIGlmIChsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnYWN0aXZlRmlsdGVyJykpIHtcbiAgICAgICAgICAgIGxldCBhY3RpdmVGID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2FjdGl2ZUZpbHRlcicpLnNwbGl0KCcsJyk7XG4gICAgICAgICAgICBhY3RpdmVGLmZvckVhY2goKGYpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZi5pbmNsdWRlcygnLScpKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBpID0gYWN0aXZlRi5pbmRleE9mKGYpO1xuICAgICAgICAgICAgICAgICAgICBmID0gZi5yZXBsYWNlKCctJywgJyAnKTtcbiAgICAgICAgICAgICAgICAgICAgYWN0aXZlRltpXSA9IGY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGZpbHRlcnMuZm9yRWFjaCgoZmlsdGVyKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGFjdGl2ZUYuaW5jbHVkZXMoZmlsdGVyLnRvTG93ZXJDYXNlKCkpKSB7XG4gICAgICAgICAgICAgICAgICAgIGZTdHJpbmcgKz0gJ3sgXCJOYW1lXCI6XCInICsgZmlsdGVyICsgJ1wiLFwiVmFsdWVcIjp0cnVlIH07JztcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgICAgICAgICBhY3RpdmVGLmluY2x1ZGVzKGZpbHRlci50b0xvd2VyQ2FzZSgpKSAmJlxuICAgICAgICAgICAgICAgICAgICBmaWx0ZXJzLmluZGV4T2YoZmlsdGVyKSA9PT0gZmlsdGVycy5sZW5ndGggLSAxXG4gICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgIGZTdHJpbmcgKz0gJ3sgXCJOYW1lXCI6XCInICsgZmlsdGVyICsgJ1wiLFwiVmFsdWVcIjp0cnVlIH0nO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZmlsdGVycy5pbmRleE9mKGZpbHRlcikgPT09IGZpbHRlcnMubGVuZ3RoIC0gMSkge1xuICAgICAgICAgICAgICAgICAgICBmU3RyaW5nICs9ICd7IFwiTmFtZVwiOlwiJyArIGZpbHRlciArICdcIixcIlZhbHVlXCI6ZmFsc2UgfSc7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgZlN0cmluZyArPSAneyBcIk5hbWVcIjpcIicgKyBmaWx0ZXIgKyAnXCIsXCJWYWx1ZVwiOmZhbHNlIH07JztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZpbHRlcnMuZm9yRWFjaCgoZmlsdGVyKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGZpbHRlci50b0xvd2VyQ2FzZSgpID09PSAnYWxsJykge1xuICAgICAgICAgICAgICAgICAgICBmU3RyaW5nICs9ICd7IFwiTmFtZVwiOlwiJyArIGZpbHRlciArICdcIixcIlZhbHVlXCI6dHJ1ZSB9Oyc7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChmaWx0ZXJzLmluZGV4T2YoZmlsdGVyKSA9PT0gZmlsdGVycy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgICAgICAgICAgIGZTdHJpbmcgKz0gJ3sgXCJOYW1lXCI6XCInICsgZmlsdGVyICsgJ1wiLFwiVmFsdWVcIjp0cnVlIH0nO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGZTdHJpbmcgKz0gJ3sgXCJOYW1lXCI6XCInICsgZmlsdGVyICsgJ1wiLFwiVmFsdWVcIjp0cnVlIH07JztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZlN0cmluZztcbiAgICB9XG5cbiAgICBwdWJsaWMgUmVsb2FkRmVlZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lYWNTdmMuUmVsb2FkRmVlZCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBUb2dnbGVGaWx0ZXIobmFtZTogc3RyaW5nKSB7XG4gICAgICAgIGxldCBmaWx0ID0gdGhpcy5GaWx0ZXJzLmZpbmQoKGZpbHRlcikgPT4gZmlsdGVyLk5hbWUgPT09IG5hbWUpO1xuICAgICAgICBsZXQgYWxsRmlsdCA9IHRoaXMuRmlsdGVycy5maW5kKFxuICAgICAgICAgICAgKGZpbHRlcikgPT4gZmlsdGVyLk5hbWUudG9Mb3dlckNhc2UoKSA9PT0gJ2FsbCdcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAobmFtZS50b0xvd2VyQ2FzZSgpID09PSAnYWxsJykge1xuICAgICAgICAgICAgYWxsRmlsdC5WYWx1ZSA9ICFhbGxGaWx0LlZhbHVlO1xuICAgICAgICAgICAgdGhpcy5GaWx0ZXJzLmZvckVhY2goKGZpbHRlcikgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChmaWx0ZXIuTmFtZS50b0xvd2VyQ2FzZSgpICE9PSAnYWxsJykge1xuICAgICAgICAgICAgICAgICAgICBmaWx0ZXIuVmFsdWUgPSBhbGxGaWx0LlZhbHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2UgaWYgKGZpbHQuTmFtZSA9PT0gbmFtZSkge1xuICAgICAgICAgICAgZmlsdC5WYWx1ZSA9ICFmaWx0LlZhbHVlO1xuICAgICAgICAgICAgaWYgKGFsbEZpbHQuVmFsdWUgPT09IHRydWUpIHtcbiAgICAgICAgICAgICAgICBhbGxGaWx0LlZhbHVlID0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFkZENoZWNrYm94ZXMoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgQXBwbHkoKSB7XG4gICAgICAgIGxldCB0eXBlcyA9ICcnO1xuICAgICAgICB0aGlzLkZpbHRlcnMuZm9yRWFjaCgoZmlsKSA9PiB7XG4gICAgICAgICAgICBpZiAoZmlsLlZhbHVlID09PSB0cnVlKSB7XG4gICAgICAgICAgICAgICAgbGV0IHRlbXAgPSBmaWwuTmFtZTtcbiAgICAgICAgICAgICAgICBpZiAodGVtcC5pbmNsdWRlcygnICcpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRlbXAgPSB0ZW1wLnJlcGxhY2UoJyAnLCAnLScpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0eXBlcyArPSB0ZW1wLnRvTG93ZXJDYXNlKCkgKyAnLCc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodHlwZXMuY2hhckF0KHR5cGVzLmxlbmd0aCAtIDEpID09PSAnLCcpIHtcbiAgICAgICAgICAgIHR5cGVzID0gdHlwZXMuc3Vic3RyaW5nKDAsIHR5cGVzLmxlbmd0aCAtIDEpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuU3RvcmVBY3RpdmVGaWx0ZXIodHlwZXMpO1xuXG4gICAgICAgIHRoaXMuZWFjU3ZjLkxvYWRVc2VyRmVlZCgxLCAyNSwgZmFsc2UsIHR5cGVzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgU3RvcmVBY3RpdmVGaWx0ZXIodHlwZXM6IHN0cmluZykge1xuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnYWN0aXZlRmlsdGVyJywgdHlwZXMpO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmaWx0ZXItYXJlYVwiIGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2VwZXJhdG9yXCI+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZpbHRlci10ZXh0XCI+RmlsdGVyIGZlZWQgYnk6PC9kaXY+XG4gICAgPGJ1dHRvblxuICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiVmlldyBGaWx0ZXJzXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cIkZpbHRlcnM/Lmxlbmd0aCA9PT0gMFwiXG4gICAgICAgICN0cmlnZ2VyPVwibWF0TWVudVRyaWdnZXJcIlxuICAgICAgICAobWVudU9wZW5lZCk9XCJNZW51T3BlbiA9IHRyaWdnZXIubWVudU9wZW5cIlxuICAgICAgICAobWVudUNsb3NlZCk9XCJNZW51T3BlbiA9IHRyaWdnZXIubWVudU9wZW5cIlxuICAgID5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiIU1lbnVPcGVuXCI+ZXhwYW5kX21vcmU8L21hdC1pY29uPlxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJNZW51T3BlblwiPmV4cGFuZF9sZXNzPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8bWF0LW1lbnUgI21lbnU9XCJtYXRNZW51XCIgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XG4gICAgICAgIDxmb3JtXG4gICAgICAgICAgICBbZm9ybUdyb3VwXT1cIkZpbHRlckZvcm1Hcm91cFwiXG4gICAgICAgICAgICBmeExheW91dD1cImNvbHVtblwiXG4gICAgICAgICAgICAobmdTdWJtaXQpPVwiQXBwbHkoKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZmlsdGVyLWxhYmVsXCJcbiAgICAgICAgICAgICAgICBmb3JtQXJyYXlOYW1lPVwiZmlsdGVyc1wiXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGZpbHRlciBvZiBmaWx0ZXJzRm9ybUFycmF5LmNvbnRyb2xzOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJpXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyBUb2dnbGVGaWx0ZXIoRmlsdGVyc1tpXS5OYW1lKVxuICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAge3sgRmlsdGVyc1tpXS5OYW1lIH19XG5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoZWNrbWFya1wiPjwvc3Bhbj5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiZmlsdGVyLWJ1dHRvblwiPkFwcGx5PC9idXR0b24+XG4gICAgICAgIDwvZm9ybT5cbiAgICA8L21hdC1tZW51PlxuICAgIDwhLS0gKm5nSWY9XCJGZWVkQ2hlY2tcIiAtLT5cbiAgICA8bWF0LWljb25cbiAgICAgICAgKm5nSWY9XCJGZWVkQ2hlY2tcIlxuICAgICAgICBtYXRUb29sdGlwPVwiUmVmcmVzaCBmb3IgdGhlIGxhdGVzdCBmZWVkIGl0ZW1zXCJcbiAgICAgICAgY2xhc3M9XCJyZWZyZXNoLWJ0blwiXG4gICAgICAgIChjbGljayk9XCJSZWxvYWRGZWVkKClcIlxuICAgICAgICA+cmVmcmVzaDwvbWF0LWljb25cbiAgICA+XG48L2Rpdj5cbiJdfQ==
|