@valtimo/dashboard 12.5.0 → 12.6.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 (31) hide show
  1. package/esm2022/lib/components/widget-dashboard-content/widget-dashboard-content.component.mjs +18 -10
  2. package/esm2022/lib/dashboard.module.mjs +7 -3
  3. package/esm2022/lib/data-sources/case-count/case-count.specification.mjs +5 -4
  4. package/esm2022/lib/data-sources/case-counts/case-counts.specification.mjs +5 -4
  5. package/esm2022/lib/data-sources/case-counts/components/case-counts-configuration/case-counts-configuration.component.mjs +3 -3
  6. package/esm2022/lib/data-sources/case-group-by/case-group-by.specification.mjs +5 -4
  7. package/esm2022/lib/data-sources/data-sources.module.mjs +17 -0
  8. package/esm2022/lib/data-sources/shared/conditions.mjs +22 -0
  9. package/esm2022/lib/data-sources/shared/index.mjs +17 -0
  10. package/esm2022/lib/models/dashboard.model.mjs +1 -1
  11. package/esm2022/public_api.mjs +2 -1
  12. package/fesm2022/valtimo-dashboard.mjs +211 -152
  13. package/fesm2022/valtimo-dashboard.mjs.map +1 -1
  14. package/lib/components/widget-dashboard-content/widget-dashboard-content.component.d.ts +4 -1
  15. package/lib/components/widget-dashboard-content/widget-dashboard-content.component.d.ts.map +1 -1
  16. package/lib/dashboard.module.d.ts +2 -1
  17. package/lib/dashboard.module.d.ts.map +1 -1
  18. package/lib/data-sources/case-count/case-count.specification.d.ts.map +1 -1
  19. package/lib/data-sources/case-counts/case-counts.specification.d.ts.map +1 -1
  20. package/lib/data-sources/case-group-by/case-group-by.specification.d.ts.map +1 -1
  21. package/lib/data-sources/data-sources.module.d.ts +10 -0
  22. package/lib/data-sources/data-sources.module.d.ts.map +1 -0
  23. package/lib/data-sources/shared/conditions.d.ts +7 -0
  24. package/lib/data-sources/shared/conditions.d.ts.map +1 -0
  25. package/lib/data-sources/shared/index.d.ts +2 -0
  26. package/lib/data-sources/shared/index.d.ts.map +1 -0
  27. package/lib/models/dashboard.model.d.ts +1 -0
  28. package/lib/models/dashboard.model.d.ts.map +1 -1
  29. package/package.json +1 -1
  30. package/public_api.d.ts +1 -0
  31. package/public_api.d.ts.map +1 -1
@@ -22,10 +22,11 @@ import Muuri from 'muuri';
22
22
  import * as i0 from "@angular/core";
23
23
  import * as i1 from "../../services/widget-layout.service";
24
24
  import * as i2 from "../../services";
25
- import * as i3 from "@angular/common";
26
- import * as i4 from "carbon-components-angular";
27
- import * as i5 from "@valtimo/components";
28
- import * as i6 from "@ngx-translate/core";
25
+ import * as i3 from "@angular/router";
26
+ import * as i4 from "@angular/common";
27
+ import * as i5 from "carbon-components-angular";
28
+ import * as i6 from "@valtimo/components";
29
+ import * as i7 from "@ngx-translate/core";
29
30
  export class WidgetDashboardContentComponent {
30
31
  set widgetData(value) {
31
32
  this._isLoading$.next(value.loading);
@@ -37,10 +38,11 @@ export class WidgetDashboardContentComponent {
37
38
  get _muuriInitialized$() {
38
39
  return this._muuri$.pipe(map(muuri => !!muuri));
39
40
  }
40
- constructor(layoutService, widgetService, renderer) {
41
+ constructor(layoutService, widgetService, renderer, router) {
41
42
  this.layoutService = layoutService;
42
43
  this.widgetService = widgetService;
43
44
  this.renderer = renderer;
45
+ this.router = router;
44
46
  this._isLoading$ = new BehaviorSubject(true);
45
47
  this._widgetData$ = new BehaviorSubject([]);
46
48
  this.widgetConfigurations$ = new BehaviorSubject(null);
@@ -66,6 +68,12 @@ export class WidgetDashboardContentComponent {
66
68
  this._observer?.disconnect();
67
69
  this._subscriptions?.unsubscribe();
68
70
  }
71
+ navigateToRoute(widgetConfiguration, event) {
72
+ if (widgetConfiguration.url) {
73
+ event.preventDefault();
74
+ this.router.navigateByUrl(widgetConfiguration.url);
75
+ }
76
+ }
69
77
  setWidgetConfigurations(dashboard) {
70
78
  this.widgetService.supportedDisplayTypes$.pipe(take(1)).subscribe(supportedDisplayTypes => {
71
79
  const supportedWidgetConfigurations = dashboard.widgets?.filter(widgetConfiguration => supportedDisplayTypes.find(type => type.displayTypeKey === widgetConfiguration.displayType)) || [];
@@ -142,13 +150,13 @@ export class WidgetDashboardContentComponent {
142
150
  }));
143
151
  this._creatingMuuri = false;
144
152
  }
145
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: WidgetDashboardContentComponent, deps: [{ token: i1.WidgetLayoutService }, { token: i2.WidgetService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
146
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: WidgetDashboardContentComponent, selector: "valtimo-widget-dashboard-content", inputs: { widgetData: "widgetData", dashboard: "dashboard" }, providers: [WidgetLayoutService], viewQueries: [{ propertyName: "_widgetContainerRef", first: true, predicate: ["widgetContainer"], descendants: true }, { propertyName: "_widgetConfigurationRefs", predicate: ["widgetConfiguration"], descendants: true }, { propertyName: "_widgetConfigurationContentVcRefs", predicate: ["widgetConfigurationContent"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container *ngIf=\"{loaded: loaded$ | async} as obs\">\n <div *ngIf=\"!obs.loaded\" class=\"loading-container\">\n <cds-loading></cds-loading>\n </div>\n</ng-container>\n\n<div\n #widgetContainer\n class=\"widget-container\"\n [ngClass]=\"{'widget-container__visible': loaded$ | async}\"\n>\n <ng-container *ngIf=\"widgetConfigurations$ | async as widgetConfigurations\">\n <ng-container *ngFor=\"let config of widgetConfigurations\">\n <div #widgetConfiguration [id]=\"config.key\" class=\"widget-configuration\">\n <div class=\"widget-configuration-content\">\n <ng-container #widgetConfigurationContent></ng-container>\n </div>\n </div>\n </ng-container>\n\n <valtimo-no-results\n *ngIf=\"!widgetConfigurations.length\"\n [title]=\"'dashboard.noWidgets' | translate\"\n [description]=\"'dashboard.noWidgetsDescription' | translate\"\n illustration=\"valtimo-layout/img/no-widgets.svg\"\n ></valtimo-no-results>\n </ng-container>\n</div>\n", styles: [":host{position:relative}.widget-container{margin-top:16px;width:calc(100% + 16px);margin-left:-8px;position:relative;visibility:hidden}.widget-container__visible{visibility:visible}.widget-configuration{position:absolute;display:flex;justify-content:center;align-items:center}.widget-configuration-content{width:calc(100% - 16px);height:calc(100% - 16px);background-color:#fff}.loading-container{padding-top:32px;position:absolute;top:0;display:flex;width:100%;justify-content:center}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.Loading, selector: "cds-loading, ibm-loading", inputs: ["title", "isActive", "size", "overlay"] }, { kind: "component", type: i5.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] }); }
153
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: WidgetDashboardContentComponent, deps: [{ token: i1.WidgetLayoutService }, { token: i2.WidgetService }, { token: i0.Renderer2 }, { token: i3.Router }], target: i0.ɵɵFactoryTarget.Component }); }
154
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: WidgetDashboardContentComponent, selector: "valtimo-widget-dashboard-content", inputs: { widgetData: "widgetData", dashboard: "dashboard" }, providers: [WidgetLayoutService], viewQueries: [{ propertyName: "_widgetContainerRef", first: true, predicate: ["widgetContainer"], descendants: true }, { propertyName: "_widgetConfigurationRefs", predicate: ["widgetConfiguration"], descendants: true }, { propertyName: "_widgetConfigurationContentVcRefs", predicate: ["widgetConfigurationContent"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container *ngIf=\"{loaded: loaded$ | async} as obs\">\n <div *ngIf=\"!obs.loaded\" class=\"loading-container\">\n <cds-loading></cds-loading>\n </div>\n</ng-container>\n\n<div\n #widgetContainer\n class=\"widget-container\"\n [ngClass]=\"{'widget-container__visible': loaded$ | async}\"\n>\n <ng-container *ngIf=\"widgetConfigurations$ | async as widgetConfigurations\">\n <ng-container *ngFor=\"let config of widgetConfigurations\">\n <div #widgetConfiguration [id]=\"config.key\" class=\"widget-configuration\">\n <div\n (click)=\"navigateToRoute(config, $event)\"\n [ngClass]=\"{\n 'widget-configuration-content-clickable': config.url,\n }\"\n class=\"widget-configuration-content\"\n >\n <ng-container #widgetConfigurationContent></ng-container>\n </div>\n </div>\n </ng-container>\n\n <valtimo-no-results\n *ngIf=\"!widgetConfigurations.length\"\n [title]=\"'dashboard.noWidgets' | translate\"\n [description]=\"'dashboard.noWidgetsDescription' | translate\"\n illustration=\"valtimo-layout/img/no-widgets.svg\"\n ></valtimo-no-results>\n </ng-container>\n</div>\n", styles: [":host{position:relative}.widget-container{margin-top:16px;width:calc(100% + 16px);margin-left:-8px;position:relative;visibility:hidden}.widget-container__visible{visibility:visible}.widget-configuration{position:absolute;display:flex;justify-content:center;align-items:center}.widget-configuration-content{width:calc(100% - 16px);height:calc(100% - 16px);background-color:#fff}.widget-configuration-content-clickable{cursor:pointer}.loading-container{padding-top:32px;position:absolute;top:0;display:flex;width:100%;justify-content:center}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.Loading, selector: "cds-loading, ibm-loading", inputs: ["title", "isActive", "size", "overlay"] }, { kind: "component", type: i6.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] }); }
147
155
  }
148
156
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: WidgetDashboardContentComponent, decorators: [{
149
157
  type: Component,
150
- args: [{ selector: 'valtimo-widget-dashboard-content', providers: [WidgetLayoutService], template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container *ngIf=\"{loaded: loaded$ | async} as obs\">\n <div *ngIf=\"!obs.loaded\" class=\"loading-container\">\n <cds-loading></cds-loading>\n </div>\n</ng-container>\n\n<div\n #widgetContainer\n class=\"widget-container\"\n [ngClass]=\"{'widget-container__visible': loaded$ | async}\"\n>\n <ng-container *ngIf=\"widgetConfigurations$ | async as widgetConfigurations\">\n <ng-container *ngFor=\"let config of widgetConfigurations\">\n <div #widgetConfiguration [id]=\"config.key\" class=\"widget-configuration\">\n <div class=\"widget-configuration-content\">\n <ng-container #widgetConfigurationContent></ng-container>\n </div>\n </div>\n </ng-container>\n\n <valtimo-no-results\n *ngIf=\"!widgetConfigurations.length\"\n [title]=\"'dashboard.noWidgets' | translate\"\n [description]=\"'dashboard.noWidgetsDescription' | translate\"\n illustration=\"valtimo-layout/img/no-widgets.svg\"\n ></valtimo-no-results>\n </ng-container>\n</div>\n", styles: [":host{position:relative}.widget-container{margin-top:16px;width:calc(100% + 16px);margin-left:-8px;position:relative;visibility:hidden}.widget-container__visible{visibility:visible}.widget-configuration{position:absolute;display:flex;justify-content:center;align-items:center}.widget-configuration-content{width:calc(100% - 16px);height:calc(100% - 16px);background-color:#fff}.loading-container{padding-top:32px;position:absolute;top:0;display:flex;width:100%;justify-content:center}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
151
- }], ctorParameters: () => [{ type: i1.WidgetLayoutService }, { type: i2.WidgetService }, { type: i0.Renderer2 }], propDecorators: { _widgetConfigurationRefs: [{
158
+ args: [{ selector: 'valtimo-widget-dashboard-content', providers: [WidgetLayoutService], template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container *ngIf=\"{loaded: loaded$ | async} as obs\">\n <div *ngIf=\"!obs.loaded\" class=\"loading-container\">\n <cds-loading></cds-loading>\n </div>\n</ng-container>\n\n<div\n #widgetContainer\n class=\"widget-container\"\n [ngClass]=\"{'widget-container__visible': loaded$ | async}\"\n>\n <ng-container *ngIf=\"widgetConfigurations$ | async as widgetConfigurations\">\n <ng-container *ngFor=\"let config of widgetConfigurations\">\n <div #widgetConfiguration [id]=\"config.key\" class=\"widget-configuration\">\n <div\n (click)=\"navigateToRoute(config, $event)\"\n [ngClass]=\"{\n 'widget-configuration-content-clickable': config.url,\n }\"\n class=\"widget-configuration-content\"\n >\n <ng-container #widgetConfigurationContent></ng-container>\n </div>\n </div>\n </ng-container>\n\n <valtimo-no-results\n *ngIf=\"!widgetConfigurations.length\"\n [title]=\"'dashboard.noWidgets' | translate\"\n [description]=\"'dashboard.noWidgetsDescription' | translate\"\n illustration=\"valtimo-layout/img/no-widgets.svg\"\n ></valtimo-no-results>\n </ng-container>\n</div>\n", styles: [":host{position:relative}.widget-container{margin-top:16px;width:calc(100% + 16px);margin-left:-8px;position:relative;visibility:hidden}.widget-container__visible{visibility:visible}.widget-configuration{position:absolute;display:flex;justify-content:center;align-items:center}.widget-configuration-content{width:calc(100% - 16px);height:calc(100% - 16px);background-color:#fff}.widget-configuration-content-clickable{cursor:pointer}.loading-container{padding-top:32px;position:absolute;top:0;display:flex;width:100%;justify-content:center}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
159
+ }], ctorParameters: () => [{ type: i1.WidgetLayoutService }, { type: i2.WidgetService }, { type: i0.Renderer2 }, { type: i3.Router }], propDecorators: { _widgetConfigurationRefs: [{
152
160
  type: ViewChildren,
153
161
  args: ['widgetConfiguration']
154
162
  }], _widgetConfigurationContentVcRefs: [{
@@ -162,4 +170,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
162
170
  }], dashboard: [{
163
171
  type: Input
164
172
  }] } });
165
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWRhc2hib2FyZC1jb250ZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy93aWRnZXQtZGFzaGJvYXJkLWNvbnRlbnQvd2lkZ2V0LWRhc2hib2FyZC1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy93aWRnZXQtZGFzaGJvYXJkLWNvbnRlbnQvd2lkZ2V0LWRhc2hib2FyZC1jb250ZW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUVMLFNBQVMsRUFHVCxLQUFLLEVBSUwsU0FBUyxFQUNULFlBQVksRUFDWixnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGVBQWUsRUFBRSxhQUFhLEVBQWMsWUFBWSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzlFLE9BQU8sRUFBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBR2hELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQzs7Ozs7Ozs7QUFRMUIsTUFBTSxPQUFPLCtCQUErQjtJQVcxQyxJQUFhLFVBQVUsQ0FBQyxLQUE2QztRQUNuRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FB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SyxDQUFDO0lBQzlCLENBQUM7K0dBaExVLCtCQUErQjttR0FBL0IsK0JBQStCLHlIQUYvQixDQUFDLG1CQUFtQixDQUFDLHVWQU1tQixnQkFBZ0IsNkJDOUNyRSw2b0RBNENBOzs0RkRGYSwrQkFBK0I7a0JBTjNDLFNBQVM7K0JBQ0Usa0NBQWtDLGFBR2pDLENBQUMsbUJBQW1CLENBQUM7NElBR2Esd0JBQXdCO3NCQUFwRSxZQUFZO3VCQUFDLHFCQUFxQjtnQkFJM0IsaUNBQWlDO3NCQUR4QyxZQUFZO3VCQUFDLDRCQUE0QixFQUFFLEVBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFDO2dCQUU5QixtQkFBbUI7c0JBQXhELFNBQVM7dUJBQUMsaUJBQWlCO2dCQUtmLFVBQVU7c0JBQXRCLEtBQUs7Z0JBSU8sU0FBUztzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudFJlZixcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgUXVlcnlMaXN0LFxuICBSZW5kZXJlcjIsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtkZWxheSwgbWFwLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0Rhc2hib2FyZCwgRGFzaGJvYXJkV2lkZ2V0Q29uZmlndXJhdGlvbiwgRGlzcGxheUNvbXBvbmVudCwgV2lkZ2V0RGF0YX0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7V2lkZ2V0U2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHtXaWRnZXRMYXlvdXRTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy93aWRnZXQtbGF5b3V0LnNlcnZpY2UnO1xuaW1wb3J0IHtXSURHRVRfMVhfSEVJR0hUfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IE11dXJpIGZyb20gJ211dXJpJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby13aWRnZXQtZGFzaGJvYXJkLWNvbnRlbnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vd2lkZ2V0LWRhc2hib2FyZC1jb250ZW50LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vd2lkZ2V0LWRhc2hib2FyZC1jb250ZW50LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1dpZGdldExheW91dFNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBXaWRnZXREYXNoYm9hcmRDb250ZW50Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZHJlbignd2lkZ2V0Q29uZmlndXJhdGlvbicpIHByaXZhdGUgX3dpZGdldENvbmZpZ3VyYXRpb25SZWZzOiBRdWVyeUxpc3Q8XG4gICAgRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD5cbiAgPjtcbiAgQFZpZXdDaGlsZHJlbignd2lkZ2V0Q29uZmlndXJhdGlvbkNvbnRlbnQnLCB7cmVhZDogVmlld0NvbnRhaW5lclJlZn0pXG4gIHByaXZhdGUgX3dpZGdldENvbmZpZ3VyYXRpb25Db250ZW50VmNSZWZzOiBRdWVyeUxpc3Q8Vmlld0NvbnRhaW5lclJlZj47XG4gIEBWaWV3Q2hpbGQoJ3dpZGdldENvbnRhaW5lcicpIHByaXZhdGUgX3dpZGdldENvbnRhaW5lclJlZjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfaXNMb2FkaW5nJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG4gIHByaXZhdGUgX3dpZGdldERhdGEkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxXaWRnZXREYXRhW10+KFtdKTtcblxuICBASW5wdXQoKSBzZXQgd2lkZ2V0RGF0YSh2YWx1ZToge2RhdGE6IFdpZGdldERhdGFbXTsgbG9hZGluZzogYm9vbGVhbn0pIHtcbiAgICB0aGlzLl9pc0xvYWRpbmckLm5leHQodmFsdWUubG9hZGluZyk7XG4gICAgdGhpcy5fd2lkZ2V0RGF0YSQubmV4dCh2YWx1ZS5kYXRhKTtcbiAgfVxuICBASW5wdXQoKSBzZXQgZGFzaGJvYXJkKHZhbHVlOiBEYXNoYm9hcmQpIHtcbiAgICB0aGlzLnNldFdpZGdldENvbmZpZ3VyYXRpb25zKHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyByZWFkb25seSB3aWRnZXRDb25maWd1cmF0aW9ucyQgPVxuICAgIG5ldyBCZWhhdmlvclN1YmplY3Q8QXJyYXk8RGFzaGJvYXJkV2lkZ2V0Q29uZmlndXJhdGlvbj4gfCBudWxsPihudWxsKTtcblxuICBwcml2YXRlIF9vYnNlcnZlciE6IFJlc2l6ZU9ic2VydmVyO1xuICBwcml2YXRlIF9zdWJzY3JpcHRpb25zID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX211dXJpJCA9IHRoaXMubGF5b3V0U2VydmljZS5tdXVyaVN1YmplY3QkO1xuXG4gIHByaXZhdGUgX2NyZWF0aW5nTXV1cmkgPSBmYWxzZTtcblxuICBwcml2YXRlIGdldCBfbXV1cmlJbml0aWFsaXplZCQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX211dXJpJC5waXBlKG1hcChtdXVyaSA9PiAhIW11dXJpKSk7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IF9ub1Jlc3VsdHMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGxvYWRlZCQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLl9pc0xvYWRpbmckLFxuICAgIHRoaXMuX211dXJpSW5pdGlhbGl6ZWQkLFxuICAgIHRoaXMuX25vUmVzdWx0cyQsXG4gIF0pLnBpcGUoXG4gICAgbWFwKFxuICAgICAgKFtpc0xvYWRpbmcsIG11dXJpSW5pdGlhbGl6ZWQsIG5vUmVzdWx0c10pID0+ICFpc0xvYWRpbmcgJiYgKG11dXJpSW5pdGlhbGl6ZWQgfHwgbm9SZXN1bHRzKVxuICAgICksXG4gICAgZGVsYXkoNDAwKVxuICApO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbGF5b3V0U2VydmljZTogV2lkZ2V0TGF5b3V0U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHdpZGdldFNlcnZpY2U6IFdpZGdldFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyXG4gICkge31cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX29ic2VydmVyID0gbmV3IFJlc2l6ZU9ic2VydmVyKGV2ZW50ID0+IHtcbiAgICAgIHRoaXMub2JzZXJ2ZXJNdXRhdGlvbihldmVudCk7XG4gICAgfSk7XG4gICAgdGhpcy5fb2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLl93aWRnZXRDb250YWluZXJSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgdGhpcy5vcGVuV2lkZ2V0U2l6ZVN1YnNjcmlwdGlvbigpO1xuICAgIHRoaXMucmVuZGVyV2lkZ2V0cygpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX29ic2VydmVyPy5kaXNjb25uZWN0KCk7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucz8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0V2lkZ2V0Q29uZmlndXJhdGlvbnMoZGFzaGJvYXJkOiBEYXNoYm9hcmQpOiB2b2lkIHtcbiAgICB0aGlzLndpZGdldFNlcnZpY2Uuc3VwcG9ydGVkRGlzcGxheVR5cGVzJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShzdXBwb3J0ZWREaXNwbGF5VHlwZXMgPT4ge1xuICAgICAgY29uc3Qgc3VwcG9ydGVkV2lkZ2V0Q29uZmlndXJhdGlvbnMgPVxuICAgICAgICBkYXNoYm9hcmQud2lkZ2V0cz8uZmlsdGVyKHdpZGdldENvbmZpZ3VyYXRpb24gPT5cbiAgICAgICAgICBzdXBwb3J0ZWREaXNwbGF5VHlwZXMuZmluZChcbiAgICAgICAgICAgIHR5cGUgPT4gdHlwZS5kaXNwbGF5VHlwZUtleSA9PT0gd2lkZ2V0Q29uZmlndXJhdGlvbi5kaXNwbGF5VHlwZVxuICAgICAgICAgIClcbiAgICAgICAgKSB8fCBbXTtcbiAgICAgIHRoaXMubGF5b3V0U2VydmljZS5zZXRXaWRnZXRDb25maWd1cmF0aW9ucyhzdXBwb3J0ZWRXaWRnZXRDb25maWd1cmF0aW9ucyk7XG4gICAgICB0aGlzLndpZGdldENvbmZpZ3VyYXRpb25zJC5uZXh0KHN1cHBvcnRlZFdpZGdldENvbmZpZ3VyYXRpb25zKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZXJNdXRhdGlvbihldmVudDogQXJyYXk8UmVzaXplT2JzZXJ2ZXJFbnRyeT4pOiB2b2lkIHtcbiAgICBjb25zdCB3aWRnZXRDb250YWluZXJXaWR0aCA9IGV2ZW50WzBdPy5ib3JkZXJCb3hTaXplWzBdPy5pbmxpbmVTaXplO1xuXG4gICAgaWYgKHR5cGVvZiB3aWRnZXRDb250YWluZXJXaWR0aCA9PT0gJ251bWJlcicgJiYgd2lkZ2V0Q29udGFpbmVyV2lkdGggIT09IDApIHtcbiAgICAgIHRoaXMubGF5b3V0U2VydmljZS5zZXRXaWRnZXRDb250YWluZXJXaWR0aCh3aWRnZXRDb250YWluZXJXaWR0aCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBvcGVuV2lkZ2V0U2l6ZVN1YnNjcmlwdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICB0aGlzLmxheW91dFNlcnZpY2UuYW1vdW50T2ZDb2x1bW5zJCxcbiAgICAgICAgdGhpcy53aWRnZXRDb25maWd1cmF0aW9ucyQsXG4gICAgICAgIHRoaXMud2lkZ2V0U2VydmljZS5zdXBwb3J0ZWREaXNwbGF5VHlwZXMkLFxuICAgICAgICB0aGlzLl9tdXVyaSQsXG4gICAgICBdKS5zdWJzY3JpYmUoKFthbW91bnRPZkNvbHVtbnMsIHdpZGdldENvbmZpZ3VyYXRpb25zLCBzdXBwb3J0ZWREaXNwbGF5VHlwZXMsIG11dXJpXSkgPT4ge1xuICAgICAgICB0aGlzLl93aWRnZXRDb25maWd1cmF0aW9uUmVmcy50b0FycmF5KCkuZm9yRWFjaCh3aWRnZXRDb25maWd1cmF0aW9uUmVmID0+IHtcbiAgICAgICAgICBjb25zdCBuYXRpdmVFbGVtZW50ID0gd2lkZ2V0Q29uZmlndXJhdGlvblJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICAgIGNvbnN0IHdpZGdldENvbmZpZ3VyYXRpb24gPSB3aWRnZXRDb25maWd1cmF0aW9ucy5maW5kKFxuICAgICAgICAgICAgY29uZmlnID0+IGNvbmZpZy5rZXkgPT09IG5hdGl2ZUVsZW1lbnQuaWRcbiAgICAgICAgICApO1xuICAgICAgICAgIGNvbnN0IHNwZWNpZmljYXRpb24gPSBzdXBwb3J0ZWREaXNwbGF5VHlwZXMuZmluZChcbiAgICAgICAgICAgIHR5cGUgPT4gdHlwZS5kaXNwbGF5VHlwZUtleSA9PT0gd2lkZ2V0Q29uZmlndXJhdGlvbi5kaXNwbGF5VHlwZVxuICAgICAgICAgICk7XG4gICAgICAgICAgY29uc3Qgd2lkdGhQZXJjZW50YWdlID1cbiAgICAgICAgICAgIHNwZWNpZmljYXRpb24ud2lkdGggPiBhbW91bnRPZkNvbHVtbnNcbiAgICAgICAgICAgICAgPyAxMDBcbiAgICAgICAgICAgICAgOiAoc3BlY2lmaWNhdGlvbi53aWR0aCAvIGFtb3VudE9mQ29sdW1ucykgKiAxMDA7XG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShcbiAgICAgICAgICAgIG5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAnaGVpZ2h0JyxcbiAgICAgICAgICAgIGAke1dJREdFVF8xWF9IRUlHSFQgKiBzcGVjaWZpY2F0aW9uLmhlaWdodH1weGBcbiAgICAgICAgICApO1xuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUobmF0aXZlRWxlbWVudCwgJ3dpZHRoJywgYCR7d2lkdGhQZXJjZW50YWdlfSVgKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHdpZGdldENvbmZpZ3VyYXRpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICBpZiAoIW11dXJpKSB7XG4gICAgICAgICAgICB0aGlzLmluaXRNdXVyaSgpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmxheW91dFNlcnZpY2UudHJpZ2dlck11dXJpTGF5b3V0KCk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuX25vUmVzdWx0cyQubmV4dCh0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSByZW5kZXJXaWRnZXRzKCk6IHZvaWQge1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgY29tYmluZUxhdGVzdChbXG4gICAgICAgIHRoaXMud2lkZ2V0Q29uZmlndXJhdGlvbnMkLFxuICAgICAgICB0aGlzLndpZGdldFNlcnZpY2Uuc3VwcG9ydGVkRGlzcGxheVR5cGVzJCxcbiAgICAgICAgdGhpcy5fd2lkZ2V0RGF0YSQsXG4gICAgICBdKS5zdWJzY3JpYmUoKFtjb25maWd1cmF0aW9ucywgZGlzcGxheVR5cGVzLCBkYXRhXSkgPT4ge1xuICAgICAgICBjb25maWd1cmF0aW9ucz8uZm9yRWFjaCgoY29uZmlndXJhdGlvbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICBjb25zdCBkaXNwbGF5VHlwZSA9IGRpc3BsYXlUeXBlcy5maW5kKFxuICAgICAgICAgICAgdHlwZSA9PiB0eXBlLmRpc3BsYXlUeXBlS2V5ID09PSBjb25maWd1cmF0aW9uLmRpc3BsYXlUeXBlXG4gICAgICAgICAgKTtcbiAgICAgICAgICBjb25zdCB2Y1JlZiA9IHRoaXMuX3dpZGdldENvbmZpZ3VyYXRpb25Db250ZW50VmNSZWZzLnRvQXJyYXkoKVtpbmRleF07XG5cbiAgICAgICAgICBpZiAoZGlzcGxheVR5cGUgJiYgZGF0YSkge1xuICAgICAgICAgICAgdmNSZWYuY2xlYXIoKTtcbiAgICAgICAgICAgIGNvbnN0IGNvbXBvbmVudEluc3RhbmNlOiBDb21wb25lbnRSZWY8RGlzcGxheUNvbXBvbmVudD4gPSB2Y1JlZi5jcmVhdGVDb21wb25lbnQoXG4gICAgICAgICAgICAgIGRpc3BsYXlUeXBlLmRpc3BsYXlDb21wb25lbnRcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBjb21wb25lbnRJbnN0YW5jZS5zZXRJbnB1dCgnZGlzcGxheVR5cGVLZXknLCBjb25maWd1cmF0aW9uLmRpc3BsYXlUeXBlKTtcbiAgICAgICAgICAgIGNvbXBvbmVudEluc3RhbmNlLnNldElucHV0KCdkaXNwbGF5VHlwZVByb3BlcnRpZXMnLCB7XG4gICAgICAgICAgICAgIC4uLmNvbmZpZ3VyYXRpb24uZGlzcGxheVR5cGVQcm9wZXJ0aWVzLFxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGNvbXBvbmVudEluc3RhbmNlLnNldElucHV0KFxuICAgICAgICAgICAgICAnZGF0YScsXG4gICAgICAgICAgICAgIGRhdGEuZmluZChkYXRhSXRlbSA9PiBkYXRhSXRlbS5rZXkgPT09IGNvbmZpZ3VyYXRpb24ua2V5KT8uZGF0YVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0TXV1cmkoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl93aWRnZXRDb250YWluZXJSZWYgfHwgdGhpcy5fY3JlYXRpbmdNdXVyaSkgcmV0dXJuO1xuXG4gICAgdGhpcy5fY3JlYXRpbmdNdXVyaSA9IHRydWU7XG5cbiAgICB0aGlzLmxheW91dFNlcnZpY2Uuc2V0TXV1cmkoXG4gICAgICBuZXcgTXV1cmkodGhpcy5fd2lkZ2V0Q29udGFpbmVyUmVmLm5hdGl2ZUVsZW1lbnQsIHtcbiAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgZmlsbEdhcHM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIGxheW91dE9uUmVzaXplOiBmYWxzZSxcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMuX2NyZWF0aW5nTXV1cmkgPSBmYWxzZTtcbiAgfVxufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwie2xvYWRlZDogbG9hZGVkJCB8IGFzeW5jfSBhcyBvYnNcIj5cbiAgPGRpdiAqbmdJZj1cIiFvYnMubG9hZGVkXCIgY2xhc3M9XCJsb2FkaW5nLWNvbnRhaW5lclwiPlxuICAgIDxjZHMtbG9hZGluZz48L2Nkcy1sb2FkaW5nPlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuXG48ZGl2XG4gICN3aWRnZXRDb250YWluZXJcbiAgY2xhc3M9XCJ3aWRnZXQtY29udGFpbmVyXCJcbiAgW25nQ2xhc3NdPVwieyd3aWRnZXQtY29udGFpbmVyX192aXNpYmxlJzogbG9hZGVkJCB8IGFzeW5jfVwiXG4+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJ3aWRnZXRDb25maWd1cmF0aW9ucyQgfCBhc3luYyBhcyB3aWRnZXRDb25maWd1cmF0aW9uc1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNvbmZpZyBvZiB3aWRnZXRDb25maWd1cmF0aW9uc1wiPlxuICAgICAgPGRpdiAjd2lkZ2V0Q29uZmlndXJhdGlvbiBbaWRdPVwiY29uZmlnLmtleVwiIGNsYXNzPVwid2lkZ2V0LWNvbmZpZ3VyYXRpb25cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIndpZGdldC1jb25maWd1cmF0aW9uLWNvbnRlbnRcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICN3aWRnZXRDb25maWd1cmF0aW9uQ29udGVudD48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDx2YWx0aW1vLW5vLXJlc3VsdHNcbiAgICAgICpuZ0lmPVwiIXdpZGdldENvbmZpZ3VyYXRpb25zLmxlbmd0aFwiXG4gICAgICBbdGl0bGVdPVwiJ2Rhc2hib2FyZC5ub1dpZGdldHMnIHwgdHJhbnNsYXRlXCJcbiAgICAgIFtkZXNjcmlwdGlvbl09XCInZGFzaGJvYXJkLm5vV2lkZ2V0c0Rlc2NyaXB0aW9uJyB8IHRyYW5zbGF0ZVwiXG4gICAgICBpbGx1c3RyYXRpb249XCJ2YWx0aW1vLWxheW91dC9pbWcvbm8td2lkZ2V0cy5zdmdcIlxuICAgID48L3ZhbHRpbW8tbm8tcmVzdWx0cz5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
173
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWRhc2hib2FyZC1jb250ZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy93aWRnZXQtZGFzaGJvYXJkLWNvbnRlbnQvd2lkZ2V0LWRhc2hib2FyZC1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy93aWRnZXQtZGFzaGJvYXJkLWNvbnRlbnQvd2lkZ2V0LWRhc2hib2FyZC1jb250ZW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUVMLFNBQVMsRUFHVCxLQUFLLEVBSUwsU0FBUyxFQUNULFlBQVksRUFDWixnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGVBQWUsRUFBRSxhQUFhLEVBQWMsWUFBWSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzlFLE9BQU8sRUFBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBR2hELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQzs7Ozs7Ozs7O0FBUzFCLE1BQU0sT0FBTywrQkFBK0I7SUFXMUMsSUFBYSxVQUFVLENBQUMsS0FBNkM7UUFDbkUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENB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SUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFFM0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQ3pCLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLEVBQUU7WUFDaEQsTUFBTSxFQUFFO2dCQUNOLFFBQVEsRUFBRSxJQUFJO2FBQ2Y7WUFDRCxjQUFjLEVBQUUsS0FBSztTQUN0QixDQUFDLENBQ0gsQ0FBQztRQUVGLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO0lBQzlCLENBQUM7K0dBM0xVLCtCQUErQjttR0FBL0IsK0JBQStCLHlIQUYvQixDQUFDLG1CQUFtQixDQUFDLHVWQU1tQixnQkFBZ0IsNkJDL0NyRSxvMERBa0RBOzs0RkRQYSwrQkFBK0I7a0JBTjNDLFNBQVM7K0JBQ0Usa0NBQWtDLGFBR2pDLENBQUMsbUJBQW1CLENBQUM7aUtBR2Esd0JBQXdCO3NCQUFwRSxZQUFZO3VCQUFDLHFCQUFxQjtnQkFJM0IsaUNBQWlDO3NCQUR4QyxZQUFZO3VCQUFDLDRCQUE0QixFQUFFLEVBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFDO2dCQUU5QixtQkFBbUI7c0JBQXhELFNBQVM7dUJBQUMsaUJBQWlCO2dCQUtmLFVBQVU7c0JBQXRCLEtBQUs7Z0JBSU8sU0FBUztzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudFJlZixcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgUXVlcnlMaXN0LFxuICBSZW5kZXJlcjIsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtkZWxheSwgbWFwLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0Rhc2hib2FyZCwgRGFzaGJvYXJkV2lkZ2V0Q29uZmlndXJhdGlvbiwgRGlzcGxheUNvbXBvbmVudCwgV2lkZ2V0RGF0YX0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7V2lkZ2V0U2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHtXaWRnZXRMYXlvdXRTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy93aWRnZXQtbGF5b3V0LnNlcnZpY2UnO1xuaW1wb3J0IHtXSURHRVRfMVhfSEVJR0hUfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IE11dXJpIGZyb20gJ211dXJpJztcbmltcG9ydCB7Um91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLXdpZGdldC1kYXNoYm9hcmQtY29udGVudCcsXG4gIHRlbXBsYXRlVXJsOiAnLi93aWRnZXQtZGFzaGJvYXJkLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi93aWRnZXQtZGFzaGJvYXJkLWNvbnRlbnQuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbV2lkZ2V0TGF5b3V0U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFdpZGdldERhc2hib2FyZENvbnRlbnRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkcmVuKCd3aWRnZXRDb25maWd1cmF0aW9uJykgcHJpdmF0ZSBfd2lkZ2V0Q29uZmlndXJhdGlvblJlZnM6IFF1ZXJ5TGlzdDxcbiAgICBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PlxuICA+O1xuICBAVmlld0NoaWxkcmVuKCd3aWRnZXRDb25maWd1cmF0aW9uQ29udGVudCcsIHtyZWFkOiBWaWV3Q29udGFpbmVyUmVmfSlcbiAgcHJpdmF0ZSBfd2lkZ2V0Q29uZmlndXJhdGlvbkNvbnRlbnRWY1JlZnM6IFF1ZXJ5TGlzdDxWaWV3Q29udGFpbmVyUmVmPjtcbiAgQFZpZXdDaGlsZCgnd2lkZ2V0Q29udGFpbmVyJykgcHJpdmF0ZSBfd2lkZ2V0Q29udGFpbmVyUmVmOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9pc0xvYWRpbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgcHJpdmF0ZSBfd2lkZ2V0RGF0YSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFdpZGdldERhdGFbXT4oW10pO1xuXG4gIEBJbnB1dCgpIHNldCB3aWRnZXREYXRhKHZhbHVlOiB7ZGF0YTogV2lkZ2V0RGF0YVtdOyBsb2FkaW5nOiBib29sZWFufSkge1xuICAgIHRoaXMuX2lzTG9hZGluZyQubmV4dCh2YWx1ZS5sb2FkaW5nKTtcbiAgICB0aGlzLl93aWRnZXREYXRhJC5uZXh0KHZhbHVlLmRhdGEpO1xuICB9XG4gIEBJbnB1dCgpIHNldCBkYXNoYm9hcmQodmFsdWU6IERhc2hib2FyZCkge1xuICAgIHRoaXMuc2V0V2lkZ2V0Q29uZmlndXJhdGlvbnModmFsdWUpO1xuICB9XG5cbiAgcHVibGljIHJlYWRvbmx5IHdpZGdldENvbmZpZ3VyYXRpb25zJCA9XG4gICAgbmV3IEJlaGF2aW9yU3ViamVjdDxBcnJheTxEYXNoYm9hcmRXaWRnZXRDb25maWd1cmF0aW9uPiB8IG51bGw+KG51bGwpO1xuXG4gIHByaXZhdGUgX29ic2VydmVyITogUmVzaXplT2JzZXJ2ZXI7XG4gIHByaXZhdGUgX3N1YnNjcmlwdGlvbnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbXV1cmkkID0gdGhpcy5sYXlvdXRTZXJ2aWNlLm11dXJpU3ViamVjdCQ7XG5cbiAgcHJpdmF0ZSBfY3JlYXRpbmdNdXVyaSA9IGZhbHNlO1xuXG4gIHByaXZhdGUgZ2V0IF9tdXVyaUluaXRpYWxpemVkJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5fbXV1cmkkLnBpcGUobWFwKG11dXJpID0+ICEhbXV1cmkpKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25vUmVzdWx0cyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgbG9hZGVkJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMuX2lzTG9hZGluZyQsXG4gICAgdGhpcy5fbXV1cmlJbml0aWFsaXplZCQsXG4gICAgdGhpcy5fbm9SZXN1bHRzJCxcbiAgXSkucGlwZShcbiAgICBtYXAoXG4gICAgICAoW2lzTG9hZGluZywgbXV1cmlJbml0aWFsaXplZCwgbm9SZXN1bHRzXSkgPT4gIWlzTG9hZGluZyAmJiAobXV1cmlJbml0aWFsaXplZCB8fCBub1Jlc3VsdHMpXG4gICAgKSxcbiAgICBkZWxheSg0MDApXG4gICk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBsYXlvdXRTZXJ2aWNlOiBXaWRnZXRMYXlvdXRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgd2lkZ2V0U2VydmljZTogV2lkZ2V0U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlclxuICApIHt9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9vYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcihldmVudCA9PiB7XG4gICAgICB0aGlzLm9ic2VydmVyTXV0YXRpb24oZXZlbnQpO1xuICAgIH0pO1xuICAgIHRoaXMuX29ic2VydmVyLm9ic2VydmUodGhpcy5fd2lkZ2V0Q29udGFpbmVyUmVmLm5hdGl2ZUVsZW1lbnQpO1xuICAgIHRoaXMub3BlbldpZGdldFNpemVTdWJzY3JpcHRpb24oKTtcbiAgICB0aGlzLnJlbmRlcldpZGdldHMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9vYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbnM/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwdWJsaWMgbmF2aWdhdGVUb1JvdXRlKFxuICAgIHdpZGdldENvbmZpZ3VyYXRpb246IERhc2hib2FyZFdpZGdldENvbmZpZ3VyYXRpb24sXG4gICAgZXZlbnQ6IE1vdXNlRXZlbnRcbiAgKTogdm9pZCB7XG4gICAgaWYgKHdpZGdldENvbmZpZ3VyYXRpb24udXJsKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCh3aWRnZXRDb25maWd1cmF0aW9uLnVybCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRXaWRnZXRDb25maWd1cmF0aW9ucyhkYXNoYm9hcmQ6IERhc2hib2FyZCk6IHZvaWQge1xuICAgIHRoaXMud2lkZ2V0U2VydmljZS5zdXBwb3J0ZWREaXNwbGF5VHlwZXMkLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKHN1cHBvcnRlZERpc3BsYXlUeXBlcyA9PiB7XG4gICAgICBjb25zdCBzdXBwb3J0ZWRXaWRnZXRDb25maWd1cmF0aW9ucyA9XG4gICAgICAgIGRhc2hib2FyZC53aWRnZXRzPy5maWx0ZXIod2lkZ2V0Q29uZmlndXJhdGlvbiA9PlxuICAgICAgICAgIHN1cHBvcnRlZERpc3BsYXlUeXBlcy5maW5kKFxuICAgICAgICAgICAgdHlwZSA9PiB0eXBlLmRpc3BsYXlUeXBlS2V5ID09PSB3aWRnZXRDb25maWd1cmF0aW9uLmRpc3BsYXlUeXBlXG4gICAgICAgICAgKVxuICAgICAgICApIHx8IFtdO1xuICAgICAgdGhpcy5sYXlvdXRTZXJ2aWNlLnNldFdpZGdldENvbmZpZ3VyYXRpb25zKHN1cHBvcnRlZFdpZGdldENvbmZpZ3VyYXRpb25zKTtcbiAgICAgIHRoaXMud2lkZ2V0Q29uZmlndXJhdGlvbnMkLm5leHQoc3VwcG9ydGVkV2lkZ2V0Q29uZmlndXJhdGlvbnMpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvYnNlcnZlck11dGF0aW9uKGV2ZW50OiBBcnJheTxSZXNpemVPYnNlcnZlckVudHJ5Pik6IHZvaWQge1xuICAgIGNvbnN0IHdpZGdldENvbnRhaW5lcldpZHRoID0gZXZlbnRbMF0/LmJvcmRlckJveFNpemVbMF0/LmlubGluZVNpemU7XG5cbiAgICBpZiAodHlwZW9mIHdpZGdldENvbnRhaW5lcldpZHRoID09PSAnbnVtYmVyJyAmJiB3aWRnZXRDb250YWluZXJXaWR0aCAhPT0gMCkge1xuICAgICAgdGhpcy5sYXlvdXRTZXJ2aWNlLnNldFdpZGdldENvbnRhaW5lcldpZHRoKHdpZGdldENvbnRhaW5lcldpZHRoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG9wZW5XaWRnZXRTaXplU3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgY29tYmluZUxhdGVzdChbXG4gICAgICAgIHRoaXMubGF5b3V0U2VydmljZS5hbW91bnRPZkNvbHVtbnMkLFxuICAgICAgICB0aGlzLndpZGdldENvbmZpZ3VyYXRpb25zJCxcbiAgICAgICAgdGhpcy53aWRnZXRTZXJ2aWNlLnN1cHBvcnRlZERpc3BsYXlUeXBlcyQsXG4gICAgICAgIHRoaXMuX211dXJpJCxcbiAgICAgIF0pLnN1YnNjcmliZSgoW2Ftb3VudE9mQ29sdW1ucywgd2lkZ2V0Q29uZmlndXJhdGlvbnMsIHN1cHBvcnRlZERpc3BsYXlUeXBlcywgbXV1cmldKSA9PiB7XG4gICAgICAgIHRoaXMuX3dpZGdldENvbmZpZ3VyYXRpb25SZWZzLnRvQXJyYXkoKS5mb3JFYWNoKHdpZGdldENvbmZpZ3VyYXRpb25SZWYgPT4ge1xuICAgICAgICAgIGNvbnN0IG5hdGl2ZUVsZW1lbnQgPSB3aWRnZXRDb25maWd1cmF0aW9uUmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgY29uc3Qgd2lkZ2V0Q29uZmlndXJhdGlvbiA9IHdpZGdldENvbmZpZ3VyYXRpb25zLmZpbmQoXG4gICAgICAgICAgICBjb25maWcgPT4gY29uZmlnLmtleSA9PT0gbmF0aXZlRWxlbWVudC5pZFxuICAgICAgICAgICk7XG4gICAgICAgICAgY29uc3Qgc3BlY2lmaWNhdGlvbiA9IHN1cHBvcnRlZERpc3BsYXlUeXBlcy5maW5kKFxuICAgICAgICAgICAgdHlwZSA9PiB0eXBlLmRpc3BsYXlUeXBlS2V5ID09PSB3aWRnZXRDb25maWd1cmF0aW9uLmRpc3BsYXlUeXBlXG4gICAgICAgICAgKTtcbiAgICAgICAgICBjb25zdCB3aWR0aFBlcmNlbnRhZ2UgPVxuICAgICAgICAgICAgc3BlY2lmaWNhdGlvbi53aWR0aCA+IGFtb3VudE9mQ29sdW1uc1xuICAgICAgICAgICAgICA/IDEwMFxuICAgICAgICAgICAgICA6IChzcGVjaWZpY2F0aW9uLndpZHRoIC8gYW1vdW50T2ZDb2x1bW5zKSAqIDEwMDtcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKFxuICAgICAgICAgICAgbmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICdoZWlnaHQnLFxuICAgICAgICAgICAgYCR7V0lER0VUXzFYX0hFSUdIVCAqIHNwZWNpZmljYXRpb24uaGVpZ2h0fXB4YFxuICAgICAgICAgICk7XG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShuYXRpdmVFbGVtZW50LCAnd2lkdGgnLCBgJHt3aWR0aFBlcmNlbnRhZ2V9JWApO1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAod2lkZ2V0Q29uZmlndXJhdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGlmICghbXV1cmkpIHtcbiAgICAgICAgICAgIHRoaXMuaW5pdE11dXJpKCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMubGF5b3V0U2VydmljZS50cmlnZ2VyTXV1cmlMYXlvdXQoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5fbm9SZXN1bHRzJC5uZXh0KHRydWUpO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIHJlbmRlcldpZGdldHMoKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgdGhpcy53aWRnZXRDb25maWd1cmF0aW9ucyQsXG4gICAgICAgIHRoaXMud2lkZ2V0U2VydmljZS5zdXBwb3J0ZWREaXNwbGF5VHlwZXMkLFxuICAgICAgICB0aGlzLl93aWRnZXREYXRhJCxcbiAgICAgIF0pLnN1YnNjcmliZSgoW2NvbmZpZ3VyYXRpb25zLCBkaXNwbGF5VHlwZXMsIGRhdGFdKSA9PiB7XG4gICAgICAgIGNvbmZpZ3VyYXRpb25zPy5mb3JFYWNoKChjb25maWd1cmF0aW9uLCBpbmRleCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGRpc3BsYXlUeXBlID0gZGlzcGxheVR5cGVzLmZpbmQoXG4gICAgICAgICAgICB0eXBlID0+IHR5cGUuZGlzcGxheVR5cGVLZXkgPT09IGNvbmZpZ3VyYXRpb24uZGlzcGxheVR5cGVcbiAgICAgICAgICApO1xuICAgICAgICAgIGNvbnN0IHZjUmVmID0gdGhpcy5fd2lkZ2V0Q29uZmlndXJhdGlvbkNvbnRlbnRWY1JlZnMudG9BcnJheSgpW2luZGV4XTtcblxuICAgICAgICAgIGlmIChkaXNwbGF5VHlwZSAmJiBkYXRhKSB7XG4gICAgICAgICAgICB2Y1JlZi5jbGVhcigpO1xuICAgICAgICAgICAgY29uc3QgY29tcG9uZW50SW5zdGFuY2U6IENvbXBvbmVudFJlZjxEaXNwbGF5Q29tcG9uZW50PiA9IHZjUmVmLmNyZWF0ZUNvbXBvbmVudChcbiAgICAgICAgICAgICAgZGlzcGxheVR5cGUuZGlzcGxheUNvbXBvbmVudFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGNvbXBvbmVudEluc3RhbmNlLnNldElucHV0KCdkaXNwbGF5VHlwZUtleScsIGNvbmZpZ3VyYXRpb24uZGlzcGxheVR5cGUpO1xuICAgICAgICAgICAgY29tcG9uZW50SW5zdGFuY2Uuc2V0SW5wdXQoJ2Rpc3BsYXlUeXBlUHJvcGVydGllcycsIHtcbiAgICAgICAgICAgICAgLi4uY29uZmlndXJhdGlvbi5kaXNwbGF5VHlwZVByb3BlcnRpZXMsXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgY29tcG9uZW50SW5zdGFuY2Uuc2V0SW5wdXQoXG4gICAgICAgICAgICAgICdkYXRhJyxcbiAgICAgICAgICAgICAgZGF0YS5maW5kKGRhdGFJdGVtID0+IGRhdGFJdGVtLmtleSA9PT0gY29uZmlndXJhdGlvbi5rZXkpPy5kYXRhXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGluaXRNdXVyaSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX3dpZGdldENvbnRhaW5lclJlZiB8fCB0aGlzLl9jcmVhdGluZ011dXJpKSByZXR1cm47XG5cbiAgICB0aGlzLl9jcmVhdGluZ011dXJpID0gdHJ1ZTtcblxuICAgIHRoaXMubGF5b3V0U2VydmljZS5zZXRNdXVyaShcbiAgICAgIG5ldyBNdXVyaSh0aGlzLl93aWRnZXRDb250YWluZXJSZWYubmF0aXZlRWxlbWVudCwge1xuICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICBmaWxsR2FwczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgbGF5b3V0T25SZXNpemU6IGZhbHNlLFxuICAgICAgfSlcbiAgICApO1xuXG4gICAgdGhpcy5fY3JlYXRpbmdNdXVyaSA9IGZhbHNlO1xuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxuZy1jb250YWluZXIgKm5nSWY9XCJ7bG9hZGVkOiBsb2FkZWQkIHwgYXN5bmN9IGFzIG9ic1wiPlxuICA8ZGl2ICpuZ0lmPVwiIW9icy5sb2FkZWRcIiBjbGFzcz1cImxvYWRpbmctY29udGFpbmVyXCI+XG4gICAgPGNkcy1sb2FkaW5nPjwvY2RzLWxvYWRpbmc+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG5cbjxkaXZcbiAgI3dpZGdldENvbnRhaW5lclxuICBjbGFzcz1cIndpZGdldC1jb250YWluZXJcIlxuICBbbmdDbGFzc109XCJ7J3dpZGdldC1jb250YWluZXJfX3Zpc2libGUnOiBsb2FkZWQkIHwgYXN5bmN9XCJcbj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIndpZGdldENvbmZpZ3VyYXRpb25zJCB8IGFzeW5jIGFzIHdpZGdldENvbmZpZ3VyYXRpb25zXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29uZmlnIG9mIHdpZGdldENvbmZpZ3VyYXRpb25zXCI+XG4gICAgICA8ZGl2ICN3aWRnZXRDb25maWd1cmF0aW9uIFtpZF09XCJjb25maWcua2V5XCIgY2xhc3M9XCJ3aWRnZXQtY29uZmlndXJhdGlvblwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgKGNsaWNrKT1cIm5hdmlnYXRlVG9Sb3V0ZShjb25maWcsICRldmVudClcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICd3aWRnZXQtY29uZmlndXJhdGlvbi1jb250ZW50LWNsaWNrYWJsZSc6IGNvbmZpZy51cmwsXG4gICAgICAgICAgfVwiXG4gICAgICAgICAgY2xhc3M9XCJ3aWRnZXQtY29uZmlndXJhdGlvbi1jb250ZW50XCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgI3dpZGdldENvbmZpZ3VyYXRpb25Db250ZW50PjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPHZhbHRpbW8tbm8tcmVzdWx0c1xuICAgICAgKm5nSWY9XCIhd2lkZ2V0Q29uZmlndXJhdGlvbnMubGVuZ3RoXCJcbiAgICAgIFt0aXRsZV09XCInZGFzaGJvYXJkLm5vV2lkZ2V0cycgfCB0cmFuc2xhdGVcIlxuICAgICAgW2Rlc2NyaXB0aW9uXT1cIidkYXNoYm9hcmQubm9XaWRnZXRzRGVzY3JpcHRpb24nIHwgdHJhbnNsYXRlXCJcbiAgICAgIGlsbHVzdHJhdGlvbj1cInZhbHRpbW8tbGF5b3V0L2ltZy9uby13aWRnZXRzLnN2Z1wiXG4gICAgPjwvdmFsdGltby1uby1yZXN1bHRzPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
@@ -28,6 +28,7 @@ import { DATA_SOURCE_TOKEN, DISPLAY_TYPE_TOKEN } from './constants';
28
28
  import { DashboardRoutingModule } from './dashboard-routing.module';
29
29
  import { WidgetTranslatePipeModule } from './pipes';
30
30
  import { DisplayWidgetTypesModule } from './display-types/display-widget-types.module';
31
+ import { DataSourcesModule } from './data-sources/data-sources.module';
31
32
  import * as i0 from "@angular/core";
32
33
  import * as i1 from "@ngx-translate/core";
33
34
  // AoT requires an exported function for factories
@@ -48,7 +49,8 @@ export class DashboardModule {
48
49
  WidgetTranslatePipeModule,
49
50
  LoadingModule,
50
51
  CarbonListModule,
51
- DisplayWidgetTypesModule], exports: [DashboardComponent, WidgetDashboardComponent] }); }
52
+ DisplayWidgetTypesModule,
53
+ DataSourcesModule], exports: [DashboardComponent, WidgetDashboardComponent] }); }
52
54
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DashboardModule, providers: [
53
55
  { provide: DISPLAY_TYPE_TOKEN, useValue: null, multi: true },
54
56
  { provide: DATA_SOURCE_TOKEN, useValue: null, multi: true },
@@ -72,7 +74,8 @@ export class DashboardModule {
72
74
  WidgetTranslatePipeModule,
73
75
  LoadingModule,
74
76
  CarbonListModule,
75
- DisplayWidgetTypesModule] }); }
77
+ DisplayWidgetTypesModule,
78
+ DataSourcesModule] }); }
76
79
  }
77
80
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DashboardModule, decorators: [{
78
81
  type: NgModule,
@@ -100,6 +103,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
100
103
  LoadingModule,
101
104
  CarbonListModule,
102
105
  DisplayWidgetTypesModule,
106
+ DataSourcesModule,
103
107
  ],
104
108
  exports: [DashboardComponent, WidgetDashboardComponent],
105
109
  providers: [
@@ -108,4 +112,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
108
112
  ],
109
113
  }]
110
114
  }] });
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZGFzaGJvYXJkL3NyYy9saWIvZGFzaGJvYXJkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsZUFBZSxFQUFFLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFDTCxXQUFXLEVBQ1gsbUJBQW1CLEVBQ25CLGdCQUFnQixFQUNoQixVQUFVLEVBQ1YsYUFBYSxFQUNiLFlBQVksR0FDYixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDakYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDOUUsT0FBTyxFQUFDLCtCQUErQixFQUFDLE1BQU0sMEVBQTBFLENBQUM7QUFDekgsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sMERBQTBELENBQUM7QUFDbEcsT0FBTyxFQUFDLGlCQUFpQixFQUFFLGtCQUFrQixFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUNsRCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQzs7O0FBRXJGLGtEQUFrRDtBQUNsRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsVUFBc0I7SUFDdEQsT0FBTyxJQUFJLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBQzdDLENBQUM7QUFpQ0QsTUFBTSxPQUFPLGVBQWU7K0dBQWYsZUFBZTtnSEFBZixlQUFlLGlCQTlCWCxrQkFBa0IsRUFBRSx3QkFBd0IsRUFBRSwrQkFBK0IsYUFFMUYsWUFBWTtZQUNaLHNCQUFzQjtZQUN0QixZQUFZO1lBQ1osVUFBVTtZQUNWLG1CQUFtQixzQkFRbkIsV0FBVztZQUNYLFVBQVU7WUFDVixhQUFhO1lBQ2IsVUFBVTtZQUNWLFdBQVc7WUFDWCx5QkFBeUI7WUFDekIsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQix3QkFBd0IsYUFFaEIsa0JBQWtCLEVBQUUsd0JBQXdCO2dIQU0zQyxlQUFlLGFBTGY7WUFDVCxFQUFDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUM7WUFDMUQsRUFBQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFDO1NBQzFELFlBMUJDLFlBQVk7WUFDWixzQkFBc0I7WUFDdEIsWUFBWTtZQUNaLFVBQVU7WUFDVixtQkFBbUI7WUFDbkIsZUFBZSxDQUFDLE9BQU8sQ0FBQztnQkFDdEIsTUFBTSxFQUFFO29CQUNOLE9BQU8sRUFBRSxlQUFlO29CQUN4QixVQUFVLEVBQUUsaUJBQWlCO29CQUM3QixJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUM7aUJBQ25CO2FBQ0YsQ0FBQztZQUNGLFdBQVc7WUFDWCxVQUFVO1lBQ1YsYUFBYTtZQUNiLFVBQVU7WUFDVixXQUFXO1lBQ1gseUJBQXlCO1lBQ3pCLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsd0JBQXdCOzs0RkFRZixlQUFlO2tCQS9CM0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSx3QkFBd0IsRUFBRSwrQkFBK0IsQ0FBQztvQkFDN0YsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osc0JBQXNCO3dCQUN0QixZQUFZO3dCQUNaLFVBQVU7d0JBQ1YsbUJBQW1CO3dCQUNuQixlQUFlLENBQUMsT0FBTyxDQUFDOzRCQUN0QixNQUFNLEVBQUU7Z0NBQ04sT0FBTyxFQUFFLGVBQWU7Z0NBQ3hCLFVBQVUsRUFBRSxpQkFBaUI7Z0NBQzdCLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQzs2QkFDbkI7eUJBQ0YsQ0FBQzt3QkFDRixXQUFXO3dCQUNYLFVBQVU7d0JBQ1YsYUFBYTt3QkFDYixVQUFVO3dCQUNWLFdBQVc7d0JBQ1gseUJBQXlCO3dCQUN6QixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsd0JBQXdCO3FCQUN6QjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSx3QkFBd0IsQ0FBQztvQkFDdkQsU0FBUyxFQUFFO3dCQUNULEVBQUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBQzt3QkFDMUQsRUFBQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFDO3FCQUMxRDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7SHR0cENsaWVudH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RyYW5zbGF0ZUxvYWRlciwgVHJhbnNsYXRlTW9kdWxlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7VHJhbnNsYXRlSHR0cExvYWRlcn0gZnJvbSAnQG5neC10cmFuc2xhdGUvaHR0cC1sb2FkZXInO1xuaW1wb3J0IHtcbiAgQWxlcnRNb2R1bGUsXG4gIEJwbW5Kc0RpYWdyYW1Nb2R1bGUsXG4gIENhcmJvbkxpc3RNb2R1bGUsXG4gIExpc3RNb2R1bGUsXG4gIFNwaW5uZXJNb2R1bGUsXG4gIFdpZGdldE1vZHVsZSxcbn0gZnJvbSAnQHZhbHRpbW8vY29tcG9uZW50cyc7XG5pbXBvcnQge1Rhc2tNb2R1bGV9IGZyb20gJ0B2YWx0aW1vL3Rhc2snO1xuaW1wb3J0IHtMb2FkaW5nTW9kdWxlLCBUYWJzTW9kdWxlLCBUaGVtZU1vZHVsZX0gZnJvbSAnY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhcic7XG5pbXBvcnQge0Rhc2hib2FyZENvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2Rhc2hib2FyZC9kYXNoYm9hcmQuY29tcG9uZW50JztcbmltcG9ydCB7V2lkZ2V0RGFzaGJvYXJkQ29udGVudENvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL3dpZGdldC1kYXNoYm9hcmQtY29udGVudC93aWRnZXQtZGFzaGJvYXJkLWNvbnRlbnQuY29tcG9uZW50JztcbmltcG9ydCB7V2lkZ2V0RGFzaGJvYXJkQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvd2lkZ2V0LWRhc2hib2FyZC93aWRnZXQtZGFzaGJvYXJkLmNvbXBvbmVudCc7XG5pbXBvcnQge0RBVEFfU09VUkNFX1RPS0VOLCBESVNQTEFZX1RZUEVfVE9LRU59IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7RGFzaGJvYXJkUm91dGluZ01vZHVsZX0gZnJvbSAnLi9kYXNoYm9hcmQtcm91dGluZy5tb2R1bGUnO1xuaW1wb3J0IHtXaWRnZXRUcmFuc2xhdGVQaXBlTW9kdWxlfSBmcm9tICcuL3BpcGVzJztcbmltcG9ydCB7RGlzcGxheVdpZGdldFR5cGVzTW9kdWxlfSBmcm9tICcuL2Rpc3BsYXktdHlwZXMvZGlzcGxheS13aWRnZXQtdHlwZXMubW9kdWxlJztcblxuLy8gQW9UIHJlcXVpcmVzIGFuIGV4cG9ydGVkIGZ1bmN0aW9uIGZvciBmYWN0b3JpZXNcbmV4cG9ydCBmdW5jdGlvbiBIdHRwTG9hZGVyRmFjdG9yeShodHRwQ2xpZW50OiBIdHRwQ2xpZW50KSB7XG4gIHJldHVybiBuZXcgVHJhbnNsYXRlSHR0cExvYWRlcihodHRwQ2xpZW50KTtcbn1cblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbRGFzaGJvYXJkQ29tcG9uZW50LCBXaWRnZXREYXNoYm9hcmRDb21wb25lbnQsIFdpZGdldERhc2hib2FyZENvbnRlbnRDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIERhc2hib2FyZFJvdXRpbmdNb2R1bGUsXG4gICAgV2lkZ2V0TW9kdWxlLFxuICAgIExpc3RNb2R1bGUsXG4gICAgQnBtbkpzRGlhZ3JhbU1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUuZm9yUm9vdCh7XG4gICAgICBsb2FkZXI6IHtcbiAgICAgICAgcHJvdmlkZTogVHJhbnNsYXRlTG9hZGVyLFxuICAgICAgICB1c2VGYWN0b3J5OiBIdHRwTG9hZGVyRmFjdG9yeSxcbiAgICAgICAgZGVwczogW0h0dHBDbGllbnRdLFxuICAgICAgfSxcbiAgICB9KSxcbiAgICBBbGVydE1vZHVsZSxcbiAgICBUYXNrTW9kdWxlLFxuICAgIFNwaW5uZXJNb2R1bGUsXG4gICAgVGFic01vZHVsZSxcbiAgICBUaGVtZU1vZHVsZSxcbiAgICBXaWRnZXRUcmFuc2xhdGVQaXBlTW9kdWxlLFxuICAgIExvYWRpbmdNb2R1bGUsXG4gICAgQ2FyYm9uTGlzdE1vZHVsZSxcbiAgICBEaXNwbGF5V2lkZ2V0VHlwZXNNb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtEYXNoYm9hcmRDb21wb25lbnQsIFdpZGdldERhc2hib2FyZENvbXBvbmVudF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtwcm92aWRlOiBESVNQTEFZX1RZUEVfVE9LRU4sIHVzZVZhbHVlOiBudWxsLCBtdWx0aTogdHJ1ZX0sXG4gICAge3Byb3ZpZGU6IERBVEFfU09VUkNFX1RPS0VOLCB1c2VWYWx1ZTogbnVsbCwgbXVsdGk6IHRydWV9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBEYXNoYm9hcmRNb2R1bGUge31cbiJdfQ==
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZGFzaGJvYXJkL3NyYy9saWIvZGFzaGJvYXJkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsZUFBZSxFQUFFLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFDTCxXQUFXLEVBQ1gsbUJBQW1CLEVBQ25CLGdCQUFnQixFQUNoQixVQUFVLEVBQ1YsYUFBYSxFQUNiLFlBQVksR0FDYixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDakYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDOUUsT0FBTyxFQUFDLCtCQUErQixFQUFDLE1BQU0sMEVBQTBFLENBQUM7QUFDekgsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sMERBQTBELENBQUM7QUFDbEcsT0FBTyxFQUFDLGlCQUFpQixFQUFFLGtCQUFrQixFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUNsRCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQzs7O0FBRXJFLGtEQUFrRDtBQUNsRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsVUFBc0I7SUFDdEQsT0FBTyxJQUFJLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBQzdDLENBQUM7QUFrQ0QsTUFBTSxPQUFPLGVBQWU7K0dBQWYsZUFBZTtnSEFBZixlQUFlLGlCQS9CWCxrQkFBa0IsRUFBRSx3QkFBd0IsRUFBRSwrQkFBK0IsYUFFMUYsWUFBWTtZQUNaLHNCQUFzQjtZQUN0QixZQUFZO1lBQ1osVUFBVTtZQUNWLG1CQUFtQixzQkFRbkIsV0FBVztZQUNYLFVBQVU7WUFDVixhQUFhO1lBQ2IsVUFBVTtZQUNWLFdBQVc7WUFDWCx5QkFBeUI7WUFDekIsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQix3QkFBd0I7WUFDeEIsaUJBQWlCLGFBRVQsa0JBQWtCLEVBQUUsd0JBQXdCO2dIQU0zQyxlQUFlLGFBTGY7WUFDVCxFQUFDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUM7WUFDMUQsRUFBQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFDO1NBQzFELFlBM0JDLFlBQVk7WUFDWixzQkFBc0I7WUFDdEIsWUFBWTtZQUNaLFVBQVU7WUFDVixtQkFBbUI7WUFDbkIsZUFBZSxDQUFDLE9BQU8sQ0FBQztnQkFDdEIsTUFBTSxFQUFFO29CQUNOLE9BQU8sRUFBRSxlQUFlO29CQUN4QixVQUFVLEVBQUUsaUJBQWlCO29CQUM3QixJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUM7aUJBQ25CO2FBQ0YsQ0FBQztZQUNGLFdBQVc7WUFDWCxVQUFVO1lBQ1YsYUFBYTtZQUNiLFVBQVU7WUFDVixXQUFXO1lBQ1gseUJBQXlCO1lBQ3pCLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsd0JBQXdCO1lBQ3hCLGlCQUFpQjs7NEZBUVIsZUFBZTtrQkFoQzNCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsa0JBQWtCLEVBQUUsd0JBQXdCLEVBQUUsK0JBQStCLENBQUM7b0JBQzdGLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLHNCQUFzQjt3QkFDdEIsWUFBWTt3QkFDWixVQUFVO3dCQUNWLG1CQUFtQjt3QkFDbkIsZUFBZSxDQUFDLE9BQU8sQ0FBQzs0QkFDdEIsTUFBTSxFQUFFO2dDQUNOLE9BQU8sRUFBRSxlQUFlO2dDQUN4QixVQUFVLEVBQUUsaUJBQWlCO2dDQUM3QixJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUM7NkJBQ25CO3lCQUNGLENBQUM7d0JBQ0YsV0FBVzt3QkFDWCxVQUFVO3dCQUNWLGFBQWE7d0JBQ2IsVUFBVTt3QkFDVixXQUFXO3dCQUNYLHlCQUF5Qjt3QkFDekIsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLHdCQUF3Qjt3QkFDeEIsaUJBQWlCO3FCQUNsQjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSx3QkFBd0IsQ0FBQztvQkFDdkQsU0FBUyxFQUFFO3dCQUNULEVBQUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBQzt3QkFDMUQsRUFBQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFDO3FCQUMxRDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7SHR0cENsaWVudH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RyYW5zbGF0ZUxvYWRlciwgVHJhbnNsYXRlTW9kdWxlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7VHJhbnNsYXRlSHR0cExvYWRlcn0gZnJvbSAnQG5neC10cmFuc2xhdGUvaHR0cC1sb2FkZXInO1xuaW1wb3J0IHtcbiAgQWxlcnRNb2R1bGUsXG4gIEJwbW5Kc0RpYWdyYW1Nb2R1bGUsXG4gIENhcmJvbkxpc3RNb2R1bGUsXG4gIExpc3RNb2R1bGUsXG4gIFNwaW5uZXJNb2R1bGUsXG4gIFdpZGdldE1vZHVsZSxcbn0gZnJvbSAnQHZhbHRpbW8vY29tcG9uZW50cyc7XG5pbXBvcnQge1Rhc2tNb2R1bGV9IGZyb20gJ0B2YWx0aW1vL3Rhc2snO1xuaW1wb3J0IHtMb2FkaW5nTW9kdWxlLCBUYWJzTW9kdWxlLCBUaGVtZU1vZHVsZX0gZnJvbSAnY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhcic7XG5pbXBvcnQge0Rhc2hib2FyZENvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2Rhc2hib2FyZC9kYXNoYm9hcmQuY29tcG9uZW50JztcbmltcG9ydCB7V2lkZ2V0RGFzaGJvYXJkQ29udGVudENvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL3dpZGdldC1kYXNoYm9hcmQtY29udGVudC93aWRnZXQtZGFzaGJvYXJkLWNvbnRlbnQuY29tcG9uZW50JztcbmltcG9ydCB7V2lkZ2V0RGFzaGJvYXJkQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvd2lkZ2V0LWRhc2hib2FyZC93aWRnZXQtZGFzaGJvYXJkLmNvbXBvbmVudCc7XG5pbXBvcnQge0RBVEFfU09VUkNFX1RPS0VOLCBESVNQTEFZX1RZUEVfVE9LRU59IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7RGFzaGJvYXJkUm91dGluZ01vZHVsZX0gZnJvbSAnLi9kYXNoYm9hcmQtcm91dGluZy5tb2R1bGUnO1xuaW1wb3J0IHtXaWRnZXRUcmFuc2xhdGVQaXBlTW9kdWxlfSBmcm9tICcuL3BpcGVzJztcbmltcG9ydCB7RGlzcGxheVdpZGdldFR5cGVzTW9kdWxlfSBmcm9tICcuL2Rpc3BsYXktdHlwZXMvZGlzcGxheS13aWRnZXQtdHlwZXMubW9kdWxlJztcbmltcG9ydCB7RGF0YVNvdXJjZXNNb2R1bGV9IGZyb20gJy4vZGF0YS1zb3VyY2VzL2RhdGEtc291cmNlcy5tb2R1bGUnO1xuXG4vLyBBb1QgcmVxdWlyZXMgYW4gZXhwb3J0ZWQgZnVuY3Rpb24gZm9yIGZhY3Rvcmllc1xuZXhwb3J0IGZ1bmN0aW9uIEh0dHBMb2FkZXJGYWN0b3J5KGh0dHBDbGllbnQ6IEh0dHBDbGllbnQpIHtcbiAgcmV0dXJuIG5ldyBUcmFuc2xhdGVIdHRwTG9hZGVyKGh0dHBDbGllbnQpO1xufVxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtEYXNoYm9hcmRDb21wb25lbnQsIFdpZGdldERhc2hib2FyZENvbXBvbmVudCwgV2lkZ2V0RGFzaGJvYXJkQ29udGVudENvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRGFzaGJvYXJkUm91dGluZ01vZHVsZSxcbiAgICBXaWRnZXRNb2R1bGUsXG4gICAgTGlzdE1vZHVsZSxcbiAgICBCcG1uSnNEaWFncmFtTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZS5mb3JSb290KHtcbiAgICAgIGxvYWRlcjoge1xuICAgICAgICBwcm92aWRlOiBUcmFuc2xhdGVMb2FkZXIsXG4gICAgICAgIHVzZUZhY3Rvcnk6IEh0dHBMb2FkZXJGYWN0b3J5LFxuICAgICAgICBkZXBzOiBbSHR0cENsaWVudF0sXG4gICAgICB9LFxuICAgIH0pLFxuICAgIEFsZXJ0TW9kdWxlLFxuICAgIFRhc2tNb2R1bGUsXG4gICAgU3Bpbm5lck1vZHVsZSxcbiAgICBUYWJzTW9kdWxlLFxuICAgIFRoZW1lTW9kdWxlLFxuICAgIFdpZGdldFRyYW5zbGF0ZVBpcGVNb2R1bGUsXG4gICAgTG9hZGluZ01vZHVsZSxcbiAgICBDYXJib25MaXN0TW9kdWxlLFxuICAgIERpc3BsYXlXaWRnZXRUeXBlc01vZHVsZSxcbiAgICBEYXRhU291cmNlc01vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW0Rhc2hib2FyZENvbXBvbmVudCwgV2lkZ2V0RGFzaGJvYXJkQ29tcG9uZW50XSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge3Byb3ZpZGU6IERJU1BMQVlfVFlQRV9UT0tFTiwgdXNlVmFsdWU6IG51bGwsIG11bHRpOiB0cnVlfSxcbiAgICB7cHJvdmlkZTogREFUQV9TT1VSQ0VfVE9LRU4sIHVzZVZhbHVlOiBudWxsLCBtdWx0aTogdHJ1ZX0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIERhc2hib2FyZE1vZHVsZSB7fVxuIl19
@@ -14,6 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  import { CaseCountConfigurationComponent } from './components';
17
+ import { CONDITIONS_HELPER_TEXTS } from '../shared';
17
18
  export const caseCountDataSourceSpecification = {
18
19
  dataSourceKey: 'case-count',
19
20
  configurationComponent: CaseCountConfigurationComponent,
@@ -32,7 +33,7 @@ export const caseCountDataSourceSpecification = {
32
33
  operator: 'Operator',
33
34
  value: 'Wert',
34
35
  conditions: 'Bedingungen',
35
- conditionsHelperText: "Geben Sie optionale Bedingungen zum Abrufen der Anzahl der Fälle für den ausgewählten Falltyp an. Zum Beispiel: 'case:createdBy', 'Gleich', 'test@test.com'. Zum Vergleichen mit leeren Werten kann als Wert '${null}' eingegeben werden. Zum Vergleichen mit dem aktuellen Datum kann als Wert '${localDateTimeNow}' eingegeben werden. Damit wird beispielsweise auch folgende Logik unterstützt: '${localDateTimeNow.minusWeeks(2)}'.",
36
+ conditionsHelperText: `Geben Sie optionale Bedingungen zum Abrufen der Anzahl der Fälle für den ausgewählten Falltyp an. ${CONDITIONS_HELPER_TEXTS.DE}`,
36
37
  addCondition: 'Bedingung hinzufügen',
37
38
  },
38
39
  en: {
@@ -49,7 +50,7 @@ export const caseCountDataSourceSpecification = {
49
50
  operator: 'Operator',
50
51
  value: 'Value',
51
52
  conditions: 'Conditions',
52
- conditionsHelperText: "Specify optional conditions for retrieving the number of cases for the selected case type. For example: 'case:createdBy', 'Equal to', 'test@test.com'. To compare with empty values, '${null}' can be entered as a value. To compare with the current date, '${localDateTimeNow}' can be entered as a value. This also supports, for example, the following logic: '${localDateTimeNow.minusWeeks(2)}'.",
53
+ conditionsHelperText: `Specify optional conditions for retrieving the number of cases for the selected case type. ${CONDITIONS_HELPER_TEXTS.EN}`,
53
54
  addCondition: 'Add condition',
54
55
  },
55
56
  nl: {
@@ -66,9 +67,9 @@ export const caseCountDataSourceSpecification = {
66
67
  operator: 'Operator',
67
68
  value: 'Waarde',
68
69
  conditions: 'Condities',
69
- conditionsHelperText: "Geef optionele condities op voor het ophalen van het aantal zaken voor het geselecteerde zaaktype. Bijvoorbeeld: 'case:createdBy', 'Gelijk aan', 'test@test.com'. Voor het vergelijken met lege waardes kan '${null}' ingevuld worden als waarde. Voor het vergelijken met de huidige datum kan '${localDateTimeNow}' ingevuld worden als waarde. Deze ondersteunt ook bijvoorbeeld de volgende logica: '${localDateTimeNow.minusWeeks(2)}'.",
70
+ conditionsHelperText: `Geef optionele condities op voor het ophalen van het aantal zaken voor het geselecteerde dossiertype. ${CONDITIONS_HELPER_TEXTS.NL}}`,
70
71
  addCondition: 'Conditie toevoegen',
71
72
  },
72
73
  },
73
74
  };
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1jb3VudC5zcGVjaWZpY2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9kYXNoYm9hcmQvc3JjL2xpYi9kYXRhLXNvdXJjZXMvY2FzZS1jb3VudC9jYXNlLWNvdW50LnNwZWNpZmljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFHSCxPQUFPLEVBQUMsK0JBQStCLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFFN0QsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQTRCO0lBQ3ZFLGFBQWEsRUFBRSxZQUFZO0lBQzNCLHNCQUFzQixFQUFFLCtCQUErQjtJQUN2RCxZQUFZLEVBQUU7UUFDWixFQUFFLEVBQUU7WUFDRixLQUFLLEVBQUUsVUFBVTtZQUNqQixrQkFBa0IsRUFBRSx3QkFBd0I7WUFDNUMsNEJBQTRCLEVBQUUsZ0RBQWdEO1lBQzlFLElBQUksRUFBRSwwQkFBMEI7WUFDaEMsSUFBSSxFQUFFLFFBQVE7WUFDZCxHQUFHLEVBQUUsWUFBWTtZQUNqQixJQUFJLEVBQUUsNEJBQTRCO1lBQ2xDLEdBQUcsRUFBRSxhQUFhO1lBQ2xCLElBQUksRUFBRSx5QkFBeUI7WUFDL0IsSUFBSSxFQUFFLE1BQU07WUFDWixRQUFRLEVBQUUsVUFBVTtZQUNwQixLQUFLLEVBQUUsTUFBTTtZQUNiLFVBQVUsRUFBRSxhQUFhO1lBQ3pCLG9CQUFvQixFQUNsQiwwYUFBMGE7WUFDNWEsWUFBWSxFQUFFLHNCQUFzQjtTQUNyQztRQUNELEVBQUUsRUFBRTtZQUNGLEtBQUssRUFBRSxZQUFZO1lBQ25CLGtCQUFrQixFQUFFLHNCQUFzQjtZQUMxQyw0QkFBNEIsRUFBRSxnREFBZ0Q7WUFDOUUsSUFBSSxFQUFFLGNBQWM7WUFDcEIsSUFBSSxFQUFFLFVBQVU7WUFDaEIsR0FBRyxFQUFFLGNBQWM7WUFDbkIsSUFBSSxFQUFFLDBCQUEwQjtZQUNoQyxHQUFHLEVBQUUsV0FBVztZQUNoQixJQUFJLEVBQUUsdUJBQXVCO1lBQzdCLElBQUksRUFBRSxpQkFBaUI7WUFDdkIsUUFBUSxFQUFFLFVBQVU7WUFDcEIsS0FBSyxFQUFFLE9BQU87WUFDZCxVQUFVLEVBQUUsWUFBWTtZQUN4QixvQkFBb0IsRUFDbEIseVlBQXlZO1lBQzNZLFlBQVksRUFBRSxlQUFlO1NBQzlCO1FBQ0QsRUFBRSxFQUFFO1lBQ0YsS0FBSyxFQUFFLGlCQUFpQjtZQUN4QixrQkFBa0IsRUFBRSx1QkFBdUI7WUFDM0MsNEJBQTRCLEVBQUUscURBQXFEO1lBQ25GLElBQUksRUFBRSxpQkFBaUI7WUFDdkIsSUFBSSxFQUFFLFlBQVk7WUFDbEIsR0FBRyxFQUFFLFlBQVk7WUFDakIsSUFBSSxFQUFFLDBCQUEwQjtZQUNoQyxHQUFHLEVBQUUsWUFBWTtZQUNqQixJQUFJLEVBQUUsMEJBQTBCO1lBQ2hDLElBQUksRUFBRSxLQUFLO1lBQ1gsUUFBUSxFQUFFLFVBQVU7WUFDcEIsS0FBSyxFQUFFLFFBQVE7WUFDZixVQUFVLEVBQUUsV0FBVztZQUN2QixvQkFBb0IsRUFDbEIsOGFBQThhO1lBQ2hiLFlBQVksRUFBRSxvQkFBb0I7U0FDbkM7S0FDRjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0RhdGFTb3VyY2VTcGVjaWZpY2F0aW9ufSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHtDYXNlQ291bnRDb25maWd1cmF0aW9uQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMnO1xuXG5leHBvcnQgY29uc3QgY2FzZUNvdW50RGF0YVNvdXJjZVNwZWNpZmljYXRpb246IERhdGFTb3VyY2VTcGVjaWZpY2F0aW9uID0ge1xuICBkYXRhU291cmNlS2V5OiAnY2FzZS1jb3VudCcsXG4gIGNvbmZpZ3VyYXRpb25Db21wb25lbnQ6IENhc2VDb3VudENvbmZpZ3VyYXRpb25Db21wb25lbnQsXG4gIHRyYW5zbGF0aW9uczoge1xuICAgIGRlOiB7XG4gICAgICB0aXRsZTogJ0ZhbGx6YWhsJyxcbiAgICAgIGRvY3VtZW50RGVmaW5pdGlvbjogJ0ZhbGx0eXAgKGVyZm9yZGVybGljaCknLFxuICAgICAgZG9jdW1lbnREZWZpbml0aW9uSGVscGVyVGV4dDogJ0RlciBGYWxsdHlwLCBmw7xyIGRlbiBkaWUgQW56YWhsIGFiZ2VydWZlbiB3aXJkJyxcbiAgICAgICchPSc6ICdOaWNodCBnbGVpY2h6dXNldHplbiBtaXQnLFxuICAgICAgJz09JzogJ0dsZWljaCcsXG4gICAgICAnPic6ICdHcsO2w59lciBhbHMnLFxuICAgICAgJz49JzogJ0dyw7bDn2VyIGFscyBvZGVyIGdsZWljaCB3aWUnLFxuICAgICAgJzwnOiAnV2VuaWdlciBhbHMnLFxuICAgICAgJzw9JzogJ0dsZWljaCBvZGVyIGtsZWluZXIgYWxzJyxcbiAgICAgIHBhdGg6ICdQZmFkJyxcbiAgICAgIG9wZXJhdG9yOiAnT3BlcmF0b3InLFxuICAgICAgdmFsdWU6ICdXZXJ0JyxcbiAgICAgIGNvbmRpdGlvbnM6ICdCZWRpbmd1bmdlbicsXG4gICAgICBjb25kaXRpb25zSGVscGVyVGV4dDpcbiAgICAgICAgXCJHZWJlbiBTaWUgb3B0aW9uYWxlIEJlZGluZ3VuZ2VuIHp1bSBBYnJ1ZmVuIGRlciBBbnphaGwgZGVyIEbDpGxsZSBmw7xyIGRlbiBhdXNnZXfDpGhsdGVuIEZhbGx0eXAgYW4uIFp1bSBCZWlzcGllbDogJ2Nhc2U6Y3JlYXRlZEJ5JywgJ0dsZWljaCcsICd0ZXN0QHRlc3QuY29tJy4gWnVtIFZlcmdsZWljaGVuIG1pdCBsZWVyZW4gV2VydGVuIGthbm4gYWxzIFdlcnQgJyR7bnVsbH0nIGVpbmdlZ2ViZW4gd2VyZGVuLiBadW0gVmVyZ2xlaWNoZW4gbWl0IGRlbSBha3R1ZWxsZW4gRGF0dW0ga2FubiBhbHMgV2VydCAnJHtsb2NhbERhdGVUaW1lTm93fScgZWluZ2VnZWJlbiB3ZXJkZW4uIERhbWl0IHdpcmQgYmVpc3BpZWxzd2Vpc2UgYXVjaCBmb2xnZW5kZSBMb2dpayB1bnRlcnN0w7x0enQ6ICcke2xvY2FsRGF0ZVRpbWVOb3cubWludXNXZWVrcygyKX0nLlwiLFxuICAgICAgYWRkQ29uZGl0aW9uOiAnQmVkaW5ndW5nIGhpbnp1ZsO8Z2VuJyxcbiAgICB9LFxuICAgIGVuOiB7XG4gICAgICB0aXRsZTogJ0Nhc2UgY291bnQnLFxuICAgICAgZG9jdW1lbnREZWZpbml0aW9uOiAnQ2FzZSB0eXBlIChyZXF1aXJlZCknLFxuICAgICAgZG9jdW1lbnREZWZpbml0aW9uSGVscGVyVGV4dDogJ1RoZSBjYXNlIHR5cGUgZm9yIHdoaWNoIHRoZSBjb3VudCBpcyByZXRyaWV2ZWQnLFxuICAgICAgJyE9JzogJ05vdCBlcXVhbCB0bycsXG4gICAgICAnPT0nOiAnRXF1YWwgdG8nLFxuICAgICAgJz4nOiAnR3JlYXRlciB0aGFuJyxcbiAgICAgICc+PSc6ICdHcmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8nLFxuICAgICAgJzwnOiAnTGVzcyB0aGFuJyxcbiAgICAgICc8PSc6ICdMZXNzIHRoYW4gb3IgZXF1YWwgdG8nLFxuICAgICAgcGF0aDogJ1BhdGggKHJlcXVpcmVkKScsXG4gICAgICBvcGVyYXRvcjogJ09wZXJhdG9yJyxcbiAgICAgIHZhbHVlOiAnVmFsdWUnLFxuICAgICAgY29uZGl0aW9uczogJ0NvbmRpdGlvbnMnLFxuICAgICAgY29uZGl0aW9uc0hlbHBlclRleHQ6XG4gICAgICAgIFwiU3BlY2lmeSBvcHRpb25hbCBjb25kaXRpb25zIGZvciByZXRyaWV2aW5nIHRoZSBudW1iZXIgb2YgY2FzZXMgZm9yIHRoZSBzZWxlY3RlZCBjYXNlIHR5cGUuIEZvciBleGFtcGxlOiAnY2FzZTpjcmVhdGVkQnknLCAnRXF1YWwgdG8nLCAndGVzdEB0ZXN0LmNvbScuIFRvIGNvbXBhcmUgd2l0aCBlbXB0eSB2YWx1ZXMsICcke251bGx9JyBjYW4gYmUgZW50ZXJlZCBhcyBhIHZhbHVlLiBUbyBjb21wYXJlIHdpdGggdGhlIGN1cnJlbnQgZGF0ZSwgJyR7bG9jYWxEYXRlVGltZU5vd30nIGNhbiBiZSBlbnRlcmVkIGFzIGEgdmFsdWUuIFRoaXMgYWxzbyBzdXBwb3J0cywgZm9yIGV4YW1wbGUsIHRoZSBmb2xsb3dpbmcgbG9naWM6ICcke2xvY2FsRGF0ZVRpbWVOb3cubWludXNXZWVrcygyKX0nLlwiLFxuICAgICAgYWRkQ29uZGl0aW9uOiAnQWRkIGNvbmRpdGlvbicsXG4gICAgfSxcbiAgICBubDoge1xuICAgICAgdGl0bGU6ICdBYW50YWwgZG9zc2llcnMnLFxuICAgICAgZG9jdW1lbnREZWZpbml0aW9uOiAnRG9zc2llcnR5cGUgKHZlcmVpc3QpJyxcbiAgICAgIGRvY3VtZW50RGVmaW5pdGlvbkhlbHBlclRleHQ6ICdIZXQgZG9zc2llcnR5cGUgd2FhcnZvb3IgZGUgdGVsbGluZyB3b3JkdCBvcGdlaGFhbGQnLFxuICAgICAgJyE9JzogJ05pZXQgZ2VsaWprIGFhbicsXG4gICAgICAnPT0nOiAnR2VsaWprIGFhbicsXG4gICAgICAnPic6ICdHcm90ZXIgZGFuJyxcbiAgICAgICc+PSc6ICdHcm90ZXIgZGFuIG9mIGdlbGlqayBhYW4nLFxuICAgICAgJzwnOiAnTWluZGVyIGRhbicsXG4gICAgICAnPD0nOiAnTWluZGVyIGRhbiBvZiBnZWxpamsgYWFuJyxcbiAgICAgIHBhdGg6ICdQYWQnLFxuICAgICAgb3BlcmF0b3I6ICdPcGVyYXRvcicsXG4gICAgICB2YWx1ZTogJ1dhYXJkZScsXG4gICAgICBjb25kaXRpb25zOiAnQ29uZGl0aWVzJyxcbiAgICAgIGNvbmRpdGlvbnNIZWxwZXJUZXh0OlxuICAgICAgICBcIkdlZWYgb3B0aW9uZWxlIGNvbmRpdGllcyBvcCB2b29yIGhldCBvcGhhbGVuIHZhbiBoZXQgYWFudGFsIHpha2VuIHZvb3IgaGV0IGdlc2VsZWN0ZWVyZGUgemFha3R5cGUuIEJpanZvb3JiZWVsZDogJ2Nhc2U6Y3JlYXRlZEJ5JywgJ0dlbGlqayBhYW4nLCAndGVzdEB0ZXN0LmNvbScuIFZvb3IgaGV0IHZlcmdlbGlqa2VuIG1ldCBsZWdlIHdhYXJkZXMga2FuICcke251bGx9JyBpbmdldnVsZCB3b3JkZW4gYWxzIHdhYXJkZS4gVm9vciBoZXQgdmVyZ2VsaWprZW4gbWV0IGRlIGh1aWRpZ2UgZGF0dW0ga2FuICcke2xvY2FsRGF0ZVRpbWVOb3d9JyBpbmdldnVsZCB3b3JkZW4gYWxzIHdhYXJkZS4gRGV6ZSBvbmRlcnN0ZXVudCBvb2sgYmlqdm9vcmJlZWxkIGRlIHZvbGdlbmRlIGxvZ2ljYTogJyR7bG9jYWxEYXRlVGltZU5vdy5taW51c1dlZWtzKDIpfScuXCIsXG4gICAgICBhZGRDb25kaXRpb246ICdDb25kaXRpZSB0b2V2b2VnZW4nLFxuICAgIH0sXG4gIH0sXG59O1xuIl19
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1jb3VudC5zcGVjaWZpY2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9kYXNoYm9hcmQvc3JjL2xpYi9kYXRhLXNvdXJjZXMvY2FzZS1jb3VudC9jYXNlLWNvdW50LnNwZWNpZmljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFHSCxPQUFPLEVBQUMsK0JBQStCLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDN0QsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sV0FBVyxDQUFDO0FBRWxELE1BQU0sQ0FBQyxNQUFNLGdDQUFnQyxHQUE0QjtJQUN2RSxhQUFhLEVBQUUsWUFBWTtJQUMzQixzQkFBc0IsRUFBRSwrQkFBK0I7SUFDdkQsWUFBWSxFQUFFO1FBQ1osRUFBRSxFQUFFO1lBQ0YsS0FBSyxFQUFFLFVBQVU7WUFDakIsa0JBQWtCLEVBQUUsd0JBQXdCO1lBQzVDLDRCQUE0QixFQUFFLGdEQUFnRDtZQUM5RSxJQUFJLEVBQUUsMEJBQTBCO1lBQ2hDLElBQUksRUFBRSxRQUFRO1lBQ2QsR0FBRyxFQUFFLFlBQVk7WUFDakIsSUFBSSxFQUFFLDRCQUE0QjtZQUNsQyxHQUFHLEVBQUUsYUFBYTtZQUNsQixJQUFJLEVBQUUseUJBQXlCO1lBQy9CLElBQUksRUFBRSxNQUFNO1lBQ1osUUFBUSxFQUFFLFVBQVU7WUFDcEIsS0FBSyxFQUFFLE1BQU07WUFDYixVQUFVLEVBQUUsYUFBYTtZQUN6QixvQkFBb0IsRUFBRSxxR0FBcUcsdUJBQXVCLENBQUMsRUFBRSxFQUFFO1lBQ3ZKLFlBQVksRUFBRSxzQkFBc0I7U0FDckM7UUFDRCxFQUFFLEVBQUU7WUFDRixLQUFLLEVBQUUsWUFBWTtZQUNuQixrQkFBa0IsRUFBRSxzQkFBc0I7WUFDMUMsNEJBQTRCLEVBQUUsZ0RBQWdEO1lBQzlFLElBQUksRUFBRSxjQUFjO1lBQ3BCLElBQUksRUFBRSxVQUFVO1lBQ2hCLEdBQUcsRUFBRSxjQUFjO1lBQ25CLElBQUksRUFBRSwwQkFBMEI7WUFDaEMsR0FBRyxFQUFFLFdBQVc7WUFDaEIsSUFBSSxFQUFFLHVCQUF1QjtZQUM3QixJQUFJLEVBQUUsaUJBQWlCO1lBQ3ZCLFFBQVEsRUFBRSxVQUFVO1lBQ3BCLEtBQUssRUFBRSxPQUFPO1lBQ2QsVUFBVSxFQUFFLFlBQVk7WUFDeEIsb0JBQW9CLEVBQUUsOEZBQThGLHVCQUF1QixDQUFDLEVBQUUsRUFBRTtZQUNoSixZQUFZLEVBQUUsZUFBZTtTQUM5QjtRQUNELEVBQUUsRUFBRTtZQUNGLEtBQUssRUFBRSxpQkFBaUI7WUFDeEIsa0JBQWtCLEVBQUUsdUJBQXVCO1lBQzNDLDRCQUE0QixFQUFFLHFEQUFxRDtZQUNuRixJQUFJLEVBQUUsaUJBQWlCO1lBQ3ZCLElBQUksRUFBRSxZQUFZO1lBQ2xCLEdBQUcsRUFBRSxZQUFZO1lBQ2pCLElBQUksRUFBRSwwQkFBMEI7WUFDaEMsR0FBRyxFQUFFLFlBQVk7WUFDakIsSUFBSSxFQUFFLDBCQUEwQjtZQUNoQyxJQUFJLEVBQUUsS0FBSztZQUNYLFFBQVEsRUFBRSxVQUFVO1lBQ3BCLEtBQUssRUFBRSxRQUFRO1lBQ2YsVUFBVSxFQUFFLFdBQVc7WUFDdkIsb0JBQW9CLEVBQUUseUdBQXlHLHVCQUF1QixDQUFDLEVBQUUsR0FBRztZQUM1SixZQUFZLEVBQUUsb0JBQW9CO1NBQ25DO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtEYXRhU291cmNlU3BlY2lmaWNhdGlvbn0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7Q2FzZUNvdW50Q29uZmlndXJhdGlvbkNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7Q09ORElUSU9OU19IRUxQRVJfVEVYVFN9IGZyb20gJy4uL3NoYXJlZCc7XG5cbmV4cG9ydCBjb25zdCBjYXNlQ291bnREYXRhU291cmNlU3BlY2lmaWNhdGlvbjogRGF0YVNvdXJjZVNwZWNpZmljYXRpb24gPSB7XG4gIGRhdGFTb3VyY2VLZXk6ICdjYXNlLWNvdW50JyxcbiAgY29uZmlndXJhdGlvbkNvbXBvbmVudDogQ2FzZUNvdW50Q29uZmlndXJhdGlvbkNvbXBvbmVudCxcbiAgdHJhbnNsYXRpb25zOiB7XG4gICAgZGU6IHtcbiAgICAgIHRpdGxlOiAnRmFsbHphaGwnLFxuICAgICAgZG9jdW1lbnREZWZpbml0aW9uOiAnRmFsbHR5cCAoZXJmb3JkZXJsaWNoKScsXG4gICAgICBkb2N1bWVudERlZmluaXRpb25IZWxwZXJUZXh0OiAnRGVyIEZhbGx0eXAsIGbDvHIgZGVuIGRpZSBBbnphaGwgYWJnZXJ1ZmVuIHdpcmQnLFxuICAgICAgJyE9JzogJ05pY2h0IGdsZWljaHp1c2V0emVuIG1pdCcsXG4gICAgICAnPT0nOiAnR2xlaWNoJyxcbiAgICAgICc+JzogJ0dyw7bDn2VyIGFscycsXG4gICAgICAnPj0nOiAnR3LDtsOfZXIgYWxzIG9kZXIgZ2xlaWNoIHdpZScsXG4gICAgICAnPCc6ICdXZW5pZ2VyIGFscycsXG4gICAgICAnPD0nOiAnR2xlaWNoIG9kZXIga2xlaW5lciBhbHMnLFxuICAgICAgcGF0aDogJ1BmYWQnLFxuICAgICAgb3BlcmF0b3I6ICdPcGVyYXRvcicsXG4gICAgICB2YWx1ZTogJ1dlcnQnLFxuICAgICAgY29uZGl0aW9uczogJ0JlZGluZ3VuZ2VuJyxcbiAgICAgIGNvbmRpdGlvbnNIZWxwZXJUZXh0OiBgR2ViZW4gU2llIG9wdGlvbmFsZSBCZWRpbmd1bmdlbiB6dW0gQWJydWZlbiBkZXIgQW56YWhsIGRlciBGw6RsbGUgZsO8ciBkZW4gYXVzZ2V3w6RobHRlbiBGYWxsdHlwIGFuLiAke0NPTkRJVElPTlNfSEVMUEVSX1RFWFRTLkRFfWAsXG4gICAgICBhZGRDb25kaXRpb246ICdCZWRpbmd1bmcgaGluenVmw7xnZW4nLFxuICAgIH0sXG4gICAgZW46IHtcbiAgICAgIHRpdGxlOiAnQ2FzZSBjb3VudCcsXG4gICAgICBkb2N1bWVudERlZmluaXRpb246ICdDYXNlIHR5cGUgKHJlcXVpcmVkKScsXG4gICAgICBkb2N1bWVudERlZmluaXRpb25IZWxwZXJUZXh0OiAnVGhlIGNhc2UgdHlwZSBmb3Igd2hpY2ggdGhlIGNvdW50IGlzIHJldHJpZXZlZCcsXG4gICAgICAnIT0nOiAnTm90IGVxdWFsIHRvJyxcbiAgICAgICc9PSc6ICdFcXVhbCB0bycsXG4gICAgICAnPic6ICdHcmVhdGVyIHRoYW4nLFxuICAgICAgJz49JzogJ0dyZWF0ZXIgdGhhbiBvciBlcXVhbCB0bycsXG4gICAgICAnPCc6ICdMZXNzIHRoYW4nLFxuICAgICAgJzw9JzogJ0xlc3MgdGhhbiBvciBlcXVhbCB0bycsXG4gICAgICBwYXRoOiAnUGF0aCAocmVxdWlyZWQpJyxcbiAgICAgIG9wZXJhdG9yOiAnT3BlcmF0b3InLFxuICAgICAgdmFsdWU6ICdWYWx1ZScsXG4gICAgICBjb25kaXRpb25zOiAnQ29uZGl0aW9ucycsXG4gICAgICBjb25kaXRpb25zSGVscGVyVGV4dDogYFNwZWNpZnkgb3B0aW9uYWwgY29uZGl0aW9ucyBmb3IgcmV0cmlldmluZyB0aGUgbnVtYmVyIG9mIGNhc2VzIGZvciB0aGUgc2VsZWN0ZWQgY2FzZSB0eXBlLiAke0NPTkRJVElPTlNfSEVMUEVSX1RFWFRTLkVOfWAsXG4gICAgICBhZGRDb25kaXRpb246ICdBZGQgY29uZGl0aW9uJyxcbiAgICB9LFxuICAgIG5sOiB7XG4gICAgICB0aXRsZTogJ0FhbnRhbCBkb3NzaWVycycsXG4gICAgICBkb2N1bWVudERlZmluaXRpb246ICdEb3NzaWVydHlwZSAodmVyZWlzdCknLFxuICAgICAgZG9jdW1lbnREZWZpbml0aW9uSGVscGVyVGV4dDogJ0hldCBkb3NzaWVydHlwZSB3YWFydm9vciBkZSB0ZWxsaW5nIHdvcmR0IG9wZ2VoYWFsZCcsXG4gICAgICAnIT0nOiAnTmlldCBnZWxpamsgYWFuJyxcbiAgICAgICc9PSc6ICdHZWxpamsgYWFuJyxcbiAgICAgICc+JzogJ0dyb3RlciBkYW4nLFxuICAgICAgJz49JzogJ0dyb3RlciBkYW4gb2YgZ2VsaWprIGFhbicsXG4gICAgICAnPCc6ICdNaW5kZXIgZGFuJyxcbiAgICAgICc8PSc6ICdNaW5kZXIgZGFuIG9mIGdlbGlqayBhYW4nLFxuICAgICAgcGF0aDogJ1BhZCcsXG4gICAgICBvcGVyYXRvcjogJ09wZXJhdG9yJyxcbiAgICAgIHZhbHVlOiAnV2FhcmRlJyxcbiAgICAgIGNvbmRpdGlvbnM6ICdDb25kaXRpZXMnLFxuICAgICAgY29uZGl0aW9uc0hlbHBlclRleHQ6IGBHZWVmIG9wdGlvbmVsZSBjb25kaXRpZXMgb3Agdm9vciBoZXQgb3BoYWxlbiB2YW4gaGV0IGFhbnRhbCB6YWtlbiB2b29yIGhldCBnZXNlbGVjdGVlcmRlIGRvc3NpZXJ0eXBlLiAke0NPTkRJVElPTlNfSEVMUEVSX1RFWFRTLk5MfX1gLFxuICAgICAgYWRkQ29uZGl0aW9uOiAnQ29uZGl0aWUgdG9ldm9lZ2VuJyxcbiAgICB9LFxuICB9LFxufTtcbiJdfQ==
@@ -14,6 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  import { CaseCountsConfigurationComponent } from './components';
17
+ import { CONDITIONS_HELPER_TEXTS } from '../shared';
17
18
  export const caseCountsDataSourceSpecification = {
18
19
  dataSourceKey: 'case-counts',
19
20
  configurationComponent: CaseCountsConfigurationComponent,
@@ -32,7 +33,7 @@ export const caseCountsDataSourceSpecification = {
32
33
  operator: 'Operator',
33
34
  value: 'Wert',
34
35
  counts: 'Anzahllen',
35
- countsHelperText: "Geben Sie eine oder mehrere Bedingungen für mindestens zwei Anzahllen an. Zum Beispiel: 'case:createdBy', 'Gleich', 'test@test.com'. Zum Vergleichen mit leeren Werten kann als Wert '${null}' eingegeben werden. Zum Vergleichen mit dem aktuellen Datum kann als Wert '${localDateTimeNow}' eingegeben werden. Damit wird beispielsweise auch folgende Logik unterstützt: '${localDateTimeNow.minusWeeks(2)}'.",
36
+ countsHelperText: `Geben Sie eine oder mehrere Bedingungen für jede anzuzeigende Zählung an. Konfigurieren Sie mindestens zwei Zählungen und mindestens eine Bedingung pro Zählung. ${CONDITIONS_HELPER_TEXTS.DE}`,
36
37
  addCondition: 'Bedingung hinzufügen',
37
38
  countTitle: 'Anzahltitel',
38
39
  },
@@ -50,7 +51,7 @@ export const caseCountsDataSourceSpecification = {
50
51
  operator: 'Operator',
51
52
  value: 'Value',
52
53
  counts: 'Counts',
53
- countsHelperText: "Specify one or more conditions for each count that should be displayed. For example: 'case:createdBy', 'Equal to', 'test@test.com'. Configure at least two counts and at least one condition per count.",
54
+ countsHelperText: `Specify one or more conditions for each count that should be displayed. Configure at least two counts and at least one condition per count. ${CONDITIONS_HELPER_TEXTS.EN}`,
54
55
  addCondition: 'Add condition',
55
56
  countTitle: 'Count title',
56
57
  },
@@ -68,10 +69,10 @@ export const caseCountsDataSourceSpecification = {
68
69
  operator: 'Operator',
69
70
  value: 'Waarde',
70
71
  counts: 'Aantallen',
71
- countsHelperText: "Geef een of meer condities op voor een minimum van twee aantallen. Bijvoorbeeld: 'case:createdBy', 'Gelijk aan', 'test@test.com'. Voor het vergelijken met lege waardes kan '${null}' ingevuld worden als waarde. Voor het vergelijken met de huidige datum kan '${localDateTimeNow}' ingevuld worden als waarde. Deze ondersteunt ook bijvoorbeeld de volgende logica: '${localDateTimeNow.minusWeeks(2)}'.",
72
+ countsHelperText: `Geef een of meer condities op voor elk aantal dat moet worden weergegeven. Configureer minimaal twee aantallen en minimaal één conditie per aantal. ${CONDITIONS_HELPER_TEXTS.NL}`,
72
73
  addCondition: 'Conditie toevoegen',
73
74
  countTitle: 'Aantaltitel',
74
75
  },
75
76
  },
76
77
  };
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1jb3VudHMuc3BlY2lmaWNhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZGFzaGJvYXJkL3NyYy9saWIvZGF0YS1zb3VyY2VzL2Nhc2UtY291bnRzL2Nhc2UtY291bnRzLnNwZWNpZmljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFHSCxPQUFPLEVBQUMsZ0NBQWdDLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFFOUQsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQTRCO0lBQ3hFLGFBQWEsRUFBRSxhQUFhO0lBQzVCLHNCQUFzQixFQUFFLGdDQUFnQztJQUN4RCxZQUFZLEVBQUU7UUFDWixFQUFFLEVBQUU7WUFDRixLQUFLLEVBQUUsdUJBQXVCO1lBQzlCLGtCQUFrQixFQUFFLHdCQUF3QjtZQUM1Qyw0QkFBNEIsRUFBRSxvREFBb0Q7WUFDbEYsSUFBSSxFQUFFLDBCQUEwQjtZQUNoQyxJQUFJLEVBQUUsUUFBUTtZQUNkLEdBQUcsRUFBRSxZQUFZO1lBQ2pCLElBQUksRUFBRSw0QkFBNEI7WUFDbEMsR0FBRyxFQUFFLGFBQWE7WUFDbEIsSUFBSSxFQUFFLHlCQUF5QjtZQUMvQixJQUFJLEVBQUUsTUFBTTtZQUNaLFFBQVEsRUFBRSxVQUFVO1lBQ3BCLEtBQUssRUFBRSxNQUFNO1lBQ2IsTUFBTSxFQUFFLFdBQVc7WUFDbkIsZ0JBQWdCLEVBQ2Qsa1pBQWtaO1lBQ3BaLFlBQVksRUFBRSxzQkFBc0I7WUFDcEMsVUFBVSxFQUFFLGFBQWE7U0FDMUI7UUFDRCxFQUFFLEVBQUU7WUFDRixLQUFLLEVBQUUsc0JBQXNCO1lBQzdCLGtCQUFrQixFQUFFLHNCQUFzQjtZQUMxQyw0QkFBNEIsRUFBRSxrREFBa0Q7WUFDaEYsSUFBSSxFQUFFLGNBQWM7WUFDcEIsSUFBSSxFQUFFLFVBQVU7WUFDaEIsR0FBRyxFQUFFLGNBQWM7WUFDbkIsSUFBSSxFQUFFLDBCQUEwQjtZQUNoQyxHQUFHLEVBQUUsV0FBVztZQUNoQixJQUFJLEVBQUUsdUJBQXVCO1lBQzdCLElBQUksRUFBRSxpQkFBaUI7WUFDdkIsUUFBUSxFQUFFLFVBQVU7WUFDcEIsS0FBSyxFQUFFLE9BQU87WUFDZCxNQUFNLEVBQUUsUUFBUTtZQUNoQixnQkFBZ0IsRUFDZCx5TUFBeU07WUFDM00sWUFBWSxFQUFFLGVBQWU7WUFDN0IsVUFBVSxFQUFFLGFBQWE7U0FDMUI7UUFDRCxFQUFFLEVBQUU7WUFDRixLQUFLLEVBQUUsMkJBQTJCO1lBQ2xDLGtCQUFrQixFQUFFLHVCQUF1QjtZQUMzQyw0QkFBNEIsRUFBRSx3REFBd0Q7WUFDdEYsSUFBSSxFQUFFLGlCQUFpQjtZQUN2QixJQUFJLEVBQUUsWUFBWTtZQUNsQixHQUFHLEVBQUUsWUFBWTtZQUNqQixJQUFJLEVBQUUsMEJBQTBCO1lBQ2hDLEdBQUcsRUFBRSxZQUFZO1lBQ2pCLElBQUksRUFBRSwwQkFBMEI7WUFDaEMsSUFBSSxFQUFFLEtBQUs7WUFDWCxRQUFRLEVBQUUsVUFBVTtZQUNwQixLQUFLLEVBQUUsUUFBUTtZQUNmLE1BQU0sRUFBRSxXQUFXO1lBQ25CLGdCQUFnQixFQUNkLDhZQUE4WTtZQUNoWixZQUFZLEVBQUUsb0JBQW9CO1lBQ2xDLFVBQVUsRUFBRSxhQUFhO1NBQzFCO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtEYXRhU291cmNlU3BlY2lmaWNhdGlvbn0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7Q2FzZUNvdW50c0NvbmZpZ3VyYXRpb25Db21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cyc7XG5cbmV4cG9ydCBjb25zdCBjYXNlQ291bnRzRGF0YVNvdXJjZVNwZWNpZmljYXRpb246IERhdGFTb3VyY2VTcGVjaWZpY2F0aW9uID0ge1xuICBkYXRhU291cmNlS2V5OiAnY2FzZS1jb3VudHMnLFxuICBjb25maWd1cmF0aW9uQ29tcG9uZW50OiBDYXNlQ291bnRzQ29uZmlndXJhdGlvbkNvbXBvbmVudCxcbiAgdHJhbnNsYXRpb25zOiB7XG4gICAgZGU6IHtcbiAgICAgIHRpdGxlOiAnTWVocmVyZSBGYWxsYW56YWhsbGVuJyxcbiAgICAgIGRvY3VtZW50RGVmaW5pdGlvbjogJ0ZhbGx0eXAgKGVyZm9yZGVybGljaCknLFxuICAgICAgZG9jdW1lbnREZWZpbml0aW9uSGVscGVyVGV4dDogJ0RlciBGYWxsdHlwLCBmw7xyIGRlbiBkaWUgQW56YWhsbGVuIGFiZ2VydWZ0IHdpcmRlbicsXG4gICAgICAnIT0nOiAnTmljaHQgZ2xlaWNoenVzZXR6ZW4gbWl0JyxcbiAgICAgICc9PSc6ICdHbGVpY2gnLFxuICAgICAgJz4nOiAnR3LDtsOfZXIgYWxzJyxcbiAgICAgICc+PSc6ICdHcsO2w59lciBhbHMgb2RlciBnbGVpY2ggd2llJyxcbiAgICAgICc8JzogJ1dlbmlnZXIgYWxzJyxcbiAgICAgICc8PSc6ICdHbGVpY2ggb2RlciBrbGVpbmVyIGFscycsXG4gICAgICBwYXRoOiAnUGZhZCcsXG4gICAgICBvcGVyYXRvcjogJ09wZXJhdG9yJyxcbiAgICAgIHZhbHVlOiAnV2VydCcsXG4gICAgICBjb3VudHM6ICdBbnphaGxsZW4nLFxuICAgICAgY291bnRzSGVscGVyVGV4dDpcbiAgICAgICAgXCJHZWJlbiBTaWUgZWluZSBvZGVyIG1laHJlcmUgQmVkaW5ndW5nZW4gZsO8ciBtaW5kZXN0ZW5zIHp3ZWkgQW56YWhsbGVuIGFuLiBadW0gQmVpc3BpZWw6ICdjYXNlOmNyZWF0ZWRCeScsICdHbGVpY2gnLCAndGVzdEB0ZXN0LmNvbScuIFp1bSBWZXJnbGVpY2hlbiBtaXQgbGVlcmVuIFdlcnRlbiBrYW5uIGFscyBXZXJ0ICcke251bGx9JyBlaW5nZWdlYmVuIHdlcmRlbi4gWnVtIFZlcmdsZWljaGVuIG1pdCBkZW0gYWt0dWVsbGVuIERhdHVtIGthbm4gYWxzIFdlcnQgJyR7bG9jYWxEYXRlVGltZU5vd30nIGVpbmdlZ2ViZW4gd2VyZGVuLiBEYW1pdCB3aXJkIGJlaXNwaWVsc3dlaXNlIGF1Y2ggZm9sZ2VuZGUgTG9naWsgdW50ZXJzdMO8dHp0OiAnJHtsb2NhbERhdGVUaW1lTm93Lm1pbnVzV2Vla3MoMil9Jy5cIixcbiAgICAgIGFkZENvbmRpdGlvbjogJ0JlZGluZ3VuZyBoaW56dWbDvGdlbicsXG4gICAgICBjb3VudFRpdGxlOiAnQW56YWhsdGl0ZWwnLFxuICAgIH0sXG4gICAgZW46IHtcbiAgICAgIHRpdGxlOiAnTXVsdGlwbGUgY2FzZSBjb3VudHMnLFxuICAgICAgZG9jdW1lbnREZWZpbml0aW9uOiAnQ2FzZSB0eXBlIChyZXF1aXJlZCknLFxuICAgICAgZG9jdW1lbnREZWZpbml0aW9uSGVscGVyVGV4dDogJ1RoZSBjYXNlIHR5cGUgZm9yIHdoaWNoIHRoZSBjb3VudHMgYXJlIHJldHJpZXZlZCcsXG4gICAgICAnIT0nOiAnTm90IGVxdWFsIHRvJyxcbiAgICAgICc9PSc6ICdFcXVhbCB0bycsXG4gICAgICAnPic6ICdHcmVhdGVyIHRoYW4nLFxuICAgICAgJz49JzogJ0dyZWF0ZXIgdGhhbiBvciBlcXVhbCB0bycsXG4gICAgICAnPCc6ICdMZXNzIHRoYW4nLFxuICAgICAgJzw9JzogJ0xlc3MgdGhhbiBvciBlcXVhbCB0bycsXG4gICAgICBwYXRoOiAnUGF0aCAocmVxdWlyZWQpJyxcbiAgICAgIG9wZXJhdG9yOiAnT3BlcmF0b3InLFxuICAgICAgdmFsdWU6ICdWYWx1ZScsXG4gICAgICBjb3VudHM6ICdDb3VudHMnLFxuICAgICAgY291bnRzSGVscGVyVGV4dDpcbiAgICAgICAgXCJTcGVjaWZ5IG9uZSBvciBtb3JlIGNvbmRpdGlvbnMgZm9yIGVhY2ggY291bnQgdGhhdCBzaG91bGQgYmUgZGlzcGxheWVkLiBGb3IgZXhhbXBsZTogJ2Nhc2U6Y3JlYXRlZEJ5JywgJ0VxdWFsIHRvJywgJ3Rlc3RAdGVzdC5jb20nLiBDb25maWd1cmUgYXQgbGVhc3QgdHdvIGNvdW50cyBhbmQgYXQgbGVhc3Qgb25lIGNvbmRpdGlvbiBwZXIgY291bnQuXCIsXG4gICAgICBhZGRDb25kaXRpb246ICdBZGQgY29uZGl0aW9uJyxcbiAgICAgIGNvdW50VGl0bGU6ICdDb3VudCB0aXRsZScsXG4gICAgfSxcbiAgICBubDoge1xuICAgICAgdGl0bGU6ICdNZWVyZGVyZSBkb3NzaWVyYWFudGFsbGVuJyxcbiAgICAgIGRvY3VtZW50RGVmaW5pdGlvbjogJ0Rvc3NpZXJ0eXBlICh2ZXJlaXN0KScsXG4gICAgICBkb2N1bWVudERlZmluaXRpb25IZWxwZXJUZXh0OiAnSGV0IGRvc3NpZXJ0eXBlIHdhYXJ2b29yIGRlIGFhbnRhbGxlbiB3b3JkZW4gb3BnZWhhYWxkJyxcbiAgICAgICchPSc6ICdOaWV0IGdlbGlqayBhYW4nLFxuICAgICAgJz09JzogJ0dlbGlqayBhYW4nLFxuICAgICAgJz4nOiAnR3JvdGVyIGRhbicsXG4gICAgICAnPj0nOiAnR3JvdGVyIGRhbiBvZiBnZWxpamsgYWFuJyxcbiAgICAgICc8JzogJ01pbmRlciBkYW4nLFxuICAgICAgJzw9JzogJ01pbmRlciBkYW4gb2YgZ2VsaWprIGFhbicsXG4gICAgICBwYXRoOiAnUGFkJyxcbiAgICAgIG9wZXJhdG9yOiAnT3BlcmF0b3InLFxuICAgICAgdmFsdWU6ICdXYWFyZGUnLFxuICAgICAgY291bnRzOiAnQWFudGFsbGVuJyxcbiAgICAgIGNvdW50c0hlbHBlclRleHQ6XG4gICAgICAgIFwiR2VlZiBlZW4gb2YgbWVlciBjb25kaXRpZXMgb3Agdm9vciBlZW4gbWluaW11bSB2YW4gdHdlZSBhYW50YWxsZW4uIEJpanZvb3JiZWVsZDogJ2Nhc2U6Y3JlYXRlZEJ5JywgJ0dlbGlqayBhYW4nLCAndGVzdEB0ZXN0LmNvbScuIFZvb3IgaGV0IHZlcmdlbGlqa2VuIG1ldCBsZWdlIHdhYXJkZXMga2FuICcke251bGx9JyBpbmdldnVsZCB3b3JkZW4gYWxzIHdhYXJkZS4gVm9vciBoZXQgdmVyZ2VsaWprZW4gbWV0IGRlIGh1aWRpZ2UgZGF0dW0ga2FuICcke2xvY2FsRGF0ZVRpbWVOb3d9JyBpbmdldnVsZCB3b3JkZW4gYWxzIHdhYXJkZS4gRGV6ZSBvbmRlcnN0ZXVudCBvb2sgYmlqdm9vcmJlZWxkIGRlIHZvbGdlbmRlIGxvZ2ljYTogJyR7bG9jYWxEYXRlVGltZU5vdy5taW51c1dlZWtzKDIpfScuXCIsXG4gICAgICBhZGRDb25kaXRpb246ICdDb25kaXRpZSB0b2V2b2VnZW4nLFxuICAgICAgY291bnRUaXRsZTogJ0FhbnRhbHRpdGVsJyxcbiAgICB9LFxuICB9LFxufTtcbiJdfQ==
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1jb3VudHMuc3BlY2lmaWNhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vZGFzaGJvYXJkL3NyYy9saWIvZGF0YS1zb3VyY2VzL2Nhc2UtY291bnRzL2Nhc2UtY291bnRzLnNwZWNpZmljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFHSCxPQUFPLEVBQUMsZ0NBQWdDLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDOUQsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sV0FBVyxDQUFDO0FBRWxELE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUE0QjtJQUN4RSxhQUFhLEVBQUUsYUFBYTtJQUM1QixzQkFBc0IsRUFBRSxnQ0FBZ0M7SUFDeEQsWUFBWSxFQUFFO1FBQ1osRUFBRSxFQUFFO1lBQ0YsS0FBSyxFQUFFLHVCQUF1QjtZQUM5QixrQkFBa0IsRUFBRSx3QkFBd0I7WUFDNUMsNEJBQTRCLEVBQUUsb0RBQW9EO1lBQ2xGLElBQUksRUFBRSwwQkFBMEI7WUFDaEMsSUFBSSxFQUFFLFFBQVE7WUFDZCxHQUFHLEVBQUUsWUFBWTtZQUNqQixJQUFJLEVBQUUsNEJBQTRCO1lBQ2xDLEdBQUcsRUFBRSxhQUFhO1lBQ2xCLElBQUksRUFBRSx5QkFBeUI7WUFDL0IsSUFBSSxFQUFFLE1BQU07WUFDWixRQUFRLEVBQUUsVUFBVTtZQUNwQixLQUFLLEVBQUUsTUFBTTtZQUNiLE1BQU0sRUFBRSxXQUFXO1lBQ25CLGdCQUFnQixFQUFFLG9LQUFvSyx1QkFBdUIsQ0FBQyxFQUFFLEVBQUU7WUFDbE4sWUFBWSxFQUFFLHNCQUFzQjtZQUNwQyxVQUFVLEVBQUUsYUFBYTtTQUMxQjtRQUNELEVBQUUsRUFBRTtZQUNGLEtBQUssRUFBRSxzQkFBc0I7WUFDN0Isa0JBQWtCLEVBQUUsc0JBQXNCO1lBQzFDLDRCQUE0QixFQUFFLGtEQUFrRDtZQUNoRixJQUFJLEVBQUUsY0FBYztZQUNwQixJQUFJLEVBQUUsVUFBVTtZQUNoQixHQUFHLEVBQUUsY0FBYztZQUNuQixJQUFJLEVBQUUsMEJBQTBCO1lBQ2hDLEdBQUcsRUFBRSxXQUFXO1lBQ2hCLElBQUksRUFBRSx1QkFBdUI7WUFDN0IsSUFBSSxFQUFFLGlCQUFpQjtZQUN2QixRQUFRLEVBQUUsVUFBVTtZQUNwQixLQUFLLEVBQUUsT0FBTztZQUNkLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLGdCQUFnQixFQUFFLCtJQUErSSx1QkFBdUIsQ0FBQyxFQUFFLEVBQUU7WUFDN0wsWUFBWSxFQUFFLGVBQWU7WUFDN0IsVUFBVSxFQUFFLGFBQWE7U0FDMUI7UUFDRCxFQUFFLEVBQUU7WUFDRixLQUFLLEVBQUUsMkJBQTJCO1lBQ2xDLGtCQUFrQixFQUFFLHVCQUF1QjtZQUMzQyw0QkFBNEIsRUFBRSx3REFBd0Q7WUFDdEYsSUFBSSxFQUFFLGlCQUFpQjtZQUN2QixJQUFJLEVBQUUsWUFBWTtZQUNsQixHQUFHLEVBQUUsWUFBWTtZQUNqQixJQUFJLEVBQUUsMEJBQTBCO1lBQ2hDLEdBQUcsRUFBRSxZQUFZO1lBQ2pCLElBQUksRUFBRSwwQkFBMEI7WUFDaEMsSUFBSSxFQUFFLEtBQUs7WUFDWCxRQUFRLEVBQUUsVUFBVTtZQUNwQixLQUFLLEVBQUUsUUFBUTtZQUNmLE1BQU0sRUFBRSxXQUFXO1lBQ25CLGdCQUFnQixFQUFFLHVKQUF1Six1QkFBdUIsQ0FBQyxFQUFFLEVBQUU7WUFDck0sWUFBWSxFQUFFLG9CQUFvQjtZQUNsQyxVQUFVLEVBQUUsYUFBYTtTQUMxQjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7RGF0YVNvdXJjZVNwZWNpZmljYXRpb259IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQge0Nhc2VDb3VudHNDb25maWd1cmF0aW9uQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHtDT05ESVRJT05TX0hFTFBFUl9URVhUU30gZnJvbSAnLi4vc2hhcmVkJztcblxuZXhwb3J0IGNvbnN0IGNhc2VDb3VudHNEYXRhU291cmNlU3BlY2lmaWNhdGlvbjogRGF0YVNvdXJjZVNwZWNpZmljYXRpb24gPSB7XG4gIGRhdGFTb3VyY2VLZXk6ICdjYXNlLWNvdW50cycsXG4gIGNvbmZpZ3VyYXRpb25Db21wb25lbnQ6IENhc2VDb3VudHNDb25maWd1cmF0aW9uQ29tcG9uZW50LFxuICB0cmFuc2xhdGlvbnM6IHtcbiAgICBkZToge1xuICAgICAgdGl0bGU6ICdNZWhyZXJlIEZhbGxhbnphaGxsZW4nLFxuICAgICAgZG9jdW1lbnREZWZpbml0aW9uOiAnRmFsbHR5cCAoZXJmb3JkZXJsaWNoKScsXG4gICAgICBkb2N1bWVudERlZmluaXRpb25IZWxwZXJUZXh0OiAnRGVyIEZhbGx0eXAsIGbDvHIgZGVuIGRpZSBBbnphaGxsZW4gYWJnZXJ1ZnQgd2lyZGVuJyxcbiAgICAgICchPSc6ICdOaWNodCBnbGVpY2h6dXNldHplbiBtaXQnLFxuICAgICAgJz09JzogJ0dsZWljaCcsXG4gICAgICAnPic6ICdHcsO2w59lciBhbHMnLFxuICAgICAgJz49JzogJ0dyw7bDn2VyIGFscyBvZGVyIGdsZWljaCB3aWUnLFxuICAgICAgJzwnOiAnV2VuaWdlciBhbHMnLFxuICAgICAgJzw9JzogJ0dsZWljaCBvZGVyIGtsZWluZXIgYWxzJyxcbiAgICAgIHBhdGg6ICdQZmFkJyxcbiAgICAgIG9wZXJhdG9yOiAnT3BlcmF0b3InLFxuICAgICAgdmFsdWU6ICdXZXJ0JyxcbiAgICAgIGNvdW50czogJ0FuemFobGxlbicsXG4gICAgICBjb3VudHNIZWxwZXJUZXh0OiBgR2ViZW4gU2llIGVpbmUgb2RlciBtZWhyZXJlIEJlZGluZ3VuZ2VuIGbDvHIgamVkZSBhbnp1emVpZ2VuZGUgWsOkaGx1bmcgYW4uIEtvbmZpZ3VyaWVyZW4gU2llIG1pbmRlc3RlbnMgendlaSBaw6RobHVuZ2VuIHVuZCBtaW5kZXN0ZW5zIGVpbmUgQmVkaW5ndW5nIHBybyBaw6RobHVuZy4gJHtDT05ESVRJT05TX0hFTFBFUl9URVhUUy5ERX1gLFxuICAgICAgYWRkQ29uZGl0aW9uOiAnQmVkaW5ndW5nIGhpbnp1ZsO8Z2VuJyxcbiAgICAgIGNvdW50VGl0bGU6ICdBbnphaGx0aXRlbCcsXG4gICAgfSxcbiAgICBlbjoge1xuICAgICAgdGl0bGU6ICdNdWx0aXBsZSBjYXNlIGNvdW50cycsXG4gICAgICBkb2N1bWVudERlZmluaXRpb246ICdDYXNlIHR5cGUgKHJlcXVpcmVkKScsXG4gICAgICBkb2N1bWVudERlZmluaXRpb25IZWxwZXJUZXh0OiAnVGhlIGNhc2UgdHlwZSBmb3Igd2hpY2ggdGhlIGNvdW50cyBhcmUgcmV0cmlldmVkJyxcbiAgICAgICchPSc6ICdOb3QgZXF1YWwgdG8nLFxuICAgICAgJz09JzogJ0VxdWFsIHRvJyxcbiAgICAgICc+JzogJ0dyZWF0ZXIgdGhhbicsXG4gICAgICAnPj0nOiAnR3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvJyxcbiAgICAgICc8JzogJ0xlc3MgdGhhbicsXG4gICAgICAnPD0nOiAnTGVzcyB0aGFuIG9yIGVxdWFsIHRvJyxcbiAgICAgIHBhdGg6ICdQYXRoIChyZXF1aXJlZCknLFxuICAgICAgb3BlcmF0b3I6ICdPcGVyYXRvcicsXG4gICAgICB2YWx1ZTogJ1ZhbHVlJyxcbiAgICAgIGNvdW50czogJ0NvdW50cycsXG4gICAgICBjb3VudHNIZWxwZXJUZXh0OiBgU3BlY2lmeSBvbmUgb3IgbW9yZSBjb25kaXRpb25zIGZvciBlYWNoIGNvdW50IHRoYXQgc2hvdWxkIGJlIGRpc3BsYXllZC4gQ29uZmlndXJlIGF0IGxlYXN0IHR3byBjb3VudHMgYW5kIGF0IGxlYXN0IG9uZSBjb25kaXRpb24gcGVyIGNvdW50LiAke0NPTkRJVElPTlNfSEVMUEVSX1RFWFRTLkVOfWAsXG4gICAgICBhZGRDb25kaXRpb246ICdBZGQgY29uZGl0aW9uJyxcbiAgICAgIGNvdW50VGl0bGU6ICdDb3VudCB0aXRsZScsXG4gICAgfSxcbiAgICBubDoge1xuICAgICAgdGl0bGU6ICdNZWVyZGVyZSBkb3NzaWVyYWFudGFsbGVuJyxcbiAgICAgIGRvY3VtZW50RGVmaW5pdGlvbjogJ0Rvc3NpZXJ0eXBlICh2ZXJlaXN0KScsXG4gICAgICBkb2N1bWVudERlZmluaXRpb25IZWxwZXJUZXh0OiAnSGV0IGRvc3NpZXJ0eXBlIHdhYXJ2b29yIGRlIGFhbnRhbGxlbiB3b3JkZW4gb3BnZWhhYWxkJyxcbiAgICAgICchPSc6ICdOaWV0IGdlbGlqayBhYW4nLFxuICAgICAgJz09JzogJ0dlbGlqayBhYW4nLFxuICAgICAgJz4nOiAnR3JvdGVyIGRhbicsXG4gICAgICAnPj0nOiAnR3JvdGVyIGRhbiBvZiBnZWxpamsgYWFuJyxcbiAgICAgICc8JzogJ01pbmRlciBkYW4nLFxuICAgICAgJzw9JzogJ01pbmRlciBkYW4gb2YgZ2VsaWprIGFhbicsXG4gICAgICBwYXRoOiAnUGFkJyxcbiAgICAgIG9wZXJhdG9yOiAnT3BlcmF0b3InLFxuICAgICAgdmFsdWU6ICdXYWFyZGUnLFxuICAgICAgY291bnRzOiAnQWFudGFsbGVuJyxcbiAgICAgIGNvdW50c0hlbHBlclRleHQ6IGBHZWVmIGVlbiBvZiBtZWVyIGNvbmRpdGllcyBvcCB2b29yIGVsayBhYW50YWwgZGF0IG1vZXQgd29yZGVuIHdlZXJnZWdldmVuLiBDb25maWd1cmVlciBtaW5pbWFhbCB0d2VlIGFhbnRhbGxlbiBlbiBtaW5pbWFhbCDDqcOpbiBjb25kaXRpZSBwZXIgYWFudGFsLiAke0NPTkRJVElPTlNfSEVMUEVSX1RFWFRTLk5MfWAsXG4gICAgICBhZGRDb25kaXRpb246ICdDb25kaXRpZSB0b2V2b2VnZW4nLFxuICAgICAgY291bnRUaXRsZTogJ0FhbnRhbHRpdGVsJyxcbiAgICB9LFxuICB9LFxufTtcbiJdfQ==