@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
30 lines (29 loc) • 1.6 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";
import * as i0 from "@angular/core";
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;
static ɵfac: i0.ɵɵFactoryDeclaration<DataSourceAdapter<any>, [null, { optional: true; }, null]>;
static ɵprov: i0.ɵɵInjectableDeclaration<DataSourceAdapter<any>>;
}