@sisense/sdk-ui-angular 1.18.1 → 1.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm2020/lib/component-wrapper-helpers/context-connectors.mjs +20 -2
- package/dist/esm2020/lib/components/dashboard/dashboard-by-id.component.mjs +15 -5
- package/dist/esm2020/lib/services/index.mjs +2 -1
- package/dist/esm2020/lib/services/plugins.service.mjs +55 -0
- package/dist/esm2020/version.mjs +2 -2
- package/dist/fesm2015/sisense-sdk-ui-angular.mjs +85 -6
- package/dist/fesm2015/sisense-sdk-ui-angular.mjs.map +1 -1
- package/dist/fesm2020/sisense-sdk-ui-angular.mjs +85 -6
- package/dist/fesm2020/sisense-sdk-ui-angular.mjs.map +1 -1
- package/dist/lib/component-wrapper-helpers/context-connectors.d.ts +9 -1
- package/dist/lib/components/dashboard/dashboard-by-id.component.d.ts +16 -1
- package/dist/lib/services/index.d.ts +1 -0
- package/dist/lib/services/plugins.service.d.ts +37 -0
- package/dist/lib/services/theme.service.d.ts +2 -151
- package/dist/package.json +1 -1
- package/dist/version.d.ts +1 -1
- package/package.json +4 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createContextProviderRenderer, CustomSisenseContextProvider, CustomThemeProvider, } from '@sisense/sdk-ui-preact';
|
|
1
|
+
import { createContextProviderRenderer, CustomSisenseContextProvider, CustomThemeProvider, CustomPluginsProvider, } from '@sisense/sdk-ui-preact';
|
|
2
2
|
import { map } from 'rxjs';
|
|
3
3
|
/**
|
|
4
4
|
* Creates theme context connector
|
|
@@ -45,4 +45,22 @@ export const createSisenseContextConnector = (sisenseContextService) => {
|
|
|
45
45
|
renderContextProvider: createContextProviderRenderer(CustomSisenseContextProvider),
|
|
46
46
|
};
|
|
47
47
|
};
|
|
48
|
-
|
|
48
|
+
/**
|
|
49
|
+
* Creates plugins context connector
|
|
50
|
+
*
|
|
51
|
+
* @param pluginsService - The plugin service
|
|
52
|
+
* @internal
|
|
53
|
+
*/
|
|
54
|
+
export const createPluginsContextConnector = (pluginsService) => {
|
|
55
|
+
return {
|
|
56
|
+
prepareContext() {
|
|
57
|
+
return {
|
|
58
|
+
pluginMap: pluginsService.getPlugins().value,
|
|
59
|
+
registerPlugin: pluginsService.registerPlugin.bind(pluginsService),
|
|
60
|
+
getPlugin: pluginsService.getPlugin.bind(pluginsService),
|
|
61
|
+
};
|
|
62
|
+
},
|
|
63
|
+
renderContextProvider: createContextProviderRenderer(CustomPluginsProvider),
|
|
64
|
+
};
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1jb25uZWN0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnQtd3JhcHBlci1oZWxwZXJzL2NvbnRleHQtY29ubmVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsNkJBQTZCLEVBRTdCLDRCQUE0QixFQUM1QixtQkFBbUIsRUFFbkIscUJBQXFCLEdBRXRCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUszQjs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLENBQ3pDLFlBQTBCLEVBQzZCLEVBQUU7SUFDekQsT0FBTztRQUNMLGNBQWM7WUFDWixPQUFPLFlBQVksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLElBQUksQ0FDekMsR0FBRyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUN0QixhQUFhO2dCQUNiLFlBQVksRUFBRSxJQUFJO2FBQ25CLENBQUMsQ0FBQyxDQUNKLENBQUM7UUFDSixDQUFDO1FBQ0QscUJBQXFCLEVBQUUsNkJBQTZCLENBQUMsbUJBQW1CLENBQUM7S0FDMUUsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGOzs7OztHQUtHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsQ0FDM0MscUJBQTRDLEVBQ0osRUFBRTtJQUMxQyxPQUFPO1FBQ0wsS0FBSyxDQUFDLGNBQWM7WUFDbEIsTUFBTSxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsR0FBRyxxQkFBcUIsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUMzRixNQUFNLEdBQUcsR0FBRyxNQUFNLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2pELE9BQU87Z0JBQ0wsR0FBRztnQkFDSCxhQUFhLEVBQUUsSUFBSTtnQkFDbkIsaUJBQWlCO2dCQUNqQixRQUFRLEVBQUU7b0JBQ1IsK0VBQStFO29CQUMvRSxrQ0FBa0M7b0JBQ2xDLE9BQU8sRUFDTCxTQUFTLEVBQUUsY0FBYyxFQUFFLE9BQU8sS0FBSyxTQUFTO3dCQUM5QyxDQUFDLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxPQUFPO3dCQUNsQyxDQUFDLENBQUMsY0FBYyxJQUFJLElBQUk7b0JBQzVCLFdBQVcsRUFBRSxnQkFBZ0I7aUJBQzlCO2FBQ3NCLENBQUM7UUFDNUIsQ0FBQztRQUNELHFCQUFxQixFQUFFLDZCQUE2QixDQUFDLDRCQUE0QixDQUFDO0tBQ25GLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRjs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLENBQzNDLGNBQThCLEVBQzJCLEVBQUU7SUFDM0QsT0FBTztRQUNMLGNBQWM7WUFDWixPQUFPO2dCQUNMLFNBQVMsRUFBRSxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSztnQkFDNUMsY0FBYyxFQUFFLGNBQWMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQztnQkFDbEUsU0FBUyxFQUFFLGNBQWMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQzthQUN6RCxDQUFDO1FBQ0osQ0FBQztRQUNELHFCQUFxQixFQUFFLDZCQUE2QixDQUFDLHFCQUFxQixDQUFDO0tBQzVFLENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb250ZXh0Q29ubmVjdG9yLFxuICBjcmVhdGVDb250ZXh0UHJvdmlkZXJSZW5kZXJlcixcbiAgQ3VzdG9tU2lzZW5zZUNvbnRleHQsXG4gIEN1c3RvbVNpc2Vuc2VDb250ZXh0UHJvdmlkZXIsXG4gIEN1c3RvbVRoZW1lUHJvdmlkZXIsXG4gIEN1c3RvbVRoZW1lUHJvdmlkZXJQcm9wcyxcbiAgQ3VzdG9tUGx1Z2luc1Byb3ZpZGVyLFxuICBDdXN0b21QbHVnaW5zUHJvdmlkZXJQcm9wcyxcbn0gZnJvbSAnQHNpc2Vuc2Uvc2RrLXVpLXByZWFjdCc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNpc2Vuc2VDb250ZXh0U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3Npc2Vuc2UtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IFRoZW1lU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3RoZW1lLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGx1Z2luc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9wbHVnaW5zLnNlcnZpY2UnO1xuXG4vKipcbiAqIENyZWF0ZXMgdGhlbWUgY29udGV4dCBjb25uZWN0b3JcbiAqXG4gKiBAcGFyYW0gdGhlbWVTZXJ2aWNlIC0gVGhlIHRoZW1lIHNlcnZpY2VcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY29uc3QgY3JlYXRlVGhlbWVDb250ZXh0Q29ubmVjdG9yID0gKFxuICB0aGVtZVNlcnZpY2U6IFRoZW1lU2VydmljZSxcbik6IENvbnRleHRDb25uZWN0b3I8Q3VzdG9tVGhlbWVQcm92aWRlclByb3BzWydjb250ZXh0J10+ID0+IHtcbiAgcmV0dXJuIHtcbiAgICBwcmVwYXJlQ29udGV4dCgpIHtcbiAgICAgIHJldHVybiB0aGVtZVNlcnZpY2UuZ2V0VGhlbWVTZXR0aW5ncygpLnBpcGUoXG4gICAgICAgIG1hcCgodGhlbWVTZXR0aW5ncykgPT4gKHtcbiAgICAgICAgICB0aGVtZVNldHRpbmdzLFxuICAgICAgICAgIHNraXBUcmFja2luZzogdHJ1ZSxcbiAgICAgICAgfSkpLFxuICAgICAgKTtcbiAgICB9LFxuICAgIHJlbmRlckNvbnRleHRQcm92aWRlcjogY3JlYXRlQ29udGV4dFByb3ZpZGVyUmVuZGVyZXIoQ3VzdG9tVGhlbWVQcm92aWRlciksXG4gIH07XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgU2lzZW5zZSBjb250ZXh0IGNvbm5lY3RvclxuICpcbiAqIEBwYXJhbSBzaXNlbnNlQ29udGV4dFNlcnZpY2UgLSBUaGUgU2lzZW5zZSBjb250ZXh0IHNlcnZpY2VcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY29uc3QgY3JlYXRlU2lzZW5zZUNvbnRleHRDb25uZWN0b3IgPSAoXG4gIHNpc2Vuc2VDb250ZXh0U2VydmljZTogU2lzZW5zZUNvbnRleHRTZXJ2aWNlLFxuKTogQ29udGV4dENvbm5lY3RvcjxDdXN0b21TaXNlbnNlQ29udGV4dD4gPT4ge1xuICByZXR1cm4ge1xuICAgIGFzeW5jIHByZXBhcmVDb250ZXh0KCkge1xuICAgICAgY29uc3QgeyBlbmFibGVUcmFja2luZywgc2hvd1J1bnRpbWVFcnJvcnMsIGFwcENvbmZpZyB9ID0gc2lzZW5zZUNvbnRleHRTZXJ2aWNlLmdldENvbmZpZygpO1xuICAgICAgY29uc3QgYXBwID0gYXdhaXQgc2lzZW5zZUNvbnRleHRTZXJ2aWNlLmdldEFwcCgpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYXBwLFxuICAgICAgICBpc0luaXRpYWxpemVkOiB0cnVlLFxuICAgICAgICBzaG93UnVudGltZUVycm9ycyxcbiAgICAgICAgdHJhY2tpbmc6IHtcbiAgICAgICAgICAvLyBpZiB0cmFja2luZyBpcyBjb25maWd1cmVkIGluIGFwcENvbmZpZywgdXNlIGl0LCBvdGhlcndpc2UgdXNlIGVuYWJsZVRyYWNraW5nXG4gICAgICAgICAgLy8gaWYgbm9uZSBpcyBzZXQsIGRlZmF1bHQgdG8gdHJ1ZVxuICAgICAgICAgIGVuYWJsZWQ6XG4gICAgICAgICAgICBhcHBDb25maWc/LnRyYWNraW5nQ29uZmlnPy5lbmFibGVkICE9PSB1bmRlZmluZWRcbiAgICAgICAgICAgICAgPyBhcHBDb25maWcudHJhY2tpbmdDb25maWcuZW5hYmxlZFxuICAgICAgICAgICAgICA6IGVuYWJsZVRyYWNraW5nID8/IHRydWUsXG4gICAgICAgICAgcGFja2FnZU5hbWU6ICdzZGstdWktYW5ndWxhcicsXG4gICAgICAgIH0sXG4gICAgICB9IGFzIEN1c3RvbVNpc2Vuc2VDb250ZXh0O1xuICAgIH0sXG4gICAgcmVuZGVyQ29udGV4dFByb3ZpZGVyOiBjcmVhdGVDb250ZXh0UHJvdmlkZXJSZW5kZXJlcihDdXN0b21TaXNlbnNlQ29udGV4dFByb3ZpZGVyKSxcbiAgfTtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBwbHVnaW5zIGNvbnRleHQgY29ubmVjdG9yXG4gKlxuICogQHBhcmFtIHBsdWdpbnNTZXJ2aWNlIC0gVGhlIHBsdWdpbiBzZXJ2aWNlXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVBsdWdpbnNDb250ZXh0Q29ubmVjdG9yID0gKFxuICBwbHVnaW5zU2VydmljZTogUGx1Z2luc1NlcnZpY2UsXG4pOiBDb250ZXh0Q29ubmVjdG9yPEN1c3RvbVBsdWdpbnNQcm92aWRlclByb3BzWydjb250ZXh0J10+ID0+IHtcbiAgcmV0dXJuIHtcbiAgICBwcmVwYXJlQ29udGV4dCgpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBsdWdpbk1hcDogcGx1Z2luc1NlcnZpY2UuZ2V0UGx1Z2lucygpLnZhbHVlLFxuICAgICAgICByZWdpc3RlclBsdWdpbjogcGx1Z2luc1NlcnZpY2UucmVnaXN0ZXJQbHVnaW4uYmluZChwbHVnaW5zU2VydmljZSksXG4gICAgICAgIGdldFBsdWdpbjogcGx1Z2luc1NlcnZpY2UuZ2V0UGx1Z2luLmJpbmQocGx1Z2luc1NlcnZpY2UpLFxuICAgICAgfTtcbiAgICB9LFxuICAgIHJlbmRlckNvbnRleHRQcm92aWRlcjogY3JlYXRlQ29udGV4dFByb3ZpZGVyUmVuZGVyZXIoQ3VzdG9tUGx1Z2luc1Byb3ZpZGVyKSxcbiAgfTtcbn07XG4iXX0=
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { Component, Input, ViewChild, } from '@angular/core';
|
|
2
2
|
import { DashboardById, ComponentAdapter, createElement, } from '@sisense/sdk-ui-preact';
|
|
3
|
-
import { createSisenseContextConnector, createThemeContextConnector, } from '../../component-wrapper-helpers';
|
|
3
|
+
import { createPluginsContextConnector, createSisenseContextConnector, createThemeContextConnector, } from '../../component-wrapper-helpers';
|
|
4
4
|
import { template, rootId } from '../../component-wrapper-helpers/template';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "../../services/sisense-context.service";
|
|
7
7
|
import * as i2 from "../../services/theme.service";
|
|
8
|
+
import * as i3 from "../../services/plugins.service";
|
|
8
9
|
/**
|
|
9
10
|
* An Angular component used for easily rendering a dashboard by its ID created in a Sisense Fusion instance.
|
|
10
11
|
*
|
|
@@ -51,12 +52,21 @@ export class DashboardByIdComponent {
|
|
|
51
52
|
*
|
|
52
53
|
* @category Constructor
|
|
53
54
|
*/
|
|
54
|
-
themeService
|
|
55
|
+
themeService,
|
|
56
|
+
/**
|
|
57
|
+
* Plugin service
|
|
58
|
+
*
|
|
59
|
+
* @internal
|
|
60
|
+
* @category Constructor
|
|
61
|
+
*/
|
|
62
|
+
pluginService) {
|
|
55
63
|
this.sisenseContextService = sisenseContextService;
|
|
56
64
|
this.themeService = themeService;
|
|
65
|
+
this.pluginService = pluginService;
|
|
57
66
|
this.componentAdapter = new ComponentAdapter(() => this.createPreactComponent(), [
|
|
58
67
|
createSisenseContextConnector(this.sisenseContextService),
|
|
59
68
|
createThemeContextConnector(this.themeService),
|
|
69
|
+
createPluginsContextConnector(this.pluginService),
|
|
60
70
|
]);
|
|
61
71
|
}
|
|
62
72
|
/**
|
|
@@ -86,7 +96,7 @@ export class DashboardByIdComponent {
|
|
|
86
96
|
this.componentAdapter.destroy();
|
|
87
97
|
}
|
|
88
98
|
}
|
|
89
|
-
DashboardByIdComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DashboardByIdComponent, deps: [{ token: i1.SisenseContextService }, { token: i2.ThemeService }], target: i0.ɵɵFactoryTarget.Component });
|
|
99
|
+
DashboardByIdComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DashboardByIdComponent, deps: [{ token: i1.SisenseContextService }, { token: i2.ThemeService }, { token: i3.PluginsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
90
100
|
DashboardByIdComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DashboardByIdComponent, selector: "csdk-dashboard-by-id", inputs: { dashboardOid: "dashboardOid" }, viewQueries: [{ propertyName: "preactRef", first: true, predicate: ["preact"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "\n <div #preact style=\"width: 100%; height: 100%\"></div>\n", isInline: true });
|
|
91
101
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DashboardByIdComponent, decorators: [{
|
|
92
102
|
type: Component,
|
|
@@ -94,10 +104,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
94
104
|
selector: 'csdk-dashboard-by-id',
|
|
95
105
|
template,
|
|
96
106
|
}]
|
|
97
|
-
}], ctorParameters: function () { return [{ type: i1.SisenseContextService }, { type: i2.ThemeService }]; }, propDecorators: { preactRef: [{
|
|
107
|
+
}], ctorParameters: function () { return [{ type: i1.SisenseContextService }, { type: i2.ThemeService }, { type: i3.PluginsService }]; }, propDecorators: { preactRef: [{
|
|
98
108
|
type: ViewChild,
|
|
99
109
|
args: [rootId]
|
|
100
110
|
}], dashboardOid: [{
|
|
101
111
|
type: Input
|
|
102
112
|
}] } });
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLWJ5LWlkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9kYXNoYm9hcmQvZGFzaGJvYXJkLWJ5LWlkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULEtBQUssRUFHTCxTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLGFBQWEsRUFFYixnQkFBZ0IsRUFDaEIsYUFBYSxHQUNkLE1BQU0sd0JBQXdCLENBQUM7QUFHaEMsT0FBTyxFQUNMLDZCQUE2QixFQUM3Qiw2QkFBNkIsRUFDN0IsMkJBQTJCLEdBQzVCLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQzs7Ozs7QUFHNUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMEJHO0FBS0gsTUFBTSxPQUFPLHNCQUFzQjtJQWVqQzs7Ozs7T0FLRztJQUNIO0lBQ0U7Ozs7T0FJRztJQUNJLHFCQUE0QztJQUNuRDs7OztPQUlHO0lBQ0ksWUFBMEI7SUFDakM7Ozs7O09BS0c7SUFDSSxhQUE2QjtRQWI3QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBTTVDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBTzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFnQjtRQUVwQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FDMUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLEVBQ2xDO1lBQ0UsNkJBQTZCLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDO1lBQ3pELDJCQUEyQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7WUFDOUMsNkJBQTZCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztTQUNsRCxDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQzVEO0lBQ0gsQ0FBQztJQUVPLHFCQUFxQjtRQUMzQixNQUFNLEtBQUssR0FBRztZQUNaLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtTQUNoQyxDQUFDO1FBRUYsT0FBTyxhQUFhLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVc7UUFDVCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbEMsQ0FBQzs7b0hBakZVLHNCQUFzQjt3R0FBdEIsc0JBQXNCOzRGQUF0QixzQkFBc0I7a0JBSmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsUUFBUTtpQkFDVDtvS0FNQyxTQUFTO3NCQURSLFNBQVM7dUJBQUMsTUFBTTtnQkFPakIsWUFBWTtzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBEYXNoYm9hcmRCeUlkLFxuICB0eXBlIERhc2hib2FyZEJ5SWRQcm9wcyxcbiAgQ29tcG9uZW50QWRhcHRlcixcbiAgY3JlYXRlRWxlbWVudCxcbn0gZnJvbSAnQHNpc2Vuc2Uvc2RrLXVpLXByZWFjdCc7XG5pbXBvcnQgeyBTaXNlbnNlQ29udGV4dFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zaXNlbnNlLWNvbnRleHQuc2VydmljZSc7XG5pbXBvcnQgeyBUaGVtZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90aGVtZS5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIGNyZWF0ZVBsdWdpbnNDb250ZXh0Q29ubmVjdG9yLFxuICBjcmVhdGVTaXNlbnNlQ29udGV4dENvbm5lY3RvcixcbiAgY3JlYXRlVGhlbWVDb250ZXh0Q29ubmVjdG9yLFxufSBmcm9tICcuLi8uLi9jb21wb25lbnQtd3JhcHBlci1oZWxwZXJzJztcbmltcG9ydCB7IHRlbXBsYXRlLCByb290SWQgfSBmcm9tICcuLi8uLi9jb21wb25lbnQtd3JhcHBlci1oZWxwZXJzL3RlbXBsYXRlJztcbmltcG9ydCB7IFBsdWdpbnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGx1Z2lucy5zZXJ2aWNlJztcblxuLyoqXG4gKiBBbiBBbmd1bGFyIGNvbXBvbmVudCB1c2VkIGZvciBlYXNpbHkgcmVuZGVyaW5nIGEgZGFzaGJvYXJkIGJ5IGl0cyBJRCBjcmVhdGVkIGluIGEgU2lzZW5zZSBGdXNpb24gaW5zdGFuY2UuXG4gKlxuICogKipOb3RlOioqIERhc2hib2FyZCBleHRlbnNpb25zIGJhc2VkIG9uIEpTIHNjcmlwdHMgYW5kIGFkZC1vbnMgaW4gRnVzaW9uIGFyZSBub3Qgc3VwcG9ydGVkLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBodG1sXG4gKiA8Y3Nkay1kYXNoYm9hcmQtYnktaWRcbiAqICAgW2Rhc2hib2FyZE9pZF09XCJkYXNoYm9hcmRPaWRcIlxuICogLz5cbiAqIGBgYFxuICogYGBgdHNcbiAqIGltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuICpcbiAqIEBDb21wb25lbnQoe1xuICogIHNlbGVjdG9yOiAnYXBwLWRhc2hib2FyZCcsXG4gKiAgdGVtcGxhdGVVcmw6ICcuL2Rhc2hib2FyZC5jb21wb25lbnQuaHRtbCcsXG4gKiAgc3R5bGVVcmxzOiBbJy4vZGFzaGJvYXJkLmNvbXBvbmVudC5zY3NzJ10sXG4gKiB9KVxuICogZXhwb3J0IGNsYXNzIERhc2hib2FyZENvbXBvbmVudCB7XG4gKiAgZGFzaGJvYXJkT2lkOiBzdHJpbmcgPSAnNjBmM2UzZTNlNGIwZTNlM2U0YjBlM2UzJztcbiAqIH1cbiAqIGBgYFxuICogQGdyb3VwIEZ1c2lvbiBFbWJlZFxuICogQGZ1c2lvbkVtYmVkXG4gKiBAYWxwaGFcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3Nkay1kYXNoYm9hcmQtYnktaWQnLFxuICB0ZW1wbGF0ZSxcbn0pXG5leHBvcnQgY2xhc3MgRGFzaGJvYXJkQnlJZENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgQFZpZXdDaGlsZChyb290SWQpXG4gIHByZWFjdFJlZiE6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIURhc2hib2FyZEJ5SWRQcm9wcy5kYXNoYm9hcmRPaWR9XG4gICAqL1xuICBASW5wdXQoKVxuICBkYXNoYm9hcmRPaWQhOiBEYXNoYm9hcmRCeUlkUHJvcHNbJ2Rhc2hib2FyZE9pZCddO1xuXG4gIHByaXZhdGUgY29tcG9uZW50QWRhcHRlcjogQ29tcG9uZW50QWRhcHRlcjtcblxuICAvKipcbiAgICogQ29uc3RydWN0b3IgZm9yIHRoZSBgRGFzaGJvYXJkQnlJZGAgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gc2lzZW5zZUNvbnRleHRTZXJ2aWNlIC0gU2lzZW5zZSBjb250ZXh0IHNlcnZpY2VcbiAgICogQHBhcmFtIHRoZW1lU2VydmljZSAtIFRoZW1lIHNlcnZpY2VcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIC8qKlxuICAgICAqIFNpc2Vuc2UgY29udGV4dCBzZXJ2aWNlXG4gICAgICpcbiAgICAgKiBAY2F0ZWdvcnkgQ29uc3RydWN0b3JcbiAgICAgKi9cbiAgICBwdWJsaWMgc2lzZW5zZUNvbnRleHRTZXJ2aWNlOiBTaXNlbnNlQ29udGV4dFNlcnZpY2UsXG4gICAgLyoqXG4gICAgICogVGhlbWUgc2VydmljZVxuICAgICAqXG4gICAgICogQGNhdGVnb3J5IENvbnN0cnVjdG9yXG4gICAgICovXG4gICAgcHVibGljIHRoZW1lU2VydmljZTogVGhlbWVTZXJ2aWNlLFxuICAgIC8qKlxuICAgICAqIFBsdWdpbiBzZXJ2aWNlXG4gICAgICpcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKiBAY2F0ZWdvcnkgQ29uc3RydWN0b3JcbiAgICAgKi9cbiAgICBwdWJsaWMgcGx1Z2luU2VydmljZTogUGx1Z2luc1NlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuY29tcG9uZW50QWRhcHRlciA9IG5ldyBDb21wb25lbnRBZGFwdGVyKFxuICAgICAgKCkgPT4gdGhpcy5jcmVhdGVQcmVhY3RDb21wb25lbnQoKSxcbiAgICAgIFtcbiAgICAgICAgY3JlYXRlU2lzZW5zZUNvbnRleHRDb25uZWN0b3IodGhpcy5zaXNlbnNlQ29udGV4dFNlcnZpY2UpLFxuICAgICAgICBjcmVhdGVUaGVtZUNvbnRleHRDb25uZWN0b3IodGhpcy50aGVtZVNlcnZpY2UpLFxuICAgICAgICBjcmVhdGVQbHVnaW5zQ29udGV4dENvbm5lY3Rvcih0aGlzLnBsdWdpblNlcnZpY2UpLFxuICAgICAgXSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuY29tcG9uZW50QWRhcHRlci5yZW5kZXIodGhpcy5wcmVhY3RSZWYubmF0aXZlRWxlbWVudCk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBuZ09uQ2hhbmdlcygpIHtcbiAgICBpZiAodGhpcy5wcmVhY3RSZWYpIHtcbiAgICAgIHRoaXMuY29tcG9uZW50QWRhcHRlci5yZW5kZXIodGhpcy5wcmVhY3RSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVQcmVhY3RDb21wb25lbnQoKSB7XG4gICAgY29uc3QgcHJvcHMgPSB7XG4gICAgICBkYXNoYm9hcmRPaWQ6IHRoaXMuZGFzaGJvYXJkT2lkLFxuICAgIH07XG5cbiAgICByZXR1cm4gY3JlYXRlRWxlbWVudChEYXNoYm9hcmRCeUlkLCBwcm9wcyk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmNvbXBvbmVudEFkYXB0ZXIuZGVzdHJveSgpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './query.service';
|
|
2
2
|
export * from './sisense-context.service';
|
|
3
3
|
export * from './theme.service';
|
|
4
|
+
export * from './plugins.service';
|
|
4
5
|
export * from './dashboard.service';
|
|
5
6
|
export * from './widget.service';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9xdWVyeS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2lzZW5zZS1jb250ZXh0LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi90aGVtZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcGx1Z2lucy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZGFzaGJvYXJkLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi93aWRnZXQuc2VydmljZSc7XG4iXX0=
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Service for working with plugins fetched from an external environment.
|
|
6
|
+
*
|
|
7
|
+
* Provides methods for registering, retrieving, and interacting with plugins.
|
|
8
|
+
*
|
|
9
|
+
* @internal
|
|
10
|
+
* @group Contexts
|
|
11
|
+
*/
|
|
12
|
+
export class PluginsService {
|
|
13
|
+
constructor() {
|
|
14
|
+
this.pluginMap$ = new BehaviorSubject(new Map());
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Registers a new plugin into the plugin map.
|
|
18
|
+
*
|
|
19
|
+
* @param pluginType - The unique identifier for the plugin type.
|
|
20
|
+
* @param plugin - The plugin instance to register.
|
|
21
|
+
*/
|
|
22
|
+
registerPlugin(pluginType, plugin) {
|
|
23
|
+
const pluginMap = this.pluginMap$.value;
|
|
24
|
+
if (!pluginMap.has(pluginType)) {
|
|
25
|
+
pluginMap.set(pluginType, plugin);
|
|
26
|
+
this.pluginMap$.next(pluginMap);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Retrieves a plugin by its type.
|
|
31
|
+
*
|
|
32
|
+
* @param pluginType - The unique identifier for the plugin type.
|
|
33
|
+
* @returns The plugin instance if found, otherwise undefined.
|
|
34
|
+
*/
|
|
35
|
+
getPlugin(pluginType) {
|
|
36
|
+
return this.pluginMap$.value.get(pluginType);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Retrieves a complete plugin map.
|
|
40
|
+
*
|
|
41
|
+
* @returns A plugin map.
|
|
42
|
+
*/
|
|
43
|
+
getPlugins() {
|
|
44
|
+
return this.pluginMap$;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
PluginsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PluginsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
48
|
+
PluginsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PluginsService, providedIn: 'root' });
|
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PluginsService, decorators: [{
|
|
50
|
+
type: Injectable,
|
|
51
|
+
args: [{
|
|
52
|
+
providedIn: 'root',
|
|
53
|
+
}]
|
|
54
|
+
}], ctorParameters: function () { return []; } });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2lucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9wbHVnaW5zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUd2Qzs7Ozs7OztHQU9HO0FBSUgsTUFBTSxPQUFPLGNBQWM7SUFHekI7UUFDRSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksZUFBZSxDQUFDLElBQUksR0FBRyxFQUF3QixDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsY0FBYyxDQUFDLFVBQWtCLEVBQUUsTUFBb0I7UUFDckQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7UUFDeEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDOUIsU0FBUyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDbEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDakM7SUFDSCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxTQUFTLENBQUMsVUFBa0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7OzRHQXRDVSxjQUFjO2dIQUFkLGNBQWMsY0FGYixNQUFNOzRGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBXaWRnZXRQbHVnaW4gfSBmcm9tICdAc2lzZW5zZS9zZGstdWktcHJlYWN0JztcblxuLyoqXG4gKiBTZXJ2aWNlIGZvciB3b3JraW5nIHdpdGggcGx1Z2lucyBmZXRjaGVkIGZyb20gYW4gZXh0ZXJuYWwgZW52aXJvbm1lbnQuXG4gKlxuICogUHJvdmlkZXMgbWV0aG9kcyBmb3IgcmVnaXN0ZXJpbmcsIHJldHJpZXZpbmcsIGFuZCBpbnRlcmFjdGluZyB3aXRoIHBsdWdpbnMuXG4gKlxuICogQGludGVybmFsXG4gKiBAZ3JvdXAgQ29udGV4dHNcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFBsdWdpbnNTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBwbHVnaW5NYXAkOiBCZWhhdmlvclN1YmplY3Q8TWFwPHN0cmluZywgV2lkZ2V0UGx1Z2luPj47XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5wbHVnaW5NYXAkID0gbmV3IEJlaGF2aW9yU3ViamVjdChuZXcgTWFwPHN0cmluZywgV2lkZ2V0UGx1Z2luPigpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgYSBuZXcgcGx1Z2luIGludG8gdGhlIHBsdWdpbiBtYXAuXG4gICAqXG4gICAqIEBwYXJhbSBwbHVnaW5UeXBlIC0gVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgcGx1Z2luIHR5cGUuXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgcGx1Z2luIGluc3RhbmNlIHRvIHJlZ2lzdGVyLlxuICAgKi9cbiAgcmVnaXN0ZXJQbHVnaW4ocGx1Z2luVHlwZTogc3RyaW5nLCBwbHVnaW46IFdpZGdldFBsdWdpbik6IHZvaWQge1xuICAgIGNvbnN0IHBsdWdpbk1hcCA9IHRoaXMucGx1Z2luTWFwJC52YWx1ZTtcbiAgICBpZiAoIXBsdWdpbk1hcC5oYXMocGx1Z2luVHlwZSkpIHtcbiAgICAgIHBsdWdpbk1hcC5zZXQocGx1Z2luVHlwZSwgcGx1Z2luKTtcbiAgICAgIHRoaXMucGx1Z2luTWFwJC5uZXh0KHBsdWdpbk1hcCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlcyBhIHBsdWdpbiBieSBpdHMgdHlwZS5cbiAgICpcbiAgICogQHBhcmFtIHBsdWdpblR5cGUgLSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBwbHVnaW4gdHlwZS5cbiAgICogQHJldHVybnMgVGhlIHBsdWdpbiBpbnN0YW5jZSBpZiBmb3VuZCwgb3RoZXJ3aXNlIHVuZGVmaW5lZC5cbiAgICovXG4gIGdldFBsdWdpbihwbHVnaW5UeXBlOiBzdHJpbmcpOiBXaWRnZXRQbHVnaW4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnBsdWdpbk1hcCQudmFsdWUuZ2V0KHBsdWdpblR5cGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlcyBhIGNvbXBsZXRlIHBsdWdpbiBtYXAuXG4gICAqXG4gICAqIEByZXR1cm5zIEEgcGx1Z2luIG1hcC5cbiAgICovXG4gIGdldFBsdWdpbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMucGx1Z2luTWFwJDtcbiAgfVxufVxuIl19
|
package/dist/esm2020/version.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export default '1.
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export default '1.19.0';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGVBQWUsUUFBUSxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgJzEuMTkuMCciXX0=
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { EventEmitter, Component, ViewChild, Input, Output, InjectionToken, Injectable, Inject, NgModule, Optional } from '@angular/core';
|
|
3
3
|
import { CommonModule } from '@angular/common';
|
|
4
|
-
import { ComponentAdapter, createElement, BasicMemberFilterTile, createContextProviderRenderer, CustomThemeProvider, CustomSisenseContextProvider, createClientApplication, executeQuery, executeQueryByWidgetId, getDashboardModel, getDashboardModels, getWidgetModel, getDefaultThemeSettings, getThemeSettingsByOid, MemberFilterTile, DateRangeFilterTile, Chart, Table, PivotTable, TableWidget, DashboardWidget, createWrapperElementHandler, createWrapperElement, DrilldownWidget, createComponentRenderer, ChartWidget, DashboardById, Dashboard, DrilldownBreadcrumbs, ContextMenu } from '@sisense/sdk-ui-preact';
|
|
4
|
+
import { ComponentAdapter, createElement, BasicMemberFilterTile, createContextProviderRenderer, CustomThemeProvider, CustomSisenseContextProvider, CustomPluginsProvider, createClientApplication, executeQuery, executeQueryByWidgetId, getDashboardModel, getDashboardModels, getWidgetModel, getDefaultThemeSettings, getThemeSettingsByOid, MemberFilterTile, DateRangeFilterTile, Chart, Table, PivotTable, TableWidget, DashboardWidget, createWrapperElementHandler, createWrapperElement, DrilldownWidget, createComponentRenderer, ChartWidget, DashboardById, Dashboard, DrilldownBreadcrumbs, ContextMenu } from '@sisense/sdk-ui-preact';
|
|
5
5
|
export { boxWhiskerProcessResult } from '@sisense/sdk-ui-preact';
|
|
6
6
|
import { __awaiter, __decorate } from 'tslib';
|
|
7
7
|
import { map, BehaviorSubject } from 'rxjs';
|
|
@@ -128,6 +128,24 @@ const createSisenseContextConnector = (sisenseContextService) => {
|
|
|
128
128
|
renderContextProvider: createContextProviderRenderer(CustomSisenseContextProvider),
|
|
129
129
|
};
|
|
130
130
|
};
|
|
131
|
+
/**
|
|
132
|
+
* Creates plugins context connector
|
|
133
|
+
*
|
|
134
|
+
* @param pluginsService - The plugin service
|
|
135
|
+
* @internal
|
|
136
|
+
*/
|
|
137
|
+
const createPluginsContextConnector = (pluginsService) => {
|
|
138
|
+
return {
|
|
139
|
+
prepareContext() {
|
|
140
|
+
return {
|
|
141
|
+
pluginMap: pluginsService.getPlugins().value,
|
|
142
|
+
registerPlugin: pluginsService.registerPlugin.bind(pluginsService),
|
|
143
|
+
getPlugin: pluginsService.getPlugin.bind(pluginsService),
|
|
144
|
+
};
|
|
145
|
+
},
|
|
146
|
+
renderContextProvider: createContextProviderRenderer(CustomPluginsProvider),
|
|
147
|
+
};
|
|
148
|
+
};
|
|
131
149
|
|
|
132
150
|
/**
|
|
133
151
|
* Token used to inject {@link SisenseContextConfig} into your application
|
|
@@ -252,6 +270,58 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
252
270
|
}]
|
|
253
271
|
}], ctorParameters: function () { return [{ type: SisenseContextService }]; } });
|
|
254
272
|
|
|
273
|
+
/**
|
|
274
|
+
* Service for working with plugins fetched from an external environment.
|
|
275
|
+
*
|
|
276
|
+
* Provides methods for registering, retrieving, and interacting with plugins.
|
|
277
|
+
*
|
|
278
|
+
* @internal
|
|
279
|
+
* @group Contexts
|
|
280
|
+
*/
|
|
281
|
+
class PluginsService {
|
|
282
|
+
constructor() {
|
|
283
|
+
this.pluginMap$ = new BehaviorSubject(new Map());
|
|
284
|
+
}
|
|
285
|
+
/**
|
|
286
|
+
* Registers a new plugin into the plugin map.
|
|
287
|
+
*
|
|
288
|
+
* @param pluginType - The unique identifier for the plugin type.
|
|
289
|
+
* @param plugin - The plugin instance to register.
|
|
290
|
+
*/
|
|
291
|
+
registerPlugin(pluginType, plugin) {
|
|
292
|
+
const pluginMap = this.pluginMap$.value;
|
|
293
|
+
if (!pluginMap.has(pluginType)) {
|
|
294
|
+
pluginMap.set(pluginType, plugin);
|
|
295
|
+
this.pluginMap$.next(pluginMap);
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
/**
|
|
299
|
+
* Retrieves a plugin by its type.
|
|
300
|
+
*
|
|
301
|
+
* @param pluginType - The unique identifier for the plugin type.
|
|
302
|
+
* @returns The plugin instance if found, otherwise undefined.
|
|
303
|
+
*/
|
|
304
|
+
getPlugin(pluginType) {
|
|
305
|
+
return this.pluginMap$.value.get(pluginType);
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* Retrieves a complete plugin map.
|
|
309
|
+
*
|
|
310
|
+
* @returns A plugin map.
|
|
311
|
+
*/
|
|
312
|
+
getPlugins() {
|
|
313
|
+
return this.pluginMap$;
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
PluginsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PluginsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
317
|
+
PluginsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PluginsService, providedIn: 'root' });
|
|
318
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PluginsService, decorators: [{
|
|
319
|
+
type: Injectable,
|
|
320
|
+
args: [{
|
|
321
|
+
providedIn: 'root',
|
|
322
|
+
}]
|
|
323
|
+
}], ctorParameters: function () { return []; } });
|
|
324
|
+
|
|
255
325
|
/**
|
|
256
326
|
* Service for working with Sisense Fusion dashboards.
|
|
257
327
|
*
|
|
@@ -354,7 +424,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
354
424
|
}]
|
|
355
425
|
}], ctorParameters: function () { return [{ type: SisenseContextService }]; } });
|
|
356
426
|
|
|
357
|
-
var packageVersion = '1.
|
|
427
|
+
var packageVersion = '1.19.0';
|
|
358
428
|
|
|
359
429
|
function Trackable(target, propertyKey, descriptor) {
|
|
360
430
|
const originalMethod = descriptor.value;
|
|
@@ -3615,12 +3685,21 @@ class DashboardByIdComponent {
|
|
|
3615
3685
|
*
|
|
3616
3686
|
* @category Constructor
|
|
3617
3687
|
*/
|
|
3618
|
-
themeService
|
|
3688
|
+
themeService,
|
|
3689
|
+
/**
|
|
3690
|
+
* Plugin service
|
|
3691
|
+
*
|
|
3692
|
+
* @internal
|
|
3693
|
+
* @category Constructor
|
|
3694
|
+
*/
|
|
3695
|
+
pluginService) {
|
|
3619
3696
|
this.sisenseContextService = sisenseContextService;
|
|
3620
3697
|
this.themeService = themeService;
|
|
3698
|
+
this.pluginService = pluginService;
|
|
3621
3699
|
this.componentAdapter = new ComponentAdapter(() => this.createPreactComponent(), [
|
|
3622
3700
|
createSisenseContextConnector(this.sisenseContextService),
|
|
3623
3701
|
createThemeContextConnector(this.themeService),
|
|
3702
|
+
createPluginsContextConnector(this.pluginService),
|
|
3624
3703
|
]);
|
|
3625
3704
|
}
|
|
3626
3705
|
/**
|
|
@@ -3650,7 +3729,7 @@ class DashboardByIdComponent {
|
|
|
3650
3729
|
this.componentAdapter.destroy();
|
|
3651
3730
|
}
|
|
3652
3731
|
}
|
|
3653
|
-
DashboardByIdComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DashboardByIdComponent, deps: [{ token: SisenseContextService }, { token: ThemeService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3732
|
+
DashboardByIdComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DashboardByIdComponent, deps: [{ token: SisenseContextService }, { token: ThemeService }, { token: PluginsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3654
3733
|
DashboardByIdComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DashboardByIdComponent, selector: "csdk-dashboard-by-id", inputs: { dashboardOid: "dashboardOid" }, viewQueries: [{ propertyName: "preactRef", first: true, predicate: ["preact"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "\n <div #preact style=\"width: 100%; height: 100%\"></div>\n", isInline: true });
|
|
3655
3734
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DashboardByIdComponent, decorators: [{
|
|
3656
3735
|
type: Component,
|
|
@@ -3658,7 +3737,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
3658
3737
|
selector: 'csdk-dashboard-by-id',
|
|
3659
3738
|
template,
|
|
3660
3739
|
}]
|
|
3661
|
-
}], ctorParameters: function () { return [{ type: SisenseContextService }, { type: ThemeService }]; }, propDecorators: { preactRef: [{
|
|
3740
|
+
}], ctorParameters: function () { return [{ type: SisenseContextService }, { type: ThemeService }, { type: PluginsService }]; }, propDecorators: { preactRef: [{
|
|
3662
3741
|
type: ViewChild,
|
|
3663
3742
|
args: [rootId]
|
|
3664
3743
|
}], dashboardOid: [{
|
|
@@ -4167,5 +4246,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
4167
4246
|
* Generated bundle index. Do not edit.
|
|
4168
4247
|
*/
|
|
4169
4248
|
|
|
4170
|
-
export { AreaChartComponent, AreaRangeChartComponent, AreamapChartComponent, BarChartComponent, BasicMemberFilterTileComponent, BoxplotChartComponent, ChartComponent, ChartWidgetComponent, ColumnChartComponent, ContextMenuComponent, DashboardByIdComponent, DashboardComponent, DashboardService, DashboardWidgetComponent, DateRangeFilterTileComponent, DrilldownBreadcrumbsComponent, DrilldownWidgetComponent, FunnelChartComponent, IndicatorChartComponent, LineChartComponent, MemberFilterTileComponent, PieChartComponent, PivotTableComponent, PolarChartComponent, QueryService, SISENSE_CONTEXT_CONFIG_TOKEN, ScatterChartComponent, ScattermapChartComponent, SdkUiModule, SisenseContextService, SunburstChartComponent, THEME_CONFIG_TOKEN, TableComponent, TableWidgetComponent, ThemeService, TreemapChartComponent, WidgetService };
|
|
4249
|
+
export { AreaChartComponent, AreaRangeChartComponent, AreamapChartComponent, BarChartComponent, BasicMemberFilterTileComponent, BoxplotChartComponent, ChartComponent, ChartWidgetComponent, ColumnChartComponent, ContextMenuComponent, DashboardByIdComponent, DashboardComponent, DashboardService, DashboardWidgetComponent, DateRangeFilterTileComponent, DrilldownBreadcrumbsComponent, DrilldownWidgetComponent, FunnelChartComponent, IndicatorChartComponent, LineChartComponent, MemberFilterTileComponent, PieChartComponent, PivotTableComponent, PluginsService, PolarChartComponent, QueryService, SISENSE_CONTEXT_CONFIG_TOKEN, ScatterChartComponent, ScattermapChartComponent, SdkUiModule, SisenseContextService, SunburstChartComponent, THEME_CONFIG_TOKEN, TableComponent, TableWidgetComponent, ThemeService, TreemapChartComponent, WidgetService };
|
|
4171
4250
|
//# sourceMappingURL=sisense-sdk-ui-angular.mjs.map
|