@c8y/ngx-components 1018.0.55 → 1018.0.57

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.
@@ -13,7 +13,7 @@ export declare class BaseFilteringFormRendererComponent implements OnInit {
13
13
  options: any;
14
14
  fields: FormlyFieldConfig[];
15
15
  constructor(context: FilteringFormRendererContext, jsonschema: C8yJSONSchema);
16
- onEnterKeyDown(event: KeyboardEvent): void;
16
+ onEnterKeyUp(event: KeyboardEvent): void;
17
17
  onEscapeKeyDown(event: KeyboardEvent): void;
18
18
  ngOnInit(): void;
19
19
  applyFilter(): void;
@@ -7,7 +7,7 @@ export declare class GroupFilteringFormRendererComponent implements OnInit {
7
7
  model: any;
8
8
  preselected: string[];
9
9
  constructor(context: FilteringFormRendererContext);
10
- onEnterKeyDown(event: KeyboardEvent): void;
10
+ onEnterKeyUp(event: KeyboardEvent): void;
11
11
  onEscapeKeyDown(event: KeyboardEvent): void;
12
12
  ngOnInit(): void;
13
13
  ngAfterViewInit(): void;
@@ -14,7 +14,7 @@ export class BaseFilteringFormRendererComponent {
14
14
  this.context = context;
15
15
  this.jsonschema = jsonschema;
16
16
  }
17
- onEnterKeyDown(event) {
17
+ onEnterKeyUp(event) {
18
18
  event.stopPropagation();
19
19
  this.applyFilter();
20
20
  }
@@ -48,15 +48,15 @@ export class BaseFilteringFormRendererComponent {
48
48
  }
49
49
  }
50
50
  BaseFilteringFormRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: BaseFilteringFormRendererComponent, deps: [{ token: i1.FilteringFormRendererContext }, { token: i2.C8yJSONSchema }], target: i0.ɵɵFactoryTarget.Component });
51
- BaseFilteringFormRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: BaseFilteringFormRendererComponent, selector: "ng-component", host: { listeners: { "keydown.enter": "onEnterKeyDown($event)", "keydown.escape": "onEscapeKeyDown($event)" } }, ngImport: i0, template: "<formly-form [form]=\"form\" [fields]=\"fields\" [model]=\"model\"></formly-form>\n<div class=\"data-grid__dropdown__footer d-flex separator-top\">\n <button\n class=\"btn btn-default btn-sm m-r-8 flex-grow\"\n (click)=\"resetFilter()\"\n title=\"{{ 'Reset' | translate }}\"\n translate\n >\n Reset\n </button>\n\n <button\n class=\"btn btn-primary btn-sm flex-grow\"\n (click)=\"applyFilter()\"\n [disabled]=\"(form.pristine && form.untouched) || form.invalid\"\n title=\"{{ 'Apply' | translate }}\"\n translate\n >\n Apply\n </button>\n</div>\n", dependencies: [{ kind: "component", type: i3.FormlyForm, selector: "formly-form", inputs: ["form", "model", "fields", "options"], outputs: ["modelChange"] }, { kind: "directive", type: i4.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "pipe", type: i5.C8yTranslatePipe, name: "translate" }] });
51
+ BaseFilteringFormRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: BaseFilteringFormRendererComponent, selector: "ng-component", host: { listeners: { "keyup.enter": "onEnterKeyUp($event)", "keydown.escape": "onEscapeKeyDown($event)" } }, ngImport: i0, template: "<formly-form [form]=\"form\" [fields]=\"fields\" [model]=\"model\"></formly-form>\n<div class=\"data-grid__dropdown__footer d-flex separator-top\">\n <button\n class=\"btn btn-default btn-sm m-r-8 flex-grow\"\n (click)=\"resetFilter()\"\n title=\"{{ 'Reset' | translate }}\"\n translate\n >\n Reset\n </button>\n\n <button\n class=\"btn btn-primary btn-sm flex-grow\"\n (click)=\"applyFilter()\"\n [disabled]=\"(form.pristine && form.untouched) || form.invalid\"\n title=\"{{ 'Apply' | translate }}\"\n translate\n >\n Apply\n </button>\n</div>\n", dependencies: [{ kind: "component", type: i3.FormlyForm, selector: "formly-form", inputs: ["form", "model", "fields", "options"], outputs: ["modelChange"] }, { kind: "directive", type: i4.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "pipe", type: i5.C8yTranslatePipe, name: "translate" }] });
52
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: BaseFilteringFormRendererComponent, decorators: [{
53
53
  type: Component,
54
54
  args: [{ template: "<formly-form [form]=\"form\" [fields]=\"fields\" [model]=\"model\"></formly-form>\n<div class=\"data-grid__dropdown__footer d-flex separator-top\">\n <button\n class=\"btn btn-default btn-sm m-r-8 flex-grow\"\n (click)=\"resetFilter()\"\n title=\"{{ 'Reset' | translate }}\"\n translate\n >\n Reset\n </button>\n\n <button\n class=\"btn btn-primary btn-sm flex-grow\"\n (click)=\"applyFilter()\"\n [disabled]=\"(form.pristine && form.untouched) || form.invalid\"\n title=\"{{ 'Apply' | translate }}\"\n translate\n >\n Apply\n </button>\n</div>\n" }]
55
- }], ctorParameters: function () { return [{ type: i1.FilteringFormRendererContext }, { type: i2.C8yJSONSchema }]; }, propDecorators: { onEnterKeyDown: [{
55
+ }], ctorParameters: function () { return [{ type: i1.FilteringFormRendererContext }, { type: i2.C8yJSONSchema }]; }, propDecorators: { onEnterKeyUp: [{
56
56
  type: HostListener,
57
- args: ['keydown.enter', ['$event']]
57
+ args: ['keyup.enter', ['$event']]
58
58
  }], onEscapeKeyDown: [{
59
59
  type: HostListener,
60
60
  args: ['keydown.escape', ['$event']]
61
61
  }] } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5maWx0ZXJpbmctZm9ybS1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9jb3JlL2RhdGEtZ3JpZC9jb2x1bW4vYmFzZS5maWx0ZXJpbmctZm9ybS1yZW5kZXJlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9jb3JlL2RhdGEtZ3JpZC9jb2x1bW4vYmFzZS5maWx0ZXJpbmctZm9ybS1yZW5kZXJlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN0QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seURBQXlELENBQUM7QUFFeEYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7Ozs7QUFLekUsTUFBTSxPQUFPLGtDQUFrQztJQVE3QyxZQUFtQixPQUFxQyxFQUFTLFVBQXlCO1FBQXZFLFlBQU8sR0FBUCxPQUFPLENBQThCO1FBQVMsZUFBVSxHQUFWLFVBQVUsQ0FBZTtJQUFHLENBQUM7SUFFbkQsY0FBYyxDQUFDLEtBQW9CO1FBQzVFLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUMyQyxlQUFlLENBQUMsS0FBb0I7UUFDOUUsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sTUFBTSxHQUFXLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBRTdDLElBQUksTUFBTSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUU7WUFDakMsSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN4RDthQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRTtZQUMxRSxJQUFJLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztTQUM1RDthQUFNO1lBQ0wsTUFBTSxJQUFJLEtBQUssQ0FBQyw4REFBOEQsQ0FBQyxDQUFDO1NBQ2pGO1FBRUQsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLFNBQVMsSUFBSSxJQUFJLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsSUFBSSxNQUFNLENBQUMsZUFBZSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDOUUsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLFlBQVksRUFBRSxFQUFFLGNBQWMsRUFBRSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUM7SUFDekUsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztZQUN2QixtQkFBbUIsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUs7U0FDckMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzdCLENBQUM7OytIQTVDVSxrQ0FBa0M7bUhBQWxDLGtDQUFrQyxxS0NYL0MsMmtCQXFCQTsyRkRWYSxrQ0FBa0M7a0JBSDlDLFNBQVM7OytJQWFtQyxjQUFjO3NCQUF4RCxZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFJRyxlQUFlO3NCQUExRCxZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRm9ybWx5RmllbGRDb25maWcgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7IGNsb25lRGVlcCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBDOHlKU09OU2NoZW1hIH0gZnJvbSAnLi4vLi4vZHluYW1pYy1mb3Jtcy9qc29uLXNjaGVtYS9jOHktanNvbi1zY2hlbWEuc2VydmljZSc7XG5pbXBvcnQgeyBDb2x1bW4gfSBmcm9tICcuLi9kYXRhLWdyaWQubW9kZWwnO1xuaW1wb3J0IHsgRmlsdGVyaW5nRm9ybVJlbmRlcmVyQ29udGV4dCB9IGZyb20gJy4vZmlsdGVyaW5nLWZvcm0tcmVuZGVyZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL2Jhc2UuZmlsdGVyaW5nLWZvcm0tcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEJhc2VGaWx0ZXJpbmdGb3JtUmVuZGVyZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBzY2hlbWE7XG4gIGZvcm06IEZvcm1Hcm91cDtcbiAgbW9kZWw7XG4gIG9wdGlvbnM7XG5cbiAgZmllbGRzOiBGb3JtbHlGaWVsZENvbmZpZ1tdO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBjb250ZXh0OiBGaWx0ZXJpbmdGb3JtUmVuZGVyZXJDb250ZXh0LCBwdWJsaWMganNvbnNjaGVtYTogQzh5SlNPTlNjaGVtYSkge31cblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmVudGVyJywgWyckZXZlbnQnXSkgb25FbnRlcktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmFwcGx5RmlsdGVyKCk7XG4gIH1cbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5lc2NhcGUnLCBbJyRldmVudCddKSBvbkVzY2FwZUtleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLnJlc2V0RmlsdGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCBjb2x1bW46IENvbHVtbiA9IHRoaXMuY29udGV4dC5wcm9wZXJ0eTtcblxuICAgIGlmIChjb2x1bW4uZmlsdGVyaW5nQ29uZmlnLmZpZWxkcykge1xuICAgICAgdGhpcy5maWVsZHMgPSBjbG9uZURlZXAoY29sdW1uLmZpbHRlcmluZ0NvbmZpZy5maWVsZHMpO1xuICAgIH0gZWxzZSBpZiAoIWNvbHVtbi5maWx0ZXJpbmdDb25maWcuZmllbGRzICYmIGNvbHVtbi5maWx0ZXJpbmdDb25maWcuc2NoZW1hKSB7XG4gICAgICB0aGlzLnNjaGVtYSA9IGNsb25lRGVlcChjb2x1bW4uZmlsdGVyaW5nQ29uZmlnLnNjaGVtYSk7XG4gICAgICB0aGlzLmZpZWxkcyA9IFt0aGlzLmpzb25zY2hlbWEudG9GaWVsZENvbmZpZyh0aGlzLnNjaGVtYSldO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5laXRoZXIgZmllbGRzIG5vciBzY2hlbWEgY29uZmlndXJhdGlvbiBwcm92aWRlZCBmb3IgRm9ybWx5LmApO1xuICAgIH1cblxuICAgIHRoaXMuZm9ybSA9IGNvbHVtbi5maWx0ZXJpbmdDb25maWcuZm9ybUdyb3VwIHx8IG5ldyBGb3JtR3JvdXAoe30pO1xuICAgIHRoaXMubW9kZWwgPSBjb2x1bW4uZXh0ZXJuYWxGaWx0ZXJRdWVyeSB8fCBjb2x1bW4uZmlsdGVyaW5nQ29uZmlnLm1vZGVsIHx8IHt9O1xuICAgIHRoaXMub3B0aW9ucyA9IHsgZm9ybURlZmF1bHRzOiB7IG5nTW9kZWxPcHRpb25zOiB7IGRlYm91bmNlOiAxMDAgfSB9IH07XG4gIH1cblxuICBhcHBseUZpbHRlcigpIHtcbiAgICB0aGlzLmNvbnRleHQuYXBwbHlGaWx0ZXIoe1xuICAgICAgZXh0ZXJuYWxGaWx0ZXJRdWVyeTogdGhpcy5mb3JtLnZhbHVlXG4gICAgfSk7XG4gIH1cblxuICByZXNldEZpbHRlcigpIHtcbiAgICB0aGlzLmNvbnRleHQucmVzZXRGaWx0ZXIoKTtcbiAgfVxufVxuIiwiPGZvcm1seS1mb3JtIFtmb3JtXT1cImZvcm1cIiBbZmllbGRzXT1cImZpZWxkc1wiIFttb2RlbF09XCJtb2RlbFwiPjwvZm9ybWx5LWZvcm0+XG48ZGl2IGNsYXNzPVwiZGF0YS1ncmlkX19kcm9wZG93bl9fZm9vdGVyIGQtZmxleCBzZXBhcmF0b3ItdG9wXCI+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBidG4tc20gbS1yLTggZmxleC1ncm93XCJcbiAgICAoY2xpY2spPVwicmVzZXRGaWx0ZXIoKVwiXG4gICAgdGl0bGU9XCJ7eyAnUmVzZXQnIHwgdHJhbnNsYXRlIH19XCJcbiAgICB0cmFuc2xhdGVcbiAgPlxuICAgIFJlc2V0XG4gIDwvYnV0dG9uPlxuXG4gIDxidXR0b25cbiAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBidG4tc20gZmxleC1ncm93XCJcbiAgICAoY2xpY2spPVwiYXBwbHlGaWx0ZXIoKVwiXG4gICAgW2Rpc2FibGVkXT1cIihmb3JtLnByaXN0aW5lICYmIGZvcm0udW50b3VjaGVkKSB8fCBmb3JtLmludmFsaWRcIlxuICAgIHRpdGxlPVwie3sgJ0FwcGx5JyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgdHJhbnNsYXRlXG4gID5cbiAgICBBcHBseVxuICA8L2J1dHRvbj5cbjwvZGl2PlxuIl19
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5maWx0ZXJpbmctZm9ybS1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9jb3JlL2RhdGEtZ3JpZC9jb2x1bW4vYmFzZS5maWx0ZXJpbmctZm9ybS1yZW5kZXJlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9jb3JlL2RhdGEtZ3JpZC9jb2x1bW4vYmFzZS5maWx0ZXJpbmctZm9ybS1yZW5kZXJlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN0QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seURBQXlELENBQUM7QUFFeEYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7Ozs7QUFLekUsTUFBTSxPQUFPLGtDQUFrQztJQVE3QyxZQUFtQixPQUFxQyxFQUFTLFVBQXlCO1FBQXZFLFlBQU8sR0FBUCxPQUFPLENBQThCO1FBQVMsZUFBVSxHQUFWLFVBQVUsQ0FBZTtJQUFHLENBQUM7SUFFckQsWUFBWSxDQUFDLEtBQW9CO1FBQ3hFLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUMyQyxlQUFlLENBQUMsS0FBb0I7UUFDOUUsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sTUFBTSxHQUFXLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBRTdDLElBQUksTUFBTSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUU7WUFDakMsSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN4RDthQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRTtZQUMxRSxJQUFJLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztTQUM1RDthQUFNO1lBQ0wsTUFBTSxJQUFJLEtBQUssQ0FBQyw4REFBOEQsQ0FBQyxDQUFDO1NBQ2pGO1FBRUQsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLFNBQVMsSUFBSSxJQUFJLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsSUFBSSxNQUFNLENBQUMsZUFBZSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDOUUsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLFlBQVksRUFBRSxFQUFFLGNBQWMsRUFBRSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUM7SUFDekUsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztZQUN2QixtQkFBbUIsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUs7U0FDckMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzdCLENBQUM7OytIQTVDVSxrQ0FBa0M7bUhBQWxDLGtDQUFrQyxpS0NYL0MsMmtCQXFCQTsyRkRWYSxrQ0FBa0M7a0JBSDlDLFNBQVM7OytJQWFpQyxZQUFZO3NCQUFwRCxZQUFZO3VCQUFDLGFBQWEsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFJSyxlQUFlO3NCQUExRCxZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRm9ybWx5RmllbGRDb25maWcgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7IGNsb25lRGVlcCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBDOHlKU09OU2NoZW1hIH0gZnJvbSAnLi4vLi4vZHluYW1pYy1mb3Jtcy9qc29uLXNjaGVtYS9jOHktanNvbi1zY2hlbWEuc2VydmljZSc7XG5pbXBvcnQgeyBDb2x1bW4gfSBmcm9tICcuLi9kYXRhLWdyaWQubW9kZWwnO1xuaW1wb3J0IHsgRmlsdGVyaW5nRm9ybVJlbmRlcmVyQ29udGV4dCB9IGZyb20gJy4vZmlsdGVyaW5nLWZvcm0tcmVuZGVyZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL2Jhc2UuZmlsdGVyaW5nLWZvcm0tcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEJhc2VGaWx0ZXJpbmdGb3JtUmVuZGVyZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBzY2hlbWE7XG4gIGZvcm06IEZvcm1Hcm91cDtcbiAgbW9kZWw7XG4gIG9wdGlvbnM7XG5cbiAgZmllbGRzOiBGb3JtbHlGaWVsZENvbmZpZ1tdO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBjb250ZXh0OiBGaWx0ZXJpbmdGb3JtUmVuZGVyZXJDb250ZXh0LCBwdWJsaWMganNvbnNjaGVtYTogQzh5SlNPTlNjaGVtYSkge31cblxuICBASG9zdExpc3RlbmVyKCdrZXl1cC5lbnRlcicsIFsnJGV2ZW50J10pIG9uRW50ZXJLZXlVcChldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuYXBwbHlGaWx0ZXIoKTtcbiAgfVxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmVzY2FwZScsIFsnJGV2ZW50J10pIG9uRXNjYXBlS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMucmVzZXRGaWx0ZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGNvbnN0IGNvbHVtbjogQ29sdW1uID0gdGhpcy5jb250ZXh0LnByb3BlcnR5O1xuXG4gICAgaWYgKGNvbHVtbi5maWx0ZXJpbmdDb25maWcuZmllbGRzKSB7XG4gICAgICB0aGlzLmZpZWxkcyA9IGNsb25lRGVlcChjb2x1bW4uZmlsdGVyaW5nQ29uZmlnLmZpZWxkcyk7XG4gICAgfSBlbHNlIGlmICghY29sdW1uLmZpbHRlcmluZ0NvbmZpZy5maWVsZHMgJiYgY29sdW1uLmZpbHRlcmluZ0NvbmZpZy5zY2hlbWEpIHtcbiAgICAgIHRoaXMuc2NoZW1hID0gY2xvbmVEZWVwKGNvbHVtbi5maWx0ZXJpbmdDb25maWcuc2NoZW1hKTtcbiAgICAgIHRoaXMuZmllbGRzID0gW3RoaXMuanNvbnNjaGVtYS50b0ZpZWxkQ29uZmlnKHRoaXMuc2NoZW1hKV07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTmVpdGhlciBmaWVsZHMgbm9yIHNjaGVtYSBjb25maWd1cmF0aW9uIHByb3ZpZGVkIGZvciBGb3JtbHkuYCk7XG4gICAgfVxuXG4gICAgdGhpcy5mb3JtID0gY29sdW1uLmZpbHRlcmluZ0NvbmZpZy5mb3JtR3JvdXAgfHwgbmV3IEZvcm1Hcm91cCh7fSk7XG4gICAgdGhpcy5tb2RlbCA9IGNvbHVtbi5leHRlcm5hbEZpbHRlclF1ZXJ5IHx8IGNvbHVtbi5maWx0ZXJpbmdDb25maWcubW9kZWwgfHwge307XG4gICAgdGhpcy5vcHRpb25zID0geyBmb3JtRGVmYXVsdHM6IHsgbmdNb2RlbE9wdGlvbnM6IHsgZGVib3VuY2U6IDEwMCB9IH0gfTtcbiAgfVxuXG4gIGFwcGx5RmlsdGVyKCkge1xuICAgIHRoaXMuY29udGV4dC5hcHBseUZpbHRlcih7XG4gICAgICBleHRlcm5hbEZpbHRlclF1ZXJ5OiB0aGlzLmZvcm0udmFsdWVcbiAgICB9KTtcbiAgfVxuXG4gIHJlc2V0RmlsdGVyKCkge1xuICAgIHRoaXMuY29udGV4dC5yZXNldEZpbHRlcigpO1xuICB9XG59XG4iLCI8Zm9ybWx5LWZvcm0gW2Zvcm1dPVwiZm9ybVwiIFtmaWVsZHNdPVwiZmllbGRzXCIgW21vZGVsXT1cIm1vZGVsXCI+PC9mb3JtbHktZm9ybT5cbjxkaXYgY2xhc3M9XCJkYXRhLWdyaWRfX2Ryb3Bkb3duX19mb290ZXIgZC1mbGV4IHNlcGFyYXRvci10b3BcIj5cbiAgPGJ1dHRvblxuICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IGJ0bi1zbSBtLXItOCBmbGV4LWdyb3dcIlxuICAgIChjbGljayk9XCJyZXNldEZpbHRlcigpXCJcbiAgICB0aXRsZT1cInt7ICdSZXNldCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgIHRyYW5zbGF0ZVxuICA+XG4gICAgUmVzZXRcbiAgPC9idXR0b24+XG5cbiAgPGJ1dHRvblxuICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zbSBmbGV4LWdyb3dcIlxuICAgIChjbGljayk9XCJhcHBseUZpbHRlcigpXCJcbiAgICBbZGlzYWJsZWRdPVwiKGZvcm0ucHJpc3RpbmUgJiYgZm9ybS51bnRvdWNoZWQpIHx8IGZvcm0uaW52YWxpZFwiXG4gICAgdGl0bGU9XCJ7eyAnQXBwbHknIHwgdHJhbnNsYXRlIH19XCJcbiAgICB0cmFuc2xhdGVcbiAgPlxuICAgIEFwcGx5XG4gIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=