@luzmo/ngx-embed
Version:
This is an Angular library for embedding [Luzmo](https://luzmo.com) dashboards in your Angular application.
161 lines (153 loc) • 15.1 kB
TypeScript
import { FilterGroup, VizItemSlots, VizItemOptions, VizItemType, VizItemPostMessageLoadEvent, VizItemPostMessageRenderedEvent, VizItemPostMessageExportedEvent, VizItemPostMessageChangedFiltersEvent, VizItemPostMessageCustomEventEvent, VizItemExportType, ItemData as ItemData$1, IQChatOptions, IQAnswerOptions, IQMessage } from '@luzmo/embed';
export * from '@luzmo/embed';
import { Observable } from 'rxjs';
import * as _luzmo_shared_embed from '@luzmo/shared-embed';
import { DashboardEditMode, LoadEvent, ItemsRenderedEvent, CustomEvent, ChangedFiltersEvent, DashboardActionEvent, ExportedEvent, NgxLuzmoDashboard, ItemData, DashboardExportType, ExportDashboard, AccessibleDashboard, SetEditMode, CombinedSelectedDataInput, SetSelectedData, AddFilters, SetPreview, CanFilter } from '@luzmo/shared-embed';
import * as _angular_core from '@angular/core';
import { AfterViewInit, OnDestroy } from '@angular/core';
import * as _luzmo_dashboard_contents_types from '@luzmo/dashboard-contents-types';
declare class NgxLuzmoDashboardComponent implements AfterViewInit, OnDestroy {
private ngxLuzmoDashboardService;
private ngZone;
appServer: _angular_core.InputSignal<string | undefined>;
apiHost: _angular_core.InputSignal<string | undefined>;
authKey: _angular_core.InputSignal<string | undefined>;
authToken: _angular_core.InputSignal<string | undefined>;
dashboardId: _angular_core.InputSignal<string | undefined>;
itemId: _angular_core.InputSignal<string | undefined>;
dashboardSlug: _angular_core.InputSignal<string | undefined>;
editMode: _angular_core.InputSignal<DashboardEditMode | undefined>;
screenMode: _angular_core.InputSignal<_luzmo_shared_embed.ScreenMode | undefined>;
switchScreenModeOnResize: _angular_core.InputSignal<boolean | undefined>;
language: _angular_core.InputSignal<string | undefined>;
editorLanguage: _angular_core.InputSignal<string | undefined>;
qeVersion: _angular_core.InputSignal<1 | 2 | undefined>;
timezoneId: _angular_core.InputSignal<string | undefined>;
theme: _angular_core.InputSignal<string | undefined>;
mainColor: _angular_core.InputSignal<string | undefined>;
accentColor: _angular_core.InputSignal<string | undefined>;
loaderBackground: _angular_core.InputSignal<string | undefined>;
loaderFontColor: _angular_core.InputSignal<string | undefined>;
loaderSpinnerColor: _angular_core.InputSignal<string | undefined>;
loaderSpinnerBackground: _angular_core.InputSignal<string | undefined>;
itemDimensions: _angular_core.InputSignal<{
width: number | "auto";
height: number | "auto";
} | undefined>;
embedMode: _angular_core.InputSignal<_luzmo_shared_embed.DashboardEmbedMode | undefined>;
load: _angular_core.OutputEmitterRef<LoadEvent>;
itemsRendered: _angular_core.OutputEmitterRef<ItemsRenderedEvent>;
customEvent: _angular_core.OutputEmitterRef<CustomEvent>;
changedFilters: _angular_core.OutputEmitterRef<ChangedFiltersEvent>;
dashboardAction: _angular_core.OutputEmitterRef<DashboardActionEvent>;
exported: _angular_core.OutputEmitterRef<ExportedEvent>;
libVersion: string;
private dashboardElementRef;
private eventListenersSubscription;
private get dashboardElement();
constructor();
ngAfterViewInit(): void;
ngOnDestroy(): void;
getDashboards(): Observable<NgxLuzmoDashboard[]>;
getData(itemId: string): Observable<ItemData>;
getFilters(): Observable<FilterGroup[]>;
setAuthorization(key: string, token: string): Observable<void>;
refreshData(itemId?: string): Observable<void>;
reloadDashboard(): Observable<void>;
exportDashboard(format?: DashboardExportType): Observable<ExportDashboard>;
getAccessibleDashboards(): Observable<AccessibleDashboard[]>;
setEditMode(editMode: DashboardEditMode): Observable<SetEditMode>;
setSelectedData<K extends CombinedSelectedDataInput>(itemId: string, filters: K): Observable<SetSelectedData>;
addFilters(itemId: string, filters: FilterGroup[]): Observable<AddFilters>;
setPreview(preview: boolean): Observable<SetPreview>;
private initListeners;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgxLuzmoDashboardComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgxLuzmoDashboardComponent, "luzmo-dashboard", never, { "appServer": { "alias": "appServer"; "required": false; "isSignal": true; }; "apiHost": { "alias": "apiHost"; "required": false; "isSignal": true; }; "authKey": { "alias": "authKey"; "required": false; "isSignal": true; }; "authToken": { "alias": "authToken"; "required": false; "isSignal": true; }; "dashboardId": { "alias": "dashboardId"; "required": false; "isSignal": true; }; "itemId": { "alias": "itemId"; "required": false; "isSignal": true; }; "dashboardSlug": { "alias": "dashboardSlug"; "required": false; "isSignal": true; }; "editMode": { "alias": "editMode"; "required": false; "isSignal": true; }; "screenMode": { "alias": "screenMode"; "required": false; "isSignal": true; }; "switchScreenModeOnResize": { "alias": "switchScreenModeOnResize"; "required": false; "isSignal": true; }; "language": { "alias": "language"; "required": false; "isSignal": true; }; "editorLanguage": { "alias": "editorLanguage"; "required": false; "isSignal": true; }; "qeVersion": { "alias": "qeVersion"; "required": false; "isSignal": true; }; "timezoneId": { "alias": "timezoneId"; "required": false; "isSignal": true; }; "theme": { "alias": "theme"; "required": false; "isSignal": true; }; "mainColor": { "alias": "mainColor"; "required": false; "isSignal": true; }; "accentColor": { "alias": "accentColor"; "required": false; "isSignal": true; }; "loaderBackground": { "alias": "loaderBackground"; "required": false; "isSignal": true; }; "loaderFontColor": { "alias": "loaderFontColor"; "required": false; "isSignal": true; }; "loaderSpinnerColor": { "alias": "loaderSpinnerColor"; "required": false; "isSignal": true; }; "loaderSpinnerBackground": { "alias": "loaderSpinnerBackground"; "required": false; "isSignal": true; }; "itemDimensions": { "alias": "itemDimensions"; "required": false; "isSignal": true; }; "embedMode": { "alias": "embedMode"; "required": false; "isSignal": true; }; }, { "load": "load"; "itemsRendered": "itemsRendered"; "customEvent": "customEvent"; "changedFilters": "changedFilters"; "dashboardAction": "dashboardAction"; "exported": "exported"; }, never, never, true, never>;
}
declare class NgxLuzmoDashboardService {
_dashboardComponents: NgxLuzmoDashboardComponent[];
private activeDashboardsSubject;
getDashboards(): Observable<NgxLuzmoDashboardComponent[]>;
_emitActiveDashboardsSource(): void;
_setComponentContext(componentContext: NgxLuzmoDashboardComponent): void;
_removeComponentContext(componentContext: NgxLuzmoDashboardComponent): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgxLuzmoDashboardService, never>;
static ɵprov: _angular_core.ɵɵInjectableDeclaration<NgxLuzmoDashboardService>;
}
declare class NgxLuzmoVizItemComponent implements AfterViewInit {
private elementRef;
private ngZone;
appServer: _angular_core.InputSignal<string>;
apiHost: _angular_core.InputSignal<string>;
slots: _angular_core.InputSignal<VizItemSlots>;
options: _angular_core.InputSignal<VizItemOptions>;
type: _angular_core.InputSignal<VizItemType | undefined>;
authKey: _angular_core.InputSignal<string | null>;
authToken: _angular_core.InputSignal<string | null>;
contextId: _angular_core.InputSignal<string | null>;
canFilter: _angular_core.InputSignal<CanFilter>;
filters: _angular_core.InputSignal<_luzmo_dashboard_contents_types.ItemFilterGroup[]>;
dashboardId: _angular_core.InputSignal<string | null>;
itemId: _angular_core.InputSignal<string | null>;
selectedData: _angular_core.InputSignal<Partial<Record<_luzmo_dashboard_contents_types.FilterOperators, (Partial<Record<_luzmo_dashboard_contents_types.FilterOperators, (Partial<Record<_luzmo_dashboard_contents_types.FilterOperators, (Partial<Record<_luzmo_dashboard_contents_types.FilterOperators, (Partial<Record<_luzmo_dashboard_contents_types.FilterOperators, (Partial<Record<_luzmo_dashboard_contents_types.FilterOperators, (Partial<Record<_luzmo_dashboard_contents_types.FilterOperators, (Partial<Record<_luzmo_dashboard_contents_types.FilterOperators, (Partial<Record<_luzmo_dashboard_contents_types.FilterOperators, (Partial<Record<_luzmo_dashboard_contents_types.FilterOperators, (Partial<Record<_luzmo_dashboard_contents_types.FilterOperators, (Partial<Record<_luzmo_dashboard_contents_types.FilterOperators, /*elided*/ any>> | _luzmo_shared_embed.SelectedDataIn)[]>> | _luzmo_shared_embed.SelectedDataIn)[]>> | _luzmo_shared_embed.SelectedDataIn)[]>> | _luzmo_shared_embed.SelectedDataIn)[]>> | _luzmo_shared_embed.SelectedDataIn)[]>> | _luzmo_shared_embed.SelectedDataIn)[]>> | _luzmo_shared_embed.SelectedDataIn)[]>> | _luzmo_shared_embed.SelectedDataIn)[]>> | _luzmo_shared_embed.SelectedDataIn)[]>> | _luzmo_shared_embed.SelectedDataIn)[]>> | _luzmo_shared_embed.SelectedDataIn)[]>>>;
dashboardContentsVersion: _angular_core.InputSignal<string | undefined>;
load: _angular_core.OutputEmitterRef<VizItemPostMessageLoadEvent>;
rendered: _angular_core.OutputEmitterRef<VizItemPostMessageRenderedEvent>;
exported: _angular_core.OutputEmitterRef<VizItemPostMessageExportedEvent>;
changedFilters: _angular_core.OutputEmitterRef<VizItemPostMessageChangedFiltersEvent>;
customEvent: _angular_core.OutputEmitterRef<VizItemPostMessageCustomEventEvent>;
libVersion: string;
get canFilterValue(): string;
private luzmoEmbedVizItem;
constructor();
ngAfterViewInit(): void;
getFilters(): FilterGroup[];
export(type?: VizItemExportType): void;
refreshData(): void;
getData(): ItemData$1;
setAuthorization(key: string, token: string): void;
private get luzmoVizElement();
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgxLuzmoVizItemComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgxLuzmoVizItemComponent, "luzmo-viz-item", never, { "appServer": { "alias": "appServer"; "required": false; "isSignal": true; }; "apiHost": { "alias": "apiHost"; "required": false; "isSignal": true; }; "slots": { "alias": "slots"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "authKey": { "alias": "authKey"; "required": false; "isSignal": true; }; "authToken": { "alias": "authToken"; "required": false; "isSignal": true; }; "contextId": { "alias": "contextId"; "required": false; "isSignal": true; }; "canFilter": { "alias": "canFilter"; "required": false; "isSignal": true; }; "filters": { "alias": "filters"; "required": false; "isSignal": true; }; "dashboardId": { "alias": "dashboardId"; "required": false; "isSignal": true; }; "itemId": { "alias": "itemId"; "required": false; "isSignal": true; }; "selectedData": { "alias": "selectedData"; "required": false; "isSignal": true; }; "dashboardContentsVersion": { "alias": "dashboardContentsVersion"; "required": false; "isSignal": true; }; }, { "load": "load"; "rendered": "rendered"; "exported": "exported"; "changedFilters": "changedFilters"; "customEvent": "customEvent"; }, never, never, true, never>;
}
declare class NgxLuzmoIQChatComponent implements AfterViewInit {
private elementRef;
private ngZone;
appServer: _angular_core.InputSignal<string>;
apiHost: _angular_core.InputSignal<string>;
options: _angular_core.InputSignal<IQChatOptions>;
authKey: _angular_core.InputSignal<string | null>;
authToken: _angular_core.InputSignal<string | null>;
initialSuggestionsDatasetId: _angular_core.InputSignal<string | null>;
availableDatasets: _angular_core.InputSignal<string[]>;
aiEndPoint: _angular_core.InputSignal<string | null>;
libVersion: string;
private luzmoIQChatItem;
constructor();
ngAfterViewInit(): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgxLuzmoIQChatComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgxLuzmoIQChatComponent, "luzmo-iq-chat", never, { "appServer": { "alias": "appServer"; "required": false; "isSignal": true; }; "apiHost": { "alias": "apiHost"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "authKey": { "alias": "authKey"; "required": false; "isSignal": true; }; "authToken": { "alias": "authToken"; "required": false; "isSignal": true; }; "initialSuggestionsDatasetId": { "alias": "initialSuggestionsDatasetId"; "required": false; "isSignal": true; }; "availableDatasets": { "alias": "availableDatasets"; "required": false; "isSignal": true; }; "aiEndPoint": { "alias": "aiEndPoint"; "required": false; "isSignal": true; }; }, {}, never, ["[slot='custom-chat-widget-content']"], true, never>;
}
declare class NgxLuzmoIQAnswerComponent implements AfterViewInit {
private elementRef;
private ngZone;
appServer: _angular_core.InputSignal<string>;
apiHost: _angular_core.InputSignal<string>;
options: _angular_core.InputSignal<IQAnswerOptions>;
messages: _angular_core.InputSignal<IQMessage[]>;
authKey: _angular_core.InputSignal<string | null>;
authToken: _angular_core.InputSignal<string | null>;
aiEndPoint: _angular_core.InputSignal<string | null>;
libVersion: string;
private luzmoIQAnswerItem;
constructor();
ngAfterViewInit(): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgxLuzmoIQAnswerComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgxLuzmoIQAnswerComponent, "luzmo-iq-answer", never, { "appServer": { "alias": "appServer"; "required": false; "isSignal": true; }; "apiHost": { "alias": "apiHost"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "messages": { "alias": "messages"; "required": false; "isSignal": true; }; "authKey": { "alias": "authKey"; "required": false; "isSignal": true; }; "authToken": { "alias": "authToken"; "required": false; "isSignal": true; }; "aiEndPoint": { "alias": "aiEndPoint"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
}
declare class NgxLuzmoDashboardModule {
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgxLuzmoDashboardModule, never>;
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<NgxLuzmoDashboardModule, never, [typeof NgxLuzmoDashboardComponent, typeof NgxLuzmoVizItemComponent, typeof NgxLuzmoIQChatComponent, typeof NgxLuzmoIQAnswerComponent], [typeof NgxLuzmoDashboardComponent, typeof NgxLuzmoVizItemComponent, typeof NgxLuzmoIQChatComponent, typeof NgxLuzmoIQAnswerComponent]>;
static ɵinj: _angular_core.ɵɵInjectorDeclaration<NgxLuzmoDashboardModule>;
}
export { NgxLuzmoDashboardComponent, NgxLuzmoDashboardModule, NgxLuzmoDashboardService, NgxLuzmoIQAnswerComponent, NgxLuzmoIQChatComponent, NgxLuzmoVizItemComponent };