@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
27 lines (26 loc) • 1.38 kB
TypeScript
import { OnDestroy } from "@angular/core";
import { Subject } from "rxjs";
import { EventBus, IDataSource, IEvent, IFilteringOutputs } from "@nova-ui/bits";
import { IDataSourceOutput } from "./types";
import { PizzagnaService } from "../../pizzagna/services/pizzagna.service";
import { IConfigurable, IProperties } from "../../types";
export declare class DataSourceAdapter<T extends IFilteringOutputs = IFilteringOutputs> implements IConfigurable, OnDestroy {
eventBus: EventBus<IEvent>;
dataSource: IDataSource<T>;
protected pizzagnaService: PizzagnaService;
protected componentId: string;
protected lastValue: T;
protected readonly destroy$: Subject<void>;
protected dataSourceConfiguration: Record<string, any>;
private propertyPath;
constructor(eventBus: EventBus<IEvent>, dataSource: IDataSource<T>, pizzagnaService: PizzagnaService);
protected setupRefreshListener(): void;
protected handleRefresh(): void;
protected handleDataSourceUpdate(value: T | IDataSourceOutput<T>): void;
ngOnDestroy(): void;
updateConfiguration(properties: IProperties): void;
protected updateAdapterProperties(properties: IProperties): void;
protected updateDataSourceProperties(properties: IProperties): void;
protected updateOutput(value: T | undefined): void;
protected processOutput(value: T | undefined): T | undefined;
}