nuxeo-development-framework 5.7.8 → 5.8.0

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.
Files changed (23) hide show
  1. package/bundles/nuxeo-development-framework.umd.js +153 -73
  2. package/bundles/nuxeo-development-framework.umd.js.map +1 -1
  3. package/esm2015/lib/components/reports/ndf-reports/containers/ndf-report/ndf-report.component.js +2 -2
  4. package/esm2015/lib/components/reports/ndf-reports/containers/ndf-reports/ndf-reports.component.js +2 -2
  5. package/esm2015/lib/components/reports/ndf-reports/models/graph-definition.js +1 -1
  6. package/esm2015/lib/components/reports/ndf-reports/options/index.js +1 -2
  7. package/esm2015/lib/components/reports/ndf-reports/services/chart-callbacks-register.services.js +38 -0
  8. package/esm2015/lib/components/reports/ndf-reports/services/index.js +2 -1
  9. package/esm2015/lib/components/reports/ndf-reports/services/report-config-mapper.service.js +61 -9
  10. package/esm2015/lib/components/reports/ndf-reports/utilities/reports-table.mapper.js +6 -6
  11. package/esm2015/lib/components/tables/dynamic-table/dynamic-table/dynamic-table.component.js +6 -6
  12. package/fesm2015/nuxeo-development-framework.js +145 -71
  13. package/fesm2015/nuxeo-development-framework.js.map +1 -1
  14. package/lib/components/reports/ndf-reports/models/graph-definition.d.ts +6 -0
  15. package/lib/components/reports/ndf-reports/options/index.d.ts +0 -1
  16. package/lib/components/reports/ndf-reports/services/chart-callbacks-register.services.d.ts +14 -0
  17. package/lib/components/reports/ndf-reports/services/index.d.ts +1 -0
  18. package/lib/components/reports/ndf-reports/services/report-config-mapper.service.d.ts +6 -1
  19. package/lib/components/tables/dynamic-table/dynamic-table/dynamic-table.component.d.ts +1 -0
  20. package/package.json +1 -1
  21. package/src/docs/ndf-table.doc.md +1 -1
  22. package/esm2015/lib/components/reports/ndf-reports/options/options.js +0 -15
  23. package/lib/components/reports/ndf-reports/options/options.d.ts +0 -2
@@ -23,7 +23,7 @@ export class NdfReportComponent extends DestroySubject {
23
23
  }
24
24
  }
25
25
  NdfReportComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NdfReportComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
26
- NdfReportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NdfReportComponent, selector: "app-ndf-report", inputs: { config: "config", direction: "direction", data: "data", criteria: "criteria" }, outputs: { onNavigate: "onNavigate", onOpen: "onOpen" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"config\">\r\n\t<ng-container [ngSwitch]=\"config.mode\">\r\n\t\t<app-graph-report\r\n\t\t\t[class.report-min-height]=\"config?.layout?.minContentHeight\"\r\n\t\t\t[style.--report-content-height]=\"config?.layout?.minContentHeight\"\r\n\t\t\t*ngSwitchCase=\"reportModes.graph\"\r\n\t\t\t[definition]=\"config\"\r\n\t\t\t[data]=\"data\"\r\n\t\t\t[criteria]=\"criteria\"\r\n\t\t\t[direction]=\"direction\"\r\n\t\t\t(onNavigate)=\"onNavigate.emit($event)\"\r\n\t\t\t(onOpen)=\"onOpen.emit($event)\"\r\n\t\t></app-graph-report>\r\n\r\n\t\t<app-dynamic-timeline-report\r\n\t\t\t*ngSwitchCase=\"reportModes.dynamicLine\"\r\n\t\t\t[definition]=\"config\"\r\n\t\t\t[data]=\"data\"\r\n\t\t\t[criteria]=\"criteria\"\r\n\t\t\t[direction]=\"direction\"\r\n\t\t\t(onOpen)=\"onOpen.emit($event)\"\r\n\t\t\t[class.report-min-height]=\"config?.layout?.minContentHeight\"\r\n\t\t\t[style.--report-content-height]=\"config?.layout?.minContentHeight\"\r\n\t\t></app-dynamic-timeline-report>\r\n\r\n\t\t<app-digit-report\r\n\t\t\t*ngSwitchCase=\"reportModes.digit\"\r\n\t\t\t[definition]=\"config\"\r\n\t\t\t[data]=\"data\"\r\n\t\t\t[criteria]=\"criteria\"\r\n\t\t\t[direction]=\"direction\"\r\n\t\t\t(onOpen)=\"onOpen.emit($event)\"\r\n\t\t\t[class.report-min-height]=\"config?.layout?.minContentHeight\"\r\n\t\t\t[style.--report-content-height]=\"config?.layout?.minContentHeight\"\r\n\t\t></app-digit-report>\r\n\r\n\t\t<app-custom-report\r\n\t\t\t*ngSwitchCase=\"reportModes.custom\"\r\n\t\t\t[definition]=\"config\"\r\n\t\t\t[data]=\"data\"\r\n\t\t\t[criteria]=\"criteria\"\r\n\t\t\t[direction]=\"direction\"\r\n\t\t\t(onOpen)=\"onOpen.emit($event)\"\r\n\t\t\t[class.report-min-height]=\"config?.layout?.minContentHeight\"\r\n\t\t\t[style.--report-content-height]=\"config?.layout?.minContentHeight\"\r\n\t\t>\r\n\t\t</app-custom-report>\r\n\t</ng-container>\r\n</ng-container>\r\n", styles: [".ndf-report{display:flex;flex-direction:column;min-width:0;max-width:100%;flex-grow:1}.ndf-report__content{position:relative;padding-block:.5rem;flex-grow:1;min-width:0;max-width:100%}.chart-actions{border:var(--chart-actions-border, 1px solid var(--border-color))}.chart-actions__item{background:var(--chart-actions-background, transparent);color:var(--chart-actions-color, currentColor);box-shadow:var(--chart-actions-shadow, unset);width:var(--chart-actions-width, 35px);height:var(--chart-actions-height, 35px);border-radius:var(--chart-actions-border-radius, 4px);flex-grow:1;display:grid;place-items:center}.chart-actions__item .mat-icon{color:var(--main-color, currentColor)}.chart-actions__item:hover{--chart-actions-shadow: var(--chart-actions-hover-shadow, 0 0 0 1px var(--main-color))}.chart-actions__item.selected{--chart-actions-background: var(--chart-actions-active-background, var(--main-color));--chart-actions-color: var(--chart-actions-active-color, var(--main-hover))}.chart-actions__item.selected .mat-icon{color:currentColor!important}@media print{.chart-actions{display:none}}.report-min-height{min-height:var(--report-content-height, unset)}\n"], components: [{ type: i1.GraphReportComponent, selector: "app-graph-report" }, { type: i2.DynamicTimelineReportComponent, selector: "app-dynamic-timeline-report" }, { type: i3.DigitReportComponent, selector: "app-digit-report" }, { type: i4.CustomReportComponent, selector: "app-custom-report" }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
26
+ NdfReportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NdfReportComponent, selector: "app-ndf-report", inputs: { config: "config", direction: "direction", data: "data", criteria: "criteria" }, outputs: { onNavigate: "onNavigate", onOpen: "onOpen" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"config\">\r\n\t<ng-container [ngSwitch]=\"config.mode\">\r\n\t\t<app-graph-report\r\n class=\"report-container\"\r\n\t\t\t[class.report-min-height]=\"config?.layout?.minContentHeight\"\r\n\t\t\t[style.--report-content-height]=\"config?.layout?.minContentHeight\"\r\n\t\t\t*ngSwitchCase=\"reportModes.graph\"\r\n\t\t\t[definition]=\"config\"\r\n\t\t\t[data]=\"data\"\r\n\t\t\t[criteria]=\"criteria\"\r\n\t\t\t[direction]=\"direction\"\r\n\t\t\t(onNavigate)=\"onNavigate.emit($event)\"\r\n\t\t\t(onOpen)=\"onOpen.emit($event)\"\r\n\t\t></app-graph-report>\r\n\r\n\t\t<app-dynamic-timeline-report\r\n class=\"report-container\"\r\n\t\t\t*ngSwitchCase=\"reportModes.dynamicLine\"\r\n\t\t\t[definition]=\"config\"\r\n\t\t\t[data]=\"data\"\r\n\t\t\t[criteria]=\"criteria\"\r\n\t\t\t[direction]=\"direction\"\r\n\t\t\t(onOpen)=\"onOpen.emit($event)\"\r\n\t\t\t[class.report-min-height]=\"config?.layout?.minContentHeight\"\r\n\t\t\t[style.--report-content-height]=\"config?.layout?.minContentHeight\"\r\n\t\t></app-dynamic-timeline-report>\r\n\r\n\t\t<app-digit-report\r\n\t\t\t*ngSwitchCase=\"reportModes.digit\"\r\n class=\"report-container\"\r\n\t\t\t[definition]=\"config\"\r\n\t\t\t[data]=\"data\"\r\n\t\t\t[criteria]=\"criteria\"\r\n\t\t\t[direction]=\"direction\"\r\n\t\t\t(onOpen)=\"onOpen.emit($event)\"\r\n\t\t\t[class.report-min-height]=\"config?.layout?.minContentHeight\"\r\n\t\t\t[style.--report-content-height]=\"config?.layout?.minContentHeight\"\r\n\t\t></app-digit-report>\r\n\r\n\t\t<app-custom-report\r\n\t\t\t*ngSwitchCase=\"reportModes.custom\"\r\n class=\"report-container\"\r\n\t\t\t[definition]=\"config\"\r\n\t\t\t[data]=\"data\"\r\n\t\t\t[criteria]=\"criteria\"\r\n\t\t\t[direction]=\"direction\"\r\n\t\t\t(onOpen)=\"onOpen.emit($event)\"\r\n\t\t\t[class.report-min-height]=\"config?.layout?.minContentHeight\"\r\n\t\t\t[style.--report-content-height]=\"config?.layout?.minContentHeight\"\r\n\t\t>\r\n\t\t</app-custom-report>\r\n\t</ng-container>\r\n</ng-container>\r\n", styles: [".ndf-report{display:flex;flex-direction:column;min-width:0;max-width:100%;flex-grow:1}.ndf-report__content{position:relative;padding-block:.5rem;flex-grow:1;min-width:0;max-width:100%}.chart-actions{border:var(--chart-actions-border, 1px solid var(--border-color))}.chart-actions__item{background:var(--chart-actions-background, transparent);color:var(--chart-actions-color, currentColor);box-shadow:var(--chart-actions-shadow, unset);width:var(--chart-actions-width, 35px);height:var(--chart-actions-height, 35px);border-radius:var(--chart-actions-border-radius, 4px);flex-grow:1;display:grid;place-items:center}.chart-actions__item .mat-icon{color:var(--main-color, currentColor)}.chart-actions__item:hover{--chart-actions-shadow: var(--chart-actions-hover-shadow, 0 0 0 1px var(--main-color))}.chart-actions__item.selected{--chart-actions-background: var(--chart-actions-active-background, var(--main-color));--chart-actions-color: var(--chart-actions-active-color, var(--main-hover))}.chart-actions__item.selected .mat-icon{color:currentColor!important}@media print{.chart-actions{display:none}}.report-min-height{min-height:var(--report-content-height, unset)}.report-container{min-width:0}@media screen{.report-container{grid-row:span var(--row-span, 1)}}\n"], components: [{ type: i1.GraphReportComponent, selector: "app-graph-report" }, { type: i2.DynamicTimelineReportComponent, selector: "app-dynamic-timeline-report" }, { type: i3.DigitReportComponent, selector: "app-digit-report" }, { type: i4.CustomReportComponent, selector: "app-custom-report" }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
27
27
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NdfReportComponent, decorators: [{
28
28
  type: Component,
29
29
  args: [{
@@ -46,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
46
46
  }], onOpen: [{
47
47
  type: Output
48
48
  }] } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmRmLXJlcG9ydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL3JlcG9ydHMvbmRmLXJlcG9ydHMvY29udGFpbmVycy9uZGYtcmVwb3J0L25kZi1yZXBvcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL2NvbnRhaW5lcnMvbmRmLXJlcG9ydC9uZGYtcmVwb3J0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7OztBQVU5QyxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsY0FBYztJQVB0RDs7UUFRVSxnQkFBVyxHQUFHLFdBQVcsQ0FBQztRQVcxQixjQUFTLEdBQWMsS0FBSyxDQUFDO1FBTTVCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFHbkMsQ0FBQztRQUVLLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztLQUNyRDtJQXBCQSxJQUFhLE1BQU0sQ0FBQyxLQUE0QjtRQUMvQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3JCLENBQUM7O2dIQVZXLGtCQUFrQjtvR0FBbEIsa0JBQWtCLGdPQ2IvQixpMkRBaURBOzRGRHBDYSxrQkFBa0I7a0JBUDlCLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsV0FBVyxFQUFFLDZCQUE2QjtvQkFDMUMsU0FBUyxFQUFFLENBQUMsNkJBQTZCLENBQUM7b0JBQzFDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtpQkFDckM7OEJBS2EsTUFBTTtzQkFBbEIsS0FBSztnQkFRRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVJLFVBQVU7c0JBQW5CLE1BQU07Z0JBS0csTUFBTTtzQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERlc3Ryb3lTdWJqZWN0IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBSRVBPUlRfTU9ERSB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XHJcbmltcG9ydCB7IENyaXRlcmlhTW9kZWwsIFJlcG9ydENvbmZpZ01vZGVsLCBSZXBvcnREZWZpbml0aW9uTW9kZWwsIFJlcG9ydFJlc3BvbnNlTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdhcHAtbmRmLXJlcG9ydCcsXHJcblx0dGVtcGxhdGVVcmw6ICcuL25kZi1yZXBvcnQuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsczogWycuL25kZi1yZXBvcnQuY29tcG9uZW50LnNjc3MnXSxcclxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuXHRlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTmRmUmVwb3J0Q29tcG9uZW50IGV4dGVuZHMgRGVzdHJveVN1YmplY3Qge1xyXG5cdHJlYWRvbmx5IHJlcG9ydE1vZGVzID0gUkVQT1JUX01PREU7XHJcblxyXG5cdF9jb25maWc6IFJlcG9ydERlZmluaXRpb25Nb2RlbDtcclxuXHRASW5wdXQoKSBzZXQgY29uZmlnKHZhbHVlOiBSZXBvcnREZWZpbml0aW9uTW9kZWwpIHtcclxuXHRcdHRoaXMuX2NvbmZpZyA9IHZhbHVlO1xyXG5cdH1cclxuXHJcblx0Z2V0IGNvbmZpZygpOiBSZXBvcnREZWZpbml0aW9uTW9kZWwge1xyXG5cdFx0cmV0dXJuIHRoaXMuX2NvbmZpZztcclxuXHR9XHJcblxyXG5cdEBJbnB1dCgpIGRpcmVjdGlvbjogRGlyZWN0aW9uID0gJ3J0bCc7XHJcblxyXG5cdEBJbnB1dCgpIGRhdGE6IFJlcG9ydFJlc3BvbnNlTW9kZWw7XHJcblxyXG5cdEBJbnB1dCgpIGNyaXRlcmlhOiBDcml0ZXJpYU1vZGVsO1xyXG5cclxuXHRAT3V0cHV0KCkgb25OYXZpZ2F0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8e1xyXG5cdFx0cmVwb3J0OiBSZXBvcnRDb25maWdNb2RlbDtcclxuXHRcdGRhdGE6IFJlcG9ydFJlc3BvbnNlTW9kZWw7XHJcblx0fT4oKTtcclxuXHJcblx0QE91dHB1dCgpIG9uT3BlbiA9IG5ldyBFdmVudEVtaXR0ZXI8Q3JpdGVyaWFNb2RlbD4oKTtcclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiY29uZmlnXCI+XHJcblx0PG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiY29uZmlnLm1vZGVcIj5cclxuXHRcdDxhcHAtZ3JhcGgtcmVwb3J0XHJcblx0XHRcdFtjbGFzcy5yZXBvcnQtbWluLWhlaWdodF09XCJjb25maWc/LmxheW91dD8ubWluQ29udGVudEhlaWdodFwiXHJcblx0XHRcdFtzdHlsZS4tLXJlcG9ydC1jb250ZW50LWhlaWdodF09XCJjb25maWc/LmxheW91dD8ubWluQ29udGVudEhlaWdodFwiXHJcblx0XHRcdCpuZ1N3aXRjaENhc2U9XCJyZXBvcnRNb2Rlcy5ncmFwaFwiXHJcblx0XHRcdFtkZWZpbml0aW9uXT1cImNvbmZpZ1wiXHJcblx0XHRcdFtkYXRhXT1cImRhdGFcIlxyXG5cdFx0XHRbY3JpdGVyaWFdPVwiY3JpdGVyaWFcIlxyXG5cdFx0XHRbZGlyZWN0aW9uXT1cImRpcmVjdGlvblwiXHJcblx0XHRcdChvbk5hdmlnYXRlKT1cIm9uTmF2aWdhdGUuZW1pdCgkZXZlbnQpXCJcclxuXHRcdFx0KG9uT3Blbik9XCJvbk9wZW4uZW1pdCgkZXZlbnQpXCJcclxuXHRcdD48L2FwcC1ncmFwaC1yZXBvcnQ+XHJcblxyXG5cdFx0PGFwcC1keW5hbWljLXRpbWVsaW5lLXJlcG9ydFxyXG5cdFx0XHQqbmdTd2l0Y2hDYXNlPVwicmVwb3J0TW9kZXMuZHluYW1pY0xpbmVcIlxyXG5cdFx0XHRbZGVmaW5pdGlvbl09XCJjb25maWdcIlxyXG5cdFx0XHRbZGF0YV09XCJkYXRhXCJcclxuXHRcdFx0W2NyaXRlcmlhXT1cImNyaXRlcmlhXCJcclxuXHRcdFx0W2RpcmVjdGlvbl09XCJkaXJlY3Rpb25cIlxyXG5cdFx0XHQob25PcGVuKT1cIm9uT3Blbi5lbWl0KCRldmVudClcIlxyXG5cdFx0XHRbY2xhc3MucmVwb3J0LW1pbi1oZWlnaHRdPVwiY29uZmlnPy5sYXlvdXQ/Lm1pbkNvbnRlbnRIZWlnaHRcIlxyXG5cdFx0XHRbc3R5bGUuLS1yZXBvcnQtY29udGVudC1oZWlnaHRdPVwiY29uZmlnPy5sYXlvdXQ/Lm1pbkNvbnRlbnRIZWlnaHRcIlxyXG5cdFx0PjwvYXBwLWR5bmFtaWMtdGltZWxpbmUtcmVwb3J0PlxyXG5cclxuXHRcdDxhcHAtZGlnaXQtcmVwb3J0XHJcblx0XHRcdCpuZ1N3aXRjaENhc2U9XCJyZXBvcnRNb2Rlcy5kaWdpdFwiXHJcblx0XHRcdFtkZWZpbml0aW9uXT1cImNvbmZpZ1wiXHJcblx0XHRcdFtkYXRhXT1cImRhdGFcIlxyXG5cdFx0XHRbY3JpdGVyaWFdPVwiY3JpdGVyaWFcIlxyXG5cdFx0XHRbZGlyZWN0aW9uXT1cImRpcmVjdGlvblwiXHJcblx0XHRcdChvbk9wZW4pPVwib25PcGVuLmVtaXQoJGV2ZW50KVwiXHJcblx0XHRcdFtjbGFzcy5yZXBvcnQtbWluLWhlaWdodF09XCJjb25maWc/LmxheW91dD8ubWluQ29udGVudEhlaWdodFwiXHJcblx0XHRcdFtzdHlsZS4tLXJlcG9ydC1jb250ZW50LWhlaWdodF09XCJjb25maWc/LmxheW91dD8ubWluQ29udGVudEhlaWdodFwiXHJcblx0XHQ+PC9hcHAtZGlnaXQtcmVwb3J0PlxyXG5cclxuXHRcdDxhcHAtY3VzdG9tLXJlcG9ydFxyXG5cdFx0XHQqbmdTd2l0Y2hDYXNlPVwicmVwb3J0TW9kZXMuY3VzdG9tXCJcclxuXHRcdFx0W2RlZmluaXRpb25dPVwiY29uZmlnXCJcclxuXHRcdFx0W2RhdGFdPVwiZGF0YVwiXHJcblx0XHRcdFtjcml0ZXJpYV09XCJjcml0ZXJpYVwiXHJcblx0XHRcdFtkaXJlY3Rpb25dPVwiZGlyZWN0aW9uXCJcclxuXHRcdFx0KG9uT3Blbik9XCJvbk9wZW4uZW1pdCgkZXZlbnQpXCJcclxuXHRcdFx0W2NsYXNzLnJlcG9ydC1taW4taGVpZ2h0XT1cImNvbmZpZz8ubGF5b3V0Py5taW5Db250ZW50SGVpZ2h0XCJcclxuXHRcdFx0W3N0eWxlLi0tcmVwb3J0LWNvbnRlbnQtaGVpZ2h0XT1cImNvbmZpZz8ubGF5b3V0Py5taW5Db250ZW50SGVpZ2h0XCJcclxuXHRcdD5cclxuXHRcdDwvYXBwLWN1c3RvbS1yZXBvcnQ+XHJcblx0PC9uZy1jb250YWluZXI+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmRmLXJlcG9ydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL3JlcG9ydHMvbmRmLXJlcG9ydHMvY29udGFpbmVycy9uZGYtcmVwb3J0L25kZi1yZXBvcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL2NvbnRhaW5lcnMvbmRmLXJlcG9ydC9uZGYtcmVwb3J0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7OztBQVU5QyxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsY0FBYztJQVB0RDs7UUFRVSxnQkFBVyxHQUFHLFdBQVcsQ0FBQztRQVcxQixjQUFTLEdBQWMsS0FBSyxDQUFDO1FBTTVCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFHbkMsQ0FBQztRQUVLLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztLQUNyRDtJQXBCQSxJQUFhLE1BQU0sQ0FBQyxLQUE0QjtRQUMvQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3JCLENBQUM7O2dIQVZXLGtCQUFrQjtvR0FBbEIsa0JBQWtCLGdPQ2IvQixpL0RBcURBOzRGRHhDYSxrQkFBa0I7a0JBUDlCLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsV0FBVyxFQUFFLDZCQUE2QjtvQkFDMUMsU0FBUyxFQUFFLENBQUMsNkJBQTZCLENBQUM7b0JBQzFDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtpQkFDckM7OEJBS2EsTUFBTTtzQkFBbEIsS0FBSztnQkFRRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVJLFVBQVU7c0JBQW5CLE1BQU07Z0JBS0csTUFBTTtzQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERlc3Ryb3lTdWJqZWN0IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBSRVBPUlRfTU9ERSB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XHJcbmltcG9ydCB7IENyaXRlcmlhTW9kZWwsIFJlcG9ydENvbmZpZ01vZGVsLCBSZXBvcnREZWZpbml0aW9uTW9kZWwsIFJlcG9ydFJlc3BvbnNlTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdhcHAtbmRmLXJlcG9ydCcsXHJcblx0dGVtcGxhdGVVcmw6ICcuL25kZi1yZXBvcnQuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsczogWycuL25kZi1yZXBvcnQuY29tcG9uZW50LnNjc3MnXSxcclxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuXHRlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTmRmUmVwb3J0Q29tcG9uZW50IGV4dGVuZHMgRGVzdHJveVN1YmplY3Qge1xyXG5cdHJlYWRvbmx5IHJlcG9ydE1vZGVzID0gUkVQT1JUX01PREU7XHJcblxyXG5cdF9jb25maWc6IFJlcG9ydERlZmluaXRpb25Nb2RlbDtcclxuXHRASW5wdXQoKSBzZXQgY29uZmlnKHZhbHVlOiBSZXBvcnREZWZpbml0aW9uTW9kZWwpIHtcclxuXHRcdHRoaXMuX2NvbmZpZyA9IHZhbHVlO1xyXG5cdH1cclxuXHJcblx0Z2V0IGNvbmZpZygpOiBSZXBvcnREZWZpbml0aW9uTW9kZWwge1xyXG5cdFx0cmV0dXJuIHRoaXMuX2NvbmZpZztcclxuXHR9XHJcblxyXG5cdEBJbnB1dCgpIGRpcmVjdGlvbjogRGlyZWN0aW9uID0gJ3J0bCc7XHJcblxyXG5cdEBJbnB1dCgpIGRhdGE6IFJlcG9ydFJlc3BvbnNlTW9kZWw7XHJcblxyXG5cdEBJbnB1dCgpIGNyaXRlcmlhOiBDcml0ZXJpYU1vZGVsO1xyXG5cclxuXHRAT3V0cHV0KCkgb25OYXZpZ2F0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8e1xyXG5cdFx0cmVwb3J0OiBSZXBvcnRDb25maWdNb2RlbDtcclxuXHRcdGRhdGE6IFJlcG9ydFJlc3BvbnNlTW9kZWw7XHJcblx0fT4oKTtcclxuXHJcblx0QE91dHB1dCgpIG9uT3BlbiA9IG5ldyBFdmVudEVtaXR0ZXI8Q3JpdGVyaWFNb2RlbD4oKTtcclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiY29uZmlnXCI+XHJcblx0PG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiY29uZmlnLm1vZGVcIj5cclxuXHRcdDxhcHAtZ3JhcGgtcmVwb3J0XHJcbiAgICAgIGNsYXNzPVwicmVwb3J0LWNvbnRhaW5lclwiXHJcblx0XHRcdFtjbGFzcy5yZXBvcnQtbWluLWhlaWdodF09XCJjb25maWc/LmxheW91dD8ubWluQ29udGVudEhlaWdodFwiXHJcblx0XHRcdFtzdHlsZS4tLXJlcG9ydC1jb250ZW50LWhlaWdodF09XCJjb25maWc/LmxheW91dD8ubWluQ29udGVudEhlaWdodFwiXHJcblx0XHRcdCpuZ1N3aXRjaENhc2U9XCJyZXBvcnRNb2Rlcy5ncmFwaFwiXHJcblx0XHRcdFtkZWZpbml0aW9uXT1cImNvbmZpZ1wiXHJcblx0XHRcdFtkYXRhXT1cImRhdGFcIlxyXG5cdFx0XHRbY3JpdGVyaWFdPVwiY3JpdGVyaWFcIlxyXG5cdFx0XHRbZGlyZWN0aW9uXT1cImRpcmVjdGlvblwiXHJcblx0XHRcdChvbk5hdmlnYXRlKT1cIm9uTmF2aWdhdGUuZW1pdCgkZXZlbnQpXCJcclxuXHRcdFx0KG9uT3Blbik9XCJvbk9wZW4uZW1pdCgkZXZlbnQpXCJcclxuXHRcdD48L2FwcC1ncmFwaC1yZXBvcnQ+XHJcblxyXG5cdFx0PGFwcC1keW5hbWljLXRpbWVsaW5lLXJlcG9ydFxyXG4gICAgICBjbGFzcz1cInJlcG9ydC1jb250YWluZXJcIlxyXG5cdFx0XHQqbmdTd2l0Y2hDYXNlPVwicmVwb3J0TW9kZXMuZHluYW1pY0xpbmVcIlxyXG5cdFx0XHRbZGVmaW5pdGlvbl09XCJjb25maWdcIlxyXG5cdFx0XHRbZGF0YV09XCJkYXRhXCJcclxuXHRcdFx0W2NyaXRlcmlhXT1cImNyaXRlcmlhXCJcclxuXHRcdFx0W2RpcmVjdGlvbl09XCJkaXJlY3Rpb25cIlxyXG5cdFx0XHQob25PcGVuKT1cIm9uT3Blbi5lbWl0KCRldmVudClcIlxyXG5cdFx0XHRbY2xhc3MucmVwb3J0LW1pbi1oZWlnaHRdPVwiY29uZmlnPy5sYXlvdXQ/Lm1pbkNvbnRlbnRIZWlnaHRcIlxyXG5cdFx0XHRbc3R5bGUuLS1yZXBvcnQtY29udGVudC1oZWlnaHRdPVwiY29uZmlnPy5sYXlvdXQ/Lm1pbkNvbnRlbnRIZWlnaHRcIlxyXG5cdFx0PjwvYXBwLWR5bmFtaWMtdGltZWxpbmUtcmVwb3J0PlxyXG5cclxuXHRcdDxhcHAtZGlnaXQtcmVwb3J0XHJcblx0XHRcdCpuZ1N3aXRjaENhc2U9XCJyZXBvcnRNb2Rlcy5kaWdpdFwiXHJcbiAgICAgIGNsYXNzPVwicmVwb3J0LWNvbnRhaW5lclwiXHJcblx0XHRcdFtkZWZpbml0aW9uXT1cImNvbmZpZ1wiXHJcblx0XHRcdFtkYXRhXT1cImRhdGFcIlxyXG5cdFx0XHRbY3JpdGVyaWFdPVwiY3JpdGVyaWFcIlxyXG5cdFx0XHRbZGlyZWN0aW9uXT1cImRpcmVjdGlvblwiXHJcblx0XHRcdChvbk9wZW4pPVwib25PcGVuLmVtaXQoJGV2ZW50KVwiXHJcblx0XHRcdFtjbGFzcy5yZXBvcnQtbWluLWhlaWdodF09XCJjb25maWc/LmxheW91dD8ubWluQ29udGVudEhlaWdodFwiXHJcblx0XHRcdFtzdHlsZS4tLXJlcG9ydC1jb250ZW50LWhlaWdodF09XCJjb25maWc/LmxheW91dD8ubWluQ29udGVudEhlaWdodFwiXHJcblx0XHQ+PC9hcHAtZGlnaXQtcmVwb3J0PlxyXG5cclxuXHRcdDxhcHAtY3VzdG9tLXJlcG9ydFxyXG5cdFx0XHQqbmdTd2l0Y2hDYXNlPVwicmVwb3J0TW9kZXMuY3VzdG9tXCJcclxuICAgICAgY2xhc3M9XCJyZXBvcnQtY29udGFpbmVyXCJcclxuXHRcdFx0W2RlZmluaXRpb25dPVwiY29uZmlnXCJcclxuXHRcdFx0W2RhdGFdPVwiZGF0YVwiXHJcblx0XHRcdFtjcml0ZXJpYV09XCJjcml0ZXJpYVwiXHJcblx0XHRcdFtkaXJlY3Rpb25dPVwiZGlyZWN0aW9uXCJcclxuXHRcdFx0KG9uT3Blbik9XCJvbk9wZW4uZW1pdCgkZXZlbnQpXCJcclxuXHRcdFx0W2NsYXNzLnJlcG9ydC1taW4taGVpZ2h0XT1cImNvbmZpZz8ubGF5b3V0Py5taW5Db250ZW50SGVpZ2h0XCJcclxuXHRcdFx0W3N0eWxlLi0tcmVwb3J0LWNvbnRlbnQtaGVpZ2h0XT1cImNvbmZpZz8ubGF5b3V0Py5taW5Db250ZW50SGVpZ2h0XCJcclxuXHRcdD5cclxuXHRcdDwvYXBwLWN1c3RvbS1yZXBvcnQ+XHJcblx0PC9uZy1jb250YWluZXI+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
@@ -345,7 +345,7 @@ export class NdfReportsComponent extends DestroySubject {
345
345
  }
346
346
  }
347
347
  NdfReportsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NdfReportsComponent, deps: [{ token: i1.TranslateService }, { token: i2.FiltersMapperService }, { token: i3.NdfReportsService }, { token: i3.ChartManagerService }, { token: i3.ReportTransformService }, { token: i0.ChangeDetectorRef }, { token: i2.FilterQueryService }, { token: i3.ReportsStateService }, { token: i3.ReportConfigurationService }, { token: i4.Router }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
348
- NdfReportsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NdfReportsComponent, selector: "app-ndf-reports", inputs: { jsonEditorEnabled: "jsonEditorEnabled", reportsKey: "reportsKey", navigateRoute: "navigateRoute", config: "config" }, outputs: { onQueryChange: "onQueryChange" }, host: { properties: { "dir": "direction" }, classAttribute: "ndf-reports" }, viewQueries: [{ propertyName: "fluidDirective", first: true, predicate: FluidHeightDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n\t*ngIf=\"reportsData$ | async as reports\"\r\n\tclass=\"ndf-reports__container\"\r\n\t[class.panel-opened]=\"isPanelOpened && filtersConfig\"\r\n\t[dir]=\"direction\"\r\n\tndfFluidHeight\r\n>\r\n\t<div class=\"ndf-reports__panel print:hidden\" *ngIf=\"!!filtersConfig?.fields?.length\">\r\n\t\t<app-filters-panel\r\n\t\t\t[fields]=\"filtersConfig?.fields\"\r\n\t\t\t[aggregations]=\"aggregations\"\r\n\t\t\t(filterChanged)=\"filterChanged($event)\"\r\n\t\t\t[activeQuery]=\"activeFiltersQuery$ | async\"\r\n\t\t\tclass=\"ndf-reports__filters\"\r\n\t\t></app-filters-panel>\r\n\t</div>\r\n\r\n\t<div class=\"ndf-reports__content\" (scrolled)=\"onContentScroll($event)\">\r\n\t\t<div class=\"ndf-reports__header flex pt-4 print:hidden\">\r\n\t\t\t<button mat-stroked-button class=\"toggle-button\" (click)=\"togglePanel()\">\r\n\t\t\t\t<mat-icon> filter_alt</mat-icon>\r\n\t\t\t</button>\r\n\t\t\t<app-editor-button\r\n\t\t\t\t*ngIf=\"jsonEditorEnabled && reportsKey\"\r\n\t\t\t\t[key]=\"reportsKey\"\r\n\t\t\t\t[type]=\"editorType\"\r\n\t\t\t></app-editor-button>\r\n\t\t\t<button mat-stroked-button *ngIf=\"config?.options?.print\" class=\"print-button\" (click)=\"printAll()\">\r\n\t\t\t\t<mat-icon> print</mat-icon>\r\n\t\t\t</button>\r\n\t\t</div>\r\n\t\t<mat-spinner *ngIf=\"isLoadingResult\" class=\"mt-5 mx-auto\" [diameter]=\"48\"></mat-spinner>\r\n\r\n\t\t<div class=\"reports-grid\" *ngIf=\"!isLoadingResult\">\r\n\t\t\t<app-ndf-report\r\n\t\t\t\t*ngFor=\"let config of reportConfig.items; trackBy: trackByFn\"\r\n\t\t\t\t[config]=\"config\"\r\n\t\t\t\t[data]=\"reports?.response\"\r\n\t\t\t\t[criteria]=\"filtersParams$ | async\"\r\n\t\t\t\t[direction]=\"direction\"\r\n\t\t\t\t[attr.data-width]=\"config?.layout?.width || 4\"\r\n\t\t\t\t[attr.data-height]=\"config?.layout?.height || 'auto'\"\r\n\t\t\t\t[attr.data-start-column]=\"config?.layout?.columnPosition || 'auto'\"\r\n\t\t\t\t[attr.data-start-row]=\"config?.layout?.rowPosition || 'auto'\"\r\n\t\t\t\t[class.wide]=\"config?.layout?.width >= 6\"\r\n\t\t\t\tclass=\"reports-grid__item {{ config?.layout?.styleClass }} \"\r\n\t\t\t\t(onNavigate)=\"onNavigate($event)\"\r\n\t\t\t\t(onOpen)=\"openReportDetails($event, config)\"\r\n\t\t\t></app-ndf-report>\r\n\t\t</div>\r\n\t</div>\r\n\t<div\r\n\t\tclass=\"ndf-reports__details print:hidden\"\r\n\t\t[class.opened]=\"showDetails\"\r\n\t\t[@slideInOut]=\"showDetails ? 'open' : 'closed'\"\r\n\t\t(@slideInOut.done)=\"onDetailsAnimationEnd($event)\"\r\n\t>\r\n\t\t<app-ndf-table\r\n\t\t\t*ngIf=\"reportDetails$ | async as report\"\r\n\t\t\t[config]=\"report.config\"\r\n\t\t\t[activeQuery]=\"activeFiltersQuery$ | async\"\r\n\t\t\t[customCriteria]=\"filtersParams$ | async\"\r\n\t\t>\r\n\t\t\t<ng-template searchTableTemplate>\r\n\t\t\t\t<div class=\"ndf-reports__details__header flex gap-2\">\r\n\t\t\t\t\t<button mat-stroked-button class=\"toggle-button\" (click)=\"togglePanel()\">\r\n\t\t\t\t\t\t<mat-icon> filter_alt</mat-icon>\r\n\t\t\t\t\t</button>\r\n\t\t\t\t\t<button mat-stroked-button class=\"close-button\" (click)=\"closeDetailsPanel()\">\r\n\t\t\t\t\t\t<mat-icon> close</mat-icon>\r\n\t\t\t\t\t</button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<h3>\r\n\t\t\t\t\t{{ report.label | translate }}\r\n\t\t\t\t</h3>\r\n\t\t\t</ng-template>\r\n\t\t</app-ndf-table>\r\n\t</div>\r\n</div>\r\n", styles: [":host{--table-dev-height: var(--ndf-reports-table-dev-height , auto);padding-inline:var(--ndf-reports-inline-padding, 0);padding-block:var(--ndf-reports-block-padding, .5rem 0);height:100%;position:relative;display:flex;flex-direction:column;background-color:var(--ndf-reports-background, #fff);box-sizing:border-box;max-width:100%;flex:0 0 100%}:host:before,:host:after{box-sizing:border-box}:host[dir=ltr]{--ndf-reports-panel-translateX: -100%;--ndf-reports-details-translateX: 100%}.ndf-reports__header{background-color:var(--ndf-reports-background, #fff);flex-direction:var(--ndf-reports-header-direction, row);justify-content:var(--ndf-reports-header-justify, space-between);align-items:var(--ndf-reports-header-items, center);padding-inline:var(--ndf-reports-header-padding-inline, .5rem);padding-block:var(--ndf-reports-header-padding-block, 0 .5rem);position:var(--ndf-reports-header-position, sticky);top:0;z-index:1}.ndf-reports__header__actions{justify-content:var(--ndf-reports-actions-justify, flex-end)}.ndf-reports__header__custom-actions .toggle-button{min-width:0;padding:0 10px}.ndf-reports__container{--panel-width: var(--ndf-reports-panel-width, 18rem);position:relative;overflow:var(--ndf-reports-container-overflow, hidden);display:grid;transition:all .2s;max-width:100%;width:100%;height:var(--ndf-reports-height, calc(var(--ndf-fluid-height) - calc(var(--ndf-reports-block-padding, 1rem) * 2.5)));flex-grow:1;grid-gap:var(--ndf-table-container-gap, .5rem);gap:var(--ndf-table-container-gap, .5rem)}.ndf-reports__container.panel-opened{--ndf-details-margin: var(--panel-width);--ndf-reports-panel-translateX: 0;--ndf-reports-content-margin: var(--panel-width)}@media print{.ndf-reports__container{--ndf-reports-container-overflow: visible;height:100%}}.ndf-reports__panel,.ndf-reports__content .ndf-reports__details{overflow:auto;transition:all .2s}.ndf-reports__panel{position:absolute;width:var(--panel-width);height:100%;transform:translate(var(--ndf-reports-panel-translateX, 100%));padding-inline:var(--ndf-reports-panel-inline-padding, .5rem);padding-block:var(--ndf-reports-panel-block-padding, .5rem);background:var(--ndf-reports-panel-background, #fff);z-index:1}.ndf-reports__content{flex-grow:1;padding-inline-start:var(--ndf-reports-content-margin, 1rem);padding-inline-end:var(--ndf-reports-content-pie, 1rem);padding-block:var(--ndf-reports-content-pb, 0 1rem);overflow-y:var(--ndf-reports-content-overflow-y, auto);position:relative;display:flex;flex-direction:column}@media print{.ndf-reports__content{--ndf-reports-content-overflow-y: visible}}.ndf-reports__details{position:absolute;inset-inline-end:0;width:calc(100% - var(--ndf-details-margin, 0px));height:100%;transform:translate(var(--ndf-reports-details-translateX, -100%));padding-inline:var(--ndf-reports-details-inline-padding, 0rem);flex-grow:1;padding-block:var(--ndf-reports-details-block-padding, 0rem);background:var(--ndf-reports-details-background, #fff);z-index:1;transition:all .2s}.reports-grid{--grid-columns: 12;--column-width: calc(100% / var(--grid-columns));display:grid;grid-gap:var(--reports-grid-gap, 1.5rem);gap:var(--reports-grid-gap, 1.5rem);grid-template-columns:var(--rg-columns, repeat(var(--grid-columns), 1fr));margin-block:var(--reports-grid-margin-block, 1.25rem 0);padding-inline:var(--reports-grid-padding-inline, .5rem)}.reports-grid__item{display:grid;grid-gap:.3rem;gap:.3rem;min-width:0;text-align:center;vertical-align:middle}.reports-grid__item[data-width=\"1\"]{--col-span: span 1}.reports-grid__item[data-start-column=\"1\"]{--col-start: 1}.reports-grid__item[data-start-row=\"1\"]{--row-start: 1}.reports-grid__item[data-height=\"1\"]{--row-span: 1}.reports-grid__item[data-width=\"2\"]{--col-span: span 2}.reports-grid__item[data-start-column=\"2\"]{--col-start: 2}.reports-grid__item[data-start-row=\"2\"]{--row-start: 2}.reports-grid__item[data-height=\"2\"]{--row-span: 2}.reports-grid__item[data-width=\"3\"]{--col-span: span 3}.reports-grid__item[data-start-column=\"3\"]{--col-start: 3}.reports-grid__item[data-start-row=\"3\"]{--row-start: 3}.reports-grid__item[data-height=\"3\"]{--row-span: 3}.reports-grid__item[data-width=\"4\"]{--col-span: span 4}.reports-grid__item[data-start-column=\"4\"]{--col-start: 4}.reports-grid__item[data-start-row=\"4\"]{--row-start: 4}.reports-grid__item[data-height=\"4\"]{--row-span: 4}.reports-grid__item[data-width=\"5\"]{--col-span: span 5}.reports-grid__item[data-start-column=\"5\"]{--col-start: 5}.reports-grid__item[data-start-row=\"5\"]{--row-start: 5}.reports-grid__item[data-height=\"5\"]{--row-span: 5}.reports-grid__item[data-width=\"6\"]{--col-span: span 6}.reports-grid__item[data-start-column=\"6\"]{--col-start: 6}.reports-grid__item[data-start-row=\"6\"]{--row-start: 6}.reports-grid__item[data-height=\"6\"]{--row-span: 6}.reports-grid__item[data-width=\"7\"]{--col-span: span 7}.reports-grid__item[data-start-column=\"7\"]{--col-start: 7}.reports-grid__item[data-start-row=\"7\"]{--row-start: 7}.reports-grid__item[data-height=\"7\"]{--row-span: 7}.reports-grid__item[data-width=\"8\"]{--col-span: span 8}.reports-grid__item[data-start-column=\"8\"]{--col-start: 8}.reports-grid__item[data-start-row=\"8\"]{--row-start: 8}.reports-grid__item[data-height=\"8\"]{--row-span: 8}.reports-grid__item[data-width=\"9\"]{--col-span: span 9}.reports-grid__item[data-start-column=\"9\"]{--col-start: 9}.reports-grid__item[data-start-row=\"9\"]{--row-start: 9}.reports-grid__item[data-height=\"9\"]{--row-span: 9}.reports-grid__item[data-width=\"10\"]{--col-span: span 10}.reports-grid__item[data-start-column=\"10\"]{--col-start: 10}.reports-grid__item[data-start-row=\"10\"]{--row-start: 10}.reports-grid__item[data-height=\"10\"]{--row-span: 10}.reports-grid__item[data-width=\"11\"]{--col-span: span 11}.reports-grid__item[data-start-column=\"11\"]{--col-start: 11}.reports-grid__item[data-start-row=\"11\"]{--row-start: 11}.reports-grid__item[data-height=\"11\"]{--row-span: 11}.reports-grid__item[data-width=\"12\"]{--col-span: span 12}.reports-grid__item[data-start-column=\"12\"]{--col-start: 12}.reports-grid__item[data-start-row=\"12\"]{--row-start: 12}.reports-grid__item[data-height=\"12\"]{--row-span: 12}@media screen{.reports-grid__item{grid-column:var(--col-start, auto)/var(--col-span, span var(--grid-column, 2));grid-row:var(--row-start, auto)/span var(--row-span, 1);grid-template-rows:subgrid}}@media print{.reports-grid{--reports-grid-gap: 11mm;--reports-grid-margin-top: 9mm;--rg-columns: repeat(2, 1fr)}.reports-grid__item{--col-start: auto;--col-span: span 1;border:1px solid #f5f5f5;border-radius:var(--cp-radius, 1rem);page-break-inside:avoid;break-inside:avoid-page}}@media screen and (max-width: 1199px){.reports-grid__item[data-width=\"1\"]{--col-start: auto;--col-span: span 6}.reports-grid__item[data-width=\"2\"]{--col-start: auto;--col-span: span 6}.reports-grid__item[data-width=\"3\"]{--col-start: auto;--col-span: span 6}.reports-grid__item[data-width=\"4\"]{--col-start: auto;--col-span: span 6}.reports-grid__item[data-width=\"5\"]{--col-start: auto;--col-span: span 6}.reports-grid__item[data-width=\"6\"]{--col-start: auto;--col-span: span 6}.reports-grid__item.wide{--col-start: 1;--col-span: -1}}@media screen and (max-width: 767px){.reports-grid__item[data-width]{--col-start: 1;--col-span: -1}}\n"], components: [{ type: i5.FiltersPanelComponent, selector: "app-filters-panel", inputs: ["aggregations", "fields", "activeQuery"], outputs: ["filterChanged"] }, { type: i6.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: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8.EditorButtonComponent, selector: "app-editor-button", inputs: ["type", "key"] }, { type: i9.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: i10.NdfReportComponent, selector: "app-ndf-report", inputs: ["config", "direction", "data", "criteria"], outputs: ["onNavigate", "onOpen"] }, { type: i11.NdfTableComponent, selector: "app-ndf-table", inputs: ["rows", "totalRecords", "autoCalculateHeight", "emptyMessage", "activeQuery", "configPath", "styleClass", "configTransformer", "tableKey", "jsonEditorEnabled", "config", "customCriteria", "searchTerm"], outputs: ["onRowSelected", "onRowIndexSelected", "actionOnRow", "onGettingData", "onMultiRowSelected", "onLoading", "onPage", "onInitialized", "onLoaded", "onQueryChange", "onSort"] }], directives: [{ type: i12.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i13.FluidHeightDirective, selector: "[ndfFluidHeight]", inputs: ["minHeight", "ndfFluidHeight", "subtractItems", "decrease", "delay", "cssVar", "calculate", "inlineStyle"], exportAs: ["ndfFluidHeight"] }, { type: i14.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i15.ScrollableDivDirective, selector: "[scrolled]", inputs: ["scrollTop"], outputs: ["scrolled"] }, { type: i12.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i16.SearchTableTemplateDirective, selector: "[searchTableTemplate]" }], pipes: { "async": i12.AsyncPipe, "translate": i1.TranslatePipe }, animations: [slideAnimation] });
348
+ NdfReportsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NdfReportsComponent, selector: "app-ndf-reports", inputs: { jsonEditorEnabled: "jsonEditorEnabled", reportsKey: "reportsKey", navigateRoute: "navigateRoute", config: "config" }, outputs: { onQueryChange: "onQueryChange" }, host: { properties: { "dir": "direction" }, classAttribute: "ndf-reports" }, viewQueries: [{ propertyName: "fluidDirective", first: true, predicate: FluidHeightDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n\t*ngIf=\"reportsData$ | async as reports\"\r\n\tclass=\"ndf-reports__container\"\r\n\t[class.panel-opened]=\"isPanelOpened && filtersConfig\"\r\n\t[dir]=\"direction\"\r\n\tndfFluidHeight\r\n>\r\n\t<div class=\"ndf-reports__panel print:hidden\" *ngIf=\"!!filtersConfig?.fields?.length\">\r\n\t\t<app-filters-panel\r\n\t\t\t[fields]=\"filtersConfig?.fields\"\r\n\t\t\t[aggregations]=\"aggregations\"\r\n\t\t\t(filterChanged)=\"filterChanged($event)\"\r\n\t\t\t[activeQuery]=\"activeFiltersQuery$ | async\"\r\n\t\t\tclass=\"ndf-reports__filters\"\r\n\t\t></app-filters-panel>\r\n\t</div>\r\n\r\n\t<div class=\"ndf-reports__content\" (scrolled)=\"onContentScroll($event)\">\r\n\t\t<div class=\"ndf-reports__header flex pt-4 print:hidden\">\r\n\t\t\t<button mat-stroked-button class=\"toggle-button\" (click)=\"togglePanel()\">\r\n\t\t\t\t<mat-icon> filter_alt</mat-icon>\r\n\t\t\t</button>\r\n\t\t\t<app-editor-button\r\n\t\t\t\t*ngIf=\"jsonEditorEnabled && reportsKey\"\r\n\t\t\t\t[key]=\"reportsKey\"\r\n\t\t\t\t[type]=\"editorType\"\r\n\t\t\t></app-editor-button>\r\n\t\t\t<button mat-stroked-button *ngIf=\"config?.options?.print\" class=\"print-button\" (click)=\"printAll()\">\r\n\t\t\t\t<mat-icon> print</mat-icon>\r\n\t\t\t</button>\r\n\t\t</div>\r\n\t\t<mat-spinner *ngIf=\"isLoadingResult\" class=\"mt-5 mx-auto\" [diameter]=\"48\"></mat-spinner>\r\n\r\n\t\t<div class=\"reports-grid\" *ngIf=\"!isLoadingResult\">\r\n\t\t\t<app-ndf-report\r\n\t\t\t\t*ngFor=\"let config of reportConfig.items; trackBy: trackByFn\"\r\n\t\t\t\t[config]=\"config\"\r\n\t\t\t\t[data]=\"reports?.response\"\r\n\t\t\t\t[criteria]=\"filtersParams$ | async\"\r\n\t\t\t\t[direction]=\"direction\"\r\n\t\t\t\t[attr.data-width]=\"config?.layout?.width || 4\"\r\n\t\t\t\t[attr.data-height]=\"config?.layout?.height || 'auto'\"\r\n\t\t\t\t[attr.data-start-column]=\"config?.layout?.columnPosition || 'auto'\"\r\n\t\t\t\t[attr.data-start-row]=\"config?.layout?.rowPosition || 'auto'\"\r\n\t\t\t\t[class.wide]=\"config?.layout?.width >= 6\"\r\n\t\t\t\tclass=\"reports-grid__item {{ config?.layout?.styleClass }} \"\r\n\t\t\t\t(onNavigate)=\"onNavigate($event)\"\r\n\t\t\t\t(onOpen)=\"openReportDetails($event, config)\"\r\n\t\t\t></app-ndf-report>\r\n\t\t</div>\r\n\t</div>\r\n\t<div\r\n\t\tclass=\"ndf-reports__details print:hidden\"\r\n\t\t[class.opened]=\"showDetails\"\r\n\t\t[@slideInOut]=\"showDetails ? 'open' : 'closed'\"\r\n\t\t(@slideInOut.done)=\"onDetailsAnimationEnd($event)\"\r\n\t>\r\n\t\t<app-ndf-table\r\n\t\t\t*ngIf=\"reportDetails$ | async as report\"\r\n\t\t\t[config]=\"report.config\"\r\n\t\t\t[activeQuery]=\"activeFiltersQuery$ | async\"\r\n\t\t\t[customCriteria]=\"filtersParams$ | async\"\r\n\t\t>\r\n\t\t\t<ng-template searchTableTemplate>\r\n\t\t\t\t<div class=\"ndf-reports__details__header flex gap-2\">\r\n\t\t\t\t\t<button mat-stroked-button class=\"toggle-button\" (click)=\"togglePanel()\">\r\n\t\t\t\t\t\t<mat-icon> filter_alt</mat-icon>\r\n\t\t\t\t\t</button>\r\n\t\t\t\t\t<button mat-stroked-button class=\"close-button\" (click)=\"closeDetailsPanel()\">\r\n\t\t\t\t\t\t<mat-icon> close</mat-icon>\r\n\t\t\t\t\t</button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<h3>\r\n\t\t\t\t\t{{ report.label | translate }}\r\n\t\t\t\t</h3>\r\n\t\t\t</ng-template>\r\n\t\t</app-ndf-table>\r\n\t</div>\r\n</div>\r\n", styles: [":host{--table-dev-height: var(--ndf-reports-table-dev-height, auto);padding-inline:var(--ndf-reports-inline-padding, 0);padding-block:var(--ndf-reports-block-padding, .5rem 0);height:100%;position:relative;display:flex;flex-direction:column;background-color:var(--ndf-reports-background, #fff);box-sizing:border-box;max-width:100%;flex:0 0 100%}:host:before,:host:after{box-sizing:border-box}:host[dir=ltr]{--ndf-reports-panel-translateX: -100%;--ndf-reports-details-translateX: 100%}.ndf-reports__header{background-color:var(--ndf-reports-background, #fff);flex-direction:var(--ndf-reports-header-direction, row);justify-content:var(--ndf-reports-header-justify, space-between);align-items:var(--ndf-reports-header-items, center);padding-inline:var(--ndf-reports-header-padding-inline, .5rem);padding-block:var(--ndf-reports-header-padding-block, 0 .5rem);position:var(--ndf-reports-header-position, sticky);top:0;z-index:1}.ndf-reports__header__actions{justify-content:var(--ndf-reports-actions-justify, flex-end)}.ndf-reports__header__custom-actions .toggle-button{min-width:0;padding:0 10px}.ndf-reports__container{--panel-width: var(--ndf-reports-panel-width, 18rem);position:relative;overflow:var(--ndf-reports-container-overflow, hidden);display:grid;transition:all .2s;max-width:100%;width:100%;height:var(--ndf-reports-height, calc(var(--ndf-fluid-height) - calc(var(--ndf-reports-block-padding, 1rem) * 2.5)));flex-grow:1;grid-gap:var(--ndf-table-container-gap, .5rem);gap:var(--ndf-table-container-gap, .5rem)}.ndf-reports__container.panel-opened{--ndf-details-margin: var(--panel-width);--ndf-reports-panel-translateX: 0;--ndf-reports-content-margin: var(--panel-width)}@media print{.ndf-reports__container{--ndf-reports-container-overflow: visible;height:100%}}.ndf-reports__panel,.ndf-reports__content .ndf-reports__details{overflow:auto;transition:all .2s}.ndf-reports__panel{position:absolute;width:var(--panel-width);height:100%;transform:translate(var(--ndf-reports-panel-translateX, 100%));padding-inline:var(--ndf-reports-panel-inline-padding, .5rem);padding-block:var(--ndf-reports-panel-block-padding, .5rem);background:var(--ndf-reports-panel-background, #fff);z-index:1}.ndf-reports__content{flex-grow:1;padding-inline-start:var(--ndf-reports-content-margin, 1rem);padding-inline-end:var(--ndf-reports-content-pie, 1rem);padding-block:var(--ndf-reports-content-pb, 0 1rem);overflow-y:var(--ndf-reports-content-overflow-y, auto);position:relative;display:flex;flex-direction:column}@media print{.ndf-reports__content{--ndf-reports-content-overflow-y: visible}}.ndf-reports__details{position:absolute;inset-inline-end:0;width:calc(100% - var(--ndf-details-margin, 0px));height:100%;transform:translate(var(--ndf-reports-details-translateX, -100%));padding-inline:var(--ndf-reports-details-inline-padding, 0rem);flex-grow:1;padding-block:var(--ndf-reports-details-block-padding, 0rem);background:var(--ndf-reports-details-background, #fff);z-index:1;transition:all .2s}.reports-grid{--grid-columns: 12;--column-width: calc(100% / var(--grid-columns));display:grid;grid-gap:var(--reports-grid-gap, 1.5rem);gap:var(--reports-grid-gap, 1.5rem);grid-template-columns:var(--rg-columns, repeat(var(--grid-columns), 1fr));margin-block:var(--reports-grid-margin-block, 1.25rem 0);padding-inline:var(--reports-grid-padding-inline, .5rem)}.reports-grid__item{display:grid;grid-gap:.3rem;gap:.3rem;min-width:0;text-align:center;vertical-align:middle}.reports-grid__item[data-width=\"1\"]{--col-span: span 1}.reports-grid__item[data-start-column=\"1\"]{--col-start: 1}.reports-grid__item[data-start-row=\"1\"]{--row-start: 1}.reports-grid__item[data-height=\"1\"]{--row-span: 1}.reports-grid__item[data-width=\"2\"]{--col-span: span 2}.reports-grid__item[data-start-column=\"2\"]{--col-start: 2}.reports-grid__item[data-start-row=\"2\"]{--row-start: 2}.reports-grid__item[data-height=\"2\"]{--row-span: 2}.reports-grid__item[data-width=\"3\"]{--col-span: span 3}.reports-grid__item[data-start-column=\"3\"]{--col-start: 3}.reports-grid__item[data-start-row=\"3\"]{--row-start: 3}.reports-grid__item[data-height=\"3\"]{--row-span: 3}.reports-grid__item[data-width=\"4\"]{--col-span: span 4}.reports-grid__item[data-start-column=\"4\"]{--col-start: 4}.reports-grid__item[data-start-row=\"4\"]{--row-start: 4}.reports-grid__item[data-height=\"4\"]{--row-span: 4}.reports-grid__item[data-width=\"5\"]{--col-span: span 5}.reports-grid__item[data-start-column=\"5\"]{--col-start: 5}.reports-grid__item[data-start-row=\"5\"]{--row-start: 5}.reports-grid__item[data-height=\"5\"]{--row-span: 5}.reports-grid__item[data-width=\"6\"]{--col-span: span 6}.reports-grid__item[data-start-column=\"6\"]{--col-start: 6}.reports-grid__item[data-start-row=\"6\"]{--row-start: 6}.reports-grid__item[data-height=\"6\"]{--row-span: 6}.reports-grid__item[data-width=\"7\"]{--col-span: span 7}.reports-grid__item[data-start-column=\"7\"]{--col-start: 7}.reports-grid__item[data-start-row=\"7\"]{--row-start: 7}.reports-grid__item[data-height=\"7\"]{--row-span: 7}.reports-grid__item[data-width=\"8\"]{--col-span: span 8}.reports-grid__item[data-start-column=\"8\"]{--col-start: 8}.reports-grid__item[data-start-row=\"8\"]{--row-start: 8}.reports-grid__item[data-height=\"8\"]{--row-span: 8}.reports-grid__item[data-width=\"9\"]{--col-span: span 9}.reports-grid__item[data-start-column=\"9\"]{--col-start: 9}.reports-grid__item[data-start-row=\"9\"]{--row-start: 9}.reports-grid__item[data-height=\"9\"]{--row-span: 9}.reports-grid__item[data-width=\"10\"]{--col-span: span 10}.reports-grid__item[data-start-column=\"10\"]{--col-start: 10}.reports-grid__item[data-start-row=\"10\"]{--row-start: 10}.reports-grid__item[data-height=\"10\"]{--row-span: 10}.reports-grid__item[data-width=\"11\"]{--col-span: span 11}.reports-grid__item[data-start-column=\"11\"]{--col-start: 11}.reports-grid__item[data-start-row=\"11\"]{--row-start: 11}.reports-grid__item[data-height=\"11\"]{--row-span: 11}.reports-grid__item[data-width=\"12\"]{--col-span: span 12}.reports-grid__item[data-start-column=\"12\"]{--col-start: 12}.reports-grid__item[data-start-row=\"12\"]{--row-start: 12}.reports-grid__item[data-height=\"12\"]{--row-span: 12}@media screen{.reports-grid__item{grid-column:var(--col-start, auto)/var(--col-span, span var(--grid-column, 2));grid-row:var(--row-start, auto)/span var(--row-span, 1);grid-template-rows:subgrid}}@media print{.reports-grid{--reports-grid-gap: 11mm;--reports-grid-margin-top: 9mm;--rg-columns: repeat(2, 1fr)}.reports-grid__item{--col-start: auto;--col-span: span 1;border:1px solid #f5f5f5;border-radius:var(--cp-radius, 1rem);page-break-inside:avoid;break-inside:avoid-page}}@media screen and (max-width: 1199px){.reports-grid__item[data-width=\"1\"]{--col-start: auto;--col-span: span 6}.reports-grid__item[data-width=\"2\"]{--col-start: auto;--col-span: span 6}.reports-grid__item[data-width=\"3\"]{--col-start: auto;--col-span: span 6}.reports-grid__item[data-width=\"4\"]{--col-start: auto;--col-span: span 6}.reports-grid__item[data-width=\"5\"]{--col-start: auto;--col-span: span 6}.reports-grid__item[data-width=\"6\"]{--col-start: auto;--col-span: span 6}.reports-grid__item.wide{--col-start: 1;--col-span: -1}}@media screen and (max-width: 767px){.reports-grid__item[data-width]{--col-start: 1;--col-span: -1}}\n"], components: [{ type: i5.FiltersPanelComponent, selector: "app-filters-panel", inputs: ["aggregations", "fields", "activeQuery"], outputs: ["filterChanged"] }, { type: i6.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: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8.EditorButtonComponent, selector: "app-editor-button", inputs: ["type", "key"] }, { type: i9.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: i10.NdfReportComponent, selector: "app-ndf-report", inputs: ["config", "direction", "data", "criteria"], outputs: ["onNavigate", "onOpen"] }, { type: i11.NdfTableComponent, selector: "app-ndf-table", inputs: ["rows", "totalRecords", "autoCalculateHeight", "emptyMessage", "activeQuery", "configPath", "styleClass", "configTransformer", "tableKey", "jsonEditorEnabled", "config", "customCriteria", "searchTerm"], outputs: ["onRowSelected", "onRowIndexSelected", "actionOnRow", "onGettingData", "onMultiRowSelected", "onLoading", "onPage", "onInitialized", "onLoaded", "onQueryChange", "onSort"] }], directives: [{ type: i12.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i13.FluidHeightDirective, selector: "[ndfFluidHeight]", inputs: ["minHeight", "ndfFluidHeight", "subtractItems", "decrease", "delay", "cssVar", "calculate", "inlineStyle"], exportAs: ["ndfFluidHeight"] }, { type: i14.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i15.ScrollableDivDirective, selector: "[scrolled]", inputs: ["scrollTop"], outputs: ["scrolled"] }, { type: i12.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i16.SearchTableTemplateDirective, selector: "[searchTableTemplate]" }], pipes: { "async": i12.AsyncPipe, "translate": i1.TranslatePipe }, animations: [slideAnimation] });
349
349
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NdfReportsComponent, decorators: [{
350
350
  type: Component,
351
351
  args: [{
@@ -372,4 +372,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
372
372
  }], onQueryChange: [{
373
373
  type: Output
374
374
  }] } });
375
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmRmLXJlcG9ydHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL2NvbnRhaW5lcnMvbmRmLXJlcG9ydHMvbmRmLXJlcG9ydHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL2NvbnRhaW5lcnMvbmRmLXJlcG9ydHMvbmRmLXJlcG9ydHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQWtCLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWpHLE9BQU8sRUFFTixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFLTCxNQUFNLEVBRU4sU0FBUyxFQUNULE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBYyxFQUFFLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBbUJ4RyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztB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QzNDLFNBQVMsRUFBRSxDQUFDLDhCQUE4QixDQUFDO29CQUMzQyxJQUFJLEVBQUU7d0JBQ0wsS0FBSyxFQUFFLGFBQWE7d0JBQ3BCLE9BQU8sRUFBRSxXQUFXO3FCQUNwQjtvQkFDRCxVQUFVLEVBQUUsQ0FBQyxjQUFjLENBQUM7aUJBQzVCO3VhQUVpQyxjQUFjO3NCQUE5QyxTQUFTO3VCQUFDLG9CQUFvQjtnQkFtRHRCLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBS08sTUFBTTtzQkFBbEIsS0FBSztnQkFRSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgQW5pbWF0aW9uRXZlbnQsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBEaXJlY3Rpb24gfSBmcm9tICdAYW5ndWxhci9jZGsvYmlkaSc7XHJcbmltcG9ydCB7XHJcblx0Q2hhbmdlRGV0ZWN0b3JSZWYsXHJcblx0Q29tcG9uZW50LFxyXG5cdEV2ZW50RW1pdHRlcixcclxuXHRJbnB1dCxcclxuXHROZ1pvbmUsXHJcblx0T25DaGFuZ2VzLFxyXG5cdE9uRGVzdHJveSxcclxuXHRPbkluaXQsXHJcblx0T3V0cHV0LFxyXG5cdFNpbXBsZUNoYW5nZXMsXHJcblx0Vmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHsgRGVzdHJveVN1YmplY3QsIEZsdWlkSGVpZ2h0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2hhcmVkJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBmb3JrSm9pbiwgZnJvbUV2ZW50LCBPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBmaW5hbGl6ZSwgbWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgQXBpUmVzcG9uc2VNb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2NvcmUvbW9kZWxzJztcclxuaW1wb3J0IHsgTmRmVGFibGVDb25maWcgfSBmcm9tICcuLi8uLi8uLi8uLi90YWJsZXMnO1xyXG5pbXBvcnQge1xyXG5cdEFnZ3JlZ2F0aW9uUmVzcG9uc2UsXHJcblx0RmllbGRDb25maWdNb2RlbCxcclxuXHRGaWx0ZXJRdWVyeVNlcnZpY2UsXHJcblx0RmlsdGVyc01hcHBlclNlcnZpY2UsXHJcblx0Rm9ybVF1ZXJ5TW9kZWxcclxufSBmcm9tICcuLi8uLi8uLi8uLi9uZGYtZmlsdGVycyc7XHJcbmltcG9ydCB7IENyaXRlcmlhTW9kZWwsIE5kZlJlcG9ydHNDb25maWcsIFJlcG9ydENvbmZpZ01vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcclxuaW1wb3J0IHtcclxuXHRDaGFydE1hbmFnZXJTZXJ2aWNlLFxyXG5cdE5kZlJlcG9ydHNTZXJ2aWNlLFxyXG5cdFJlcG9ydENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxyXG5cdFJlcG9ydHNTdGF0ZVNlcnZpY2UsXHJcblx0UmVwb3J0VHJhbnNmb3JtU2VydmljZVxyXG59IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgbWFwVG9OZGZUYWJsZUNvbmZpZyB9IGZyb20gJy4uLy4uL3V0aWxpdGllcyc7XHJcbmltcG9ydCB7IE5ERl9FRElUT1JfVFlQRSB9IGZyb20gJy4uLy4uLy4uLy4uL25kZi1jb25maWctZWRpdG9yL2NvbnN0YW50cyc7XHJcblxyXG5leHBvcnQgY29uc3Qgc2xpZGVBbmltYXRpb24gPSB0cmlnZ2VyKCdzbGlkZUluT3V0JywgW1xyXG5cdHN0YXRlKCdjbG9zZWQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgodmFyKC0tbmRmLXJlcG9ydHMtZGV0YWlscy10cmFuc2xhdGVYLCAtMTAwJSkpJyB9KSksXHJcblx0c3RhdGUoJ29wZW4nLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pKSxcclxuXHR0cmFuc2l0aW9uKCdjbG9zZWQgPD0+IG9wZW4nLCBhbmltYXRlKCcyMDBtcyBlYXNlLW91dCcpKVxyXG5dKTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnYXBwLW5kZi1yZXBvcnRzJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vbmRmLXJlcG9ydHMuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsczogWycuL25kZi1yZXBvcnRzLmNvbXBvbmVudC5zY3NzJ10sXHJcblx0aG9zdDoge1xyXG5cdFx0Y2xhc3M6ICduZGYtcmVwb3J0cycsXHJcblx0XHQnW2Rpcl0nOiAnZGlyZWN0aW9uJ1xyXG5cdH0sXHJcblx0YW5pbWF0aW9uczogW3NsaWRlQW5pbWF0aW9uXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTmRmUmVwb3J0c0NvbXBvbmVudCBleHRlbmRzIERlc3Ryb3lTdWJqZWN0IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XHJcblx0QFZpZXdDaGlsZChGbHVpZEhlaWdodERpcmVjdGl2ZSkgZmx1aWREaXJlY3RpdmU6IEZsdWlkSGVpZ2h0RGlyZWN0aXZlO1xyXG5cdF9pc0hlaWdodFVwZGF0ZWQgPSBmYWxzZTtcclxuXHRkaXJlY3Rpb246IERpcmVjdGlvbiA9ICdydGwnO1xyXG5cdGlzUGFuZWxPcGVuZWQgPSBmYWxzZTtcclxuXHRpc0xvYWRpbmdSZXN1bHQgPSBmYWxzZTtcclxuXHRyZXBvcnRzRGF0YSQ6IE9ic2VydmFibGU8YW55PjtcclxuXHRpc0V4cGFuZGVkID0gZmFsc2U7XHJcblxyXG5cdC8vIGFjdGl2ZVF1ZXJ5OiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XHJcblxyXG5cdHByaXZhdGUgcmVhZG9ubHkgX2FjdGl2ZVF1ZXJ5U3ViID0gbmV3IEJlaGF2aW9yU3ViamVjdDx7XHJcblx0XHRwcmV2aW91czogUmVjb3JkPHN0cmluZywgYW55PjtcclxuXHRcdGN1cnJlbnQ6IFJlY29yZDxzdHJpbmcsIGFueT47XHJcblx0fT4obnVsbCk7XHJcblxyXG5cdHByaXZhdGUgcmVhZG9ubHkgX2FjdGl2ZUZpbHRlcnNRdWVyeVN1YiA9IG5ldyBSZXBsYXlTdWJqZWN0PEZvcm1RdWVyeU1vZGVsPigpO1xyXG5cdHJlYWRvbmx5IGFjdGl2ZUZpbHRlcnNRdWVyeSQgPSB0aGlzLl9hY3RpdmVGaWx0ZXJzUXVlcnlTdWIuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG5cdHByaXZhdGUgcmVhZG9ubHkgX2NvbmZpZ1N1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE5kZlJlcG9ydHNDb25maWc+KG51bGwpO1xyXG5cdHJlYWRvbmx5IHJlcG9ydENvbmZpZyQgPSB0aGlzLl9jb25maWdTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuXHRwcml2YXRlIHJlYWRvbmx5IF9maWx0ZXJzQ3JpdGVyaWFTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDcml0ZXJpYU1vZGVsPihudWxsKTtcclxuXHRyZWFkb25seSBmaWx0ZXJzUGFyYW1zJCA9IHRoaXMuX2ZpbHRlcnNDcml0ZXJpYVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG5cdHByaXZhdGUgX3JlcG9ydERldGFpbHNTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDx7XHJcblx0XHRsYWJlbD86IHN0cmluZztcclxuXHRcdGNvbmZpZzogTmRmVGFibGVDb25maWc7XHJcblx0fT4obnVsbCk7XHJcblxyXG5cdGdldCBhY3RpdmVRdWVyeSgpIHtcclxuXHRcdHJldHVybiB0aGlzLl9hY3RpdmVRdWVyeVN1Yi5nZXRWYWx1ZSgpPy5jdXJyZW50O1xyXG5cdH1cclxuXHJcblx0cmVwb3J0RGV0YWlscyQgPSB0aGlzLl9yZXBvcnREZXRhaWxzU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuXHJcblx0YWdncmVnYXRpb25zOiBSZWNvcmQ8c3RyaW5nLCBBZ2dyZWdhdGlvblJlc3BvbnNlPjtcclxuXHJcblx0Z2V0IHNob3dEZXRhaWxzKCk6IGJvb2xlYW4ge1xyXG5cdFx0cmV0dXJuICEhdGhpcy5fcmVwb3J0RGV0YWlsc1N1YmplY3QuZ2V0VmFsdWUoKTtcclxuXHR9XHJcblxyXG5cdGlzRGV0YWlsc09wZW5lZCA9IGZhbHNlO1xyXG5cclxuXHRnZXQgZmlsdGVyc0NvbmZpZygpIHtcclxuXHRcdHJldHVybiB0aGlzLmNvbmZpZz8uZmlsdGVycztcclxuXHR9XHJcblxyXG5cdGdldCByZXBvcnRDb25maWcoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5jb25maWc/LnJlcG9ydHM7XHJcblx0fVxyXG5cclxuXHRASW5wdXQoKSBqc29uRWRpdG9yRW5hYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cdEBJbnB1dCgpIHJlcG9ydHNLZXk6IHN0cmluZztcclxuXHRlZGl0b3JUeXBlID0gTkRGX0VESVRPUl9UWVBFLlJFUE9SVFM7XHJcblxyXG5cdEBJbnB1dCgpIG5hdmlnYXRlUm91dGU6IHN0cmluZ1tdID0gW107XHJcblxyXG5cdHByaXZhdGUgX2lzQ29uZmlnQ2hhbmdlZCA9IGZhbHNlO1xyXG5cclxuXHRwcml2YXRlIF9jb25maWc6IE5kZlJlcG9ydHNDb25maWc7XHJcblx0QElucHV0KCkgc2V0IGNvbmZpZyhjb25maWc6IE5kZlJlcG9ydHNDb25maWcpIHtcclxuXHRcdHRoaXMuX2NvbmZpZyA9IGNvbmZpZztcclxuXHR9XHJcblxyXG5cdGdldCBjb25maWcoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5fY29uZmlnU3ViamVjdC5nZXRWYWx1ZSgpO1xyXG5cdH1cclxuXHJcblx0QE91dHB1dCgpIG9uUXVlcnlDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG5cdHRyYWNrQnlGbiA9IChfOiBudW1iZXIsIHJlcG9ydDogUmVwb3J0Q29uZmlnTW9kZWwpID0+IHtcclxuXHRcdHJldHVybiByZXBvcnQuaWQ7XHJcblx0fTtcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIF90cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBfZmlsdGVyc01hcHBlcjogRmlsdGVyc01hcHBlclNlcnZpY2UsXHJcblx0XHRwcml2YXRlIF9uZGZSZXBvcnRzU2VydmljZTogTmRmUmVwb3J0c1NlcnZpY2UsXHJcblx0XHRwcml2YXRlIF9jaGFydEhlbHBlclNlcnZpY2U6IENoYXJ0TWFuYWdlclNlcnZpY2UsXHJcblx0XHRwcml2YXRlIF90cmFuc2Zvcm1TZXJ2aWNlOiBSZXBvcnRUcmFuc2Zvcm1TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuXHRcdHByaXZhdGUgX2ZpbHRlclF1ZXJ5U2VydmljZTogRmlsdGVyUXVlcnlTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBfc3RhdGVTZXJ2aWNlOiBSZXBvcnRzU3RhdGVTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBfY29uZmlndXJhdGlvblNlcnZpY2U6IFJlcG9ydENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIsXHJcblx0XHRwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZVxyXG5cdCkge1xyXG5cdFx0c3VwZXIoKTtcclxuXHRcdHRoaXMuX3RyYW5zbGF0ZVNlcnZpY2Uub25MYW5nQ2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG5cdFx0XHR0aGlzLmRpcmVjdGlvbiA9IHJlcy5sYW5nID09PSAnYXInID8gJ3J0bCcgOiAnbHRyJztcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7XHJcblx0XHR0aGlzLnJlcG9ydHNEYXRhJCA9IHRoaXMuX3ByZXBhcmVSZXBvcnRzKCk7XHJcblx0XHR0aGlzLl9oYW5kbGVLZXlib2FyZEV2ZW50KCk7XHJcblx0fVxyXG5cclxuXHRuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcblx0XHRjb25zdCByZXBvcnRzS2V5ID0gY2hhbmdlcy5yZXBvcnRzS2V5Py5jdXJyZW50VmFsdWU7XHJcblx0XHRjb25zdCBjb25maWcgPSBjaGFuZ2VzLmNvbmZpZz8uY3VycmVudFZhbHVlO1xyXG5cclxuXHRcdGlmIChyZXBvcnRzS2V5ICYmIGNvbmZpZykge1xyXG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ1lvdSBjYW5ub3Qgc2V0IGJvdGggcmVwb3J0c0tleSBhbmQgcmVwb3J0cyBDb25maWcgYXQgdGhlIHNhbWUgdGltZS4nKTtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAoY29uZmlnKSB7XHJcblx0XHRcdHRoaXMuX2luaXRSZXBvcnRzQ29uZmlnKGNvbmZpZyk7XHJcblx0XHR9XHJcblxyXG5cdFx0aWYgKHJlcG9ydHNLZXkpIHtcclxuXHRcdFx0dGhpcy5fbG9hZFJlcG9ydHNDb25maWcocmVwb3J0c0tleSk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRvbk5hdmlnYXRlKGRhdGE6IHsgcmVwb3J0OiBSZWNvcmQ8c3RyaW5nLCBhbnk+OyBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IH0pIHtcclxuXHRcdGNvbnN0IHJlcG9ydCA9IGRhdGE/LnJlcG9ydDtcclxuXHRcdGNvbnN0IF9jdXN0b21Sb3V0ZSA9IHJlcG9ydC5uYXZpZ2F0ZT8ucm91dGUgfHwgW107XHJcblx0XHQvLyBsZXQgcm91dGUgPSBbUk1TX0JBU0UucmVwbGFjZSgvXFwvJC8sICcnKV07XHJcblx0XHRsZXQgcm91dGUgPSB0aGlzLm5hdmlnYXRlUm91dGU7XHJcblx0XHRpZiAoISFfY3VzdG9tUm91dGUubGVuZ3RoKSB7XHJcblx0XHRcdHJvdXRlID0gWy4uLnJvdXRlLCAuLi5fY3VzdG9tUm91dGVdO1xyXG5cdFx0fVxyXG5cclxuXHRcdGNvbnN0IHF1ZXJ5UGFyYW1zID0ge307XHJcblx0XHRpZiAocmVwb3J0Lm5hdmlnYXRlPy5pbmNsdWRlUGFyYW1zID8/IHRydWUpIHtcclxuXHRcdFx0aWYgKE9iamVjdC5rZXlzKHRoaXMuYWN0aXZlUXVlcnkgfHwge30pLmxlbmd0aCkge1xyXG5cdFx0XHRcdGNvbnN0IGRhdGEgPSB0aGlzLl9maWx0ZXJRdWVyeVNlcnZpY2UuZW5jb2RlUXVlcnkodGhpcy5hY3RpdmVRdWVyeSk7XHJcblx0XHRcdFx0aWYgKGRhdGEpIHtcclxuXHRcdFx0XHRcdHF1ZXJ5UGFyYW1zWydmaWx0ZXJzJ10gPSBkYXRhO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShyb3V0ZSwgeyBxdWVyeVBhcmFtczogcXVlcnlQYXJhbXMgfSkudGhlbigoKSA9PiB7fSk7XHJcblx0fVxyXG5cclxuXHR0b2dnbGVQYW5lbCgpIHtcclxuXHRcdHRoaXMuaXNQYW5lbE9wZW5lZCA9ICF0aGlzLmlzUGFuZWxPcGVuZWQ7XHJcblx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0dGhpcy5fY2hhcnRIZWxwZXJTZXJ2aWNlLnJlc2l6ZUNoYXJ0cygpO1xyXG5cdFx0fSwgNTAwKTtcclxuXHR9XHJcblxyXG5cdHByaW50QWxsKCkge1xyXG5cdFx0d2luZG93LnByaW50KCk7XHJcblx0fVxyXG5cclxuXHRmaWx0ZXJDaGFuZ2VkKGNyaXRlcmlhOiBSZWNvcmQ8YW55LCBhbnk+KSB7XHJcblx0XHRpZiAoXy5pc0VxdWFsKHRoaXMuYWN0aXZlUXVlcnksIGNyaXRlcmlhKSkge1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblx0XHR0aGlzLm9uUXVlcnlDaGFuZ2UuZW1pdChjcml0ZXJpYSk7XHJcblx0XHR0aGlzLl91cGRhdGVBY3RpdmVRdWVyeShjcml0ZXJpYSk7XHJcblx0XHRjb25zdCBfZGF0ZSA9IHRoaXMuX3ByZXBhcmVNYXBwZWRRdWVyeShjcml0ZXJpYSwgdGhpcy5maWx0ZXJzQ29uZmlnLm1vZGUpO1xyXG5cdFx0dGhpcy5fZmlsdGVyc0NyaXRlcmlhU3ViamVjdC5uZXh0KF9kYXRlKTtcclxuXHR9XHJcblxyXG5cdG9uQ29udGVudFNjcm9sbChpc1Njcm9sbGluZzogYm9vbGVhbik6IHZvaWQge1xyXG5cdFx0dGhpcy5fc3RhdGVTZXJ2aWNlLm9uQ29udGVudFNjcm9sbChpc1Njcm9sbGluZyk7XHJcblxyXG5cdFx0aWYgKGlzU2Nyb2xsaW5nICYmICF0aGlzLl9pc0hlaWdodFVwZGF0ZWQpIHtcclxuXHRcdFx0dGhpcy5faXNIZWlnaHRVcGRhdGVkID0gdHJ1ZTtcclxuXHRcdFx0dGhpcy5mbHVpZERpcmVjdGl2ZS5zY2hlZHVsZVNldEhlaWdodCgxMDApO1xyXG5cdFx0fSBlbHNlIGlmICghaXNTY3JvbGxpbmcgJiYgdGhpcy5faXNIZWlnaHRVcGRhdGVkKSB7XHJcblx0XHRcdHRoaXMuX2lzSGVpZ2h0VXBkYXRlZCA9IGZhbHNlO1xyXG5cdFx0XHR0aGlzLmZsdWlkRGlyZWN0aXZlLnNjaGVkdWxlU2V0SGVpZ2h0KDEwMCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRvcGVuUmVwb3J0RGV0YWlscyhjcml0ZXJpYU1vZGVsOiBDcml0ZXJpYU1vZGVsLCByZXBvcnRDb25maWc6IFJlcG9ydENvbmZpZ01vZGVsKSB7XHJcblx0XHRpZiAoIXJlcG9ydENvbmZpZz8uZGV0YWlscz8uZW5hYmxlZCkge1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblxyXG5cdFx0Y29uc3Qgc291cmNlID0gcmVwb3J0Q29uZmlnPy5kZXRhaWxzPy5zb3VyY2U7XHJcblx0XHRjb25zdCBjb25maWckID1cclxuXHRcdFx0c291cmNlICYmIHR5cGVvZiBzb3VyY2UgPT09ICdzdHJpbmcnXHJcblx0XHRcdFx0PyB0aGlzLl9jb25maWd1cmF0aW9uU2VydmljZS5nZXRUYWJsZUNvbmZpZ3VyYXRpb24oc291cmNlKS5waXBlKFxyXG5cdFx0XHRcdFx0XHRtYXAoKGNvbmZpZykgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdHJldHVybiBfLm1lcmdlKGNvbmZpZywge1xyXG5cdFx0XHRcdFx0XHRcdFx0b3B0aW9uczoge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRmaWx0ZXJzOiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0bW9kZTogJ3BheWxvYWQnLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdGZpZWxkczogW10sXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0cGFuZWw6IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdHZpc2libGU6IGZhbHNlLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0dG9nZ2xlQnV0dG9uOiBmYWxzZVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdFx0KVxyXG5cdFx0XHRcdDogb2YobWFwVG9OZGZUYWJsZUNvbmZpZyh0aGlzLmNvbmZpZywgcmVwb3J0Q29uZmlnLmRldGFpbHMpKTtcclxuXHJcblx0XHRjb25maWckLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKGNvbmZpZykgPT4ge1xyXG5cdFx0XHR0aGlzLl9yZXBvcnREZXRhaWxzU3ViamVjdC5uZXh0KHtcclxuXHRcdFx0XHRjb25maWcsXHJcblx0XHRcdFx0bGFiZWw6IHJlcG9ydENvbmZpZy5sYWJlbFxyXG5cdFx0XHR9KTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0Y2xvc2VEZXRhaWxzUGFuZWwoKSB7XHJcblx0XHR0aGlzLl9yZXBvcnREZXRhaWxzU3ViamVjdC5uZXh0KG51bGwpO1xyXG5cdH1cclxuXHJcblx0b25EZXRhaWxzQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCkge1xyXG5cdFx0dGhpcy5pc0RldGFpbHNPcGVuZWQgPSBldmVudC50b1N0YXRlID09PSAnb3Blbic7XHJcblx0fVxyXG5cclxuXHRuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuXHRcdHN1cGVyLm5nT25EZXN0cm95KCk7XHJcblx0XHR0aGlzLl9jaGFydEhlbHBlclNlcnZpY2UuZGVzdHJveUFsbCgpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBwcmVwYXJlQ3JpdGVyaWFQYXlsb2FkKGNyaXRlcmlhOiBSZWNvcmQ8YW55LCBhbnk+LCBmaWVsZHM6IEZpZWxkQ29uZmlnTW9kZWxbXSA9IHRoaXMuZmlsdGVyc0NvbmZpZy5maWVsZHMpIHtcclxuXHRcdHJldHVybiB0aGlzLl9maWx0ZXJzTWFwcGVyLnByZXBhcmVQYXlsb2FkKGZpZWxkcywgY3JpdGVyaWEpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfc3RyaW5naWZ5VmFsdWVzKGNyaXRlcmlhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KSB7XHJcblx0XHRyZXR1cm4gT2JqZWN0LmVudHJpZXMoY3JpdGVyaWEpLnJlZHVjZSgoYWNjLCBba2V5LCB2YWx1ZV0pID0+IHtcclxuXHRcdFx0YWNjW2tleV0gPSBBcnJheS5pc0FycmF5KHZhbHVlKSA/IEpTT04uc3RyaW5naWZ5KHZhbHVlKSA6IHZhbHVlO1xyXG5cdFx0XHRyZXR1cm4gYWNjO1xyXG5cdFx0fSwge30pO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfcHJlcGFyZVJlcG9ydHMoKSB7XHJcblx0XHR0aGlzLmlzTG9hZGluZ1Jlc3VsdCA9IHRydWU7XHJcblx0XHRyZXR1cm4gY29tYmluZUxhdGVzdChbXHJcblx0XHRcdHRoaXMuZmlsdGVyc1BhcmFtcyQucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgoYSwgYikgPT4gXy5pc0VxdWFsKGEsIGIpKSksXHJcblx0XHRcdHRoaXMucmVwb3J0Q29uZmlnJFxyXG5cdFx0XSkucGlwZShcclxuXHRcdFx0dGFwKCgpID0+IHtcclxuXHRcdFx0XHR0aGlzLmlzTG9hZGluZ1Jlc3VsdCA9IHRydWU7XHJcblx0XHRcdFx0dGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcclxuXHRcdFx0fSksXHJcblx0XHRcdHN3aXRjaE1hcCgoW2NyaXRlcmlhLCBjb25maWddKSA9PiB7XHJcblx0XHRcdFx0Y29uc3QgcmVxdWVzdCA9IGNvbmZpZz8ucmVxdWVzdDtcclxuXHRcdFx0XHRpZiAoIXJlcXVlc3QpIHtcclxuXHRcdFx0XHRcdHJldHVybiBvZihudWxsKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0bGV0IF9wYXlsb2FkID0gY3JpdGVyaWE7XHJcblx0XHRcdFx0aWYgKCFjcml0ZXJpYSAmJiAhIWNvbmZpZy5hY3RpdmVRdWVyeSkge1xyXG5cdFx0XHRcdFx0X3BheWxvYWQgPSB0aGlzLnByZXBhcmVDcml0ZXJpYVBheWxvYWQoY29uZmlnLmFjdGl2ZVF1ZXJ5KTtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdGNvbnN0IGRhdGEkID0gdGhpcy5fbmRmUmVwb3J0c1NlcnZpY2UuZ2V0RGF0YShyZXF1ZXN0LCBfcGF5bG9hZCkucGlwZShcclxuXHRcdFx0XHRcdHN3aXRjaE1hcCgocmVwb3J0czogQXBpUmVzcG9uc2VNb2RlbCkgPT4ge1xyXG5cdFx0XHRcdFx0XHRyZXR1cm4gdGhpcy5fdHJhbnNmb3JtU2VydmljZS5wcmVwYXJlRGF0YShyZXBvcnRzLCBjb25maWcpO1xyXG5cdFx0XHRcdFx0fSksXHJcblx0XHRcdFx0XHRmaW5hbGl6ZSgoKSA9PiB7XHJcblx0XHRcdFx0XHRcdHRoaXMuaXNMb2FkaW5nUmVzdWx0ID0gZmFsc2U7XHJcblx0XHRcdFx0XHRcdHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdCk7XHJcblxyXG5cdFx0XHRcdHJldHVybiBmb3JrSm9pbihbb2YoY29uZmlnKSwgZGF0YSRdKTtcclxuXHRcdFx0fSksXHJcblx0XHRcdG1hcCgoW2NvbmZpZywgcmVzcG9uc2VdKSA9PiB7XHJcblx0XHRcdFx0dGhpcy5fcHJlcGFyZUFnZ3JlZ2F0aW9ucyhyZXNwb25zZT8uYWdncmVnYXRpb25zKTtcclxuXHRcdFx0XHRyZXR1cm4ge1xyXG5cdFx0XHRcdFx0Y29uZmlnLFxyXG5cdFx0XHRcdFx0cmVzcG9uc2VcclxuXHRcdFx0XHR9O1xyXG5cdFx0XHR9KVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX2hhbmRsZUtleWJvYXJkRXZlbnQoKSB7XHJcblx0XHR0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xyXG5cdFx0XHRmcm9tRXZlbnQ8S2V5Ym9hcmRFdmVudD4oZG9jdW1lbnQsICdrZXlkb3duJylcclxuXHRcdFx0XHQucGlwZShcclxuXHRcdFx0XHRcdGZpbHRlcigoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IGV2ZW50LmtleSA9PT0gJ0VzY2FwZScgJiYgdGhpcy5zaG93RGV0YWlscyksXHJcblx0XHRcdFx0XHR0YWtlVW50aWwodGhpcy5kZXN0cm95JClcclxuXHRcdFx0XHQpXHJcblx0XHRcdFx0LnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLmNsb3NlRGV0YWlsc1BhbmVsKCk7XHJcblx0XHRcdFx0fSk7XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX3ByZXBhcmVNYXBwZWRRdWVyeShjcml0ZXJpYTogUmVjb3JkPHN0cmluZywgYW55PiwgbW9kZTogJ3BheWxvYWQnIHwgJ3BhcmFtcycpIHtcclxuXHRcdHJldHVybiBtb2RlID09ICdwYXlsb2FkJ1xyXG5cdFx0XHQ/IHRoaXMucHJlcGFyZUNyaXRlcmlhUGF5bG9hZChjcml0ZXJpYSlcclxuXHRcdFx0OiB7XHJcblx0XHRcdFx0XHRwYXJhbXM6IHRoaXMuX3N0cmluZ2lmeVZhbHVlcyhjcml0ZXJpYSlcclxuXHRcdFx0XHR9O1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfdXBkYXRlQWN0aXZlUXVlcnkocXVlcnk6IFJlY29yZDxzdHJpbmcsIGFueT4pIHtcclxuXHRcdHRoaXMuX2FjdGl2ZVF1ZXJ5U3ViLm5leHQoe1xyXG5cdFx0XHRwcmV2aW91czogdGhpcy5hY3RpdmVRdWVyeSxcclxuXHRcdFx0Y3VycmVudDogcXVlcnlcclxuXHRcdH0pO1xyXG5cdFx0dGhpcy5fYWN0aXZlRmlsdGVyc1F1ZXJ5U3ViLm5leHQoe1xyXG5cdFx0XHRxdWVyeSxcclxuXHRcdFx0ZW1pdEV2ZW50OiBmYWxzZVxyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF9wcmVwYXJlQWdncmVnYXRpb25zKGFnZ3JlZ2F0aW9uczogYW55KSB7XHJcblx0XHRpZiAodGhpcy5faXNDb25maWdDaGFuZ2VkICYmIHRoaXMuYWdncmVnYXRpb25zKSB7XHJcblx0XHRcdHRoaXMuYWdncmVnYXRpb25zID0gbnVsbDtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCByZWxvYWRTdHJhdGVneSA9IHRoaXMuY29uZmlnPy5maWx0ZXJzPy5yZWxvYWQ/LnN0cmF0ZWd5O1xyXG5cclxuXHRcdGlmICh0aGlzLmFnZ3JlZ2F0aW9ucyAmJiByZWxvYWRTdHJhdGVneSA9PT0gJ25ldmVyJykge1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblxyXG5cdFx0aWYgKHRoaXMuYWdncmVnYXRpb25zICYmIHJlbG9hZFN0cmF0ZWd5ID09PSAnb25DaGFuZ2UnKSB7XHJcblx0XHRcdGlmICh0aGlzLl9zaG91bGRSZWxvYWRPbkNoYW5nZSgpKSB7XHJcblx0XHRcdFx0dGhpcy5fdXBkYXRlQWdncmVnYXRpb25zKGFnZ3JlZ2F0aW9ucyk7XHJcblx0XHRcdH1cclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cclxuXHRcdHRoaXMuX3VwZGF0ZUFnZ3JlZ2F0aW9ucyhhZ2dyZWdhdGlvbnMpO1xyXG5cdFx0dGhpcy5faXNDb25maWdDaGFuZ2VkID0gZmFsc2U7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF9zaG91bGRSZWxvYWRPbkNoYW5nZSgpIHtcclxuXHRcdGlmICh0aGlzLmNvbmZpZz8uZmlsdGVycz8ucmVsb2FkPy5zdHJhdGVneSAhPT0gJ29uQ2hhbmdlJykge1xyXG5cdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHR9XHJcblxyXG5cdFx0Y29uc3QgdHJpZ2dlckZpZWxkcyA9IHRoaXMuY29uZmlnPy5maWx0ZXJzPy5yZWxvYWQ/LnRyaWdnZXJGaWVsZHM7XHJcblxyXG5cdFx0aWYgKCFBcnJheS5pc0FycmF5KHRyaWdnZXJGaWVsZHMpKSB7XHJcblx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCB2YWxpZEZpZWxkcyA9IHRyaWdnZXJGaWVsZHMuZmlsdGVyKEJvb2xlYW4pO1xyXG5cdFx0aWYgKCF2YWxpZEZpZWxkcy5sZW5ndGgpIHtcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cclxuXHRcdGNvbnN0IGFjdGl2YXRlZFF1ZXJ5ID0gdGhpcy5fYWN0aXZlUXVlcnlTdWIuZ2V0VmFsdWUoKTtcclxuXHRcdGNvbnN0IGN1cnJlbnRWYWx1ZSA9IGFjdGl2YXRlZFF1ZXJ5Py5jdXJyZW50IHx8IHt9O1xyXG5cdFx0Y29uc3QgcHJldmlvdXNWYWx1ZSA9IGFjdGl2YXRlZFF1ZXJ5Py5wcmV2aW91cyB8fCB7fTtcclxuXHJcblx0XHRjb25zdCBjaGFuZ2VkS2V5cyA9IHRoaXMuX2dldENoYW5nZWRLZXlzKHByZXZpb3VzVmFsdWUsIGN1cnJlbnRWYWx1ZSk7XHJcblxyXG5cdFx0cmV0dXJuIHZhbGlkRmllbGRzLnNvbWUoKGZpZWxkKSA9PiBjaGFuZ2VkS2V5cy5pbmNsdWRlcyhmaWVsZCkpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfZ2V0Q2hhbmdlZEtleXMocHJldmlvdXM6IFJlY29yZDxzdHJpbmcsIGFueT4sIGN1cnJlbnQ6IFJlY29yZDxzdHJpbmcsIGFueT4pOiBzdHJpbmdbXSB7XHJcblx0XHRjb25zdCBhbGxLZXlzID0gXy51bmlvbihfLmtleXMocHJldmlvdXMpLCBfLmtleXMoY3VycmVudCkpO1xyXG5cdFx0cmV0dXJuIGFsbEtleXMuZmlsdGVyKChrZXkpID0+ICFfLmlzRXF1YWwocHJldmlvdXNba2V5XSwgY3VycmVudFtrZXldKSk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF91cGRhdGVBZ2dyZWdhdGlvbnMoYWdncmVnYXRpb25zOiBhbnkpOiB2b2lkIHtcclxuXHRcdHRoaXMuYWdncmVnYXRpb25zID0gXy5jbG9uZURlZXAoYWdncmVnYXRpb25zKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX2NoZWNrQ29uZmlnQ2hhbmdlKHZhbHVlOiBOZGZSZXBvcnRzQ29uZmlnKSB7XHJcblx0XHRjb25zdCB7IGFjdGl2ZVF1ZXJ5LCAuLi5jb25maWcgfSA9IHZhbHVlO1xyXG5cdFx0Y29uc3QgeyBhY3RpdmVRdWVyeTogYXEsIC4uLmN1cnJlbnRDb25maWcgfSA9IHRoaXMuX2NvbmZpZ1N1YmplY3QuZ2V0VmFsdWUoKSB8fCB7fTtcclxuXHJcblx0XHR0aGlzLl9pc0NvbmZpZ0NoYW5nZWQgPSAhXy5pc0VxdWFsKGN1cnJlbnRDb25maWcsIGNvbmZpZyk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF9sb2FkUmVwb3J0c0NvbmZpZyhrZXk6IHN0cmluZykge1xyXG5cdFx0dGhpcy5fY29uZmlndXJhdGlvblNlcnZpY2VcclxuXHRcdFx0LmdldFJlcG9ydHNDb25maWd1cmF0aW9uKGtleSlcclxuXHRcdFx0LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG5cdFx0XHQuc3Vic2NyaWJlKChjb25maWcpID0+IHtcclxuXHRcdFx0XHRpZiAoY29uZmlnKSB7XHJcblx0XHRcdFx0XHR0aGlzLl9pbml0UmVwb3J0c0NvbmZpZyhjb25maWcpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF9pbml0UmVwb3J0c0NvbmZpZyhjb25maWc6IE5kZlJlcG9ydHNDb25maWcpIHtcclxuXHRcdGNvbnN0IHZhbHVlID0gXy5jbG9uZURlZXAoY29uZmlnKTtcclxuXHRcdHRoaXMuX2NoZWNrQ29uZmlnQ2hhbmdlKHZhbHVlKTtcclxuXHRcdHRoaXMuX2NvbmZpZ1N1YmplY3QubmV4dCh2YWx1ZSk7XHJcblx0XHRpZiAodmFsdWU/LmFjdGl2ZVF1ZXJ5ICYmICEhT2JqZWN0LmtleXModmFsdWU/LmFjdGl2ZVF1ZXJ5KS5sZW5ndGgpIHtcclxuXHRcdFx0dGhpcy5fdXBkYXRlQWN0aXZlUXVlcnkodmFsdWU/LmFjdGl2ZVF1ZXJ5KTtcclxuXHRcdFx0dGhpcy5fZmlsdGVyc0NyaXRlcmlhU3ViamVjdC5uZXh0KHRoaXMuX3ByZXBhcmVNYXBwZWRRdWVyeSh2YWx1ZT8uYWN0aXZlUXVlcnksIHRoaXMuZmlsdGVyc0NvbmZpZy5tb2RlKSk7XHJcblx0XHR9IGVsc2UgaWYgKCF0aGlzLmFjdGl2ZVF1ZXJ5IHx8IE9iamVjdC5rZXlzKHRoaXMuYWN0aXZlUXVlcnkpLmxlbmd0aCA9PSAwKSB7XHJcblx0XHRcdHRoaXMuX3Jlc2V0UXVlcnlBbmRGaWx0ZXJzQ3JpdGVyaWEoKTtcclxuXHRcdH1cclxuXHRcdHRoaXMuaXNQYW5lbE9wZW5lZCA9IGZhbHNlO1xyXG5cdFx0dGhpcy5pc0RldGFpbHNPcGVuZWQgPSBmYWxzZTtcclxuXHRcdHRoaXMuX3JlcG9ydERldGFpbHNTdWJqZWN0Lm5leHQobnVsbCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF9yZXNldFF1ZXJ5QW5kRmlsdGVyc0NyaXRlcmlhKCkge1xyXG5cdFx0dGhpcy5fdXBkYXRlQWN0aXZlUXVlcnkoe30pO1xyXG5cdFx0dGhpcy5fZmlsdGVyc0NyaXRlcmlhU3ViamVjdC5uZXh0KG51bGwpO1xyXG5cdH1cclxufVxyXG4iLCI8ZGl2XHJcblx0Km5nSWY9XCJyZXBvcnRzRGF0YSQgfCBhc3luYyBhcyByZXBvcnRzXCJcclxuXHRjbGFzcz1cIm5kZi1yZXBvcnRzX19jb250YWluZXJcIlxyXG5cdFtjbGFzcy5wYW5lbC1vcGVuZWRdPVwiaXNQYW5lbE9wZW5lZCAmJiBmaWx0ZXJzQ29uZmlnXCJcclxuXHRbZGlyXT1cImRpcmVjdGlvblwiXHJcblx0bmRmRmx1aWRIZWlnaHRcclxuPlxyXG5cdDxkaXYgY2xhc3M9XCJuZGYtcmVwb3J0c19fcGFuZWwgcHJpbnQ6aGlkZGVuXCIgKm5nSWY9XCIhIWZpbHRlcnNDb25maWc/LmZpZWxkcz8ubGVuZ3RoXCI+XHJcblx0XHQ8YXBwLWZpbHRlcnMtcGFuZWxcclxuXHRcdFx0W2ZpZWxkc109XCJmaWx0ZXJzQ29uZmlnPy5maWVsZHNcIlxyXG5cdFx0XHRbYWdncmVnYXRpb25zXT1cImFnZ3JlZ2F0aW9uc1wiXHJcblx0XHRcdChmaWx0ZXJDaGFuZ2VkKT1cImZpbHRlckNoYW5nZWQoJGV2ZW50KVwiXHJcblx0XHRcdFthY3RpdmVRdWVyeV09XCJhY3RpdmVGaWx0ZXJzUXVlcnkkIHwgYXN5bmNcIlxyXG5cdFx0XHRjbGFzcz1cIm5kZi1yZXBvcnRzX19maWx0ZXJzXCJcclxuXHRcdD48L2FwcC1maWx0ZXJzLXBhbmVsPlxyXG5cdDwvZGl2PlxyXG5cclxuXHQ8ZGl2IGNsYXNzPVwibmRmLXJlcG9ydHNfX2NvbnRlbnRcIiAoc2Nyb2xsZWQpPVwib25Db250ZW50U2Nyb2xsKCRldmVudClcIj5cclxuXHRcdDxkaXYgY2xhc3M9XCJuZGYtcmVwb3J0c19faGVhZGVyIGZsZXggcHQtNCBwcmludDpoaWRkZW5cIj5cclxuXHRcdFx0PGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY2xhc3M9XCJ0b2dnbGUtYnV0dG9uXCIgKGNsaWNrKT1cInRvZ2dsZVBhbmVsKClcIj5cclxuXHRcdFx0XHQ8bWF0LWljb24+IGZpbHRlcl9hbHQ8L21hdC1pY29uPlxyXG5cdFx0XHQ8L2J1dHRvbj5cclxuXHRcdFx0PGFwcC1lZGl0b3ItYnV0dG9uXHJcblx0XHRcdFx0Km5nSWY9XCJqc29uRWRpdG9yRW5hYmxlZCAmJiByZXBvcnRzS2V5XCJcclxuXHRcdFx0XHRba2V5XT1cInJlcG9ydHNLZXlcIlxyXG5cdFx0XHRcdFt0eXBlXT1cImVkaXRvclR5cGVcIlxyXG5cdFx0XHQ+PC9hcHAtZWRpdG9yLWJ1dHRvbj5cclxuXHRcdFx0PGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gKm5nSWY9XCJjb25maWc/Lm9wdGlvbnM/LnByaW50XCIgY2xhc3M9XCJwcmludC1idXR0b25cIiAoY2xpY2spPVwicHJpbnRBbGwoKVwiPlxyXG5cdFx0XHRcdDxtYXQtaWNvbj4gcHJpbnQ8L21hdC1pY29uPlxyXG5cdFx0XHQ8L2J1dHRvbj5cclxuXHRcdDwvZGl2PlxyXG5cdFx0PG1hdC1zcGlubmVyICpuZ0lmPVwiaXNMb2FkaW5nUmVzdWx0XCIgY2xhc3M9XCJtdC01IG14LWF1dG9cIiBbZGlhbWV0ZXJdPVwiNDhcIj48L21hdC1zcGlubmVyPlxyXG5cclxuXHRcdDxkaXYgY2xhc3M9XCJyZXBvcnRzLWdyaWRcIiAqbmdJZj1cIiFpc0xvYWRpbmdSZXN1bHRcIj5cclxuXHRcdFx0PGFwcC1uZGYtcmVwb3J0XHJcblx0XHRcdFx0Km5nRm9yPVwibGV0IGNvbmZpZyBvZiByZXBvcnRDb25maWcuaXRlbXM7IHRyYWNrQnk6IHRyYWNrQnlGblwiXHJcblx0XHRcdFx0W2NvbmZpZ109XCJjb25maWdcIlxyXG5cdFx0XHRcdFtkYXRhXT1cInJlcG9ydHM/LnJlc3BvbnNlXCJcclxuXHRcdFx0XHRbY3JpdGVyaWFdPVwiZmlsdGVyc1BhcmFtcyQgfCBhc3luY1wiXHJcblx0XHRcdFx0W2RpcmVjdGlvbl09XCJkaXJlY3Rpb25cIlxyXG5cdFx0XHRcdFthdHRyLmRhdGEtd2lkdGhdPVwiY29uZmlnPy5sYXlvdXQ/LndpZHRoIHx8IDRcIlxyXG5cdFx0XHRcdFthdHRyLmRhdGEtaGVpZ2h0XT1cImNvbmZpZz8ubGF5b3V0Py5oZWlnaHQgfHwgJ2F1dG8nXCJcclxuXHRcdFx0XHRbYXR0ci5kYXRhLXN0YXJ0LWNvbHVtbl09XCJjb25maWc/LmxheW91dD8uY29sdW1uUG9zaXRpb24gfHwgJ2F1dG8nXCJcclxuXHRcdFx0XHRbYXR0ci5kYXRhLXN0YXJ0LXJvd109XCJjb25maWc/LmxheW91dD8ucm93UG9zaXRpb24gfHwgJ2F1dG8nXCJcclxuXHRcdFx0XHRbY2xhc3Mud2lkZV09XCJjb25maWc/LmxheW91dD8ud2lkdGggPj0gNlwiXHJcblx0XHRcdFx0Y2xhc3M9XCJyZXBvcnRzLWdyaWRfX2l0ZW0ge3sgY29uZmlnPy5sYXlvdXQ/LnN0eWxlQ2xhc3MgfX0gXCJcclxuXHRcdFx0XHQob25OYXZpZ2F0ZSk9XCJvbk5hdmlnYXRlKCRldmVudClcIlxyXG5cdFx0XHRcdChvbk9wZW4pPVwib3BlblJlcG9ydERldGFpbHMoJGV2ZW50LCBjb25maWcpXCJcclxuXHRcdFx0PjwvYXBwLW5kZi1yZXBvcnQ+XHJcblx0XHQ8L2Rpdj5cclxuXHQ8L2Rpdj5cclxuXHQ8ZGl2XHJcblx0XHRjbGFzcz1cIm5kZi1yZXBvcnRzX19kZXRhaWxzIHByaW50OmhpZGRlblwiXHJcblx0XHRbY2xhc3Mub3BlbmVkXT1cInNob3dEZXRhaWxzXCJcclxuXHRcdFtAc2xpZGVJbk91dF09XCJzaG93RGV0YWlscyA/ICdvcGVuJyA6ICdjbG9zZWQnXCJcclxuXHRcdChAc2xpZGVJbk91dC5kb25lKT1cIm9uRGV0YWlsc0FuaW1hdGlvbkVuZCgkZXZlbnQpXCJcclxuXHQ+XHJcblx0XHQ8YXBwLW5kZi10YWJsZVxyXG5cdFx0XHQqbmdJZj1cInJlcG9ydERldGFpbHMkIHwgYXN5bmMgYXMgcmVwb3J0XCJcclxuXHRcdFx0W2NvbmZpZ109XCJyZXBvcnQuY29uZmlnXCJcclxuXHRcdFx0W2FjdGl2ZVF1ZXJ5XT1cImFjdGl2ZUZpbHRlcnNRdWVyeSQgfCBhc3luY1wiXHJcblx0XHRcdFtjdXN0b21Dcml0ZXJpYV09XCJmaWx0ZXJzUGFyYW1zJCB8IGFzeW5jXCJcclxuXHRcdD5cclxuXHRcdFx0PG5nLXRlbXBsYXRlIHNlYXJjaFRhYmxlVGVtcGxhdGU+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cIm5kZi1yZXBvcnRzX19kZXRhaWxzX19oZWFkZXIgZmxleCBnYXAtMlwiPlxyXG5cdFx0XHRcdFx0PGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY2xhc3M9XCJ0b2dnbGUtYnV0dG9uXCIgKGNsaWNrKT1cInRvZ2dsZVBhbmVsKClcIj5cclxuXHRcdFx0XHRcdFx0PG1hdC1pY29uPiBmaWx0ZXJfYWx0PC9tYXQtaWNvbj5cclxuXHRcdFx0XHRcdDwvYnV0dG9uPlxyXG5cdFx0XHRcdFx0PGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY2xhc3M9XCJjbG9zZS1idXR0b25cIiAoY2xpY2spPVwiY2xvc2VEZXRhaWxzUGFuZWwoKVwiPlxyXG5cdFx0XHRcdFx0XHQ8bWF0LWljb24+IGNsb3NlPC9tYXQtaWNvbj5cclxuXHRcdFx0XHRcdDwvYnV0dG9uPlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdDxoMz5cclxuXHRcdFx0XHRcdHt7IHJlcG9ydC5sYWJlbCB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHRcdDwvaDM+XHJcblx0XHRcdDwvbmctdGVtcGxhdGU+XHJcblx0XHQ8L2FwcC1uZGYtdGFibGU+XHJcblx0PC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
375
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmRmLXJlcG9ydHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL2NvbnRhaW5lcnMvbmRmLXJlcG9ydHMvbmRmLXJlcG9ydHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL2NvbnRhaW5lcnMvbmRmLXJlcG9ydHMvbmRmLXJlcG9ydHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQWtCLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWpHLE9BQU8sRUFFTixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFLTCxNQUFNLEVBRU4sU0FBUyxFQUNULE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBYyxFQUFFLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBbUJ4RyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztB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QzNDLFNBQVMsRUFBRSxDQUFDLDhCQUE4QixDQUFDO29CQUMzQyxJQUFJLEVBQUU7d0JBQ0wsS0FBSyxFQUFFLGFBQWE7d0JBQ3BCLE9BQU8sRUFBRSxXQUFXO3FCQUNwQjtvQkFDRCxVQUFVLEVBQUUsQ0FBQyxjQUFjLENBQUM7aUJBQzVCO3VhQUVpQyxjQUFjO3NCQUE5QyxTQUFTO3VCQUFDLG9CQUFvQjtnQkFtRHRCLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBS08sTUFBTTtzQkFBbEIsS0FBSztnQkFRSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgQW5pbWF0aW9uRXZlbnQsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBEaXJlY3Rpb24gfSBmcm9tICdAYW5ndWxhci9jZGsvYmlkaSc7XHJcbmltcG9ydCB7XHJcblx0Q2hhbmdlRGV0ZWN0b3JSZWYsXHJcblx0Q29tcG9uZW50LFxyXG5cdEV2ZW50RW1pdHRlcixcclxuXHRJbnB1dCxcclxuXHROZ1pvbmUsXHJcblx0T25DaGFuZ2VzLFxyXG5cdE9uRGVzdHJveSxcclxuXHRPbkluaXQsXHJcblx0T3V0cHV0LFxyXG5cdFNpbXBsZUNoYW5nZXMsXHJcblx0Vmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHsgRGVzdHJveVN1YmplY3QsIEZsdWlkSGVpZ2h0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2hhcmVkJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBmb3JrSm9pbiwgZnJvbUV2ZW50LCBPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBmaW5hbGl6ZSwgbWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgQXBpUmVzcG9uc2VNb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2NvcmUvbW9kZWxzJztcclxuaW1wb3J0IHsgTmRmVGFibGVDb25maWcgfSBmcm9tICcuLi8uLi8uLi8uLi90YWJsZXMnO1xyXG5pbXBvcnQge1xyXG5cdEFnZ3JlZ2F0aW9uUmVzcG9uc2UsXHJcblx0RmllbGRDb25maWdNb2RlbCxcclxuXHRGaWx0ZXJRdWVyeVNlcnZpY2UsXHJcblx0RmlsdGVyc01hcHBlclNlcnZpY2UsXHJcblx0Rm9ybVF1ZXJ5TW9kZWxcclxufSBmcm9tICcuLi8uLi8uLi8uLi9uZGYtZmlsdGVycyc7XHJcbmltcG9ydCB7IENyaXRlcmlhTW9kZWwsIE5kZlJlcG9ydHNDb25maWcsIFJlcG9ydENvbmZpZ01vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcclxuaW1wb3J0IHtcclxuXHRDaGFydE1hbmFnZXJTZXJ2aWNlLFxyXG5cdE5kZlJlcG9ydHNTZXJ2aWNlLFxyXG5cdFJlcG9ydENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxyXG5cdFJlcG9ydHNTdGF0ZVNlcnZpY2UsXHJcblx0UmVwb3J0VHJhbnNmb3JtU2VydmljZVxyXG59IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgbWFwVG9OZGZUYWJsZUNvbmZpZyB9IGZyb20gJy4uLy4uL3V0aWxpdGllcyc7XHJcbmltcG9ydCB7IE5ERl9FRElUT1JfVFlQRSB9IGZyb20gJy4uLy4uLy4uLy4uL25kZi1jb25maWctZWRpdG9yL2NvbnN0YW50cyc7XHJcblxyXG5leHBvcnQgY29uc3Qgc2xpZGVBbmltYXRpb24gPSB0cmlnZ2VyKCdzbGlkZUluT3V0JywgW1xyXG5cdHN0YXRlKCdjbG9zZWQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgodmFyKC0tbmRmLXJlcG9ydHMtZGV0YWlscy10cmFuc2xhdGVYLCAtMTAwJSkpJyB9KSksXHJcblx0c3RhdGUoJ29wZW4nLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pKSxcclxuXHR0cmFuc2l0aW9uKCdjbG9zZWQgPD0+IG9wZW4nLCBhbmltYXRlKCcyMDBtcyBlYXNlLW91dCcpKVxyXG5dKTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnYXBwLW5kZi1yZXBvcnRzJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vbmRmLXJlcG9ydHMuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsczogWycuL25kZi1yZXBvcnRzLmNvbXBvbmVudC5zY3NzJ10sXHJcblx0aG9zdDoge1xyXG5cdFx0Y2xhc3M6ICduZGYtcmVwb3J0cycsXHJcblx0XHQnW2Rpcl0nOiAnZGlyZWN0aW9uJ1xyXG5cdH0sXHJcblx0YW5pbWF0aW9uczogW3NsaWRlQW5pbWF0aW9uXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTmRmUmVwb3J0c0NvbXBvbmVudCBleHRlbmRzIERlc3Ryb3lTdWJqZWN0IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XHJcblx0QFZpZXdDaGlsZChGbHVpZEhlaWdodERpcmVjdGl2ZSkgZmx1aWREaXJlY3RpdmU6IEZsdWlkSGVpZ2h0RGlyZWN0aXZlO1xyXG5cdF9pc0hlaWdodFVwZGF0ZWQgPSBmYWxzZTtcclxuXHRkaXJlY3Rpb246IERpcmVjdGlvbiA9ICdydGwnO1xyXG5cdGlzUGFuZWxPcGVuZWQgPSBmYWxzZTtcclxuXHRpc0xvYWRpbmdSZXN1bHQgPSBmYWxzZTtcclxuXHRyZXBvcnRzRGF0YSQ6IE9ic2VydmFibGU8YW55PjtcclxuXHRpc0V4cGFuZGVkID0gZmFsc2U7XHJcblxyXG5cdC8vIGFjdGl2ZVF1ZXJ5OiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XHJcblxyXG5cdHByaXZhdGUgcmVhZG9ubHkgX2FjdGl2ZVF1ZXJ5U3ViID0gbmV3IEJlaGF2aW9yU3ViamVjdDx7XHJcblx0XHRwcmV2aW91czogUmVjb3JkPHN0cmluZywgYW55PjtcclxuXHRcdGN1cnJlbnQ6IFJlY29yZDxzdHJpbmcsIGFueT47XHJcblx0fT4obnVsbCk7XHJcblxyXG5cdHByaXZhdGUgcmVhZG9ubHkgX2FjdGl2ZUZpbHRlcnNRdWVyeVN1YiA9IG5ldyBSZXBsYXlTdWJqZWN0PEZvcm1RdWVyeU1vZGVsPigpO1xyXG5cdHJlYWRvbmx5IGFjdGl2ZUZpbHRlcnNRdWVyeSQgPSB0aGlzLl9hY3RpdmVGaWx0ZXJzUXVlcnlTdWIuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG5cdHByaXZhdGUgcmVhZG9ubHkgX2NvbmZpZ1N1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE5kZlJlcG9ydHNDb25maWc+KG51bGwpO1xyXG5cdHJlYWRvbmx5IHJlcG9ydENvbmZpZyQgPSB0aGlzLl9jb25maWdTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuXHRwcml2YXRlIHJlYWRvbmx5IF9maWx0ZXJzQ3JpdGVyaWFTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDcml0ZXJpYU1vZGVsPihudWxsKTtcclxuXHRyZWFkb25seSBmaWx0ZXJzUGFyYW1zJCA9IHRoaXMuX2ZpbHRlcnNDcml0ZXJpYVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG5cdHByaXZhdGUgX3JlcG9ydERldGFpbHNTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDx7XHJcblx0XHRsYWJlbD86IHN0cmluZztcclxuXHRcdGNvbmZpZzogTmRmVGFibGVDb25maWc7XHJcblx0fT4obnVsbCk7XHJcblxyXG5cdGdldCBhY3RpdmVRdWVyeSgpIHtcclxuXHRcdHJldHVybiB0aGlzLl9hY3RpdmVRdWVyeVN1Yi5nZXRWYWx1ZSgpPy5jdXJyZW50O1xyXG5cdH1cclxuXHJcblx0cmVwb3J0RGV0YWlscyQgPSB0aGlzLl9yZXBvcnREZXRhaWxzU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuXHJcblx0YWdncmVnYXRpb25zOiBSZWNvcmQ8c3RyaW5nLCBBZ2dyZWdhdGlvblJlc3BvbnNlPjtcclxuXHJcblx0Z2V0IHNob3dEZXRhaWxzKCk6IGJvb2xlYW4ge1xyXG5cdFx0cmV0dXJuICEhdGhpcy5fcmVwb3J0RGV0YWlsc1N1YmplY3QuZ2V0VmFsdWUoKTtcclxuXHR9XHJcblxyXG5cdGlzRGV0YWlsc09wZW5lZCA9IGZhbHNlO1xyXG5cclxuXHRnZXQgZmlsdGVyc0NvbmZpZygpIHtcclxuXHRcdHJldHVybiB0aGlzLmNvbmZpZz8uZmlsdGVycztcclxuXHR9XHJcblxyXG5cdGdldCByZXBvcnRDb25maWcoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5jb25maWc/LnJlcG9ydHM7XHJcblx0fVxyXG5cclxuXHRASW5wdXQoKSBqc29uRWRpdG9yRW5hYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cdEBJbnB1dCgpIHJlcG9ydHNLZXk6IHN0cmluZztcclxuXHRlZGl0b3JUeXBlID0gTkRGX0VESVRPUl9UWVBFLlJFUE9SVFM7XHJcblxyXG5cdEBJbnB1dCgpIG5hdmlnYXRlUm91dGU6IHN0cmluZ1tdID0gW107XHJcblxyXG5cdHByaXZhdGUgX2lzQ29uZmlnQ2hhbmdlZCA9IGZhbHNlO1xyXG5cclxuXHRwcml2YXRlIF9jb25maWc6IE5kZlJlcG9ydHNDb25maWc7XHJcblx0QElucHV0KCkgc2V0IGNvbmZpZyhjb25maWc6IE5kZlJlcG9ydHNDb25maWcpIHtcclxuXHRcdHRoaXMuX2NvbmZpZyA9IGNvbmZpZztcclxuXHR9XHJcblxyXG5cdGdldCBjb25maWcoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5fY29uZmlnU3ViamVjdC5nZXRWYWx1ZSgpO1xyXG5cdH1cclxuXHJcblx0QE91dHB1dCgpIG9uUXVlcnlDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG5cdHRyYWNrQnlGbiA9IChfOiBudW1iZXIsIHJlcG9ydDogUmVwb3J0Q29uZmlnTW9kZWwpID0+IHtcclxuXHRcdHJldHVybiByZXBvcnQuaWQ7XHJcblx0fTtcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIF90cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBfZmlsdGVyc01hcHBlcjogRmlsdGVyc01hcHBlclNlcnZpY2UsXHJcblx0XHRwcml2YXRlIF9uZGZSZXBvcnRzU2VydmljZTogTmRmUmVwb3J0c1NlcnZpY2UsXHJcblx0XHRwcml2YXRlIF9jaGFydEhlbHBlclNlcnZpY2U6IENoYXJ0TWFuYWdlclNlcnZpY2UsXHJcblx0XHRwcml2YXRlIF90cmFuc2Zvcm1TZXJ2aWNlOiBSZXBvcnRUcmFuc2Zvcm1TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuXHRcdHByaXZhdGUgX2ZpbHRlclF1ZXJ5U2VydmljZTogRmlsdGVyUXVlcnlTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBfc3RhdGVTZXJ2aWNlOiBSZXBvcnRzU3RhdGVTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBfY29uZmlndXJhdGlvblNlcnZpY2U6IFJlcG9ydENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIsXHJcblx0XHRwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZVxyXG5cdCkge1xyXG5cdFx0c3VwZXIoKTtcclxuXHRcdHRoaXMuX3RyYW5zbGF0ZVNlcnZpY2Uub25MYW5nQ2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG5cdFx0XHR0aGlzLmRpcmVjdGlvbiA9IHJlcy5sYW5nID09PSAnYXInID8gJ3J0bCcgOiAnbHRyJztcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7XHJcblx0XHR0aGlzLnJlcG9ydHNEYXRhJCA9IHRoaXMuX3ByZXBhcmVSZXBvcnRzKCk7XHJcblx0XHR0aGlzLl9oYW5kbGVLZXlib2FyZEV2ZW50KCk7XHJcblx0fVxyXG5cclxuXHRuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcblx0XHRjb25zdCByZXBvcnRzS2V5ID0gY2hhbmdlcy5yZXBvcnRzS2V5Py5jdXJyZW50VmFsdWU7XHJcblx0XHRjb25zdCBjb25maWcgPSBjaGFuZ2VzLmNvbmZpZz8uY3VycmVudFZhbHVlO1xyXG5cclxuXHRcdGlmIChyZXBvcnRzS2V5ICYmIGNvbmZpZykge1xyXG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ1lvdSBjYW5ub3Qgc2V0IGJvdGggcmVwb3J0c0tleSBhbmQgcmVwb3J0cyBDb25maWcgYXQgdGhlIHNhbWUgdGltZS4nKTtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAoY29uZmlnKSB7XHJcblx0XHRcdHRoaXMuX2luaXRSZXBvcnRzQ29uZmlnKGNvbmZpZyk7XHJcblx0XHR9XHJcblxyXG5cdFx0aWYgKHJlcG9ydHNLZXkpIHtcclxuXHRcdFx0dGhpcy5fbG9hZFJlcG9ydHNDb25maWcocmVwb3J0c0tleSk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRvbk5hdmlnYXRlKGRhdGE6IHsgcmVwb3J0OiBSZWNvcmQ8c3RyaW5nLCBhbnk+OyBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IH0pIHtcclxuXHRcdGNvbnN0IHJlcG9ydCA9IGRhdGE/LnJlcG9ydDtcclxuXHRcdGNvbnN0IF9jdXN0b21Sb3V0ZSA9IHJlcG9ydC5uYXZpZ2F0ZT8ucm91dGUgfHwgW107XHJcblx0XHQvLyBsZXQgcm91dGUgPSBbUk1TX0JBU0UucmVwbGFjZSgvXFwvJC8sICcnKV07XHJcblx0XHRsZXQgcm91dGUgPSB0aGlzLm5hdmlnYXRlUm91dGU7XHJcblx0XHRpZiAoISFfY3VzdG9tUm91dGUubGVuZ3RoKSB7XHJcblx0XHRcdHJvdXRlID0gWy4uLnJvdXRlLCAuLi5fY3VzdG9tUm91dGVdO1xyXG5cdFx0fVxyXG5cclxuXHRcdGNvbnN0IHF1ZXJ5UGFyYW1zID0ge307XHJcblx0XHRpZiAocmVwb3J0Lm5hdmlnYXRlPy5pbmNsdWRlUGFyYW1zID8/IHRydWUpIHtcclxuXHRcdFx0aWYgKE9iamVjdC5rZXlzKHRoaXMuYWN0aXZlUXVlcnkgfHwge30pLmxlbmd0aCkge1xyXG5cdFx0XHRcdGNvbnN0IGRhdGEgPSB0aGlzLl9maWx0ZXJRdWVyeVNlcnZpY2UuZW5jb2RlUXVlcnkodGhpcy5hY3RpdmVRdWVyeSk7XHJcblx0XHRcdFx0aWYgKGRhdGEpIHtcclxuXHRcdFx0XHRcdHF1ZXJ5UGFyYW1zWydmaWx0ZXJzJ10gPSBkYXRhO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShyb3V0ZSwgeyBxdWVyeVBhcmFtczogcXVlcnlQYXJhbXMgfSkudGhlbigoKSA9PiB7fSk7XHJcblx0fVxyXG5cclxuXHR0b2dnbGVQYW5lbCgpIHtcclxuXHRcdHRoaXMuaXNQYW5lbE9wZW5lZCA9ICF0aGlzLmlzUGFuZWxPcGVuZWQ7XHJcblx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0dGhpcy5fY2hhcnRIZWxwZXJTZXJ2aWNlLnJlc2l6ZUNoYXJ0cygpO1xyXG5cdFx0fSwgNTAwKTtcclxuXHR9XHJcblxyXG5cdHByaW50QWxsKCkge1xyXG5cdFx0d2luZG93LnByaW50KCk7XHJcblx0fVxyXG5cclxuXHRmaWx0ZXJDaGFuZ2VkKGNyaXRlcmlhOiBSZWNvcmQ8YW55LCBhbnk+KSB7XHJcblx0XHRpZiAoXy5pc0VxdWFsKHRoaXMuYWN0aXZlUXVlcnksIGNyaXRlcmlhKSkge1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblx0XHR0aGlzLm9uUXVlcnlDaGFuZ2UuZW1pdChjcml0ZXJpYSk7XHJcblx0XHR0aGlzLl91cGRhdGVBY3RpdmVRdWVyeShjcml0ZXJpYSk7XHJcblx0XHRjb25zdCBfZGF0ZSA9IHRoaXMuX3ByZXBhcmVNYXBwZWRRdWVyeShjcml0ZXJpYSwgdGhpcy5maWx0ZXJzQ29uZmlnLm1vZGUpO1xyXG5cdFx0dGhpcy5fZmlsdGVyc0NyaXRlcmlhU3ViamVjdC5uZXh0KF9kYXRlKTtcclxuXHR9XHJcblxyXG5cdG9uQ29udGVudFNjcm9sbChpc1Njcm9sbGluZzogYm9vbGVhbik6IHZvaWQge1xyXG5cdFx0dGhpcy5fc3RhdGVTZXJ2aWNlLm9uQ29udGVudFNjcm9sbChpc1Njcm9sbGluZyk7XHJcblxyXG5cdFx0aWYgKGlzU2Nyb2xsaW5nICYmICF0aGlzLl9pc0hlaWdodFVwZGF0ZWQpIHtcclxuXHRcdFx0dGhpcy5faXNIZWlnaHRVcGRhdGVkID0gdHJ1ZTtcclxuXHRcdFx0dGhpcy5mbHVpZERpcmVjdGl2ZS5zY2hlZHVsZVNldEhlaWdodCgxMDApO1xyXG5cdFx0fSBlbHNlIGlmICghaXNTY3JvbGxpbmcgJiYgdGhpcy5faXNIZWlnaHRVcGRhdGVkKSB7XHJcblx0XHRcdHRoaXMuX2lzSGVpZ2h0VXBkYXRlZCA9IGZhbHNlO1xyXG5cdFx0XHR0aGlzLmZsdWlkRGlyZWN0aXZlLnNjaGVkdWxlU2V0SGVpZ2h0KDEwMCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRvcGVuUmVwb3J0RGV0YWlscyhjcml0ZXJpYU1vZGVsOiBDcml0ZXJpYU1vZGVsLCByZXBvcnRDb25maWc6IFJlcG9ydENvbmZpZ01vZGVsKSB7XHJcblx0XHRpZiAoIXJlcG9ydENvbmZpZz8uZGV0YWlscz8uZW5hYmxlZCkge1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblxyXG5cdFx0Y29uc3Qgc291cmNlID0gcmVwb3J0Q29uZmlnPy5kZXRhaWxzPy5zb3VyY2U7XHJcblx0XHRjb25zdCBjb25maWckID1cclxuXHRcdFx0c291cmNlICYmIHR5cGVvZiBzb3VyY2UgPT09ICdzdHJpbmcnXHJcblx0XHRcdFx0PyB0aGlzLl9jb25maWd1cmF0aW9uU2VydmljZS5nZXRUYWJsZUNvbmZpZ3VyYXRpb24oc291cmNlKS5waXBlKFxyXG5cdFx0XHRcdFx0XHRtYXAoKGNvbmZpZykgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdHJldHVybiBfLm1lcmdlKGNvbmZpZywge1xyXG5cdFx0XHRcdFx0XHRcdFx0b3B0aW9uczoge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRmaWx0ZXJzOiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0bW9kZTogJ3BheWxvYWQnLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdGZpZWxkczogW10sXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0cGFuZWw6IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdHZpc2libGU6IGZhbHNlLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0dG9nZ2xlQnV0dG9uOiBmYWxzZVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdFx0KVxyXG5cdFx0XHRcdDogb2YobWFwVG9OZGZUYWJsZUNvbmZpZyh0aGlzLmNvbmZpZywgcmVwb3J0Q29uZmlnLmRldGFpbHMpKTtcclxuXHJcblx0XHRjb25maWckLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKGNvbmZpZykgPT4ge1xyXG5cdFx0XHR0aGlzLl9yZXBvcnREZXRhaWxzU3ViamVjdC5uZXh0KHtcclxuXHRcdFx0XHRjb25maWcsXHJcblx0XHRcdFx0bGFiZWw6IHJlcG9ydENvbmZpZy5sYWJlbFxyXG5cdFx0XHR9KTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0Y2xvc2VEZXRhaWxzUGFuZWwoKSB7XHJcblx0XHR0aGlzLl9yZXBvcnREZXRhaWxzU3ViamVjdC5uZXh0KG51bGwpO1xyXG5cdH1cclxuXHJcblx0b25EZXRhaWxzQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCkge1xyXG5cdFx0dGhpcy5pc0RldGFpbHNPcGVuZWQgPSBldmVudC50b1N0YXRlID09PSAnb3Blbic7XHJcblx0fVxyXG5cclxuXHRuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuXHRcdHN1cGVyLm5nT25EZXN0cm95KCk7XHJcblx0XHR0aGlzLl9jaGFydEhlbHBlclNlcnZpY2UuZGVzdHJveUFsbCgpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBwcmVwYXJlQ3JpdGVyaWFQYXlsb2FkKGNyaXRlcmlhOiBSZWNvcmQ8YW55LCBhbnk+LCBmaWVsZHM6IEZpZWxkQ29uZmlnTW9kZWxbXSA9IHRoaXMuZmlsdGVyc0NvbmZpZy5maWVsZHMpIHtcclxuXHRcdHJldHVybiB0aGlzLl9maWx0ZXJzTWFwcGVyLnByZXBhcmVQYXlsb2FkKGZpZWxkcywgY3JpdGVyaWEpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfc3RyaW5naWZ5VmFsdWVzKGNyaXRlcmlhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KSB7XHJcblx0XHRyZXR1cm4gT2JqZWN0LmVudHJpZXMoY3JpdGVyaWEpLnJlZHVjZSgoYWNjLCBba2V5LCB2YWx1ZV0pID0+IHtcclxuXHRcdFx0YWNjW2tleV0gPSBBcnJheS5pc0FycmF5KHZhbHVlKSA/IEpTT04uc3RyaW5naWZ5KHZhbHVlKSA6IHZhbHVlO1xyXG5cdFx0XHRyZXR1cm4gYWNjO1xyXG5cdFx0fSwge30pO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfcHJlcGFyZVJlcG9ydHMoKSB7XHJcblx0XHR0aGlzLmlzTG9hZGluZ1Jlc3VsdCA9IHRydWU7XHJcblx0XHRyZXR1cm4gY29tYmluZUxhdGVzdChbXHJcblx0XHRcdHRoaXMuZmlsdGVyc1BhcmFtcyQucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgoYSwgYikgPT4gXy5pc0VxdWFsKGEsIGIpKSksXHJcblx0XHRcdHRoaXMucmVwb3J0Q29uZmlnJFxyXG5cdFx0XSkucGlwZShcclxuXHRcdFx0dGFwKCgpID0+IHtcclxuXHRcdFx0XHR0aGlzLmlzTG9hZGluZ1Jlc3VsdCA9IHRydWU7XHJcblx0XHRcdFx0dGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcclxuXHRcdFx0fSksXHJcblx0XHRcdHN3aXRjaE1hcCgoW2NyaXRlcmlhLCBjb25maWddKSA9PiB7XHJcblx0XHRcdFx0Y29uc3QgcmVxdWVzdCA9IGNvbmZpZz8ucmVxdWVzdDtcclxuXHRcdFx0XHRpZiAoIXJlcXVlc3QpIHtcclxuXHRcdFx0XHRcdHJldHVybiBvZihudWxsKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0bGV0IF9wYXlsb2FkID0gY3JpdGVyaWE7XHJcblx0XHRcdFx0aWYgKCFjcml0ZXJpYSAmJiAhIWNvbmZpZy5hY3RpdmVRdWVyeSkge1xyXG5cdFx0XHRcdFx0X3BheWxvYWQgPSB0aGlzLnByZXBhcmVDcml0ZXJpYVBheWxvYWQoY29uZmlnLmFjdGl2ZVF1ZXJ5KTtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdGNvbnN0IGRhdGEkID0gdGhpcy5fbmRmUmVwb3J0c1NlcnZpY2UuZ2V0RGF0YShyZXF1ZXN0LCBfcGF5bG9hZCkucGlwZShcclxuXHRcdFx0XHRcdHN3aXRjaE1hcCgocmVwb3J0czogQXBpUmVzcG9uc2VNb2RlbCkgPT4ge1xyXG5cdFx0XHRcdFx0XHRyZXR1cm4gdGhpcy5fdHJhbnNmb3JtU2VydmljZS5wcmVwYXJlRGF0YShyZXBvcnRzLCBjb25maWcpO1xyXG5cdFx0XHRcdFx0fSksXHJcblx0XHRcdFx0XHRmaW5hbGl6ZSgoKSA9PiB7XHJcblx0XHRcdFx0XHRcdHRoaXMuaXNMb2FkaW5nUmVzdWx0ID0gZmFsc2U7XHJcblx0XHRcdFx0XHRcdHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdCk7XHJcblxyXG5cdFx0XHRcdHJldHVybiBmb3JrSm9pbihbb2YoY29uZmlnKSwgZGF0YSRdKTtcclxuXHRcdFx0fSksXHJcblx0XHRcdG1hcCgoW2NvbmZpZywgcmVzcG9uc2VdKSA9PiB7XHJcblx0XHRcdFx0dGhpcy5fcHJlcGFyZUFnZ3JlZ2F0aW9ucyhyZXNwb25zZT8uYWdncmVnYXRpb25zKTtcclxuXHRcdFx0XHRyZXR1cm4ge1xyXG5cdFx0XHRcdFx0Y29uZmlnLFxyXG5cdFx0XHRcdFx0cmVzcG9uc2VcclxuXHRcdFx0XHR9O1xyXG5cdFx0XHR9KVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX2hhbmRsZUtleWJvYXJkRXZlbnQoKSB7XHJcblx0XHR0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xyXG5cdFx0XHRmcm9tRXZlbnQ8S2V5Ym9hcmRFdmVudD4oZG9jdW1lbnQsICdrZXlkb3duJylcclxuXHRcdFx0XHQucGlwZShcclxuXHRcdFx0XHRcdGZpbHRlcigoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IGV2ZW50LmtleSA9PT0gJ0VzY2FwZScgJiYgdGhpcy5zaG93RGV0YWlscyksXHJcblx0XHRcdFx0XHR0YWtlVW50aWwodGhpcy5kZXN0cm95JClcclxuXHRcdFx0XHQpXHJcblx0XHRcdFx0LnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLmNsb3NlRGV0YWlsc1BhbmVsKCk7XHJcblx0XHRcdFx0fSk7XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX3ByZXBhcmVNYXBwZWRRdWVyeShjcml0ZXJpYTogUmVjb3JkPHN0cmluZywgYW55PiwgbW9kZTogJ3BheWxvYWQnIHwgJ3BhcmFtcycpIHtcclxuXHRcdHJldHVybiBtb2RlID09ICdwYXlsb2FkJ1xyXG5cdFx0XHQ/IHRoaXMucHJlcGFyZUNyaXRlcmlhUGF5bG9hZChjcml0ZXJpYSlcclxuXHRcdFx0OiB7XHJcblx0XHRcdFx0XHRwYXJhbXM6IHRoaXMuX3N0cmluZ2lmeVZhbHVlcyhjcml0ZXJpYSlcclxuXHRcdFx0XHR9O1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfdXBkYXRlQWN0aXZlUXVlcnkocXVlcnk6IFJlY29yZDxzdHJpbmcsIGFueT4pIHtcclxuXHRcdHRoaXMuX2FjdGl2ZVF1ZXJ5U3ViLm5leHQoe1xyXG5cdFx0XHRwcmV2aW91czogdGhpcy5hY3RpdmVRdWVyeSxcclxuXHRcdFx0Y3VycmVudDogcXVlcnlcclxuXHRcdH0pO1xyXG5cdFx0dGhpcy5fYWN0aXZlRmlsdGVyc1F1ZXJ5U3ViLm5leHQoe1xyXG5cdFx0XHRxdWVyeSxcclxuXHRcdFx0ZW1pdEV2ZW50OiBmYWxzZVxyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF9wcmVwYXJlQWdncmVnYXRpb25zKGFnZ3JlZ2F0aW9uczogYW55KSB7XHJcblx0XHRpZiAodGhpcy5faXNDb25maWdDaGFuZ2VkICYmIHRoaXMuYWdncmVnYXRpb25zKSB7XHJcblx0XHRcdHRoaXMuYWdncmVnYXRpb25zID0gbnVsbDtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCByZWxvYWRTdHJhdGVneSA9IHRoaXMuY29uZmlnPy5maWx0ZXJzPy5yZWxvYWQ/LnN0cmF0ZWd5O1xyXG5cclxuXHRcdGlmICh0aGlzLmFnZ3JlZ2F0aW9ucyAmJiByZWxvYWRTdHJhdGVneSA9PT0gJ25ldmVyJykge1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblxyXG5cdFx0aWYgKHRoaXMuYWdncmVnYXRpb25zICYmIHJlbG9hZFN0cmF0ZWd5ID09PSAnb25DaGFuZ2UnKSB7XHJcblx0XHRcdGlmICh0aGlzLl9zaG91bGRSZWxvYWRPbkNoYW5nZSgpKSB7XHJcblx0XHRcdFx0dGhpcy5fdXBkYXRlQWdncmVnYXRpb25zKGFnZ3JlZ2F0aW9ucyk7XHJcblx0XHRcdH1cclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cclxuXHRcdHRoaXMuX3VwZGF0ZUFnZ3JlZ2F0aW9ucyhhZ2dyZWdhdGlvbnMpO1xyXG5cdFx0dGhpcy5faXNDb25maWdDaGFuZ2VkID0gZmFsc2U7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF9zaG91bGRSZWxvYWRPbkNoYW5nZSgpIHtcclxuXHRcdGlmICh0aGlzLmNvbmZpZz8uZmlsdGVycz8ucmVsb2FkPy5zdHJhdGVneSAhPT0gJ29uQ2hhbmdlJykge1xyXG5cdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHR9XHJcblxyXG5cdFx0Y29uc3QgdHJpZ2dlckZpZWxkcyA9IHRoaXMuY29uZmlnPy5maWx0ZXJzPy5yZWxvYWQ/LnRyaWdnZXJGaWVsZHM7XHJcblxyXG5cdFx0aWYgKCFBcnJheS5pc0FycmF5KHRyaWdnZXJGaWVsZHMpKSB7XHJcblx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCB2YWxpZEZpZWxkcyA9IHRyaWdnZXJGaWVsZHMuZmlsdGVyKEJvb2xlYW4pO1xyXG5cdFx0aWYgKCF2YWxpZEZpZWxkcy5sZW5ndGgpIHtcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cclxuXHRcdGNvbnN0IGFjdGl2YXRlZFF1ZXJ5ID0gdGhpcy5fYWN0aXZlUXVlcnlTdWIuZ2V0VmFsdWUoKTtcclxuXHRcdGNvbnN0IGN1cnJlbnRWYWx1ZSA9IGFjdGl2YXRlZFF1ZXJ5Py5jdXJyZW50IHx8IHt9O1xyXG5cdFx0Y29uc3QgcHJldmlvdXNWYWx1ZSA9IGFjdGl2YXRlZFF1ZXJ5Py5wcmV2aW91cyB8fCB7fTtcclxuXHJcblx0XHRjb25zdCBjaGFuZ2VkS2V5cyA9IHRoaXMuX2dldENoYW5nZWRLZXlzKHByZXZpb3VzVmFsdWUsIGN1cnJlbnRWYWx1ZSk7XHJcblxyXG5cdFx0cmV0dXJuIHZhbGlkRmllbGRzLnNvbWUoKGZpZWxkKSA9PiBjaGFuZ2VkS2V5cy5pbmNsdWRlcyhmaWVsZCkpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfZ2V0Q2hhbmdlZEtleXMocHJldmlvdXM6IFJlY29yZDxzdHJpbmcsIGFueT4sIGN1cnJlbnQ6IFJlY29yZDxzdHJpbmcsIGFueT4pOiBzdHJpbmdbXSB7XHJcblx0XHRjb25zdCBhbGxLZXlzID0gXy51bmlvbihfLmtleXMocHJldmlvdXMpLCBfLmtleXMoY3VycmVudCkpO1xyXG5cdFx0cmV0dXJuIGFsbEtleXMuZmlsdGVyKChrZXkpID0+ICFfLmlzRXF1YWwocHJldmlvdXNba2V5XSwgY3VycmVudFtrZXldKSk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF91cGRhdGVBZ2dyZWdhdGlvbnMoYWdncmVnYXRpb25zOiBhbnkpOiB2b2lkIHtcclxuXHRcdHRoaXMuYWdncmVnYXRpb25zID0gXy5jbG9uZURlZXAoYWdncmVnYXRpb25zKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX2NoZWNrQ29uZmlnQ2hhbmdlKHZhbHVlOiBOZGZSZXBvcnRzQ29uZmlnKSB7XHJcblx0XHRjb25zdCB7IGFjdGl2ZVF1ZXJ5LCAuLi5jb25maWcgfSA9IHZhbHVlO1xyXG5cdFx0Y29uc3QgeyBhY3RpdmVRdWVyeTogYXEsIC4uLmN1cnJlbnRDb25maWcgfSA9IHRoaXMuX2NvbmZpZ1N1YmplY3QuZ2V0VmFsdWUoKSB8fCB7fTtcclxuXHJcblx0XHR0aGlzLl9pc0NvbmZpZ0NoYW5nZWQgPSAhXy5pc0VxdWFsKGN1cnJlbnRDb25maWcsIGNvbmZpZyk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF9sb2FkUmVwb3J0c0NvbmZpZyhrZXk6IHN0cmluZykge1xyXG5cdFx0dGhpcy5fY29uZmlndXJhdGlvblNlcnZpY2VcclxuXHRcdFx0LmdldFJlcG9ydHNDb25maWd1cmF0aW9uKGtleSlcclxuXHRcdFx0LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG5cdFx0XHQuc3Vic2NyaWJlKChjb25maWcpID0+IHtcclxuXHRcdFx0XHRpZiAoY29uZmlnKSB7XHJcblx0XHRcdFx0XHR0aGlzLl9pbml0UmVwb3J0c0NvbmZpZyhjb25maWcpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF9pbml0UmVwb3J0c0NvbmZpZyhjb25maWc6IE5kZlJlcG9ydHNDb25maWcpIHtcclxuXHRcdGNvbnN0IHZhbHVlID0gXy5jbG9uZURlZXAoY29uZmlnKTtcclxuXHRcdHRoaXMuX2NoZWNrQ29uZmlnQ2hhbmdlKHZhbHVlKTtcclxuXHRcdHRoaXMuX2NvbmZpZ1N1YmplY3QubmV4dCh2YWx1ZSk7XHJcblx0XHRpZiAodmFsdWU/LmFjdGl2ZVF1ZXJ5ICYmICEhT2JqZWN0LmtleXModmFsdWU/LmFjdGl2ZVF1ZXJ5KS5sZW5ndGgpIHtcclxuXHRcdFx0dGhpcy5fdXBkYXRlQWN0aXZlUXVlcnkodmFsdWU/LmFjdGl2ZVF1ZXJ5KTtcclxuXHRcdFx0dGhpcy5fZmlsdGVyc0NyaXRlcmlhU3ViamVjdC5uZXh0KHRoaXMuX3ByZXBhcmVNYXBwZWRRdWVyeSh2YWx1ZT8uYWN0aXZlUXVlcnksIHRoaXMuZmlsdGVyc0NvbmZpZy5tb2RlKSk7XHJcblx0XHR9IGVsc2UgaWYgKCF0aGlzLmFjdGl2ZVF1ZXJ5IHx8IE9iamVjdC5rZXlzKHRoaXMuYWN0aXZlUXVlcnkpLmxlbmd0aCA9PSAwKSB7XHJcblx0XHRcdHRoaXMuX3Jlc2V0UXVlcnlBbmRGaWx0ZXJzQ3JpdGVyaWEoKTtcclxuXHRcdH1cclxuXHRcdHRoaXMuaXNQYW5lbE9wZW5lZCA9IGZhbHNlO1xyXG5cdFx0dGhpcy5pc0RldGFpbHNPcGVuZWQgPSBmYWxzZTtcclxuXHRcdHRoaXMuX3JlcG9ydERldGFpbHNTdWJqZWN0Lm5leHQobnVsbCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF9yZXNldFF1ZXJ5QW5kRmlsdGVyc0NyaXRlcmlhKCkge1xyXG5cdFx0dGhpcy5fdXBkYXRlQWN0aXZlUXVlcnkoe30pO1xyXG5cdFx0dGhpcy5fZmlsdGVyc0NyaXRlcmlhU3ViamVjdC5uZXh0KG51bGwpO1xyXG5cdH1cclxufVxyXG4iLCI8ZGl2XHJcblx0Km5nSWY9XCJyZXBvcnRzRGF0YSQgfCBhc3luYyBhcyByZXBvcnRzXCJcclxuXHRjbGFzcz1cIm5kZi1yZXBvcnRzX19jb250YWluZXJcIlxyXG5cdFtjbGFzcy5wYW5lbC1vcGVuZWRdPVwiaXNQYW5lbE9wZW5lZCAmJiBmaWx0ZXJzQ29uZmlnXCJcclxuXHRbZGlyXT1cImRpcmVjdGlvblwiXHJcblx0bmRmRmx1aWRIZWlnaHRcclxuPlxyXG5cdDxkaXYgY2xhc3M9XCJuZGYtcmVwb3J0c19fcGFuZWwgcHJpbnQ6aGlkZGVuXCIgKm5nSWY9XCIhIWZpbHRlcnNDb25maWc/LmZpZWxkcz8ubGVuZ3RoXCI+XHJcblx0XHQ8YXBwLWZpbHRlcnMtcGFuZWxcclxuXHRcdFx0W2ZpZWxkc109XCJmaWx0ZXJzQ29uZmlnPy5maWVsZHNcIlxyXG5cdFx0XHRbYWdncmVnYXRpb25zXT1cImFnZ3JlZ2F0aW9uc1wiXHJcblx0XHRcdChmaWx0ZXJDaGFuZ2VkKT1cImZpbHRlckNoYW5nZWQoJGV2ZW50KVwiXHJcblx0XHRcdFthY3RpdmVRdWVyeV09XCJhY3RpdmVGaWx0ZXJzUXVlcnkkIHwgYXN5bmNcIlxyXG5cdFx0XHRjbGFzcz1cIm5kZi1yZXBvcnRzX19maWx0ZXJzXCJcclxuXHRcdD48L2FwcC1maWx0ZXJzLXBhbmVsPlxyXG5cdDwvZGl2PlxyXG5cclxuXHQ8ZGl2IGNsYXNzPVwibmRmLXJlcG9ydHNfX2NvbnRlbnRcIiAoc2Nyb2xsZWQpPVwib25Db250ZW50U2Nyb2xsKCRldmVudClcIj5cclxuXHRcdDxkaXYgY2xhc3M9XCJuZGYtcmVwb3J0c19faGVhZGVyIGZsZXggcHQtNCBwcmludDpoaWRkZW5cIj5cclxuXHRcdFx0PGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY2xhc3M9XCJ0b2dnbGUtYnV0dG9uXCIgKGNsaWNrKT1cInRvZ2dsZVBhbmVsKClcIj5cclxuXHRcdFx0XHQ8bWF0LWljb24+IGZpbHRlcl9hbHQ8L21hdC1pY29uPlxyXG5cdFx0XHQ8L2J1dHRvbj5cclxuXHRcdFx0PGFwcC1lZGl0b3ItYnV0dG9uXHJcblx0XHRcdFx0Km5nSWY9XCJqc29uRWRpdG9yRW5hYmxlZCAmJiByZXBvcnRzS2V5XCJcclxuXHRcdFx0XHRba2V5XT1cInJlcG9ydHNLZXlcIlxyXG5cdFx0XHRcdFt0eXBlXT1cImVkaXRvclR5cGVcIlxyXG5cdFx0XHQ+PC9hcHAtZWRpdG9yLWJ1dHRvbj5cclxuXHRcdFx0PGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gKm5nSWY9XCJjb25maWc/Lm9wdGlvbnM/LnByaW50XCIgY2xhc3M9XCJwcmludC1idXR0b25cIiAoY2xpY2spPVwicHJpbnRBbGwoKVwiPlxyXG5cdFx0XHRcdDxtYXQtaWNvbj4gcHJpbnQ8L21hdC1pY29uPlxyXG5cdFx0XHQ8L2J1dHRvbj5cclxuXHRcdDwvZGl2PlxyXG5cdFx0PG1hdC1zcGlubmVyICpuZ0lmPVwiaXNMb2FkaW5nUmVzdWx0XCIgY2xhc3M9XCJtdC01IG14LWF1dG9cIiBbZGlhbWV0ZXJdPVwiNDhcIj48L21hdC1zcGlubmVyPlxyXG5cclxuXHRcdDxkaXYgY2xhc3M9XCJyZXBvcnRzLWdyaWRcIiAqbmdJZj1cIiFpc0xvYWRpbmdSZXN1bHRcIj5cclxuXHRcdFx0PGFwcC1uZGYtcmVwb3J0XHJcblx0XHRcdFx0Km5nRm9yPVwibGV0IGNvbmZpZyBvZiByZXBvcnRDb25maWcuaXRlbXM7IHRyYWNrQnk6IHRyYWNrQnlGblwiXHJcblx0XHRcdFx0W2NvbmZpZ109XCJjb25maWdcIlxyXG5cdFx0XHRcdFtkYXRhXT1cInJlcG9ydHM/LnJlc3BvbnNlXCJcclxuXHRcdFx0XHRbY3JpdGVyaWFdPVwiZmlsdGVyc1BhcmFtcyQgfCBhc3luY1wiXHJcblx0XHRcdFx0W2RpcmVjdGlvbl09XCJkaXJlY3Rpb25cIlxyXG5cdFx0XHRcdFthdHRyLmRhdGEtd2lkdGhdPVwiY29uZmlnPy5sYXlvdXQ/LndpZHRoIHx8IDRcIlxyXG5cdFx0XHRcdFthdHRyLmRhdGEtaGVpZ2h0XT1cImNvbmZpZz8ubGF5b3V0Py5oZWlnaHQgfHwgJ2F1dG8nXCJcclxuXHRcdFx0XHRbYXR0ci5kYXRhLXN0YXJ0LWNvbHVtbl09XCJjb25maWc/LmxheW91dD8uY29sdW1uUG9zaXRpb24gfHwgJ2F1dG8nXCJcclxuXHRcdFx0XHRbYXR0ci5kYXRhLXN0YXJ0LXJvd109XCJjb25maWc/LmxheW91dD8ucm93UG9zaXRpb24gfHwgJ2F1dG8nXCJcclxuXHRcdFx0XHRbY2xhc3Mud2lkZV09XCJjb25maWc/LmxheW91dD8ud2lkdGggPj0gNlwiXHJcblx0XHRcdFx0Y2xhc3M9XCJyZXBvcnRzLWdyaWRfX2l0ZW0ge3sgY29uZmlnPy5sYXlvdXQ/LnN0eWxlQ2xhc3MgfX0gXCJcclxuXHRcdFx0XHQob25OYXZpZ2F0ZSk9XCJvbk5hdmlnYXRlKCRldmVudClcIlxyXG5cdFx0XHRcdChvbk9wZW4pPVwib3BlblJlcG9ydERldGFpbHMoJGV2ZW50LCBjb25maWcpXCJcclxuXHRcdFx0PjwvYXBwLW5kZi1yZXBvcnQ+XHJcblx0XHQ8L2Rpdj5cclxuXHQ8L2Rpdj5cclxuXHQ8ZGl2XHJcblx0XHRjbGFzcz1cIm5kZi1yZXBvcnRzX19kZXRhaWxzIHByaW50OmhpZGRlblwiXHJcblx0XHRbY2xhc3Mub3BlbmVkXT1cInNob3dEZXRhaWxzXCJcclxuXHRcdFtAc2xpZGVJbk91dF09XCJzaG93RGV0YWlscyA/ICdvcGVuJyA6ICdjbG9zZWQnXCJcclxuXHRcdChAc2xpZGVJbk91dC5kb25lKT1cIm9uRGV0YWlsc0FuaW1hdGlvbkVuZCgkZXZlbnQpXCJcclxuXHQ+XHJcblx0XHQ8YXBwLW5kZi10YWJsZVxyXG5cdFx0XHQqbmdJZj1cInJlcG9ydERldGFpbHMkIHwgYXN5bmMgYXMgcmVwb3J0XCJcclxuXHRcdFx0W2NvbmZpZ109XCJyZXBvcnQuY29uZmlnXCJcclxuXHRcdFx0W2FjdGl2ZVF1ZXJ5XT1cImFjdGl2ZUZpbHRlcnNRdWVyeSQgfCBhc3luY1wiXHJcblx0XHRcdFtjdXN0b21Dcml0ZXJpYV09XCJmaWx0ZXJzUGFyYW1zJCB8IGFzeW5jXCJcclxuXHRcdD5cclxuXHRcdFx0PG5nLXRlbXBsYXRlIHNlYXJjaFRhYmxlVGVtcGxhdGU+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cIm5kZi1yZXBvcnRzX19kZXRhaWxzX19oZWFkZXIgZmxleCBnYXAtMlwiPlxyXG5cdFx0XHRcdFx0PGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY2xhc3M9XCJ0b2dnbGUtYnV0dG9uXCIgKGNsaWNrKT1cInRvZ2dsZVBhbmVsKClcIj5cclxuXHRcdFx0XHRcdFx0PG1hdC1pY29uPiBmaWx0ZXJfYWx0PC9tYXQtaWNvbj5cclxuXHRcdFx0XHRcdDwvYnV0dG9uPlxyXG5cdFx0XHRcdFx0PGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY2xhc3M9XCJjbG9zZS1idXR0b25cIiAoY2xpY2spPVwiY2xvc2VEZXRhaWxzUGFuZWwoKVwiPlxyXG5cdFx0XHRcdFx0XHQ8bWF0LWljb24+IGNsb3NlPC9tYXQtaWNvbj5cclxuXHRcdFx0XHRcdDwvYnV0dG9uPlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdDxoMz5cclxuXHRcdFx0XHRcdHt7IHJlcG9ydC5sYWJlbCB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHRcdDwvaDM+XHJcblx0XHRcdDwvbmctdGVtcGxhdGU+XHJcblx0XHQ8L2FwcC1uZGYtdGFibGU+XHJcblx0PC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGgtZGVmaW5pdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvcmVwb3J0cy9uZGYtcmVwb3J0cy9tb2RlbHMvZ3JhcGgtZGVmaW5pdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlhbG9nUG9zaXRpb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBDaGFydERhdGFzZXQsIENoYXJ0VHlwZSwgUGx1Z2luIH0gZnJvbSAnY2hhcnQuanMnO1xyXG5pbXBvcnQgeyBDdXN0b21DaGFydE9wdGlvbnMgfSBmcm9tICcuLi8uLi9jaGFydHMnO1xyXG5cclxuaW1wb3J0IHsgQmFzZVJlcG9ydENvbmZpZyB9IGZyb20gJy4vYmFzZSc7XHJcbmltcG9ydCB7IENoYXJ0T3B0aW9uc0J5VHlwZSB9IGZyb20gJy4vY29tbW9uJztcclxuaW1wb3J0IHsgUmVwb3J0RGF0YVNvdXJjZSB9IGZyb20gJy4vcmVwb3J0LWRhdGEtc291cmNlJztcclxuaW1wb3J0IHsgQ0hBUlRTX1RZUEVTIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcclxuXHJcbnR5cGUgY2hhcnRUeXBlcyA9IE9taXQ8dHlwZW9mIENIQVJUU19UWVBFUywgJ2xpbmUnPjtcclxuZXhwb3J0IHR5cGUgQWxsb3dlZENoYXJ0VHlwZSA9IGNoYXJ0VHlwZXNba2V5b2YgY2hhcnRUeXBlc107XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENoYXJ0VHlwZUNvbmZpZyB7XHJcblx0ZW5hYmxlZDogYm9vbGVhbjsgLy8gQ2FuIHVzZXIgc3dpdGNoIGNoYXJ0IHR5cGVzP1xyXG5cdGFsbG93ZWRUeXBlcz86IEFsbG93ZWRDaGFydFR5cGVbXTsgLy8gT3B0aW9uYWw6IHJlc3RyaWN0IHRvIHNwZWNpZmljIHR5cGVzXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb25maWd1cmF0aW9uIGZvciBkaWFsb2cgZGlzcGxheSBpbiBncmFwaCByZXBvcnRzXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBHcmFwaERpYWxvZ0NvbmZpZyA9IHtcclxuXHRhY3RpdmU6IGJvb2xlYW47XHJcblx0cGFuZWxDbGFzcz86IHN0cmluZyB8IHN0cmluZ1tdO1xyXG5cdHdpZHRoPzogc3RyaW5nO1xyXG5cdGhlaWdodD86IHN0cmluZztcclxuXHRtaW5XaWR0aD86IG51bWJlciB8IHN0cmluZztcclxuXHRtaW5IZWlnaHQ/OiBudW1iZXIgfCBzdHJpbmc7XHJcblx0bWF4V2lkdGg/OiBudW1iZXIgfCBzdHJpbmc7XHJcblx0bWF4SGVpZ2h0PzogbnVtYmVyIHwgc3RyaW5nO1xyXG5cdHBvc2l0aW9uPzogRGlhbG9nUG9zaXRpb247XHJcbn07XHJcblxyXG4vKipcclxuICogRGVmaW5pdGlvbiBvZiBjaGFydCBvcHRpb25zIHdpdGggcGx1Z2lucyBhcyBzdHJpbmdzICh1c2VkIGluIGNvbmZpZ3VyYXRpb24pXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBHcmFwaENoYXJ0T3B0aW9uc0RlZmluaXRpb248VFR5cGUgZXh0ZW5kcyBDaGFydFR5cGUgPSBDaGFydFR5cGU+ID0ge1xyXG5cdHR5cGU6IFRUeXBlO1xyXG5cdG9wdGlvbnM/OiBDdXN0b21DaGFydE9wdGlvbnM8VFR5cGU+O1xyXG5cdGRhdGFzZXRzPzogT21pdDxDaGFydERhdGFzZXQ8VFR5cGU+LCAnZGF0YSc+W107XHJcblx0b3ZlcnJpZGVzPzogQ2hhcnRPcHRpb25zQnlUeXBlO1xyXG5cdHBsdWdpbnM/OiBzdHJpbmdbXTtcclxuXHRjb2xvcnM/OiBzdHJpbmdbXTtcclxuXHRkaXJlY3Rpb24/OiAnaG9yaXpvbnRhbCcgfCAndmVydGljYWwnOyAvLyBPbmx5IGZvciBiYXIgY2hhcnRzXHJcbn07XHJcblxyXG4vKipcclxuICogQ2hhcnQgb3B0aW9ucyB3aXRoIHBsdWdpbnMgYXMgUGx1Z2luIG9iamVjdHMgKHVzZWQgaW4gaW1wbGVtZW50YXRpb24pXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBHcmFwaENoYXJ0T3B0aW9uczxUVHlwZSBleHRlbmRzIENoYXJ0VHlwZSA9IENoYXJ0VHlwZT4gPSBPbWl0PFxyXG5cdEdyYXBoQ2hhcnRPcHRpb25zRGVmaW5pdGlvbjxUVHlwZT4sXHJcblx0J3BsdWdpbnMnXHJcbj4gJiB7XHJcblx0cGx1Z2lucz86IFBsdWdpbjxUVHlwZT5bXTtcclxufTtcclxuXHJcbi8qKlxyXG4gKiBDb21wbGV0ZSBkZWZpbml0aW9uIG9mIGEgZ3JhcGggY2hhcnQgKHVzZWQgaW4gY29uZmlndXJhdGlvbilcclxuICovXHJcbmV4cG9ydCB0eXBlIEdyYXBoQ2hhcnREZWZpbml0aW9uPFRUeXBlIGV4dGVuZHMgQ2hhcnRUeXBlID0gQ2hhcnRUeXBlPiA9IEJhc2VSZXBvcnRDb25maWcgJiB7XHJcblx0bW9kZTogJ2dyYXBoJztcclxuXHRkYXRhc291cmNlOiBSZXBvcnREYXRhU291cmNlW107XHJcblx0Y2hhcnQ6IEdyYXBoQ2hhcnRPcHRpb25zRGVmaW5pdGlvbjxUVHlwZT47XHJcblx0cHJlZml4Pzogc3RyaW5nO1xyXG5cdHByaW50PzogYm9vbGVhbjtcclxuXHR0eXBlQ29uZmlnPzogQ2hhcnRUeXBlQ29uZmlnO1xyXG5cdGRpYWxvZz86IEdyYXBoRGlhbG9nQ29uZmlnO1xyXG59O1xyXG5cclxuLyoqXHJcbiAqIENvbXBsZXRlIGdyYXBoIGNoYXJ0IHdpdGggcHJvY2Vzc2VkIHBsdWdpbnMgKHVzZWQgaW4gaW1wbGVtZW50YXRpb24pXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBHcmFwaENoYXJ0PFRUeXBlIGV4dGVuZHMgQ2hhcnRUeXBlID0gQ2hhcnRUeXBlPiA9IE9taXQ8R3JhcGhDaGFydERlZmluaXRpb248VFR5cGU+LCAnY2hhcnQnPiAmIHtcclxuXHRjaGFydDogR3JhcGhDaGFydE9wdGlvbnM8VFR5cGU+O1xyXG59O1xyXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGgtZGVmaW5pdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvcmVwb3J0cy9uZGYtcmVwb3J0cy9tb2RlbHMvZ3JhcGgtZGVmaW5pdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlhbG9nUG9zaXRpb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBDaGFydERhdGFzZXQsIENoYXJ0VHlwZSwgUGx1Z2luIH0gZnJvbSAnY2hhcnQuanMnO1xyXG5pbXBvcnQgeyBDdXN0b21DaGFydE9wdGlvbnMgfSBmcm9tICcuLi8uLi9jaGFydHMnO1xyXG5cclxuaW1wb3J0IHsgQmFzZVJlcG9ydENvbmZpZyB9IGZyb20gJy4vYmFzZSc7XHJcbmltcG9ydCB7IENoYXJ0T3B0aW9uc0J5VHlwZSB9IGZyb20gJy4vY29tbW9uJztcclxuaW1wb3J0IHsgUmVwb3J0RGF0YVNvdXJjZSB9IGZyb20gJy4vcmVwb3J0LWRhdGEtc291cmNlJztcclxuaW1wb3J0IHsgQ0hBUlRTX1RZUEVTIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcclxuaW1wb3J0IHsgRXZhbHVhdGVkU3RyaW5nIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkJztcclxuXHJcbnR5cGUgY2hhcnRUeXBlcyA9IE9taXQ8dHlwZW9mIENIQVJUU19UWVBFUywgJ2xpbmUnPjtcclxuZXhwb3J0IHR5cGUgQWxsb3dlZENoYXJ0VHlwZSA9IGNoYXJ0VHlwZXNba2V5b2YgY2hhcnRUeXBlc107XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENoYXJ0VHlwZUNvbmZpZyB7XHJcblx0ZW5hYmxlZDogYm9vbGVhbjsgLy8gQ2FuIHVzZXIgc3dpdGNoIGNoYXJ0IHR5cGVzP1xyXG5cdGFsbG93ZWRUeXBlcz86IEFsbG93ZWRDaGFydFR5cGVbXTsgLy8gT3B0aW9uYWw6IHJlc3RyaWN0IHRvIHNwZWNpZmljIHR5cGVzXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb25maWd1cmF0aW9uIGZvciBkaWFsb2cgZGlzcGxheSBpbiBncmFwaCByZXBvcnRzXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBHcmFwaERpYWxvZ0NvbmZpZyA9IHtcclxuXHRhY3RpdmU6IGJvb2xlYW47XHJcblx0cGFuZWxDbGFzcz86IHN0cmluZyB8IHN0cmluZ1tdO1xyXG5cdHdpZHRoPzogc3RyaW5nO1xyXG5cdGhlaWdodD86IHN0cmluZztcclxuXHRtaW5XaWR0aD86IG51bWJlciB8IHN0cmluZztcclxuXHRtaW5IZWlnaHQ/OiBudW1iZXIgfCBzdHJpbmc7XHJcblx0bWF4V2lkdGg/OiBudW1iZXIgfCBzdHJpbmc7XHJcblx0bWF4SGVpZ2h0PzogbnVtYmVyIHwgc3RyaW5nO1xyXG5cdHBvc2l0aW9uPzogRGlhbG9nUG9zaXRpb247XHJcbn07XHJcblxyXG5cclxuZXhwb3J0IHR5cGUgQ2FsbGJhY2tEZWZpbml0aW9uID0geyBwYXRoOiBzdHJpbmc7IGNhbGxiYWNrOiBFdmFsdWF0ZWRTdHJpbmc8J2NhbGxiYWNrJz4gfVxyXG5cclxuLyoqXHJcbiAqIERlZmluaXRpb24gb2YgY2hhcnQgb3B0aW9ucyB3aXRoIHBsdWdpbnMgYXMgc3RyaW5ncyAodXNlZCBpbiBjb25maWd1cmF0aW9uKVxyXG4gKi9cclxuZXhwb3J0IHR5cGUgR3JhcGhDaGFydE9wdGlvbnNEZWZpbml0aW9uPFRUeXBlIGV4dGVuZHMgQ2hhcnRUeXBlID0gQ2hhcnRUeXBlPiA9IHtcclxuXHR0eXBlOiBUVHlwZTtcclxuXHRvcHRpb25zPzogQ3VzdG9tQ2hhcnRPcHRpb25zPFRUeXBlPjtcclxuXHRkYXRhc2V0cz86IE9taXQ8Q2hhcnREYXRhc2V0PFRUeXBlPiwgJ2RhdGEnPltdO1xyXG5cdG92ZXJyaWRlcz86IENoYXJ0T3B0aW9uc0J5VHlwZTtcclxuXHRwbHVnaW5zPzogc3RyaW5nW107XHJcblx0Y2FsbGJhY2tzPzogQXJyYXk8Q2FsbGJhY2tEZWZpbml0aW9uPjtcclxuXHRjb2xvcnM/OiBzdHJpbmdbXTtcclxuXHRkaXJlY3Rpb24/OiAnaG9yaXpvbnRhbCcgfCAndmVydGljYWwnOyAvLyBPbmx5IGZvciBiYXIgY2hhcnRzXHJcbn07XHJcblxyXG4vKipcclxuICogQ2hhcnQgb3B0aW9ucyB3aXRoIHBsdWdpbnMgYXMgUGx1Z2luIG9iamVjdHMgKHVzZWQgaW4gaW1wbGVtZW50YXRpb24pXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBHcmFwaENoYXJ0T3B0aW9uczxUVHlwZSBleHRlbmRzIENoYXJ0VHlwZSA9IENoYXJ0VHlwZT4gPSBPbWl0PFxyXG5cdEdyYXBoQ2hhcnRPcHRpb25zRGVmaW5pdGlvbjxUVHlwZT4sXHJcblx0J3BsdWdpbnMnXHJcbj4gJiB7XHJcblx0cGx1Z2lucz86IFBsdWdpbjxUVHlwZT5bXTtcclxufTtcclxuXHJcbi8qKlxyXG4gKiBDb21wbGV0ZSBkZWZpbml0aW9uIG9mIGEgZ3JhcGggY2hhcnQgKHVzZWQgaW4gY29uZmlndXJhdGlvbilcclxuICovXHJcbmV4cG9ydCB0eXBlIEdyYXBoQ2hhcnREZWZpbml0aW9uPFRUeXBlIGV4dGVuZHMgQ2hhcnRUeXBlID0gQ2hhcnRUeXBlPiA9IEJhc2VSZXBvcnRDb25maWcgJiB7XHJcblx0bW9kZTogJ2dyYXBoJztcclxuXHRkYXRhc291cmNlOiBSZXBvcnREYXRhU291cmNlW107XHJcblx0Y2hhcnQ6IEdyYXBoQ2hhcnRPcHRpb25zRGVmaW5pdGlvbjxUVHlwZT47XHJcblx0cHJlZml4Pzogc3RyaW5nO1xyXG5cdHByaW50PzogYm9vbGVhbjtcclxuXHR0eXBlQ29uZmlnPzogQ2hhcnRUeXBlQ29uZmlnO1xyXG5cdGRpYWxvZz86IEdyYXBoRGlhbG9nQ29uZmlnO1xyXG59O1xyXG5cclxuLyoqXHJcbiAqIENvbXBsZXRlIGdyYXBoIGNoYXJ0IHdpdGggcHJvY2Vzc2VkIHBsdWdpbnMgKHVzZWQgaW4gaW1wbGVtZW50YXRpb24pXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBHcmFwaENoYXJ0PFRUeXBlIGV4dGVuZHMgQ2hhcnRUeXBlID0gQ2hhcnRUeXBlPiA9IE9taXQ8R3JhcGhDaGFydERlZmluaXRpb248VFR5cGU+LCAnY2hhcnQnPiAmIHtcclxuXHRjaGFydDogR3JhcGhDaGFydE9wdGlvbnM8VFR5cGU+O1xyXG59O1xyXG4iXX0=
@@ -1,7 +1,6 @@
1
1
  export * from './horizontal-bar';
2
- export * from './options';
3
2
  export * from './pie';
4
3
  export * from './line';
5
4
  export * from './doughnut';
6
5
  export * from './vertical-bar';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL3JlcG9ydHMvbmRmLXJlcG9ydHMvb3B0aW9ucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsT0FBTyxDQUFDO0FBQ3RCLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2hvcml6b250YWwtYmFyJztcclxuZXhwb3J0ICogZnJvbSAnLi9vcHRpb25zJztcclxuZXhwb3J0ICogZnJvbSAnLi9waWUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpbmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2RvdWdobnV0JztcclxuZXhwb3J0ICogZnJvbSAnLi92ZXJ0aWNhbC1iYXInO1xyXG4iXX0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL3JlcG9ydHMvbmRmLXJlcG9ydHMvb3B0aW9ucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsT0FBTyxDQUFDO0FBQ3RCLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2hvcml6b250YWwtYmFyJztcclxuZXhwb3J0ICogZnJvbSAnLi9waWUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpbmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2RvdWdobnV0JztcclxuZXhwb3J0ICogZnJvbSAnLi92ZXJ0aWNhbC1iYXInO1xyXG4iXX0=
@@ -0,0 +1,38 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class ChartCallbacksRegisterService {
4
+ constructor() {
5
+ this._callbacks = new Map();
6
+ }
7
+ register(key, callback) {
8
+ if (typeof key === 'object') {
9
+ Object.entries(key).forEach(([k, fn]) => this._callbacks.set(k, fn));
10
+ }
11
+ else if (typeof key === 'string' && callback) {
12
+ this._callbacks.set(key, callback);
13
+ }
14
+ }
15
+ getAll() {
16
+ return this._callbacks;
17
+ }
18
+ has(key) {
19
+ return this._callbacks.has(key);
20
+ }
21
+ get(key) {
22
+ const fn = this._callbacks.get(key);
23
+ if (!fn) {
24
+ console.error(`Callback with key '${key}' not found.`);
25
+ }
26
+ return fn;
27
+ }
28
+ delete(key) {
29
+ return this._callbacks.delete(key);
30
+ }
31
+ }
32
+ ChartCallbacksRegisterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ChartCallbacksRegisterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
33
+ ChartCallbacksRegisterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ChartCallbacksRegisterService, providedIn: 'root' });
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ChartCallbacksRegisterService, decorators: [{
35
+ type: Injectable,
36
+ args: [{ providedIn: 'root' }]
37
+ }] });
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtY2FsbGJhY2tzLXJlZ2lzdGVyLnNlcnZpY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9yZXBvcnRzL25kZi1yZXBvcnRzL3NlcnZpY2VzL2NoYXJ0LWNhbGxiYWNrcy1yZWdpc3Rlci5zZXJ2aWNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVUzQyxNQUFNLE9BQU8sNkJBQTZCO0lBRDFDO1FBRWtCLGVBQVUsR0FBMEIsSUFBSSxHQUFHLEVBQUUsQ0FBQztLQStCL0Q7SUEzQkEsUUFBUSxDQUFDLEdBQXNDLEVBQUUsUUFBbUI7UUFDbkUsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUU7WUFDNUIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDckU7YUFBTSxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsSUFBSSxRQUFRLEVBQUU7WUFDL0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1NBQ25DO0lBQ0YsQ0FBQztJQUVNLE1BQU07UUFDWixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDeEIsQ0FBQztJQUVNLEdBQUcsQ0FBQyxHQUFXO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVNLEdBQUcsQ0FBQyxHQUFXO1FBQ3JCLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDUixPQUFPLENBQUMsS0FBSyxDQUFDLHNCQUFzQixHQUFHLGNBQWMsQ0FBQyxDQUFDO1NBQ3ZEO1FBQ0QsT0FBTyxFQUFHLENBQUM7SUFDWixDQUFDO0lBRU0sTUFBTSxDQUFDLEdBQVc7UUFDeEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwQyxDQUFDOzsySEEvQlcsNkJBQTZCOytIQUE3Qiw2QkFBNkIsY0FEaEIsTUFBTTs0RkFDbkIsNkJBQTZCO2tCQUR6QyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWN0aXZlRWxlbWVudCwgQ2hhcnQsIENoYXJ0RXZlbnQsIENoYXJ0VHlwZSwgTGVnZW5kSXRlbSwgUG9pbnQsIFRvb2x0aXBJdGVtIH0gZnJvbSAnY2hhcnQuanMnO1xyXG5cclxuZXhwb3J0IHR5cGUgQ2FsbGJhY2sgPVxyXG5cdHwgKCh0b29sdGlwSXRlbTogVG9vbHRpcEl0ZW08Q2hhcnRUeXBlPikgPT4gc3RyaW5nIHwgbnVtYmVyIHwgc3RyaW5nW10pIC8vIHRvb2x0aXAubGFiZWwvdGl0bGUvZXRjXHJcblx0fCAoKGxlZ2VuZEl0ZW06IExlZ2VuZEl0ZW0sIGNoYXJ0OiBDaGFydDxDaGFydFR5cGU+KSA9PiBib29sZWFuIHwgdm9pZCkgLy8gbGVnZW5kLmZpbHRlclxyXG5cdHwgKChjaGFydDogQ2hhcnQ8Q2hhcnRUeXBlPiwgZXZlbnQ6IENoYXJ0RXZlbnQsIG9wdGlvbnM6IGFueSwgYWN0aXZlOiBBY3RpdmVFbGVtZW50W10pID0+IHN0cmluZyB8IFBvaW50KSAvLyB0b29sdGlwLnBvc2l0aW9uZXJcclxuXHR8ICgoZXZlbnQ6IENoYXJ0RXZlbnQsIGxlZ2VuZEl0ZW06IExlZ2VuZEl0ZW0sIGxlZ2VuZDogYW55KSA9PiBib29sZWFuIHwgdm9pZCk7IC8vIGxlZ2VuZC5vbkNsaWNrLCBldGMuXHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgQ2hhcnRDYWxsYmFja3NSZWdpc3RlclNlcnZpY2Uge1xyXG5cdHByaXZhdGUgcmVhZG9ubHkgX2NhbGxiYWNrczogTWFwPHN0cmluZywgQ2FsbGJhY2s+ID0gbmV3IE1hcCgpO1xyXG5cclxuXHRyZWdpc3RlcihrZXk6IHN0cmluZywgY2FsbGJhY2s6IENhbGxiYWNrKTogdm9pZDtcclxuXHRyZWdpc3RlcihjYWxsYmFja3M6IFJlY29yZDxzdHJpbmcsIENhbGxiYWNrPik6IHZvaWQ7XHJcblx0cmVnaXN0ZXIoa2V5OiBzdHJpbmcgfCBSZWNvcmQ8c3RyaW5nLCBDYWxsYmFjaz4sIGNhbGxiYWNrPzogQ2FsbGJhY2spOiB2b2lkIHtcclxuXHRcdGlmICh0eXBlb2Yga2V5ID09PSAnb2JqZWN0Jykge1xyXG5cdFx0XHRPYmplY3QuZW50cmllcyhrZXkpLmZvckVhY2goKFtrLCBmbl0pID0+IHRoaXMuX2NhbGxiYWNrcy5zZXQoaywgZm4pKTtcclxuXHRcdH0gZWxzZSBpZiAodHlwZW9mIGtleSA9PT0gJ3N0cmluZycgJiYgY2FsbGJhY2spIHtcclxuXHRcdFx0dGhpcy5fY2FsbGJhY2tzLnNldChrZXksIGNhbGxiYWNrKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHB1YmxpYyBnZXRBbGwoKTogUmVhZG9ubHlNYXA8c3RyaW5nLCBDYWxsYmFjaz4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuX2NhbGxiYWNrcztcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBoYXMoa2V5OiBzdHJpbmcpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiB0aGlzLl9jYWxsYmFja3MuaGFzKGtleSk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgZ2V0KGtleTogc3RyaW5nKTogQ2FsbGJhY2sge1xyXG5cdFx0Y29uc3QgZm4gPSB0aGlzLl9jYWxsYmFja3MuZ2V0KGtleSk7XHJcblx0XHRpZiAoIWZuKSB7XHJcblx0XHRcdGNvbnNvbGUuZXJyb3IoYENhbGxiYWNrIHdpdGgga2V5ICcke2tleX0nIG5vdCBmb3VuZC5gKTtcclxuXHRcdH1cclxuXHRcdHJldHVybiBmbiE7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgZGVsZXRlKGtleTogc3RyaW5nKTogYm9vbGVhbiB7XHJcblx0XHRyZXR1cm4gdGhpcy5fY2FsbGJhY2tzLmRlbGV0ZShrZXkpO1xyXG5cdH1cclxufVxyXG4iXX0=
@@ -12,4 +12,5 @@ export * from './reports-data-transformers.service';
12
12
  export * from './custom-reports-registry.service';
13
13
  export * from './report-configuration.service';
14
14
  export * from './chart-theme.service';
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL3JlcG9ydHMvbmRmLXJlcG9ydHMvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHVCQUF1QixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9uZGYtcmVwb3J0cy5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9jaGFydC1tYW5hZ2VyLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL3JlcG9ydC10cmFuc2Zvcm0uc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZHluYW1pYy10aW1lbGluZS1yZXBvcnQuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcmVwb3J0cy1zdGF0ZS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9kaWdpdC1jaGFydC5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9iYXNlLWNoYXJ0LWJ1aWxkZXIuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY2hhcnQtZGF0YS10cmFuc2Zvcm1lcnMuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY2hhcnQtcGx1Z2lucy1yZWdpc3RyeS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9yZXBvcnQtY29uZmlnLW1hcHBlci5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9yZXBvcnRzLWRhdGEtdHJhbnNmb3JtZXJzLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2N1c3RvbS1yZXBvcnRzLXJlZ2lzdHJ5LnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL3JlcG9ydC1jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NoYXJ0LXRoZW1lLnNlcnZpY2UnXHJcbiJdfQ==
15
+ export * from './chart-callbacks-register.services';
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL3JlcG9ydHMvbmRmLXJlcG9ydHMvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHVCQUF1QixDQUFBO0FBQ3JDLGNBQWMscUNBQXFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL25kZi1yZXBvcnRzLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NoYXJ0LW1hbmFnZXIuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcmVwb3J0LXRyYW5zZm9ybS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9keW5hbWljLXRpbWVsaW5lLXJlcG9ydC5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9yZXBvcnRzLXN0YXRlLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2RpZ2l0LWNoYXJ0LnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2Jhc2UtY2hhcnQtYnVpbGRlci5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9jaGFydC1kYXRhLXRyYW5zZm9ybWVycy5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9jaGFydC1wbHVnaW5zLXJlZ2lzdHJ5LnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL3JlcG9ydC1jb25maWctbWFwcGVyLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL3JlcG9ydHMtZGF0YS10cmFuc2Zvcm1lcnMuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY3VzdG9tLXJlcG9ydHMtcmVnaXN0cnkuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcmVwb3J0LWNvbmZpZ3VyYXRpb24uc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY2hhcnQtdGhlbWUuc2VydmljZSdcclxuZXhwb3J0ICogZnJvbSAnLi9jaGFydC1jYWxsYmFja3MtcmVnaXN0ZXIuc2VydmljZXMnXHJcbiJdfQ==