@nodata/render
Version:
Allows to dynamically render nodata components
55 lines (54 loc) • 2.72 kB
TypeScript
import { Observable } from 'rxjs';
import { Slideshow } from '@nodata/slideshow';
import * as NodataActions from '@nodata/action';
import { DatablockExecutionContext } from '@nodata/action';
import DatablockRenderer from './datablock';
import { DatablockRendererBuilder } from './datablock-renderer-builder';
import { DatablockRendererPlugin } from './datablock-renderer-plugins';
import PresetFilterRenderer from './preset-filter';
export declare class DashboardRenderer extends Slideshow {
private readonly datablockRenderers;
private readonly datablockRenderersByCode;
private readonly presetFilterRenderers;
private dashboardId;
private readonly executionContext;
private readonly datablockRendererBuilder;
private animationEnabled;
constructor(executionContext?: DatablockExecutionContext);
private getRenderDatablock;
on(target: Element | string): this;
fetch(dashboardId: number): Observable<void>;
fetchByCode(dashboardCode: string): Observable<void>;
private updateDashboard;
datablockRendererSelector(datablockViewId: number): Observable<DatablockRenderer>;
datablockRendererSelectorByCode(datablockViewCode: string): Observable<DatablockRenderer>;
datablockRendererPluginSelector(datablockViewId: number): Observable<DatablockRendererPlugin>;
presetFilterRendererSelector(presetFilterViewId: number): PresetFilterRenderer;
getDatablockRendererBuilder(): DatablockRendererBuilder;
disableAnimations(): this;
/**
* Renderers are not managed by the slideshow itself, but by
* the DashboardRenderer, so we need to explicitly destroy Renderers
* when destroying the DashboardRenderer.
*/
destroy(): this;
/**
* Create a pdf from the rendered dashboard.
*
* @return An observable emiting the printed resource url.
*/
print(contentViewerUrl: string, options?: NodataActions.DashboardPrintOptions): Observable<string>;
/**
* Create a pdf from the current page the rendered dashboard.
*
* @return An observable emiting the printed resource url.
*/
printCurrentPage(contentViewerUrl: string, options?: NodataActions.DashboardPrintOptions): Observable<string>;
initializeExecutionContext(dashboardId: number): Observable<void>;
updateDecContextPresetFilterEntry(datablockViewId: number, presetFilterCode: string, filteredField: string): void;
deleteDecContextPresetFilterEntry(datablockViewId: number, presetFilterCode: string): void;
restartAllDatablocksRendererSubscription(): void;
private restartDatablockRendererSubscription;
updatePresetFilterRendererDatablocks(presetFilterId: number): void;
}
export default DashboardRenderer;