UNPKG

@luzmo/ngx-embed

Version:

This is an Angular library for embedding [Luzmo](https://luzmo.com) dashboards in your Angular application.

342 lines (331 loc) 30.3 kB
export * from '@luzmo/embed'; import * as i0 from '@angular/core'; import { Injectable, inject, NgZone, input, output, viewChild, ChangeDetectionStrategy, CUSTOM_ELEMENTS_SCHEMA, Component, ElementRef, NgModule } from '@angular/core'; import { ReplaySubject, from, fromEvent, tap, merge } from 'rxjs'; import { JsonPipe } from '@angular/common'; class NgxLuzmoDashboardService { constructor() { this._dashboardComponents = []; this.activeDashboardsSubject = new ReplaySubject(1); } getDashboards() { return this.activeDashboardsSubject.asObservable(); } _emitActiveDashboardsSource() { this.activeDashboardsSubject.next(this._dashboardComponents); } _setComponentContext(componentContext) { if (!this._dashboardComponents.includes(componentContext)) { this._dashboardComponents.push(componentContext); } } // remove component context from array after unmounting _removeComponentContext(componentContext) { if (this._dashboardComponents.includes(componentContext)) { this._dashboardComponents = this._dashboardComponents.filter((context) => context !== componentContext); } this._emitActiveDashboardsSource(); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoDashboardService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); } static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoDashboardService, providedIn: 'root' }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoDashboardService, decorators: [{ type: Injectable, args: [{ providedIn: 'root' }] }] }); // This file is auto-generated. Do not edit. const VERSION = '8.0.0-ngx-luzmo'; class NgxLuzmoDashboardComponent { get dashboardElement() { return this.dashboardElementRef().nativeElement; } constructor() { this.ngxLuzmoDashboardService = inject(NgxLuzmoDashboardService); this.ngZone = inject(NgZone); this.appServer = input('https://app.luzmo.com'); this.apiHost = input('https://api.luzmo.com'); this.authKey = input(); this.authToken = input(); this.dashboardId = input(); this.itemId = input(); this.dashboardSlug = input(); this.editMode = input('view'); this.screenMode = input('auto'); this.switchScreenModeOnResize = input(true); this.language = input('auto'); this.editorLanguage = input('auto'); this.qeVersion = input(2); this.timezoneId = input(); this.theme = input(); this.mainColor = input(); this.accentColor = input(); this.loaderBackground = input(); this.loaderFontColor = input(); this.loaderSpinnerColor = input(); this.loaderSpinnerBackground = input(); this.itemDimensions = input(); this.embedMode = input('iframe'); this.load = output(); this.itemsRendered = output(); this.customEvent = output(); this.changedFilters = output(); this.dashboardAction = output(); this.exported = output(); this.libVersion = VERSION; this.dashboardElementRef = viewChild.required('dashboardElement'); this.eventListenersSubscription = null; // To prevent having an error "Error: NG0909, at K.assertNotInAngularZone": if (!globalThis.luzmoNgZone) { globalThis.luzmoNgZone = this.ngZone; } } ngAfterViewInit() { this.ngxLuzmoDashboardService._setComponentContext(this); this.initListeners(); } ngOnDestroy() { this.ngxLuzmoDashboardService._removeComponentContext(this); this.eventListenersSubscription?.unsubscribe(); } // region Public API getDashboards() { return from(this.dashboardElement.getDashboards()); } getData(itemId) { return from(this.dashboardElement.getData(itemId)); } getFilters() { return from(this.dashboardElement.getFilters()); } setAuthorization(key, token) { return from(this.dashboardElement.setAuthorization(key, token)); } refreshData(itemId) { return from(this.dashboardElement.refreshData(itemId)); } reloadDashboard() { return from(this.dashboardElement.reloadDashboard()); } exportDashboard(format) { return from(this.dashboardElement.exportDashboard(format)); } getAccessibleDashboards() { return from(this.dashboardElement.getAccessibleDashboards()); } setEditMode(editMode) { return from(this.dashboardElement.setEditMode(editMode)); } setSelectedData(itemId, filters) { return from(this.dashboardElement.setSelectedData(itemId, filters)); } addFilters(itemId, filters) { return from(this.dashboardElement.addFilters(itemId, filters)); } setPreview(preview) { return from(this.dashboardElement.setPreview(preview)); } // endregion Public API initListeners() { const load$ = fromEvent(this.dashboardElement, 'load') .pipe(tap((payload) => { this.ngxLuzmoDashboardService._emitActiveDashboardsSource(); this.load.emit(payload.detail); })); const itemsRendered$ = fromEvent(this.dashboardElement, 'itemsRendered') .pipe(tap((payload) => this.itemsRendered.emit(payload.detail))); const customEvent$ = fromEvent(this.dashboardElement, 'customEvent') .pipe(tap((payload) => this.customEvent.emit(payload.detail))); const changedFilters$ = fromEvent(this.dashboardElement, 'changedFilters') .pipe(tap((payload) => this.changedFilters.emit(payload.detail))); const dashboardAction$ = fromEvent(this.dashboardElement, 'dashboardAction') .pipe(tap((payload) => this.dashboardAction.emit(payload.detail))); const export$ = fromEvent(this.dashboardElement, 'export') .pipe(tap((payload) => this.exported.emit(payload.detail))); this.eventListenersSubscription = merge(load$, itemsRendered$, customEvent$, changedFilters$, dashboardAction$, export$) .subscribe(); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoDashboardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.0.6", type: NgxLuzmoDashboardComponent, isStandalone: true, selector: "luzmo-dashboard", inputs: { appServer: { classPropertyName: "appServer", publicName: "appServer", isSignal: true, isRequired: false, transformFunction: null }, apiHost: { classPropertyName: "apiHost", publicName: "apiHost", isSignal: true, isRequired: false, transformFunction: null }, authKey: { classPropertyName: "authKey", publicName: "authKey", isSignal: true, isRequired: false, transformFunction: null }, authToken: { classPropertyName: "authToken", publicName: "authToken", isSignal: true, isRequired: false, transformFunction: null }, dashboardId: { classPropertyName: "dashboardId", publicName: "dashboardId", isSignal: true, isRequired: false, transformFunction: null }, itemId: { classPropertyName: "itemId", publicName: "itemId", isSignal: true, isRequired: false, transformFunction: null }, dashboardSlug: { classPropertyName: "dashboardSlug", publicName: "dashboardSlug", isSignal: true, isRequired: false, transformFunction: null }, editMode: { classPropertyName: "editMode", publicName: "editMode", isSignal: true, isRequired: false, transformFunction: null }, screenMode: { classPropertyName: "screenMode", publicName: "screenMode", isSignal: true, isRequired: false, transformFunction: null }, switchScreenModeOnResize: { classPropertyName: "switchScreenModeOnResize", publicName: "switchScreenModeOnResize", isSignal: true, isRequired: false, transformFunction: null }, language: { classPropertyName: "language", publicName: "language", isSignal: true, isRequired: false, transformFunction: null }, editorLanguage: { classPropertyName: "editorLanguage", publicName: "editorLanguage", isSignal: true, isRequired: false, transformFunction: null }, qeVersion: { classPropertyName: "qeVersion", publicName: "qeVersion", isSignal: true, isRequired: false, transformFunction: null }, timezoneId: { classPropertyName: "timezoneId", publicName: "timezoneId", isSignal: true, isRequired: false, transformFunction: null }, theme: { classPropertyName: "theme", publicName: "theme", isSignal: true, isRequired: false, transformFunction: null }, mainColor: { classPropertyName: "mainColor", publicName: "mainColor", isSignal: true, isRequired: false, transformFunction: null }, accentColor: { classPropertyName: "accentColor", publicName: "accentColor", isSignal: true, isRequired: false, transformFunction: null }, loaderBackground: { classPropertyName: "loaderBackground", publicName: "loaderBackground", isSignal: true, isRequired: false, transformFunction: null }, loaderFontColor: { classPropertyName: "loaderFontColor", publicName: "loaderFontColor", isSignal: true, isRequired: false, transformFunction: null }, loaderSpinnerColor: { classPropertyName: "loaderSpinnerColor", publicName: "loaderSpinnerColor", isSignal: true, isRequired: false, transformFunction: null }, loaderSpinnerBackground: { classPropertyName: "loaderSpinnerBackground", publicName: "loaderSpinnerBackground", isSignal: true, isRequired: false, transformFunction: null }, itemDimensions: { classPropertyName: "itemDimensions", publicName: "itemDimensions", isSignal: true, isRequired: false, transformFunction: null }, embedMode: { classPropertyName: "embedMode", publicName: "embedMode", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { load: "load", itemsRendered: "itemsRendered", customEvent: "customEvent", changedFilters: "changedFilters", dashboardAction: "dashboardAction", exported: "exported" }, viewQueries: [{ propertyName: "dashboardElementRef", first: true, predicate: ["dashboardElement"], descendants: true, isSignal: true }], ngImport: i0, template: "<luzmo-embed-dashboard\n #dashboardElement\n [attr.appServer]=\"appServer()\"\n [attr.apiHost]=\"apiHost()\"\n [attr.authToken]=\"authToken()\"\n [attr.authKey]=\"authKey()\"\n [attr.dashboardId]=\"dashboardId()\"\n [attr.itemId]=\"itemId()\"\n [attr.dashboardSlug]=\"dashboardSlug()\"\n [attr.editMode]=\"editMode()\"\n [attr.screenMode]=\"screenMode()\"\n [attr.switchScreenModeOnResize]=\"switchScreenModeOnResize()\"\n [attr.language]=\"language()\"\n [attr.editorLanguage]=\"editorLanguage()\"\n [attr.qeVersion]=\"qeVersion()\"\n [attr.timezoneId]=\"timezoneId()\"\n [attr.theme]=\"theme()\"\n [attr.mainColor]=\"mainColor()\"\n [attr.itemDimensions]=\"itemDimensions() | json\"\n [attr.accentColor]=\"accentColor()\"\n [attr.loaderBackground]=\"loaderBackground()\"\n [attr.loaderFontColor]=\"loaderFontColor()\"\n [attr.loaderSpinnerColor]=\"loaderSpinnerColor()\"\n [attr.loaderSpinnerBackground]=\"loaderSpinnerBackground()\"\n [attr.embedMode]=\"embedMode()\"\n [attr.libVersion]=\"libVersion\">\n</luzmo-embed-dashboard>\n", styles: [":host{display:block;position:relative;width:100%;height:100%}\n"], dependencies: [{ kind: "pipe", type: JsonPipe, name: "json" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoDashboardComponent, decorators: [{ type: Component, args: [{ schemas: [CUSTOM_ELEMENTS_SCHEMA], selector: 'luzmo-dashboard', changeDetection: ChangeDetectionStrategy.OnPush, imports: [ JsonPipe ], template: "<luzmo-embed-dashboard\n #dashboardElement\n [attr.appServer]=\"appServer()\"\n [attr.apiHost]=\"apiHost()\"\n [attr.authToken]=\"authToken()\"\n [attr.authKey]=\"authKey()\"\n [attr.dashboardId]=\"dashboardId()\"\n [attr.itemId]=\"itemId()\"\n [attr.dashboardSlug]=\"dashboardSlug()\"\n [attr.editMode]=\"editMode()\"\n [attr.screenMode]=\"screenMode()\"\n [attr.switchScreenModeOnResize]=\"switchScreenModeOnResize()\"\n [attr.language]=\"language()\"\n [attr.editorLanguage]=\"editorLanguage()\"\n [attr.qeVersion]=\"qeVersion()\"\n [attr.timezoneId]=\"timezoneId()\"\n [attr.theme]=\"theme()\"\n [attr.mainColor]=\"mainColor()\"\n [attr.itemDimensions]=\"itemDimensions() | json\"\n [attr.accentColor]=\"accentColor()\"\n [attr.loaderBackground]=\"loaderBackground()\"\n [attr.loaderFontColor]=\"loaderFontColor()\"\n [attr.loaderSpinnerColor]=\"loaderSpinnerColor()\"\n [attr.loaderSpinnerBackground]=\"loaderSpinnerBackground()\"\n [attr.embedMode]=\"embedMode()\"\n [attr.libVersion]=\"libVersion\">\n</luzmo-embed-dashboard>\n", styles: [":host{display:block;position:relative;width:100%;height:100%}\n"] }] }], ctorParameters: () => [] }); class NgxLuzmoIQAnswerComponent { constructor() { this.elementRef = inject(ElementRef); this.ngZone = inject(NgZone); this.appServer = input('https://app.luzmo.com'); this.apiHost = input('https://api.luzmo.com'); this.options = input({}); this.messages = input([]); this.authKey = input(null); this.authToken = input(null); // TODO: olegpetriienko | 07/11/2025 | This input doesn't seem to be used anywhere. Should be checked if it's ok to clean this up this.aiEndPoint = input(null); this.libVersion = VERSION; this.luzmoIQAnswerItem = viewChild('luzmoIQAnswerItem'); if (!globalThis.aydNgZone) { globalThis.aydNgZone = this.ngZone; } } ngAfterViewInit() { if (this.luzmoIQAnswerItem()) { this.luzmoIQAnswerItem()?.nativeElement.setAttribute('style', this.elementRef.nativeElement.style.cssText); } } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoIQAnswerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.0.6", type: NgxLuzmoIQAnswerComponent, isStandalone: true, selector: "luzmo-iq-answer", inputs: { appServer: { classPropertyName: "appServer", publicName: "appServer", isSignal: true, isRequired: false, transformFunction: null }, apiHost: { classPropertyName: "apiHost", publicName: "apiHost", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, messages: { classPropertyName: "messages", publicName: "messages", isSignal: true, isRequired: false, transformFunction: null }, authKey: { classPropertyName: "authKey", publicName: "authKey", isSignal: true, isRequired: false, transformFunction: null }, authToken: { classPropertyName: "authToken", publicName: "authToken", isSignal: true, isRequired: false, transformFunction: null }, aiEndPoint: { classPropertyName: "aiEndPoint", publicName: "aiEndPoint", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "luzmoIQAnswerItem", first: true, predicate: ["luzmoIQAnswerItem"], descendants: true, isSignal: true }], ngImport: i0, template: "<luzmo-iq-embed-answer\n #luzmoIQAnswerItem\n [attr.appServer]=\"appServer()\"\n [attr.apiHost]=\"apiHost()\"\n [attr.authToken]=\"authToken()\"\n [attr.authKey]=\"authKey()\"\n [attr.options]=\"options() | json\"\n [attr.libVersion]=\"libVersion\"\n [attr.messages]=\"messages() | json\"\n [attr.aiEndPoint]=\"aiEndPoint()\">\n</luzmo-iq-embed-answer>\n", styles: [":host{display:block;width:100%;height:100%}\n"], dependencies: [{ kind: "pipe", type: JsonPipe, name: "json" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoIQAnswerComponent, decorators: [{ type: Component, args: [{ selector: 'luzmo-iq-answer', schemas: [CUSTOM_ELEMENTS_SCHEMA], imports: [ JsonPipe ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<luzmo-iq-embed-answer\n #luzmoIQAnswerItem\n [attr.appServer]=\"appServer()\"\n [attr.apiHost]=\"apiHost()\"\n [attr.authToken]=\"authToken()\"\n [attr.authKey]=\"authKey()\"\n [attr.options]=\"options() | json\"\n [attr.libVersion]=\"libVersion\"\n [attr.messages]=\"messages() | json\"\n [attr.aiEndPoint]=\"aiEndPoint()\">\n</luzmo-iq-embed-answer>\n", styles: [":host{display:block;width:100%;height:100%}\n"] }] }], ctorParameters: () => [] }); class NgxLuzmoIQChatComponent { constructor() { this.elementRef = inject(ElementRef); this.ngZone = inject(NgZone); this.appServer = input('https://app.luzmo.com'); this.apiHost = input('https://api.luzmo.com'); this.options = input({}); this.authKey = input(null); this.authToken = input(null); this.initialSuggestionsDatasetId = input(null); this.availableDatasets = input([]); // TODO: olegpetriienko | 07/11/2025 | This input doesn't seem to be used anywhere. Should be checked if it's ok to clean this up this.aiEndPoint = input(null); this.libVersion = VERSION; this.luzmoIQChatItem = viewChild.required('luzmoIQChatItem'); if (!globalThis.aydNgZone) { globalThis.aydNgZone = this.ngZone; } } ngAfterViewInit() { if (this.luzmoIQChatItem()) { this.luzmoIQChatItem().nativeElement.setAttribute('style', this.elementRef.nativeElement.style.cssText); } } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoIQChatComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.0.6", type: NgxLuzmoIQChatComponent, isStandalone: true, selector: "luzmo-iq-chat", inputs: { appServer: { classPropertyName: "appServer", publicName: "appServer", isSignal: true, isRequired: false, transformFunction: null }, apiHost: { classPropertyName: "apiHost", publicName: "apiHost", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, authKey: { classPropertyName: "authKey", publicName: "authKey", isSignal: true, isRequired: false, transformFunction: null }, authToken: { classPropertyName: "authToken", publicName: "authToken", isSignal: true, isRequired: false, transformFunction: null }, initialSuggestionsDatasetId: { classPropertyName: "initialSuggestionsDatasetId", publicName: "initialSuggestionsDatasetId", isSignal: true, isRequired: false, transformFunction: null }, availableDatasets: { classPropertyName: "availableDatasets", publicName: "availableDatasets", isSignal: true, isRequired: false, transformFunction: null }, aiEndPoint: { classPropertyName: "aiEndPoint", publicName: "aiEndPoint", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "luzmoIQChatItem", first: true, predicate: ["luzmoIQChatItem"], descendants: true, isSignal: true }], ngImport: i0, template: "<luzmo-iq-embed-chat\n #luzmoIQChatItem\n [attr.appServer]=\"appServer()\"\n [attr.apiHost]=\"apiHost()\"\n [attr.authToken]=\"authToken()\"\n [attr.authKey]=\"authKey()\"\n [attr.options]=\"options() | json\"\n [attr.libVersion]=\"libVersion\"\n [attr.initialSuggestionsDatasetId]=\"initialSuggestionsDatasetId() | json\"\n [attr.aiEndPoint]=\"aiEndPoint()\"\n [attr.availableDatasets]=\"availableDatasets() | json\">\n <ng-content select=\"[slot='custom-chat-widget-content']\"></ng-content>\n</luzmo-iq-embed-chat>\n", styles: [":host{display:block;width:100%;height:100%}\n"], dependencies: [{ kind: "pipe", type: JsonPipe, name: "json" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoIQChatComponent, decorators: [{ type: Component, args: [{ selector: 'luzmo-iq-chat', schemas: [CUSTOM_ELEMENTS_SCHEMA], imports: [ JsonPipe ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<luzmo-iq-embed-chat\n #luzmoIQChatItem\n [attr.appServer]=\"appServer()\"\n [attr.apiHost]=\"apiHost()\"\n [attr.authToken]=\"authToken()\"\n [attr.authKey]=\"authKey()\"\n [attr.options]=\"options() | json\"\n [attr.libVersion]=\"libVersion\"\n [attr.initialSuggestionsDatasetId]=\"initialSuggestionsDatasetId() | json\"\n [attr.aiEndPoint]=\"aiEndPoint()\"\n [attr.availableDatasets]=\"availableDatasets() | json\">\n <ng-content select=\"[slot='custom-chat-widget-content']\"></ng-content>\n</luzmo-iq-embed-chat>\n", styles: [":host{display:block;width:100%;height:100%}\n"] }] }], ctorParameters: () => [] }); class NgxLuzmoVizItemComponent { get canFilterValue() { if (typeof this.canFilter() === 'object') { return JSON.stringify(this.canFilter()); } return this.canFilter(); } constructor() { this.elementRef = inject(ElementRef); this.ngZone = inject(NgZone); this.appServer = input('https://app.luzmo.com'); this.apiHost = input('https://api.luzmo.com'); this.slots = input([]); this.options = input({}); this.type = input(); this.authKey = input(null); this.authToken = input(null); this.contextId = input(null); this.canFilter = input('all'); this.filters = input([]); this.dashboardId = input(null); this.itemId = input(null); this.selectedData = input({}); this.dashboardContentsVersion = input(); this.load = output(); this.rendered = output(); this.exported = output(); this.changedFilters = output(); this.customEvent = output(); this.libVersion = VERSION; this.luzmoEmbedVizItem = viewChild.required('luzmoEmbedVizItem'); if (!globalThis.luzmoNgZone) { globalThis.luzmoNgZone = this.ngZone; } } ngAfterViewInit() { this.luzmoVizElement.setAttribute('style', this.elementRef.nativeElement.style.cssText); this.luzmoVizElement.addEventListener('load', (payload) => this.load.emit(payload.detail)); this.luzmoVizElement.addEventListener('rendered', (payload) => this.rendered.emit(payload.detail)); this.luzmoVizElement.addEventListener('exported', (payload) => this.exported.emit(payload.detail)); this.luzmoVizElement.addEventListener('changedFilters', (payload) => this.changedFilters.emit(payload.detail)); this.luzmoVizElement.addEventListener('customEvent', (payload) => this.customEvent.emit(payload.detail)); } // region Publich API getFilters() { return this.luzmoVizElement.getFilters(); } export(type = 'png') { return this.luzmoVizElement.export(type); } refreshData() { return this.luzmoVizElement.refreshData(); } getData() { return this.luzmoVizElement.getData(); } setAuthorization(key, token) { return this.luzmoVizElement.setAuthorization(key, token); } // endregion Publich API get luzmoVizElement() { return this.luzmoEmbedVizItem().nativeElement; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoVizItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.0.6", type: NgxLuzmoVizItemComponent, isStandalone: true, selector: "luzmo-viz-item", inputs: { appServer: { classPropertyName: "appServer", publicName: "appServer", isSignal: true, isRequired: false, transformFunction: null }, apiHost: { classPropertyName: "apiHost", publicName: "apiHost", isSignal: true, isRequired: false, transformFunction: null }, slots: { classPropertyName: "slots", publicName: "slots", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, authKey: { classPropertyName: "authKey", publicName: "authKey", isSignal: true, isRequired: false, transformFunction: null }, authToken: { classPropertyName: "authToken", publicName: "authToken", isSignal: true, isRequired: false, transformFunction: null }, contextId: { classPropertyName: "contextId", publicName: "contextId", isSignal: true, isRequired: false, transformFunction: null }, canFilter: { classPropertyName: "canFilter", publicName: "canFilter", isSignal: true, isRequired: false, transformFunction: null }, filters: { classPropertyName: "filters", publicName: "filters", isSignal: true, isRequired: false, transformFunction: null }, dashboardId: { classPropertyName: "dashboardId", publicName: "dashboardId", isSignal: true, isRequired: false, transformFunction: null }, itemId: { classPropertyName: "itemId", publicName: "itemId", isSignal: true, isRequired: false, transformFunction: null }, selectedData: { classPropertyName: "selectedData", publicName: "selectedData", isSignal: true, isRequired: false, transformFunction: null }, dashboardContentsVersion: { classPropertyName: "dashboardContentsVersion", publicName: "dashboardContentsVersion", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { load: "load", rendered: "rendered", exported: "exported", changedFilters: "changedFilters", customEvent: "customEvent" }, viewQueries: [{ propertyName: "luzmoEmbedVizItem", first: true, predicate: ["luzmoEmbedVizItem"], descendants: true, isSignal: true }], ngImport: i0, template: "<luzmo-embed-viz-item\n #luzmoEmbedVizItem\n [attr.appServer]=\"appServer()\"\n [attr.apiHost]=\"apiHost()\"\n [attr.authToken]=\"authToken()\"\n [attr.authKey]=\"authKey()\"\n [attr.slots]=\"slots() | json\"\n [attr.options]=\"options() | json\"\n [attr.type]=\"type()\"\n [attr.canFilter]=\"canFilterValue\"\n [attr.contextId]=\"contextId()\"\n [attr.filters]=\"filters() | json\"\n [attr.itemId]=\"itemId()\"\n [attr.dashboardId]=\"dashboardId()\"\n [attr.libVersion]=\"libVersion\"\n [attr.selectedData]=\"selectedData() | json\"\n [attr.dashboardContentsVersion]=\"dashboardContentsVersion()\">\n</luzmo-embed-viz-item>\n", styles: [":host{display:block;width:100%;height:100%}\n"], dependencies: [{ kind: "pipe", type: JsonPipe, name: "json" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoVizItemComponent, decorators: [{ type: Component, args: [{ selector: 'luzmo-viz-item', schemas: [CUSTOM_ELEMENTS_SCHEMA], imports: [ JsonPipe ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<luzmo-embed-viz-item\n #luzmoEmbedVizItem\n [attr.appServer]=\"appServer()\"\n [attr.apiHost]=\"apiHost()\"\n [attr.authToken]=\"authToken()\"\n [attr.authKey]=\"authKey()\"\n [attr.slots]=\"slots() | json\"\n [attr.options]=\"options() | json\"\n [attr.type]=\"type()\"\n [attr.canFilter]=\"canFilterValue\"\n [attr.contextId]=\"contextId()\"\n [attr.filters]=\"filters() | json\"\n [attr.itemId]=\"itemId()\"\n [attr.dashboardId]=\"dashboardId()\"\n [attr.libVersion]=\"libVersion\"\n [attr.selectedData]=\"selectedData() | json\"\n [attr.dashboardContentsVersion]=\"dashboardContentsVersion()\">\n</luzmo-embed-viz-item>\n", styles: [":host{display:block;width:100%;height:100%}\n"] }] }], ctorParameters: () => [] }); class NgxLuzmoDashboardModule { static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoDashboardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); } static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoDashboardModule, imports: [NgxLuzmoDashboardComponent, NgxLuzmoVizItemComponent, NgxLuzmoIQChatComponent, NgxLuzmoIQAnswerComponent], exports: [NgxLuzmoDashboardComponent, NgxLuzmoVizItemComponent, NgxLuzmoIQChatComponent, NgxLuzmoIQAnswerComponent] }); } static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoDashboardModule }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: NgxLuzmoDashboardModule, decorators: [{ type: NgModule, args: [{ schemas: [CUSTOM_ELEMENTS_SCHEMA], imports: [ NgxLuzmoDashboardComponent, NgxLuzmoVizItemComponent, NgxLuzmoIQChatComponent, NgxLuzmoIQAnswerComponent ], exports: [ NgxLuzmoDashboardComponent, NgxLuzmoVizItemComponent, NgxLuzmoIQChatComponent, NgxLuzmoIQAnswerComponent ] }] }] }); /* * Public API Surface of ngx-luzmo */ /** * Generated bundle index. Do not edit. */ export { NgxLuzmoDashboardComponent, NgxLuzmoDashboardModule, NgxLuzmoDashboardService, NgxLuzmoIQAnswerComponent, NgxLuzmoIQChatComponent, NgxLuzmoVizItemComponent }; //# sourceMappingURL=luzmo-ngx-embed.mjs.map