@rxap/data-source
Version:
Provides a set of classes and decorators for creating and managing data sources in Angular applications, including base classes, static data sources, observable data sources, and method data sources. It also includes a component for displaying data source
23 lines (22 loc) • 1.42 kB
TypeScript
import { Constructor } from '@rxap/utilities';
import { Observable, ReplaySubject } from 'rxjs';
import { OnDestroy } from '@angular/core';
import { BaseDataSource, BaseDataSourceMetadata } from './base.data-source';
import * as i0 from "@angular/core";
export type StaticDataSourceData<Data = any> = Data | Promise<Data> | Observable<Data> | (() => Data);
export interface StaticDataSourceMetadata<Data = any> extends BaseDataSourceMetadata {
data?: StaticDataSourceData<Data>;
}
export declare class StaticDataSource<Data = any> extends BaseDataSource<Data, StaticDataSourceMetadata<Data>> implements OnDestroy {
protected _data$: ReplaySubject<Data>;
private _dataSubscription?;
constructor(data: any | null, metadata: StaticDataSourceMetadata | null);
get data(): Data;
set data(value: Data);
ngOnDestroy(): void;
protected _connect(): Observable<Data>;
static ɵfac: i0.ɵɵFactoryDeclaration<StaticDataSource<any>, [{ optional: true; }, { optional: true; }]>;
static ɵprov: i0.ɵɵInjectableDeclaration<StaticDataSource<any>>;
}
export declare function RxapStaticDataSource<Data>(metadata: StaticDataSourceMetadata<Data>, className?: string, packageName?: string): (target: Constructor<StaticDataSource<Data>>) => void;
export declare function staticDataSource<Data>(data: StaticDataSourceData<Data>, metadata?: StaticDataSourceMetadata<Data>): StaticDataSource<Data>;