UNPKG

@nova-ui/dashboards

Version:

Nova Dashboards is a framework designed to provide feature developers with a common solution for presenting data coming from various sources within a single view, as well as a set of predefined widget visualizations that are 100% configuration-driven and

67 lines 9.81 kB
// © 2022 SolarWinds Worldwide, LLC. All rights reserved. // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to // deal in the Software without restriction, including without limitation the // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or // sell copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: // // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. import { Inject, Injectable } from "@angular/core"; import { Subject } from "rxjs"; import { takeUntil } from "rxjs/operators"; import { EventBus } from "@nova-ui/bits"; import { DATA_SOURCE_OUTPUT } from "../../configurator/types"; import { PizzagnaService } from "../../pizzagna/services/pizzagna.service"; import { PizzagnaLayer, PIZZAGNA_EVENT_BUS } from "../../types"; import * as i0 from "@angular/core"; import * as i1 from "../../pizzagna/services/pizzagna.service"; import * as i2 from "@nova-ui/bits"; export class StatusContentFallbackAdapter { constructor(eventBus, pizzagnaService) { this.eventBus = eventBus; this.pizzagnaService = pizzagnaService; this.destroy$ = new Subject(); this.eventBus .getStream(DATA_SOURCE_OUTPUT) .pipe(takeUntil(this.destroy$)) .subscribe((event) => { this.handleDataSourceOutput(event); }); } ngOnDestroy() { this.destroy$.next(); this.destroy$.complete(); } setComponent(component, componentId) { this.componentId = componentId; } handleDataSourceOutput(event) { this.pizzagnaService.setProperty({ componentId: this.componentId, propertyPath: ["fallbackKey"], pizzagnaKey: PizzagnaLayer.Data, }, typeof event.payload?.error?.type !== "undefined" ? event.payload?.error?.type.toString() : undefined); } /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StatusContentFallbackAdapter, deps: [{ token: PIZZAGNA_EVENT_BUS }, { token: i1.PizzagnaService }], target: i0.ɵɵFactoryTarget.Injectable }); } /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StatusContentFallbackAdapter }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StatusContentFallbackAdapter, decorators: [{ type: Injectable }], ctorParameters: () => [{ type: i2.EventBus, decorators: [{ type: Inject, args: [PIZZAGNA_EVENT_BUS] }] }, { type: i1.PizzagnaService }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLWNvbnRlbnQtZmFsbGJhY2stYWRhcHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9wcm92aWRlcnMvc3RhdHVzLWNvbnRlbnQtZmFsbGJhY2stYWRhcHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5REFBeUQ7QUFDekQsRUFBRTtBQUNGLCtFQUErRTtBQUMvRSw0RUFBNEU7QUFDNUUsOEVBQThFO0FBQzlFLCtFQUErRTtBQUMvRSw4RUFBOEU7QUFDOUUsNERBQTREO0FBQzVELEVBQUU7QUFDRiw2RUFBNkU7QUFDN0UsdURBQXVEO0FBQ3ZELEVBQUU7QUFDRiw2RUFBNkU7QUFDN0UsNEVBQTRFO0FBQzVFLCtFQUErRTtBQUMvRSwwRUFBMEU7QUFDMUUsaUZBQWlGO0FBQ2pGLDZFQUE2RTtBQUM3RSxpQkFBaUI7QUFFakIsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLFFBQVEsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUdqRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDM0UsT0FBTyxFQUFpQixhQUFhLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7QUFHL0UsTUFBTSxPQUFPLDRCQUE0QjtJQUlyQyxZQUMwQyxRQUEwQixFQUN0RCxlQUFnQztRQURKLGFBQVEsR0FBUixRQUFRLENBQWtCO1FBQ3RELG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUwzQixhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQU85QyxJQUFJLENBQUMsUUFBUTthQUNSLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQzthQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM5QixTQUFTLENBQUMsQ0FBQyxLQUFrRCxFQUFFLEVBQUU7WUFDOUQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVNLFdBQVc7UUFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVNLFlBQVksQ0FBQyxTQUFjLEVBQUUsV0FBbUI7UUFDbkQsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDbkMsQ0FBQztJQUVTLHNCQUFzQixDQUM1QixLQUFrRDtRQUVsRCxJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FDNUI7WUFDSSxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsWUFBWSxFQUFFLENBQUMsYUFBYSxDQUFDO1lBQzdCLFdBQVcsRUFBRSxhQUFhLENBQUMsSUFBSTtTQUNsQyxFQUNELE9BQU8sS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxLQUFLLFdBQVc7WUFDN0MsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDdkMsQ0FBQyxDQUFDLFNBQVMsQ0FDbEIsQ0FBQztJQUNOLENBQUM7a0lBdENRLDRCQUE0QixrQkFLekIsa0JBQWtCO3NJQUxyQiw0QkFBNEI7OzRGQUE1Qiw0QkFBNEI7a0JBRHhDLFVBQVU7OzBCQU1GLE1BQU07MkJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gwqkgMjAyMiBTb2xhcldpbmRzIFdvcmxkd2lkZSwgTExDLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vICBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0b1xuLy8gIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlXG4vLyAgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yXG4vLyAgc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vICBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyAgYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vICBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5cbmltcG9ydCB7IEV2ZW50QnVzLCBJRXZlbnQgfSBmcm9tIFwiQG5vdmEtdWkvYml0c1wiO1xuXG5pbXBvcnQgeyBJRGF0YVNvdXJjZU91dHB1dFBheWxvYWQgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgREFUQV9TT1VSQ0VfT1VUUFVUIH0gZnJvbSBcIi4uLy4uL2NvbmZpZ3VyYXRvci90eXBlc1wiO1xuaW1wb3J0IHsgUGl6emFnbmFTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3BpenphZ25hL3NlcnZpY2VzL3BpenphZ25hLnNlcnZpY2VcIjtcbmltcG9ydCB7IElIYXNDb21wb25lbnQsIFBpenphZ25hTGF5ZXIsIFBJWlpBR05BX0VWRU5UX0JVUyB9IGZyb20gXCIuLi8uLi90eXBlc1wiO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU3RhdHVzQ29udGVudEZhbGxiYWNrQWRhcHRlciBpbXBsZW1lbnRzIE9uRGVzdHJveSwgSUhhc0NvbXBvbmVudCB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBwcm90ZWN0ZWQgY29tcG9uZW50SWQ6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFBJWlpBR05BX0VWRU5UX0JVUykgcHJvdGVjdGVkIGV2ZW50QnVzOiBFdmVudEJ1czxJRXZlbnQ+LFxuICAgICAgICBwcm90ZWN0ZWQgcGl6emFnbmFTZXJ2aWNlOiBQaXp6YWduYVNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgdGhpcy5ldmVudEJ1c1xuICAgICAgICAgICAgLmdldFN0cmVhbShEQVRBX1NPVVJDRV9PVVRQVVQpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudDogSUV2ZW50PGFueSB8IElEYXRhU291cmNlT3V0cHV0UGF5bG9hZDxhbnk+PikgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlRGF0YVNvdXJjZU91dHB1dChldmVudCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldENvbXBvbmVudChjb21wb25lbnQ6IGFueSwgY29tcG9uZW50SWQ6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbXBvbmVudElkID0gY29tcG9uZW50SWQ7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGhhbmRsZURhdGFTb3VyY2VPdXRwdXQoXG4gICAgICAgIGV2ZW50OiBJRXZlbnQ8YW55IHwgSURhdGFTb3VyY2VPdXRwdXRQYXlsb2FkPGFueT4+XG4gICAgKTogdm9pZCB7XG4gICAgICAgIHRoaXMucGl6emFnbmFTZXJ2aWNlLnNldFByb3BlcnR5KFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudElkOiB0aGlzLmNvbXBvbmVudElkLFxuICAgICAgICAgICAgICAgIHByb3BlcnR5UGF0aDogW1wiZmFsbGJhY2tLZXlcIl0sXG4gICAgICAgICAgICAgICAgcGl6emFnbmFLZXk6IFBpenphZ25hTGF5ZXIuRGF0YSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB0eXBlb2YgZXZlbnQucGF5bG9hZD8uZXJyb3I/LnR5cGUgIT09IFwidW5kZWZpbmVkXCJcbiAgICAgICAgICAgICAgICA/IGV2ZW50LnBheWxvYWQ/LmVycm9yPy50eXBlLnRvU3RyaW5nKClcbiAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==