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

34 lines (33 loc) 1.91 kB
import { OnChanges, OnDestroy, OnInit, SimpleChanges } from "@angular/core"; import { Subject } from "rxjs"; import { EventBus, IDataSource, IEvent } from "@nova-ui/bits"; import { IXYScales } from "@nova-ui/charts"; import { TimeseriesScalesService } from "../timeseries-scales.service"; import { ITimeseriesOutput, ITimeseriesWidgetConfig, ITimeseriesWidgetData, ITimeseriesWidgetSeriesData } from "../types"; import * as i0 from "@angular/core"; export declare abstract class TimeseriesChartComponent<T = ITimeseriesWidgetSeriesData> implements OnChanges, OnDestroy, OnInit { protected eventBus: EventBus<IEvent>; timeseriesScalesService: TimeseriesScalesService; dataSource: IDataSource; widgetData: ITimeseriesOutput<T>; configuration: ITimeseriesWidgetConfig; protected scales: IXYScales; protected destroy$: Subject<void>; protected buildChart$: Subject<void>; protected resetChart: boolean; protected chartBuilt: boolean; get seriesInteractive(): boolean; protected constructor(eventBus: EventBus<IEvent>, timeseriesScalesService: TimeseriesScalesService, dataSource: IDataSource); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; protected applyPreviousTransformer(previousData: any): void; protected transformSeriesData(serie: ITimeseriesWidgetData<T>): void; updateYAxisDomain(): void; removeMetric(metricId: string): void; /** Updates chart data. */ protected abstract updateChartData(): void; protected abstract buildChart(): void; static ɵfac: i0.ɵɵFactoryDeclaration<TimeseriesChartComponent<any>, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<TimeseriesChartComponent<any>, never, never, { "widgetData": { "alias": "widgetData"; "required": false; }; "configuration": { "alias": "configuration"; "required": false; }; }, {}, never, never, false, never>; }