@luzmo/embed
Version:
A modern [Web Component](https://developer.mozilla.org/en-US/docs/Web/Web_Components) for [Luzmo](https://luzmo.com) dashboards in your web application.
98 lines (97 loc) • 4.62 kB
TypeScript
import type { FilterGroup } from '@luzmo/dashboard-contents-types';
import * as SharedLib from '@luzmo/shared-embed';
import { CombinedSelectedDataInput, DashboardInputs, LuzmoElement, PartialRecord, SupportedLanguage } from '@luzmo/shared-embed';
import { LitElement, PropertyValues, TemplateResult } from 'lit';
export declare class LuzmoDashboard extends LitElement implements SharedLib.WebComponentLuzmoDashboard {
container: HTMLElement;
luzmoEmbedContainer: HTMLElement;
iframe: HTMLIFrameElement;
dashboardId?: SharedLib.DashboardInputs['dashboardId'];
dashboardSlug?: SharedLib.DashboardInputs['dashboardSlug'];
itemId?: SharedLib.DashboardInputs['itemId'];
language: SharedLib.DashboardInputs['language'];
editorLanguage: SharedLib.DashboardInputs['editorLanguage'];
qeVersion: SharedLib.DashboardInputs['qeVersion'];
screenMode: SharedLib.DashboardInputs['screenMode'];
switchScreenModeOnResize: boolean;
editMode: SharedLib.DashboardInputs['editMode'];
theme?: SharedLib.DashboardInputs['theme'];
mainColor?: SharedLib.DashboardInputs['mainColor'];
accentColor?: SharedLib.DashboardInputs['accentColor'];
authToken?: SharedLib.DashboardInputs['authToken'];
authKey?: SharedLib.DashboardInputs['authKey'];
loaderBackground?: SharedLib.DashboardInputs['loaderBackground'];
loaderFontColor?: SharedLib.DashboardInputs['loaderFontColor'];
loaderSpinnerColor?: SharedLib.DashboardInputs['loaderSpinnerColor'];
loaderSpinnerBackground?: SharedLib.DashboardInputs['loaderSpinnerBackground'];
appServer?: SharedLib.DashboardInputs['appServer'];
timezoneId?: SharedLib.DashboardInputs['timezoneId'];
apiHost?: SharedLib.DashboardInputs['apiHost'];
itemDimensions: SharedLib.DashboardInputs['itemDimensions'];
embedMode: DashboardInputs['embedMode'];
_containerId: string;
_iframeId: string;
params: SharedLib.DashboardContentParams;
_iframeUrl?: string;
iframeLoaded: boolean;
promises: SharedLib.DashboardPromises;
iframeStyle: SharedLib.IframeStyles;
_containerStyle: SharedLib.ContainerStyles;
_loaderStyle: SharedLib.LoaderStyles;
_lcStyle: SharedLib.LcStyles;
_loadingCircleStyle: SharedLib.PlStyles;
_containerLoaderStyle: SharedLib.ContainerLoaderStyles;
_loaderMsg: string;
containerWidth?: number;
dimensions?: SharedLib.DashboardDimensions;
currentScreenMode?: SharedLib.ScreenMode;
_itemEmbedding: boolean;
browserError: boolean;
browserErrorMsg: string;
dashboardError: boolean;
browserNotSupported: any[];
libVersion: string;
protected isLibraryLoaded: boolean;
protected dashboardReference: LuzmoElement;
currentAuthKey: string;
currentAuthToken: string;
isInitCalled: boolean;
private attributesMap;
_loadTimeoutHandle?: number;
_onResize: () => void;
loaderSize: number;
borderWidth: number;
minHeight: number;
iframeHeight?: string;
iframeWidth?: string;
_resizeObserver: ResizeObserver;
constructor();
connectedCallback(): void;
disconnectedCallback(): void;
firstUpdated(): void;
initComponent(): void;
setAllAttributes(): void;
updated(changedProperties: PropertyValues): void;
_setOptions(): SharedLib.DashboardContentParams;
_updateIframeUrl(): void;
_setupLoader(): void;
_displayError(): void;
_calculateDimAfterDashboardLoaded(): void;
_loaderStyles(): void;
static get styles(): import("lit").CSSResult[];
render(): TemplateResult;
getDashboards(): Promise<LuzmoDashboard[]>;
getData(itemId: string): Promise<SharedLib.ItemData>;
getFilters(): Promise<FilterGroup[]>;
setSelectedData<K extends CombinedSelectedDataInput>(itemId: string, filters: K): Promise<SharedLib.SetSelectedData>;
setAuthorization(key: string, token: string): Promise<void>;
refreshData(itemId?: string): Promise<void>;
reloadDashboard(): Promise<void>;
exportDashboard(format?: SharedLib.DashboardExportType): Promise<SharedLib.ExportDashboard>;
getAccessibleDashboards(): Promise<SharedLib.AccessibleDashboard[]>;
addFilters(itemId: string, filters: FilterGroup[]): Promise<SharedLib.AddFilters>;
setEditMode(editMode?: SharedLib.DashboardEditMode): Promise<SharedLib.SetEditMode>;
setPreview(preview: boolean): Promise<SharedLib.SetPreview>;
sendExportEmail(type?: SharedLib.SendExportEmailType, subject?: PartialRecord<SupportedLanguage, string>, message?: PartialRecord<SupportedLanguage, string>): Promise<void>;
isWebComponentViewMode(): boolean;
}