@sisense/sdk-ui-angular 1.34.0 → 2.0.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/ai/lib/components/chatbot.component.d.ts +0 -5
- package/dist/ai/lib/components/get-nlg-insights.component.d.ts +0 -5
- package/dist/ai/lib/sdk-ai.module.d.ts +0 -1
- package/dist/ai/lib/sdk-ui-core-exports.d.ts +1 -1
- package/dist/ai/lib/services/ai.service.d.ts +12 -7
- package/dist/esm2020/ai/lib/components/chatbot.component.mjs +1 -6
- package/dist/esm2020/ai/lib/components/get-nlg-insights.component.mjs +1 -6
- package/dist/esm2020/ai/lib/sdk-ai.module.mjs +1 -2
- package/dist/esm2020/ai/lib/sdk-ui-core-exports.mjs +1 -1
- package/dist/esm2020/ai/lib/services/ai.service.mjs +3 -7
- package/dist/esm2020/lib/components/charts/area-chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/area-range-chart.component.mjs +1 -2
- package/dist/esm2020/lib/components/charts/areamap-chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/bar-chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/boxplot-chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/column-chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/funnel-chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/indicator-chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/line-chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/pie-chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/polar-chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/scatter-chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/scattermap-chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/sunburst-chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/table.component.mjs +1 -1
- package/dist/esm2020/lib/components/charts/treemap-chart.component.mjs +1 -1
- package/dist/esm2020/lib/components/dashboard/dashboard.component.mjs +4 -3
- package/dist/esm2020/lib/components/filters/filter-tile.component.mjs +147 -0
- package/dist/esm2020/lib/components/filters/index.mjs +2 -1
- package/dist/esm2020/lib/components/filters/member-filter-tile.component.mjs +2 -2
- package/dist/esm2020/lib/components/widgets/chart-widget.component.mjs +2 -2
- package/dist/esm2020/lib/components/widgets/drilldown-widget.component.mjs +2 -5
- package/dist/esm2020/lib/components/widgets/index.mjs +2 -2
- package/dist/esm2020/lib/components/widgets/widget-by-id.component.mjs +1 -1
- package/dist/esm2020/lib/components/widgets/widget.component.mjs +168 -0
- package/dist/esm2020/lib/helpers/dashboard-props-preact-translator.mjs +14 -0
- package/dist/esm2020/lib/helpers/event-emitter-with-has-listeners.mjs +31 -0
- package/dist/esm2020/lib/helpers/index.mjs +2 -0
- package/dist/esm2020/lib/helpers/widget-props-preact-translator.mjs +37 -0
- package/dist/esm2020/lib/sdk-ui-core-exports.mjs +1 -1
- package/dist/esm2020/lib/sdk-ui.module.mjs +12 -8
- package/dist/esm2020/lib/services/dashboard.service.mjs +86 -2
- package/dist/esm2020/lib/services/query.service.mjs +5 -4
- package/dist/esm2020/lib/types/chart-event-props.mjs +1 -1
- package/dist/esm2020/lib/types/data-point.mjs +1 -1
- package/dist/esm2020/lib/types/filter-event-props.mjs +2 -0
- package/dist/esm2020/lib/types/index.mjs +2 -1
- package/dist/esm2020/lib/utilities/dashboard-helpers.mjs +2 -14
- package/dist/esm2020/public-api.mjs +1 -1
- package/dist/esm2020/version.mjs +2 -2
- package/dist/fesm2015/sisense-sdk-ui-angular-ai.mjs +2 -17
- package/dist/fesm2015/sisense-sdk-ui-angular-ai.mjs.map +1 -1
- package/dist/fesm2015/sisense-sdk-ui-angular.mjs +456 -146
- package/dist/fesm2015/sisense-sdk-ui-angular.mjs.map +1 -1
- package/dist/fesm2020/sisense-sdk-ui-angular-ai.mjs +2 -17
- package/dist/fesm2020/sisense-sdk-ui-angular-ai.mjs.map +1 -1
- package/dist/fesm2020/sisense-sdk-ui-angular.mjs +482 -144
- package/dist/fesm2020/sisense-sdk-ui-angular.mjs.map +1 -1
- package/dist/lib/components/charts/area-chart.component.d.ts +0 -1
- package/dist/lib/components/charts/area-range-chart.component.d.ts +0 -2
- package/dist/lib/components/charts/areamap-chart.component.d.ts +4 -6
- package/dist/lib/components/charts/bar-chart.component.d.ts +0 -1
- package/dist/lib/components/charts/boxplot-chart.component.d.ts +6 -7
- package/dist/lib/components/charts/chart.component.d.ts +3 -4
- package/dist/lib/components/charts/column-chart.component.d.ts +0 -1
- package/dist/lib/components/charts/funnel-chart.component.d.ts +0 -1
- package/dist/lib/components/charts/indicator-chart.component.d.ts +2 -3
- package/dist/lib/components/charts/line-chart.component.d.ts +0 -1
- package/dist/lib/components/charts/pie-chart.component.d.ts +0 -1
- package/dist/lib/components/charts/polar-chart.component.d.ts +0 -1
- package/dist/lib/components/charts/scatter-chart.component.d.ts +6 -7
- package/dist/lib/components/charts/scattermap-chart.component.d.ts +4 -6
- package/dist/lib/components/charts/sunburst-chart.component.d.ts +0 -1
- package/dist/lib/components/charts/table.component.d.ts +0 -1
- package/dist/lib/components/charts/treemap-chart.component.d.ts +0 -1
- package/dist/lib/components/dashboard/dashboard.component.d.ts +6 -1
- package/dist/lib/components/filters/filter-tile.component.d.ts +125 -0
- package/dist/lib/components/filters/index.d.ts +1 -0
- package/dist/lib/components/filters/member-filter-tile.component.d.ts +1 -1
- package/dist/lib/components/widgets/chart-widget.component.d.ts +4 -5
- package/dist/lib/components/widgets/drilldown-widget.component.d.ts +1 -8
- package/dist/lib/components/widgets/index.d.ts +1 -1
- package/dist/lib/components/widgets/widget-by-id.component.d.ts +0 -1
- package/dist/lib/components/widgets/widget.component.d.ts +209 -0
- package/dist/lib/helpers/dashboard-props-preact-translator.d.ts +4 -0
- package/dist/lib/helpers/event-emitter-with-has-listeners.d.ts +24 -0
- package/dist/lib/helpers/index.d.ts +1 -0
- package/dist/lib/helpers/widget-props-preact-translator.d.ts +4 -0
- package/dist/lib/sdk-ui-core-exports.d.ts +1 -1
- package/dist/lib/sdk-ui.module.d.ts +20 -19
- package/dist/lib/services/dashboard.service.d.ts +79 -1
- package/dist/lib/services/query.service.d.ts +2 -8
- package/dist/lib/types/chart-event-props.d.ts +9 -10
- package/dist/lib/types/data-point.d.ts +18 -11
- package/dist/lib/types/filter-event-props.d.ts +35 -0
- package/dist/lib/types/index.d.ts +1 -0
- package/dist/lib/utilities/dashboard-helpers.d.ts +0 -10
- package/dist/package.json +4 -4
- package/dist/public-api.d.ts +1 -1
- package/dist/version.d.ts +1 -1
- package/package.json +7 -7
- package/dist/esm2020/lib/components/widgets/dashboard-widget.component.mjs +0 -117
- package/dist/lib/components/widgets/dashboard-widget.component.d.ts +0 -120
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
|
|
2
|
+
import { ComponentAdapter, Widget as WidgetPreact, } from '@sisense/sdk-ui-preact';
|
|
3
|
+
import { createSisenseContextConnector, createThemeContextConnector, } from '../../component-wrapper-helpers';
|
|
4
|
+
import { rootId, template } from '../../component-wrapper-helpers/template';
|
|
5
|
+
import { translateToPreactWidgetProps } from '../../helpers/widget-props-preact-translator';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../services/sisense-context.service";
|
|
8
|
+
import * as i2 from "../../services/theme.service";
|
|
9
|
+
/**
|
|
10
|
+
* Facade component that renders a widget within a dashboard based on the widget type.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```html
|
|
14
|
+
<!--Component HTML template in example.component.html-->
|
|
15
|
+
<csdk-widget
|
|
16
|
+
[id]="widgetProps.id"
|
|
17
|
+
[title]="widgetProps.title"
|
|
18
|
+
[widgetType]="widgetProps.widgetType"
|
|
19
|
+
[chartType]="widgetProps.chartType"
|
|
20
|
+
[dataSource]="widgetProps.dataSource"
|
|
21
|
+
[dataOptions]="widgetProps.dataOptions"
|
|
22
|
+
/>
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* ```ts
|
|
26
|
+
// Component behavior in example.component.ts
|
|
27
|
+
import { Component } from '@angular/core';
|
|
28
|
+
import { type WidgetProps } from '@sisense/sdk-ui-angular';
|
|
29
|
+
|
|
30
|
+
@Component({
|
|
31
|
+
selector: 'example',
|
|
32
|
+
templateUrl: './example.component.html',
|
|
33
|
+
styleUrls: ['./example.component.scss'],
|
|
34
|
+
})
|
|
35
|
+
export class ExampleComponent {
|
|
36
|
+
widgetProps: WidgetProps = {
|
|
37
|
+
id: 'widget-id',
|
|
38
|
+
widgetType: 'chart',
|
|
39
|
+
chartType: 'column',
|
|
40
|
+
title: 'Widget Title',
|
|
41
|
+
dataSource: DM.DataSource,
|
|
42
|
+
dataOptions: {
|
|
43
|
+
category: [DM.Divisions.Divison_name],
|
|
44
|
+
value: [measureFactory.sum(DM.Admissions.Cost_of_admission)],
|
|
45
|
+
breakBy: [],
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
* ```
|
|
50
|
+
* <img src="media://angular-chart-widget-example.png" width="500px" />
|
|
51
|
+
* @group Dashboards
|
|
52
|
+
*/
|
|
53
|
+
export class WidgetComponent {
|
|
54
|
+
constructor(sisenseContextService, themeService) {
|
|
55
|
+
this.sisenseContextService = sisenseContextService;
|
|
56
|
+
this.themeService = themeService;
|
|
57
|
+
/**
|
|
58
|
+
* {@inheritDoc @sisense/sdk-ui!ChartWidgetProps.onDataPointClick}
|
|
59
|
+
*
|
|
60
|
+
* @category Callbacks
|
|
61
|
+
*/
|
|
62
|
+
this.dataPointClick = new EventEmitter();
|
|
63
|
+
/**
|
|
64
|
+
* {@inheritDoc @sisense/sdk-ui!ChartWidgetProps.onDataPointContextMenu}
|
|
65
|
+
*
|
|
66
|
+
* @category Callbacks
|
|
67
|
+
*/
|
|
68
|
+
this.dataPointContextMenu = new EventEmitter();
|
|
69
|
+
/**
|
|
70
|
+
* {@inheritDoc @sisense/sdk-ui!ChartWidgetProps.onDataPointsSelected}
|
|
71
|
+
*
|
|
72
|
+
* @category Callbacks
|
|
73
|
+
*/
|
|
74
|
+
this.dataPointsSelect = new EventEmitter();
|
|
75
|
+
this.componentAdapter = new ComponentAdapter(WidgetPreact, [
|
|
76
|
+
createSisenseContextConnector(this.sisenseContextService),
|
|
77
|
+
createThemeContextConnector(this.themeService),
|
|
78
|
+
]);
|
|
79
|
+
}
|
|
80
|
+
/** @internal */
|
|
81
|
+
ngAfterViewInit() {
|
|
82
|
+
this.componentAdapter.render(this.preactRef.nativeElement, this.getPreactComponentProps());
|
|
83
|
+
}
|
|
84
|
+
/** @internal */
|
|
85
|
+
ngOnChanges() {
|
|
86
|
+
if (this.preactRef) {
|
|
87
|
+
this.componentAdapter.render(this.preactRef.nativeElement, this.getPreactComponentProps());
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
getPreactComponentProps() {
|
|
91
|
+
return translateToPreactWidgetProps({
|
|
92
|
+
id: this.id,
|
|
93
|
+
widgetType: this.widgetType,
|
|
94
|
+
chartType: this.chartType,
|
|
95
|
+
pluginType: this.pluginType,
|
|
96
|
+
dataSource: this.dataSource,
|
|
97
|
+
dataOptions: this.dataOptions,
|
|
98
|
+
filters: this.filters,
|
|
99
|
+
highlights: this.highlights,
|
|
100
|
+
styleOptions: this.styleOptions,
|
|
101
|
+
drilldownOptions: this.drilldownOptions,
|
|
102
|
+
title: this.title,
|
|
103
|
+
description: this.description,
|
|
104
|
+
highlightSelectionDisabled: this.highlightSelectionDisabled,
|
|
105
|
+
beforeRender: this.beforeRender?.bind(this),
|
|
106
|
+
dataReady: this.dataReady?.bind(this),
|
|
107
|
+
beforeMenuOpen: this.beforeMenuOpen?.bind(this),
|
|
108
|
+
dataPointClick: this.dataPointClick.emit.bind(this.dataPointClick),
|
|
109
|
+
dataPointContextMenu: this.dataPointContextMenu.emit.bind(this.dataPointContextMenu),
|
|
110
|
+
dataPointsSelect: this.dataPointsSelect.emit.bind(this.dataPointsSelect),
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
/** @internal */
|
|
114
|
+
ngOnDestroy() {
|
|
115
|
+
this.componentAdapter.destroy();
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
WidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: WidgetComponent, deps: [{ token: i1.SisenseContextService }, { token: i2.ThemeService }], target: i0.ɵɵFactoryTarget.Component });
|
|
119
|
+
WidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: WidgetComponent, selector: "csdk-widget", inputs: { id: "id", widgetType: "widgetType", chartType: "chartType", pluginType: "pluginType", dataSource: "dataSource", dataOptions: "dataOptions", filters: "filters", highlights: "highlights", styleOptions: "styleOptions", drilldownOptions: "drilldownOptions", title: "title", description: "description", highlightSelectionDisabled: "highlightSelectionDisabled", beforeRender: "beforeRender", dataReady: "dataReady", beforeMenuOpen: "beforeMenuOpen" }, outputs: { dataPointClick: "dataPointClick", dataPointContextMenu: "dataPointContextMenu", dataPointsSelect: "dataPointsSelect" }, 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 });
|
|
120
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: WidgetComponent, decorators: [{
|
|
121
|
+
type: Component,
|
|
122
|
+
args: [{
|
|
123
|
+
selector: 'csdk-widget',
|
|
124
|
+
template,
|
|
125
|
+
}]
|
|
126
|
+
}], ctorParameters: function () { return [{ type: i1.SisenseContextService }, { type: i2.ThemeService }]; }, propDecorators: { preactRef: [{
|
|
127
|
+
type: ViewChild,
|
|
128
|
+
args: [rootId]
|
|
129
|
+
}], id: [{
|
|
130
|
+
type: Input
|
|
131
|
+
}], widgetType: [{
|
|
132
|
+
type: Input
|
|
133
|
+
}], chartType: [{
|
|
134
|
+
type: Input
|
|
135
|
+
}], pluginType: [{
|
|
136
|
+
type: Input
|
|
137
|
+
}], dataSource: [{
|
|
138
|
+
type: Input
|
|
139
|
+
}], dataOptions: [{
|
|
140
|
+
type: Input
|
|
141
|
+
}], filters: [{
|
|
142
|
+
type: Input
|
|
143
|
+
}], highlights: [{
|
|
144
|
+
type: Input
|
|
145
|
+
}], styleOptions: [{
|
|
146
|
+
type: Input
|
|
147
|
+
}], drilldownOptions: [{
|
|
148
|
+
type: Input
|
|
149
|
+
}], title: [{
|
|
150
|
+
type: Input
|
|
151
|
+
}], description: [{
|
|
152
|
+
type: Input
|
|
153
|
+
}], highlightSelectionDisabled: [{
|
|
154
|
+
type: Input
|
|
155
|
+
}], beforeRender: [{
|
|
156
|
+
type: Input
|
|
157
|
+
}], dataReady: [{
|
|
158
|
+
type: Input
|
|
159
|
+
}], beforeMenuOpen: [{
|
|
160
|
+
type: Input
|
|
161
|
+
}], dataPointClick: [{
|
|
162
|
+
type: Output
|
|
163
|
+
}], dataPointContextMenu: [{
|
|
164
|
+
type: Output
|
|
165
|
+
}], dataPointsSelect: [{
|
|
166
|
+
type: Output
|
|
167
|
+
}] } });
|
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy93aWRnZXRzL3dpZGdldC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUVMLGdCQUFnQixFQUloQixNQUFNLElBQUksWUFBWSxHQUV2QixNQUFNLHdCQUF3QixDQUFDO0FBRWhDLE9BQU8sRUFDTCw2QkFBNkIsRUFDN0IsMkJBQTJCLEdBQzVCLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7OztBQTBDNUY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyQ0c7QUFLSCxNQUFNLE9BQU8sZUFBZTtJQWlLMUIsWUFDVSxxQkFBNEMsRUFDNUMsWUFBMEI7UUFEMUIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQTVCcEM7Ozs7V0FJRztRQUVILG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQTRCLENBQUM7UUFFOUQ7Ozs7V0FJRztRQUVILHlCQUFvQixHQUFHLElBQUksWUFBWSxFQUFrQyxDQUFDO1FBRTFFOzs7O1dBSUc7UUFFSCxxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBd0IsQ0FBQztRQVExRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUU7WUFDekQsNkJBQTZCLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDO1lBQ3pELDJCQUEyQixDQUFDLElB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YixNQUFNO2dCQVNQLG9CQUFvQjtzQkFEbkIsTUFBTTtnQkFTUCxnQkFBZ0I7c0JBRGYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIHR5cGUgQmVmb3JlTWVudU9wZW5IYW5kbGVyLFxuICBDb21wb25lbnRBZGFwdGVyLFxuICBQbHVnaW5XaWRnZXRQcm9wcyxcbiAgdHlwZSBTb2Z0VW5pb24sXG4gIFRleHRXaWRnZXRQcm9wcyxcbiAgV2lkZ2V0IGFzIFdpZGdldFByZWFjdCxcbiAgdHlwZSBXaWRnZXRQcm9wcyBhcyBXaWRnZXRQcm9wc1ByZWFjdCxcbn0gZnJvbSAnQHNpc2Vuc2Uvc2RrLXVpLXByZWFjdCc7XG5cbmltcG9ydCB7XG4gIGNyZWF0ZVNpc2Vuc2VDb250ZXh0Q29ubmVjdG9yLFxuICBjcmVhdGVUaGVtZUNvbnRleHRDb25uZWN0b3IsXG59IGZyb20gJy4uLy4uL2NvbXBvbmVudC13cmFwcGVyLWhlbHBlcnMnO1xuaW1wb3J0IHsgcm9vdElkLCB0ZW1wbGF0ZSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudC13cmFwcGVyLWhlbHBlcnMvdGVtcGxhdGUnO1xuaW1wb3J0IHsgdHJhbnNsYXRlVG9QcmVhY3RXaWRnZXRQcm9wcyB9IGZyb20gJy4uLy4uL2hlbHBlcnMvd2lkZ2V0LXByb3BzLXByZWFjdC10cmFuc2xhdG9yJztcbmltcG9ydCB7IFNpc2Vuc2VDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3Npc2Vuc2UtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IFRoZW1lU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RoZW1lLnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgQ2hhcnREYXRhUG9pbnRDbGlja0V2ZW50LFxuICBDaGFydERhdGFQb2ludENvbnRleHRNZW51RXZlbnQsXG4gIENoYXJ0RGF0YVBvaW50c0V2ZW50LFxufSBmcm9tICcuLi8uLi90eXBlcy9kYXRhLXBvaW50JztcbmltcG9ydCB7IENoYXJ0V2lkZ2V0UHJvcHMgfSBmcm9tICcuL2NoYXJ0LXdpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGl2b3RUYWJsZVdpZGdldFByb3BzIH0gZnJvbSAnLi9waXZvdC10YWJsZS13aWRnZXQuY29tcG9uZW50JztcblxuLyoqXG4gKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIVdpdGhDb21tb25XaWRnZXRQcm9wc31cbiAqL1xuZXhwb3J0IHR5cGUgV2l0aENvbW1vbldpZGdldFByb3BzPEJhc2VXaWRnZXQsIFR5cGU+ID0gQmFzZVdpZGdldCAmIHtcbiAgLyoqXG4gICAqIFVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSB3aWRnZXQgd2l0aGluIHRoZSBjb250YWluZXIgY29tcG9uZW50IChkYXNoYm9hcmQpXG4gICAqXG4gICAqL1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuICAvKipcbiAgICogV2lkZ2V0IHR5cGVcbiAgICovXG4gIHdpZGdldFR5cGU6IFR5cGU7XG4gIC8qKlxuICAgKiBPcHRpb25hbCBoYW5kbGVyIGZ1bmN0aW9uIHRvIHByb2Nlc3MgbWVudSBvcHRpb25zIGJlZm9yZSBvcGVuaW5nIHRoZSBjb250ZXh0IG1lbnUuXG4gICAqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgYmVmb3JlTWVudU9wZW4/OiBCZWZvcmVNZW51T3BlbkhhbmRsZXI7XG59O1xuXG4vKipcbiAqIFByb3BzIG9mIHRoZSB7QGxpbmsgV2lkZ2V0Q29tcG9uZW50fS5cbiAqL1xuZXhwb3J0IHR5cGUgV2lkZ2V0UHJvcHMgPSBTb2Z0VW5pb248XG4gIHwgV2l0aENvbW1vbldpZGdldFByb3BzPENoYXJ0V2lkZ2V0UHJvcHMsICdjaGFydCc+XG4gIHwgV2l0aENvbW1vbldpZGdldFByb3BzPFBpdm90VGFibGVXaWRnZXRQcm9wcywgJ3Bpdm90Jz5cbiAgfCBXaXRoQ29tbW9uV2lkZ2V0UHJvcHM8VGV4dFdpZGdldFByb3BzLCAndGV4dCc+XG4gIHwgV2l0aENvbW1vbldpZGdldFByb3BzPFBsdWdpbldpZGdldFByb3BzLCAncGx1Z2luJz5cbj47XG5cbi8qKlxuICogRmFjYWRlIGNvbXBvbmVudCB0aGF0IHJlbmRlcnMgYSB3aWRnZXQgd2l0aGluIGEgZGFzaGJvYXJkIGJhc2VkIG9uIHRoZSB3aWRnZXQgdHlwZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgaHRtbFxuPCEtLUNvbXBvbmVudCBIVE1MIHRlbXBsYXRlIGluIGV4YW1wbGUuY29tcG9uZW50Lmh0bWwtLT5cbjxjc2RrLXdpZGdldFxuICBbaWRdPVwid2lkZ2V0UHJvcHMuaWRcIlxuICBbdGl0bGVdPVwid2lkZ2V0UHJvcHMudGl0bGVcIlxuICBbd2lkZ2V0VHlwZV09XCJ3aWRnZXRQcm9wcy53aWRnZXRUeXBlXCJcbiAgW2NoYXJ0VHlwZV09XCJ3aWRnZXRQcm9wcy5jaGFydFR5cGVcIlxuICBbZGF0YVNvdXJjZV09XCJ3aWRnZXRQcm9wcy5kYXRhU291cmNlXCJcbiAgW2RhdGFPcHRpb25zXT1cIndpZGdldFByb3BzLmRhdGFPcHRpb25zXCJcbi8+XG4gKiBgYGBcbiAqXG4gKiBgYGB0c1xuLy8gQ29tcG9uZW50IGJlaGF2aW9yIGluIGV4YW1wbGUuY29tcG9uZW50LnRzXG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHR5cGUgV2lkZ2V0UHJvcHMgfSBmcm9tICdAc2lzZW5zZS9zZGstdWktYW5ndWxhcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2V4YW1wbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vZXhhbXBsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2V4YW1wbGUuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRXhhbXBsZUNvbXBvbmVudCB7XG4gIHdpZGdldFByb3BzOiBXaWRnZXRQcm9wcyA9IHtcbiAgICBpZDogJ3dpZGdldC1pZCcsXG4gICAgd2lkZ2V0VHlwZTogJ2NoYXJ0JyxcbiAgICBjaGFydFR5cGU6ICdjb2x1bW4nLFxuICAgIHRpdGxlOiAnV2lkZ2V0IFRpdGxlJyxcbiAgICBkYXRhU291cmNlOiBETS5EYXRhU291cmNlLFxuICAgIGRhdGFPcHRpb25zOiB7XG4gICAgICBjYXRlZ29yeTogW0RNLkRpdmlzaW9ucy5EaXZpc29uX25hbWVdLFxuICAgICAgdmFsdWU6IFttZWFzdXJlRmFjdG9yeS5zdW0oRE0uQWRtaXNzaW9ucy5Db3N0X29mX2FkbWlzc2lvbildLFxuICAgICAgYnJlYWtCeTogW10sXG4gICAgfSxcbiAgfTtcbn1cbiAqIGBgYFxuICogPGltZyBzcmM9XCJtZWRpYTovL2FuZ3VsYXItY2hhcnQtd2lkZ2V0LWV4YW1wbGUucG5nXCIgd2lkdGg9XCI1MDBweFwiIC8+XG4gKiBAZ3JvdXAgRGFzaGJvYXJkc1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjc2RrLXdpZGdldCcsXG4gIHRlbXBsYXRlLFxufSlcbmV4cG9ydCBjbGFzcyBXaWRnZXRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgQFZpZXdDaGlsZChyb290SWQpXG4gIHByZWFjdFJlZiE6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgaWRlbnRpZmllciBvZiB0aGUgd2lkZ2V0XG4gICAqXG4gICAqIEBjYXRlZ29yeSBXaWRnZXRcbiAgICovXG4gIEBJbnB1dCgpXG4gIGlkITogV2lkZ2V0UHJvcHNbJ2lkJ107XG5cbiAgLyoqXG4gICAqIFdpZGdldCB0eXBlXG4gICAqXG4gICAqIEBjYXRlZ29yeSBXaWRnZXRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHdpZGdldFR5cGUhOiBXaWRnZXRQcm9wc1snd2lkZ2V0VHlwZSddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUNoYXJ0V2lkZ2V0UHJvcHMuY2hhcnRUeXBlfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2hhcnRcbiAgICovXG4gIEBJbnB1dCgpXG4gIGNoYXJ0VHlwZTogV2lkZ2V0UHJvcHNbJ2NoYXJ0VHlwZSddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIVBsdWdpbldpZGdldFByb3BzLnBsdWdpblR5cGV9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBXaWRnZXRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHBsdWdpblR5cGU6IFdpZGdldFByb3BzWydwbHVnaW5UeXBlJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQ2hhcnRXaWRnZXRQcm9wcy5kYXRhU291cmNlfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgRGF0YVxuICAgKi9cbiAgQElucHV0KClcbiAgZGF0YVNvdXJjZTogV2lkZ2V0UHJvcHNbJ2RhdGFTb3VyY2UnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFDaGFydFdpZGdldFByb3BzLmRhdGFPcHRpb25zfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2hhcnRcbiAgICovXG4gIEBJbnB1dCgpXG4gIGRhdGFPcHRpb25zOiBXaWRnZXRQcm9wc1snZGF0YU9wdGlvbnMnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFDaGFydFdpZGdldFByb3BzLmZpbHRlcnN9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBEYXRhXG4gICAqL1xuICBASW5wdXQoKVxuICBmaWx0ZXJzOiBXaWRnZXRQcm9wc1snZmlsdGVycyddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUNoYXJ0V2lkZ2V0UHJvcHMuaGlnaGxpZ2h0c31cbiAgICpcbiAgICogQGNhdGVnb3J5IERhdGFcbiAgICovXG4gIEBJbnB1dCgpXG4gIGhpZ2hsaWdodHM6IFdpZGdldFByb3BzWydoaWdobGlnaHRzJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQ2hhcnRXaWRnZXRQcm9wcy5zdHlsZU9wdGlvbnN9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBXaWRnZXRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHN0eWxlT3B0aW9uczogV2lkZ2V0UHJvcHNbJ3N0eWxlT3B0aW9ucyddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUNoYXJ0V2lkZ2V0UHJvcHMuZHJpbGxkb3duT3B0aW9uc31cbiAgICpcbiAgICogQGNhdGVnb3J5IFdpZGdldFxuICAgKi9cbiAgQElucHV0KClcbiAgZHJpbGxkb3duT3B0aW9uczogV2lkZ2V0UHJvcHNbJ2RyaWxsZG93bk9wdGlvbnMnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFDaGFydFdpZGdldFByb3BzLnRpdGxlfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgV2lkZ2V0XG4gICAqL1xuICBASW5wdXQoKVxuICB0aXRsZTogV2lkZ2V0UHJvcHNbJ3RpdGxlJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQ2hhcnRXaWRnZXRQcm9wcy5kZXNjcmlwdGlvbn1cbiAgICpcbiAgICogQGNhdGVnb3J5IFdpZGdldFxuICAgKi9cbiAgQElucHV0KClcbiAgZGVzY3JpcHRpb246IFdpZGdldFByb3BzWydkZXNjcmlwdGlvbiddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUNoYXJ0V2lkZ2V0UHJvcHMuaGlnaGxpZ2h0U2VsZWN0aW9uRGlzYWJsZWR9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBXaWRnZXRcbiAgICogQGludGVybmFsXG4gICAqL1xuICBASW5wdXQoKVxuICBoaWdobGlnaHRTZWxlY3Rpb25EaXNhYmxlZDogV2lkZ2V0UHJvcHNbJ2hpZ2hsaWdodFNlbGVjdGlvbkRpc2FibGVkJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQ2hhcnRXaWRnZXRQcm9wcy5vbkJlZm9yZVJlbmRlcn1cbiAgICpcbiAgICogQGNhdGVnb3J5IENhbGxiYWNrc1xuICAgKi9cbiAgQElucHV0KClcbiAgYmVmb3JlUmVuZGVyOiBXaWRnZXRQcm9wc1snYmVmb3JlUmVuZGVyJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQ2hhcnRXaWRnZXRQcm9wcy5vbkRhdGFSZWFkeX1cbiAgICpcbiAgICogQGNhdGVnb3J5IENhbGxiYWNrc1xuICAgKi9cbiAgQElucHV0KClcbiAgZGF0YVJlYWR5OiBXaWRnZXRQcm9wc1snZGF0YVJlYWR5J107XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGhhbmRsZXIgZnVuY3Rpb24gdG8gcHJvY2VzcyBtZW51IG9wdGlvbnMgYmVmb3JlIG9wZW5pbmcgdGhlIGNvbnRleHQgbWVudS5cbiAgICpcbiAgICogQGNhdGVnb3J5IENhbGxiYWNrc1xuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIEBJbnB1dCgpXG4gIGJlZm9yZU1lbnVPcGVuOiBXaWRnZXRQcm9wc1snYmVmb3JlTWVudU9wZW4nXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFDaGFydFdpZGdldFByb3BzLm9uRGF0YVBvaW50Q2xpY2t9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDYWxsYmFja3NcbiAgICovXG4gIEBPdXRwdXQoKVxuICBkYXRhUG9pbnRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8Q2hhcnREYXRhUG9pbnRDbGlja0V2ZW50PigpO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUNoYXJ0V2lkZ2V0UHJvcHMub25EYXRhUG9pbnRDb250ZXh0TWVudX1cbiAgICpcbiAgICogQGNhdGVnb3J5IENhbGxiYWNrc1xuICAgKi9cbiAgQE91dHB1dCgpXG4gIGRhdGFQb2ludENvbnRleHRNZW51ID0gbmV3IEV2ZW50RW1pdHRlcjxDaGFydERhdGFQb2ludENvbnRleHRNZW51RXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQ2hhcnRXaWRnZXRQcm9wcy5vbkRhdGFQb2ludHNTZWxlY3RlZH1cbiAgICpcbiAgICogQGNhdGVnb3J5IENhbGxiYWNrc1xuICAgKi9cbiAgQE91dHB1dCgpXG4gIGRhdGFQb2ludHNTZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPENoYXJ0RGF0YVBvaW50c0V2ZW50PigpO1xuXG4gIHByaXZhdGUgY29tcG9uZW50QWRhcHRlcjogQ29tcG9uZW50QWRhcHRlcjx0eXBlb2YgV2lkZ2V0UHJlYWN0PjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNpc2Vuc2VDb250ZXh0U2VydmljZTogU2lzZW5zZUNvbnRleHRTZXJ2aWNlLFxuICAgIHByaXZhdGUgdGhlbWVTZXJ2aWNlOiBUaGVtZVNlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuY29tcG9uZW50QWRhcHRlciA9IG5ldyBDb21wb25lbnRBZGFwdGVyKFdpZGdldFByZWFjdCwgW1xuICAgICAgY3JlYXRlU2lzZW5zZUNvbnRleHRDb25uZWN0b3IodGhpcy5zaXNlbnNlQ29udGV4dFNlcnZpY2UpLFxuICAgICAgY3JlYXRlVGhlbWVDb250ZXh0Q29ubmVjdG9yKHRoaXMudGhlbWVTZXJ2aWNlKSxcbiAgICBdKTtcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuY29tcG9uZW50QWRhcHRlci5yZW5kZXIodGhpcy5wcmVhY3RSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5nZXRQcmVhY3RDb21wb25lbnRQcm9wcygpKTtcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgaWYgKHRoaXMucHJlYWN0UmVmKSB7XG4gICAgICB0aGlzLmNvbXBvbmVudEFkYXB0ZXIucmVuZGVyKHRoaXMucHJlYWN0UmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMuZ2V0UHJlYWN0Q29tcG9uZW50UHJvcHMoKSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRQcmVhY3RDb21wb25lbnRQcm9wcygpOiBXaWRnZXRQcm9wc1ByZWFjdCB7XG4gICAgcmV0dXJuIHRyYW5zbGF0ZVRvUHJlYWN0V2lkZ2V0UHJvcHMoe1xuICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICB3aWRnZXRUeXBlOiB0aGlzLndpZGdldFR5cGUsXG4gICAgICBjaGFydFR5cGU6IHRoaXMuY2hhcnRUeXBlLFxuICAgICAgcGx1Z2luVHlwZTogdGhpcy5wbHVnaW5UeXBlLFxuICAgICAgZGF0YVNvdXJjZTogdGhpcy5kYXRhU291cmNlLFxuICAgICAgZGF0YU9wdGlvbnM6IHRoaXMuZGF0YU9wdGlvbnMsXG4gICAgICBmaWx0ZXJzOiB0aGlzLmZpbHRlcnMsXG4gICAgICBoaWdobGlnaHRzOiB0aGlzLmhpZ2hsaWdodHMsXG4gICAgICBzdHlsZU9wdGlvbnM6IHRoaXMuc3R5bGVPcHRpb25zLFxuICAgICAgZHJpbGxkb3duT3B0aW9uczogdGhpcy5kcmlsbGRvd25PcHRpb25zLFxuICAgICAgdGl0bGU6IHRoaXMudGl0bGUsXG4gICAgICBkZXNjcmlwdGlvbjogdGhpcy5kZXNjcmlwdGlvbixcbiAgICAgIGhpZ2hsaWdodFNlbGVjdGlvbkRpc2FibGVkOiB0aGlzLmhpZ2hsaWdodFNlbGVjdGlvbkRpc2FibGVkLFxuICAgICAgYmVmb3JlUmVuZGVyOiB0aGlzLmJlZm9yZVJlbmRlcj8uYmluZCh0aGlzKSxcbiAgICAgIGRhdGFSZWFkeTogdGhpcy5kYXRhUmVhZHk/LmJpbmQodGhpcyksXG4gICAgICBiZWZvcmVNZW51T3BlbjogdGhpcy5iZWZvcmVNZW51T3Blbj8uYmluZCh0aGlzKSxcbiAgICAgIGRhdGFQb2ludENsaWNrOiB0aGlzLmRhdGFQb2ludENsaWNrLmVtaXQuYmluZCh0aGlzLmRhdGFQb2ludENsaWNrKSxcbiAgICAgIGRhdGFQb2ludENvbnRleHRNZW51OiB0aGlzLmRhdGFQb2ludENvbnRleHRNZW51LmVtaXQuYmluZCh0aGlzLmRhdGFQb2ludENvbnRleHRNZW51KSxcbiAgICAgIGRhdGFQb2ludHNTZWxlY3Q6IHRoaXMuZGF0YVBvaW50c1NlbGVjdC5lbWl0LmJpbmQodGhpcy5kYXRhUG9pbnRzU2VsZWN0KSxcbiAgICB9IGFzIFdpZGdldFByb3BzKTtcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5jb21wb25lbnRBZGFwdGVyLmRlc3Ryb3koKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { translateFromPreactWidgetProps, translateToPreactWidgetProps, } from './widget-props-preact-translator';
|
|
2
|
+
export function translateToPreactDashboardProps(dashboardProps) {
|
|
3
|
+
return {
|
|
4
|
+
...dashboardProps,
|
|
5
|
+
widgets: dashboardProps.widgets.map(translateToPreactWidgetProps),
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export function translateFromPreactDashboardProps(dashboardProps) {
|
|
9
|
+
return {
|
|
10
|
+
...dashboardProps,
|
|
11
|
+
widgets: dashboardProps.widgets.map(translateFromPreactWidgetProps),
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLXByb3BzLXByZWFjdC10cmFuc2xhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9oZWxwZXJzL2Rhc2hib2FyZC1wcm9wcy1wcmVhY3QtdHJhbnNsYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQ0wsOEJBQThCLEVBQzlCLDRCQUE0QixHQUM3QixNQUFNLGtDQUFrQyxDQUFDO0FBRTFDLE1BQU0sVUFBVSwrQkFBK0IsQ0FDN0MsY0FBOEI7SUFFOUIsT0FBTztRQUNMLEdBQUcsY0FBYztRQUNqQixPQUFPLEVBQUUsY0FBYyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsNEJBQTRCLENBQUM7S0FDbEUsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsaUNBQWlDLENBQy9DLGNBQW9DO0lBRXBDLE9BQU87UUFDTCxHQUFHLGNBQWM7UUFDakIsT0FBTyxFQUFFLGNBQWMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLDhCQUE4QixDQUFDO0tBQ3BFLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGFzaGJvYXJkUHJvcHMgYXMgRGFzaGJvYXJkUHJvcHNQcmVhY3QgfSBmcm9tICdAc2lzZW5zZS9zZGstdWktcHJlYWN0JztcblxuaW1wb3J0IHsgRGFzaGJvYXJkUHJvcHMgfSBmcm9tICcuLi9jb21wb25lbnRzL2Rhc2hib2FyZCc7XG5pbXBvcnQge1xuICB0cmFuc2xhdGVGcm9tUHJlYWN0V2lkZ2V0UHJvcHMsXG4gIHRyYW5zbGF0ZVRvUHJlYWN0V2lkZ2V0UHJvcHMsXG59IGZyb20gJy4vd2lkZ2V0LXByb3BzLXByZWFjdC10cmFuc2xhdG9yJztcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zbGF0ZVRvUHJlYWN0RGFzaGJvYXJkUHJvcHMoXG4gIGRhc2hib2FyZFByb3BzOiBEYXNoYm9hcmRQcm9wcyxcbik6IERhc2hib2FyZFByb3BzUHJlYWN0IHtcbiAgcmV0dXJuIHtcbiAgICAuLi5kYXNoYm9hcmRQcm9wcyxcbiAgICB3aWRnZXRzOiBkYXNoYm9hcmRQcm9wcy53aWRnZXRzLm1hcCh0cmFuc2xhdGVUb1ByZWFjdFdpZGdldFByb3BzKSxcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zbGF0ZUZyb21QcmVhY3REYXNoYm9hcmRQcm9wcyhcbiAgZGFzaGJvYXJkUHJvcHM6IERhc2hib2FyZFByb3BzUHJlYWN0LFxuKTogRGFzaGJvYXJkUHJvcHMge1xuICByZXR1cm4ge1xuICAgIC4uLmRhc2hib2FyZFByb3BzLFxuICAgIHdpZGdldHM6IGRhc2hib2FyZFByb3BzLndpZGdldHMubWFwKHRyYW5zbGF0ZUZyb21QcmVhY3RXaWRnZXRQcm9wcyksXG4gIH07XG59XG4iXX0=
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
/**
|
|
3
|
+
* An extended version of Angular's `EventEmitter` that tracks
|
|
4
|
+
* whether any listeners (subscribers) are attached.
|
|
5
|
+
*
|
|
6
|
+
* Useful when you need to know if an `@Output()` is being observed
|
|
7
|
+
* in the template (i.e., bound with `(event)="..."`).
|
|
8
|
+
*
|
|
9
|
+
* @template T - The type of values emitted by the EventEmitter.
|
|
10
|
+
*/
|
|
11
|
+
export class EventEmitterWithHasListeners extends EventEmitter {
|
|
12
|
+
constructor() {
|
|
13
|
+
super(...arguments);
|
|
14
|
+
/**
|
|
15
|
+
* Indicates whether the EventEmitter has at least one active subscriber.
|
|
16
|
+
*/
|
|
17
|
+
this.hasListeners = false;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Overrides the default `subscribe()` method to set `hasListeners` to true
|
|
21
|
+
* when a new subscriber is added.
|
|
22
|
+
*
|
|
23
|
+
* @param args - The arguments passed to the `subscribe()` method.
|
|
24
|
+
* @returns A subscription object used to unsubscribe from the event.
|
|
25
|
+
*/
|
|
26
|
+
subscribe(...args) {
|
|
27
|
+
this.hasListeners = true;
|
|
28
|
+
return super.subscribe(...args);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtZW1pdHRlci13aXRoLWhhcy1saXN0ZW5lcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2hlbHBlcnMvZXZlbnQtZW1pdHRlci13aXRoLWhhcy1saXN0ZW5lcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3Qzs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sT0FBTyw0QkFBZ0MsU0FBUSxZQUFlO0lBQXBFOztRQUNFOztXQUVHO1FBQ0gsaUJBQVksR0FBRyxLQUFLLENBQUM7SUFldkIsQ0FBQztJQWJDOzs7Ozs7T0FNRztJQUNNLFNBQVMsQ0FDaEIsR0FBRyxJQUE4QztRQUVqRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUN6QixPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBBbiBleHRlbmRlZCB2ZXJzaW9uIG9mIEFuZ3VsYXIncyBgRXZlbnRFbWl0dGVyYCB0aGF0IHRyYWNrc1xuICogd2hldGhlciBhbnkgbGlzdGVuZXJzIChzdWJzY3JpYmVycykgYXJlIGF0dGFjaGVkLlxuICpcbiAqIFVzZWZ1bCB3aGVuIHlvdSBuZWVkIHRvIGtub3cgaWYgYW4gYEBPdXRwdXQoKWAgaXMgYmVpbmcgb2JzZXJ2ZWRcbiAqIGluIHRoZSB0ZW1wbGF0ZSAoaS5lLiwgYm91bmQgd2l0aCBgKGV2ZW50KT1cIi4uLlwiYCkuXG4gKlxuICogQHRlbXBsYXRlIFQgLSBUaGUgdHlwZSBvZiB2YWx1ZXMgZW1pdHRlZCBieSB0aGUgRXZlbnRFbWl0dGVyLlxuICovXG5leHBvcnQgY2xhc3MgRXZlbnRFbWl0dGVyV2l0aEhhc0xpc3RlbmVyczxUPiBleHRlbmRzIEV2ZW50RW1pdHRlcjxUPiB7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0aGUgRXZlbnRFbWl0dGVyIGhhcyBhdCBsZWFzdCBvbmUgYWN0aXZlIHN1YnNjcmliZXIuXG4gICAqL1xuICBoYXNMaXN0ZW5lcnMgPSBmYWxzZTtcblxuICAvKipcbiAgICogT3ZlcnJpZGVzIHRoZSBkZWZhdWx0IGBzdWJzY3JpYmUoKWAgbWV0aG9kIHRvIHNldCBgaGFzTGlzdGVuZXJzYCB0byB0cnVlXG4gICAqIHdoZW4gYSBuZXcgc3Vic2NyaWJlciBpcyBhZGRlZC5cbiAgICpcbiAgICogQHBhcmFtIGFyZ3MgLSBUaGUgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgYHN1YnNjcmliZSgpYCBtZXRob2QuXG4gICAqIEByZXR1cm5zIEEgc3Vic2NyaXB0aW9uIG9iamVjdCB1c2VkIHRvIHVuc3Vic2NyaWJlIGZyb20gdGhlIGV2ZW50LlxuICAgKi9cbiAgb3ZlcnJpZGUgc3Vic2NyaWJlKFxuICAgIC4uLmFyZ3M6IFBhcmFtZXRlcnM8RXZlbnRFbWl0dGVyPFQ+WydzdWJzY3JpYmUnXT5cbiAgKTogUmV0dXJuVHlwZTxFdmVudEVtaXR0ZXI8VD5bJ3N1YnNjcmliZSddPiB7XG4gICAgdGhpcy5oYXNMaXN0ZW5lcnMgPSB0cnVlO1xuICAgIHJldHVybiBzdXBlci5zdWJzY3JpYmUoLi4uYXJncyk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './event-emitter-with-has-listeners';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2hlbHBlcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQ0FBb0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZXZlbnQtZW1pdHRlci13aXRoLWhhcy1saXN0ZW5lcnMnO1xuIl19
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export function translateToPreactWidgetProps(widgetProps) {
|
|
2
|
+
const { beforeRender, dataReady, beforeMenuOpen, dataPointClick, dataPointContextMenu, dataPointsSelect, ...commonWidgetProps } = widgetProps;
|
|
3
|
+
return {
|
|
4
|
+
...commonWidgetProps,
|
|
5
|
+
onBeforeRender: beforeRender,
|
|
6
|
+
onDataReady: dataReady,
|
|
7
|
+
onBeforeMenuOpen: beforeMenuOpen,
|
|
8
|
+
onDataPointClick: dataPointClick
|
|
9
|
+
? (...[point, nativeEvent]) => dataPointClick({ point, nativeEvent })
|
|
10
|
+
: undefined,
|
|
11
|
+
onDataPointContextMenu: dataPointContextMenu
|
|
12
|
+
? (...[point, nativeEvent]) => dataPointContextMenu({ point, nativeEvent })
|
|
13
|
+
: undefined,
|
|
14
|
+
onDataPointsSelected: dataPointsSelect
|
|
15
|
+
? (...[points, nativeEvent]) => dataPointsSelect({ points, nativeEvent })
|
|
16
|
+
: undefined,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export function translateFromPreactWidgetProps(widgetProps) {
|
|
20
|
+
const { onBeforeRender, onDataReady, onBeforeMenuOpen, onDataPointClick, onDataPointContextMenu, onDataPointsSelected, ...commonWidgetProps } = widgetProps;
|
|
21
|
+
return {
|
|
22
|
+
...commonWidgetProps,
|
|
23
|
+
beforeRender: onBeforeRender,
|
|
24
|
+
dataReady: onDataReady,
|
|
25
|
+
beforeMenuOpen: onBeforeMenuOpen,
|
|
26
|
+
dataPointClick: onDataPointClick
|
|
27
|
+
? ({ point, nativeEvent }) => onDataPointClick(point, nativeEvent)
|
|
28
|
+
: undefined,
|
|
29
|
+
dataPointContextMenu: onDataPointContextMenu
|
|
30
|
+
? ({ point, nativeEvent }) => onDataPointContextMenu(point, nativeEvent)
|
|
31
|
+
: undefined,
|
|
32
|
+
dataPointsSelect: onDataPointsSelected
|
|
33
|
+
? ({ points, nativeEvent }) => onDataPointsSelected(points, nativeEvent)
|
|
34
|
+
: undefined,
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXByb3BzLXByZWFjdC10cmFuc2xhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9oZWxwZXJzL3dpZGdldC1wcm9wcy1wcmVhY3QtdHJhbnNsYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFhQSxNQUFNLFVBQVUsNEJBQTRCLENBQUMsV0FBd0I7SUFDbkUsTUFBTSxFQUNKLFlBQVksRUFDWixTQUFTLEVBQ1QsY0FBYyxFQUNkLGNBQWMsRUFDZCxvQkFBb0IsRUFDcEIsZ0JBQWdCLEVBQ2hCLEdBQUcsaUJBQWlCLEVBQ3JCLEdBQUcsV0FBVyxDQUFDO0lBQ2hCLE9BQU87UUFDTCxHQUFHLGlCQUFpQjtRQUNwQixjQUFjLEVBQUUsWUFBWTtRQUM1QixXQUFXLEVBQUUsU0FBUztRQUN0QixnQkFBZ0IsRUFBRSxjQUFjO1FBQ2hDLGdCQUFnQixFQUFFLGNBQWM7WUFDOUIsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQXVELEVBQUUsRUFBRSxDQUNoRixjQUFjLENBQUMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUE4QixDQUFDO1lBQ3RFLENBQUMsQ0FBQyxTQUFTO1FBQ2Isc0JBQXNCLEVBQUUsb0JBQW9CO1lBQzFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUE2RCxFQUFFLEVBQUUsQ0FDdEYsb0JBQW9CLENBQUMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFvQyxDQUFDO1lBQ2xGLENBQUMsQ0FBQyxTQUFTO1FBQ2Isb0JBQW9CLEVBQUUsZ0JBQWdCO1lBQ3BDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUEyRCxFQUFFLEVBQUUsQ0FDckYsZ0JBQWdCLENBQUMsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUEwQixDQUFDO1lBQ3JFLENBQUMsQ0FBQyxTQUFTO0tBQ08sQ0FBQztBQUN6QixDQUFDO0FBRUQsTUFBTSxVQUFVLDhCQUE4QixDQUFDLFdBQThCO0lBQzNFLE1BQU0sRUFDSixjQUFjLEVBQ2QsV0FBVyxFQUNYLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsc0JBQXNCLEVBQ3RCLG9CQUFvQixFQUNwQixHQUFHLGlCQUFpQixFQUNyQixHQUFHLFdBQW9DLENBQUM7SUFDekMsT0FBTztRQUNMLEdBQUcsaUJBQWlCO1FBQ3BCLFlBQVksRUFBRSxjQUFjO1FBQzVCLFNBQVMsRUFBRSxXQUFXO1FBQ3RCLGNBQWMsRUFBRSxnQkFBZ0I7UUFDaEMsY0FBYyxFQUFFLGdCQUFnQjtZQUM5QixDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQTRCLEVBQUUsRUFBRSxDQUNuRCxnQkFBZ0IsQ0FBQyxLQUFZLEVBQUUsV0FBa0IsQ0FBQztZQUN0RCxDQUFDLENBQUMsU0FBUztRQUNiLG9CQUFvQixFQUFFLHNCQUFzQjtZQUMxQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQWtDLEVBQUUsRUFBRSxDQUN6RCxzQkFBc0IsQ0FBQyxLQUFZLEVBQUUsV0FBa0IsQ0FBQztZQUM1RCxDQUFDLENBQUMsU0FBUztRQUNiLGdCQUFnQixFQUFFLG9CQUFvQjtZQUNwQyxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQXdCLEVBQUUsRUFBRSxDQUNoRCxvQkFBb0IsQ0FBQyxNQUFhLEVBQUUsV0FBa0IsQ0FBQztZQUMzRCxDQUFDLENBQUMsU0FBUztLQUNDLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby11bm5lY2Vzc2FyeS10eXBlLWFzc2VydGlvbiAqL1xuaW1wb3J0IHsgU29mdFVuaW9uLCBXaWRnZXRQcm9wcyBhcyBXaWRnZXRQcm9wc1ByZWFjdCB9IGZyb20gJ0BzaXNlbnNlL3Nkay11aS1wcmVhY3QnO1xuXG5pbXBvcnQgeyBXaWRnZXRQcm9wcyB9IGZyb20gJy4uL2NvbXBvbmVudHMvd2lkZ2V0cyc7XG5pbXBvcnQge1xuICBBcmd1bWVudHMsXG4gIENoYXJ0RGF0YVBvaW50Q2xpY2tFdmVudCxcbiAgQ2hhcnREYXRhUG9pbnRDb250ZXh0TWVudUV2ZW50LFxuICBDaGFydERhdGFQb2ludHNFdmVudCxcbn0gZnJvbSAnLi4vdHlwZXMnO1xuXG50eXBlIFNvZnRXaWRnZXRQcm9wc1ByZWFjdCA9IFNvZnRVbmlvbjxXaWRnZXRQcm9wc1ByZWFjdD47XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2xhdGVUb1ByZWFjdFdpZGdldFByb3BzKHdpZGdldFByb3BzOiBXaWRnZXRQcm9wcyk6IFdpZGdldFByb3BzUHJlYWN0IHtcbiAgY29uc3Qge1xuICAgIGJlZm9yZVJlbmRlcixcbiAgICBkYXRhUmVhZHksXG4gICAgYmVmb3JlTWVudU9wZW4sXG4gICAgZGF0YVBvaW50Q2xpY2ssXG4gICAgZGF0YVBvaW50Q29udGV4dE1lbnUsXG4gICAgZGF0YVBvaW50c1NlbGVjdCxcbiAgICAuLi5jb21tb25XaWRnZXRQcm9wc1xuICB9ID0gd2lkZ2V0UHJvcHM7XG4gIHJldHVybiB7XG4gICAgLi4uY29tbW9uV2lkZ2V0UHJvcHMsXG4gICAgb25CZWZvcmVSZW5kZXI6IGJlZm9yZVJlbmRlcixcbiAgICBvbkRhdGFSZWFkeTogZGF0YVJlYWR5LFxuICAgIG9uQmVmb3JlTWVudU9wZW46IGJlZm9yZU1lbnVPcGVuLFxuICAgIG9uRGF0YVBvaW50Q2xpY2s6IGRhdGFQb2ludENsaWNrXG4gICAgICA/ICguLi5bcG9pbnQsIG5hdGl2ZUV2ZW50XTogQXJndW1lbnRzPFNvZnRXaWRnZXRQcm9wc1ByZWFjdFsnb25EYXRhUG9pbnRDbGljayddPikgPT5cbiAgICAgICAgICBkYXRhUG9pbnRDbGljayh7IHBvaW50LCBuYXRpdmVFdmVudCB9IGFzIENoYXJ0RGF0YVBvaW50Q2xpY2tFdmVudClcbiAgICAgIDogdW5kZWZpbmVkLFxuICAgIG9uRGF0YVBvaW50Q29udGV4dE1lbnU6IGRhdGFQb2ludENvbnRleHRNZW51XG4gICAgICA/ICguLi5bcG9pbnQsIG5hdGl2ZUV2ZW50XTogQXJndW1lbnRzPFNvZnRXaWRnZXRQcm9wc1ByZWFjdFsnb25EYXRhUG9pbnRDb250ZXh0TWVudSddPikgPT5cbiAgICAgICAgICBkYXRhUG9pbnRDb250ZXh0TWVudSh7IHBvaW50LCBuYXRpdmVFdmVudCB9IGFzIENoYXJ0RGF0YVBvaW50Q29udGV4dE1lbnVFdmVudClcbiAgICAgIDogdW5kZWZpbmVkLFxuICAgIG9uRGF0YVBvaW50c1NlbGVjdGVkOiBkYXRhUG9pbnRzU2VsZWN0XG4gICAgICA/ICguLi5bcG9pbnRzLCBuYXRpdmVFdmVudF06IEFyZ3VtZW50czxTb2Z0V2lkZ2V0UHJvcHNQcmVhY3RbJ29uRGF0YVBvaW50c1NlbGVjdGVkJ10+KSA9PlxuICAgICAgICAgIGRhdGFQb2ludHNTZWxlY3QoeyBwb2ludHMsIG5hdGl2ZUV2ZW50IH0gYXMgQ2hhcnREYXRhUG9pbnRzRXZlbnQpXG4gICAgICA6IHVuZGVmaW5lZCxcbiAgfSBhcyBXaWRnZXRQcm9wc1ByZWFjdDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zbGF0ZUZyb21QcmVhY3RXaWRnZXRQcm9wcyh3aWRnZXRQcm9wczogV2lkZ2V0UHJvcHNQcmVhY3QpOiBXaWRnZXRQcm9wcyB7XG4gIGNvbnN0IHtcbiAgICBvbkJlZm9yZVJlbmRlcixcbiAgICBvbkRhdGFSZWFkeSxcbiAgICBvbkJlZm9yZU1lbnVPcGVuLFxuICAgIG9uRGF0YVBvaW50Q2xpY2ssXG4gICAgb25EYXRhUG9pbnRDb250ZXh0TWVudSxcbiAgICBvbkRhdGFQb2ludHNTZWxlY3RlZCxcbiAgICAuLi5jb21tb25XaWRnZXRQcm9wc1xuICB9ID0gd2lkZ2V0UHJvcHMgYXMgU29mdFdpZGdldFByb3BzUHJlYWN0O1xuICByZXR1cm4ge1xuICAgIC4uLmNvbW1vbldpZGdldFByb3BzLFxuICAgIGJlZm9yZVJlbmRlcjogb25CZWZvcmVSZW5kZXIsXG4gICAgZGF0YVJlYWR5OiBvbkRhdGFSZWFkeSxcbiAgICBiZWZvcmVNZW51T3Blbjogb25CZWZvcmVNZW51T3BlbixcbiAgICBkYXRhUG9pbnRDbGljazogb25EYXRhUG9pbnRDbGlja1xuICAgICAgPyAoeyBwb2ludCwgbmF0aXZlRXZlbnQgfTogQ2hhcnREYXRhUG9pbnRDbGlja0V2ZW50KSA9PlxuICAgICAgICAgIG9uRGF0YVBvaW50Q2xpY2socG9pbnQgYXMgYW55LCBuYXRpdmVFdmVudCBhcyBhbnkpXG4gICAgICA6IHVuZGVmaW5lZCxcbiAgICBkYXRhUG9pbnRDb250ZXh0TWVudTogb25EYXRhUG9pbnRDb250ZXh0TWVudVxuICAgICAgPyAoeyBwb2ludCwgbmF0aXZlRXZlbnQgfTogQ2hhcnREYXRhUG9pbnRDb250ZXh0TWVudUV2ZW50KSA9PlxuICAgICAgICAgIG9uRGF0YVBvaW50Q29udGV4dE1lbnUocG9pbnQgYXMgYW55LCBuYXRpdmVFdmVudCBhcyBhbnkpXG4gICAgICA6IHVuZGVmaW5lZCxcbiAgICBkYXRhUG9pbnRzU2VsZWN0OiBvbkRhdGFQb2ludHNTZWxlY3RlZFxuICAgICAgPyAoeyBwb2ludHMsIG5hdGl2ZUV2ZW50IH06IENoYXJ0RGF0YVBvaW50c0V2ZW50KSA9PlxuICAgICAgICAgIG9uRGF0YVBvaW50c1NlbGVjdGVkKHBvaW50cyBhcyBhbnksIG5hdGl2ZUV2ZW50IGFzIGFueSlcbiAgICAgIDogdW5kZWZpbmVkLFxuICB9IGFzIFdpZGdldFByb3BzO1xufVxuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
// This file re-exports common types/utils from @sisense/sdk-ui-preact
|
|
2
2
|
// Re-exports utils from @sisense/sdk-ui-preact
|
|
3
3
|
export { boxWhiskerProcessResult } from '@sisense/sdk-ui-preact';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrLXVpLWNvcmUtZXhwb3J0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvc2RrLXVpLWNvcmUtZXhwb3J0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzRUFBc0U7QUFFdEUsK0NBQStDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gVGhpcyBmaWxlIHJlLWV4cG9ydHMgY29tbW9uIHR5cGVzL3V0aWxzIGZyb20gQHNpc2Vuc2Uvc2RrLXVpLXByZWFjdFxuXG4vLyBSZS1leHBvcnRzIHV0aWxzIGZyb20gQHNpc2Vuc2Uvc2RrLXVpLXByZWFjdFxuZXhwb3J0IHsgYm94V2hpc2tlclByb2Nlc3NSZXN1bHQgfSBmcm9tICdAc2lzZW5zZS9zZGstdWktcHJlYWN0JztcblxuLy8gUmUtZXhwb3J0cyB0eXBlcyBmcm9tIEBzaXNlbnNlL3Nkay11aS1wcmVhY3RcbmV4cG9ydCB0eXBlIHtcbiAgLy8gR2VuZXJhbCAoT3RoZXJzKTpcbiAgQXBwQ29uZmlnLFxuICBBcmVhbWFwQ2hhcnREYXRhT3B0aW9ucyxcbiAgQXJlYW1hcENoYXJ0VHlwZSxcbiAgQXJlYW1hcFN0eWxlT3B0aW9ucyxcbiAgQXJlYVJhbmdlU3R5bGVPcHRpb25zLFxuICBBcmVhU3R5bGVPcHRpb25zLFxuICBBcmVhU3VidHlwZSxcbiAgQXhpc0xhYmVsLFxuICAvLyBDaGFydHMgcmVsYXRlZDpcbiAgQmVmb3JlUmVuZGVySGFuZGxlcixcbiAgQm94cGxvdENoYXJ0Q3VzdG9tRGF0YU9wdGlvbnMsXG4gIEJveHBsb3RDaGFydERhdGFPcHRpb25zLFxuICBCb3hwbG90Q2hhcnRUeXBlLFxuICBCb3hwbG90RGF0YVBvaW50LFxuICBCb3hwbG90U3R5bGVPcHRpb25zLFxuICBCb3hwbG90U3VidHlwZSxcbiAgQm94V2hpc2tlclR5cGUsXG4gIENhcnRlc2lhbkNoYXJ0RGF0YU9wdGlvbnMsXG4gIENhcnRlc2lhbkNoYXJ0VHlwZSxcbiAgQ2FydGVzaWFuV2lkZ2V0VHlwZSxcbiAgQ2F0ZWdvcmljYWxDaGFydERhdGFPcHRpb25zLFxuICBDYXRlZ29yaWNhbENoYXJ0VHlwZSxcbiAgQ2F0ZWdvcmljYWxXaWRnZXRUeXBlLFxuICAvLyBEYXRhIE9wdGlvbnM6XG4gIENoYXJ0RGF0YU9wdGlvbnMsXG4gIC8vIFN0eWxlIE9wdGlvbnM6XG4gIENoYXJ0U3R5bGVPcHRpb25zLFxuICBDaGFydFR5cGUsXG4gIENoYXJ0V2lkZ2V0U3R5bGVPcHRpb25zLFxuICBDb2xvcixcbiAgQ29sb3JQYWxldHRlVGhlbWUsXG4gIC8vIFByb3BzOlxuICBDb21tb25XaWRnZXRQcm9wcyxcbiAgQ29uZGl0aW9uYWxEYXRhQ29sb3JPcHRpb25zLFxuICBDb252b2x1dGlvbixcbiAgLy8gRGFzaGJvYXJkOlxuICBEYXNoYm9hcmRMYXlvdXRPcHRpb25zLFxuICBEYXNoYm9hcmRNb2RlbCxcbiAgRGF0YUNvbG9yQ29uZGl0aW9uLFxuICBEYXRhQ29sb3JPcHRpb25zLFxuICAvLyBTdHlsZSByZWxhdGVkOlxuICBEYXRhTGltaXRzLFxuICBEYXRhUG9pbnQsXG4gIERhdGVDb25maWcsXG4gIERhdGVMZXZlbCxcbiAgRGF5T2ZXZWVrLFxuICBEZWNpbWFsU2NhbGUsXG4gIERyaWxsZG93bk9wdGlvbnMsXG4gIERyaWxsZG93blNlbGVjdGlvbixcbiAgRmlsdGVyVmFyaWFudCxcbiAgRnVubmVsU3R5bGVPcHRpb25zLFxuICBHYXVnZUluZGljYXRvclN0eWxlT3B0aW9ucyxcbiAgR2V0RGFzaGJvYXJkTW9kZWxPcHRpb25zLFxuICBHZXREYXNoYm9hcmRNb2RlbHNPcHRpb25zLFxuICBIaWVyYXJjaHksXG4gIEhpZXJhcmNoeU1vZGVsLFxuICBIaWdoY2hhcnRzT3B0aW9ucyxcbiAgSW5kaWNhdG9yQmVmb3JlUmVuZGVySGFuZGxlcixcbiAgSW5kaWNhdG9yQ2hhcnREYXRhT3B0aW9ucyxcbiAgSW5kaWNhdG9yQ2hhcnRUeXBlLFxuICBJbmRpY2F0b3JDb21wb25lbnRzLFxuICBJbmRpY2F0b3JSZW5kZXJPcHRpb25zLFxuICBJbmRpY2F0b3JTdHlsZU9wdGlvbnMsXG4gIExhYmVscyxcbiAgTGVnZW5kLFxuICBMaW5lU3R5bGVPcHRpb25zLFxuICBMaW5lU3VidHlwZSxcbiAgTGluZVdpZHRoLFxuICBNYXJrZXJzLFxuICBNZW1iZXIsXG4gIE1lbnVJdGVtU2VjdGlvbixcbiAgTWVudVBvc2l0aW9uLFxuICBNb250aE9mWWVhcixcbiAgTXVsdGlDb2x1bW5WYWx1ZVRvQ29sb3JNYXAsXG4gIE5hdmlnYXRvcixcbiAgLy8gRGF0YSBPcHRpb25zIHJlbGF0ZWQ6XG4gIE51bWJlckZvcm1hdENvbmZpZyxcbiAgTnVtZXJpY0JhckluZGljYXRvclN0eWxlT3B0aW9ucyxcbiAgTnVtZXJpY1NpbXBsZUluZGljYXRvclN0eWxlT3B0aW9ucyxcbiAgUGllU3R5bGVPcHRpb25zLFxuICBQaWVTdWJ0eXBlLFxuICBQaXZvdFJvd3NTb3J0LFxuICBQaXZvdFRhYmxlRGF0YU9wdGlvbnMsXG4gIFBpdm90VGFibGVTdHlsZU9wdGlvbnMsXG4gIFBpdm90VGFibGVXaWRnZXRTdHlsZU9wdGlvbnMsXG4gIFBvbGFyU3R5bGVPcHRpb25zLFxuICBQb2xhclN1YnR5cGUsXG4gIFJhbmdlQ2hhcnREYXRhT3B0aW9ucyxcbiAgUmFuZ2VDaGFydFR5cGUsXG4gIFJhbmdlRGF0YUNvbG9yT3B0aW9ucyxcbiAgU2NhdHRlckNoYXJ0RGF0YU9wdGlvbnMsXG4gIFNjYXR0ZXJDaGFydFR5cGUsXG4gIFNjYXR0ZXJEYXRhUG9pbnQsXG4gIFNjYXR0ZXJtYXBDaGFydERhdGFPcHRpb25zLFxuICBTY2F0dGVybWFwQ2hhcnRUeXBlLFxuICBTY2F0dGVybWFwTG9jYXRpb25MZXZlbCxcbiAgU2NhdHRlcm1hcE1hcmtlcnMsXG4gIFNjYXR0ZXJtYXBTdHlsZU9wdGlvbnMsXG4gIFNjYXR0ZXJNYXJrZXJTaXplLFxuICBTY2F0dGVyU3R5bGVPcHRpb25zLFxuICBTZXJpZXNDaGFydFR5cGUsXG4gIFNlcmllc0xhYmVscyxcbiAgU29ydERpcmVjdGlvbixcbiAgU3RhY2thYmxlU3R5bGVPcHRpb25zLFxuICBTdGFja2FibGVTdWJ0eXBlLFxuICBTdHlsZWRDb2x1bW4sXG4gIFN0eWxlZE1lYXN1cmVDb2x1bW4sXG4gIFN1bmJ1cnN0U3R5bGVPcHRpb25zLFxuICBUYWJsZURhdGFPcHRpb25zLFxuICBUYWJsZVN0eWxlT3B0aW9ucyxcbiAgVGFibGVUeXBlLFxuICBUYWJ1bGFyV2lkZ2V0VHlwZSxcbiAgVGV4dFdpZGdldFByb3BzLFxuICBUaGVtZU9pZCxcbiAgVGhlbWVTZXR0aW5ncyxcbiAgVHJhbnNsYXRpb25Db25maWcsXG4gIFRyZWVtYXBTdHlsZU9wdGlvbnMsXG4gIFVuaWZvcm1EYXRhQ29sb3JPcHRpb25zLFxuICBWYWx1ZVRvQ29sb3JNYXAsXG4gIFdpZGdldEJ5SWRTdHlsZU9wdGlvbnMsXG4gIFdpZGdldERhdGFPcHRpb25zLFxuICBXaWRnZXRJZCxcbiAgLy8gTW9kZWxzOlxuICBXaWRnZXRNb2RlbCxcbiAgV2lkZ2V0c09wdGlvbnMsXG4gIFdpZGdldHNQYW5lbENvbHVtbkxheW91dCxcbiAgV2lkZ2V0c1BhbmVsTGF5b3V0LFxuICBXaWRnZXRTdHlsZU9wdGlvbnMsXG4gIFdpZGdldFR5cGUsXG4gIFgyVGl0bGUsXG59IGZyb20gJ0BzaXNlbnNlL3Nkay11aS1wcmVhY3QnO1xuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
2
|
import { NgModule } from '@angular/core';
|
|
3
|
-
import { AreaChartComponent, AreamapChartComponent, AreaRangeChartComponent, BarChartComponent, BoxplotChartComponent, ChartComponent, ChartWidgetComponent, ColumnChartComponent, ContextMenuComponent, CriteriaFilterTileComponent, DashboardByIdComponent, DashboardComponent,
|
|
3
|
+
import { AreaChartComponent, AreamapChartComponent, AreaRangeChartComponent, BarChartComponent, BoxplotChartComponent, ChartComponent, ChartWidgetComponent, ColumnChartComponent, ContextMenuComponent, CriteriaFilterTileComponent, DashboardByIdComponent, DashboardComponent, DateRangeFilterTileComponent, DrilldownBreadcrumbsComponent, DrilldownWidgetComponent, FilterTileComponent, FunnelChartComponent, IndicatorChartComponent, LineChartComponent, MemberFilterTileComponent, PieChartComponent, PivotTableComponent, PivotTableWidgetComponent, PolarChartComponent, RelativeDateFilterTileComponent, ScatterChartComponent, ScattermapChartComponent, SunburstChartComponent, TableComponent, TableWidgetComponent, TreemapChartComponent, WidgetByIdComponent, WidgetComponent, } from './components';
|
|
4
4
|
import { DecoratorsModule } from './decorators/decorators.module';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
/**
|
|
@@ -49,7 +49,6 @@ SdkUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "1
|
|
|
49
49
|
TreemapChartComponent,
|
|
50
50
|
SunburstChartComponent,
|
|
51
51
|
TableWidgetComponent,
|
|
52
|
-
DashboardWidgetComponent,
|
|
53
52
|
WidgetByIdComponent,
|
|
54
53
|
MemberFilterTileComponent,
|
|
55
54
|
DrilldownWidgetComponent,
|
|
@@ -64,7 +63,9 @@ SdkUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "1
|
|
|
64
63
|
PivotTableComponent,
|
|
65
64
|
DashboardByIdComponent,
|
|
66
65
|
DashboardComponent,
|
|
67
|
-
PivotTableWidgetComponent
|
|
66
|
+
PivotTableWidgetComponent,
|
|
67
|
+
FilterTileComponent,
|
|
68
|
+
WidgetComponent], imports: [CommonModule, DecoratorsModule], exports: [ChartComponent,
|
|
68
69
|
TableComponent,
|
|
69
70
|
ChartWidgetComponent,
|
|
70
71
|
ColumnChartComponent,
|
|
@@ -80,7 +81,6 @@ SdkUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "1
|
|
|
80
81
|
TreemapChartComponent,
|
|
81
82
|
SunburstChartComponent,
|
|
82
83
|
TableWidgetComponent,
|
|
83
|
-
DashboardWidgetComponent,
|
|
84
84
|
WidgetByIdComponent,
|
|
85
85
|
MemberFilterTileComponent,
|
|
86
86
|
DrilldownWidgetComponent,
|
|
@@ -95,7 +95,9 @@ SdkUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "1
|
|
|
95
95
|
PivotTableComponent,
|
|
96
96
|
DashboardByIdComponent,
|
|
97
97
|
DashboardComponent,
|
|
98
|
-
PivotTableWidgetComponent
|
|
98
|
+
PivotTableWidgetComponent,
|
|
99
|
+
FilterTileComponent,
|
|
100
|
+
WidgetComponent] });
|
|
99
101
|
SdkUiModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SdkUiModule, imports: [CommonModule, DecoratorsModule] });
|
|
100
102
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SdkUiModule, decorators: [{
|
|
101
103
|
type: NgModule,
|
|
@@ -117,7 +119,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
117
119
|
TreemapChartComponent,
|
|
118
120
|
SunburstChartComponent,
|
|
119
121
|
TableWidgetComponent,
|
|
120
|
-
DashboardWidgetComponent,
|
|
121
122
|
WidgetByIdComponent,
|
|
122
123
|
MemberFilterTileComponent,
|
|
123
124
|
DrilldownWidgetComponent,
|
|
@@ -133,6 +134,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
133
134
|
DashboardByIdComponent,
|
|
134
135
|
DashboardComponent,
|
|
135
136
|
PivotTableWidgetComponent,
|
|
137
|
+
FilterTileComponent,
|
|
138
|
+
WidgetComponent,
|
|
136
139
|
],
|
|
137
140
|
imports: [CommonModule, DecoratorsModule],
|
|
138
141
|
exports: [
|
|
@@ -152,7 +155,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
152
155
|
TreemapChartComponent,
|
|
153
156
|
SunburstChartComponent,
|
|
154
157
|
TableWidgetComponent,
|
|
155
|
-
DashboardWidgetComponent,
|
|
156
158
|
WidgetByIdComponent,
|
|
157
159
|
MemberFilterTileComponent,
|
|
158
160
|
DrilldownWidgetComponent,
|
|
@@ -168,8 +170,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
168
170
|
DashboardByIdComponent,
|
|
169
171
|
DashboardComponent,
|
|
170
172
|
PivotTableWidgetComponent,
|
|
173
|
+
FilterTileComponent,
|
|
174
|
+
WidgetComponent,
|
|
171
175
|
],
|
|
172
176
|
providers: [],
|
|
173
177
|
}]
|
|
174
178
|
}] });
|
|
175
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrLXVpLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvc2RrLXVpLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQ0wsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLHFCQUFxQixFQUNyQixjQUFjLEVBQ2Qsb0JBQW9CLEVBQ3BCLG9CQUFvQixFQUNwQixvQkFBb0IsRUFDcEIsMkJBQTJCLEVBQzNCLHNCQUFzQixFQUN0QixrQkFBa0IsRUFDbEIsNEJBQTRCLEVBQzVCLDZCQUE2QixFQUM3Qix3QkFBd0IsRUFDeEIsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQix1QkFBdUIsRUFDdkIsa0JBQWtCLEVBQ2xCLHlCQUF5QixFQUN6QixpQkFBaUIsRUFDakIsbUJBQW1CLEVBQ25CLHlCQUF5QixFQUN6QixtQkFBbUIsRUFDbkIsK0JBQStCLEVBQy9CLHFCQUFxQixFQUNyQix3QkFBd0IsRUFDeEIsc0JBQXNCLEVBQ3RCLGNBQWMsRUFDZCxvQkFBb0IsRUFDcEIscUJBQXFCLEVBQ3JCLG1CQUFtQixFQUNuQixlQUFlLEdBQ2hCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQUVsRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwQkc7QUEyRUgsTUFBTSxPQUFPLFdBQVc7O3lHQUFYLFdBQVc7MEdBQVgsV0FBVyxpQkF4RXBCLGNBQWM7UUFDZCxjQUFjO1FBQ2Qsb0JBQW9CO1FBQ3BCLG9CQUFvQjtRQUNwQixpQkFBaUI7UUFDakIsa0JBQWtCO1FBQ2xCLHVCQUF1QjtRQUN2QixrQkFBa0I7UUFDbEIsdUJBQXVC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Q25CLGVBQWU7cUJBQ2hCO29CQUNELFNBQVMsRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIEFyZWFDaGFydENvbXBvbmVudCxcbiAgQXJlYW1hcENoYXJ0Q29tcG9uZW50LFxuICBBcmVhUmFuZ2VDaGFydENvbXBvbmVudCxcbiAgQmFyQ2hhcnRDb21wb25lbnQsXG4gIEJveHBsb3RDaGFydENvbXBvbmVudCxcbiAgQ2hhcnRDb21wb25lbnQsXG4gIENoYXJ0V2lkZ2V0Q29tcG9uZW50LFxuICBDb2x1bW5DaGFydENvbXBvbmVudCxcbiAgQ29udGV4dE1lbnVDb21wb25lbnQsXG4gIENyaXRlcmlhRmlsdGVyVGlsZUNvbXBvbmVudCxcbiAgRGFzaGJvYXJkQnlJZENvbXBvbmVudCxcbiAgRGFzaGJvYXJkQ29tcG9uZW50LFxuICBEYXRlUmFuZ2VGaWx0ZXJUaWxlQ29tcG9uZW50LFxuICBEcmlsbGRvd25CcmVhZGNydW1ic0NvbXBvbmVudCxcbiAgRHJpbGxkb3duV2lkZ2V0Q29tcG9uZW50LFxuICBGaWx0ZXJUaWxlQ29tcG9uZW50LFxuICBGdW5uZWxDaGFydENvbXBvbmVudCxcbiAgSW5kaWNhdG9yQ2hhcnRDb21wb25lbnQsXG4gIExpbmVDaGFydENvbXBvbmVudCxcbiAgTWVtYmVyRmlsdGVyVGlsZUNvbXBvbmVudCxcbiAgUGllQ2hhcnRDb21wb25lbnQsXG4gIFBpdm90VGFibGVDb21wb25lbnQsXG4gIFBpdm90VGFibGVXaWRnZXRDb21wb25lbnQsXG4gIFBvbGFyQ2hhcnRDb21wb25lbnQsXG4gIFJlbGF0aXZlRGF0ZUZpbHRlclRpbGVDb21wb25lbnQsXG4gIFNjYXR0ZXJDaGFydENvbXBvbmVudCxcbiAgU2NhdHRlcm1hcENoYXJ0Q29tcG9uZW50LFxuICBTdW5idXJzdENoYXJ0Q29tcG9uZW50LFxuICBUYWJsZUNvbXBvbmVudCxcbiAgVGFibGVXaWRnZXRDb21wb25lbnQsXG4gIFRyZWVtYXBDaGFydENvbXBvbmVudCxcbiAgV2lkZ2V0QnlJZENvbXBvbmVudCxcbiAgV2lkZ2V0Q29tcG9uZW50LFxufSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgRGVjb3JhdG9yc01vZHVsZSB9IGZyb20gJy4vZGVjb3JhdG9ycy9kZWNvcmF0b3JzLm1vZHVsZSc7XG5cbi8qKlxuICogU0RLIFVJIE1vZHVsZSwgd2hpY2ggaXMgYSBjb250YWluZXIgZm9yIGNvbXBvbmVudHMuXG4gKlxuICogQGV4YW1wbGVcbiAqIEV4YW1wbGUgb2YgaW1wb3J0aW5nIGBTZGtVaU1vZHVsZWAgYW5kIGluamVjdGluZyB7QGxpbmsgU2lzZW5zZUNvbnRleHRDb25maWd9IGludG8geW91ciBhcHBsaWNhdGlvbjpcbiAqXG4gKiBgYGB0c1xuICogZXhwb3J0IGNvbnN0IFNJU0VOU0VfQ09OVEVYVF9DT05GSUc6IFNpc2Vuc2VDb250ZXh0Q29uZmlnID0ge1xuICogICB1cmw6IFwiPGluc3RhbmNlIHVybD5cIiwgLy8gcmVwbGFjZSB3aXRoIHRoZSBVUkwgb2YgeW91ciBTaXNlbnNlIGluc3RhbmNlXG4gKiAgIHRva2VuOiBcIjxhcGkgdG9rZW4+XCIsIC8vIHJlcGxhY2Ugd2l0aCB0aGUgQVBJIHRva2VuIG9mIHlvdXIgdXNlciBhY2NvdW50XG4gKiAgIGRlZmF1bHREYXRhU291cmNlOiBETS5EYXRhU291cmNlLFxuICogfTtcbiAqXG4gKiBATmdNb2R1bGUoe1xuICogICBpbXBvcnRzOiBbXG4gKiAgICAgQnJvd3Nlck1vZHVsZSxcbiAqICAgICBTZGtVaU1vZHVsZSxcbiAqICAgXSxcbiAqICAgZGVjbGFyYXRpb25zOiBbQXBwQ29tcG9uZW50XSxcbiAqICAgcHJvdmlkZXJzOiBbXG4gKiAgICAgeyBwcm92aWRlOiBTSVNFTlNFX0NPTlRFWFRfQ09ORklHX1RPS0VOLCB1c2VWYWx1ZTogU0lTRU5TRV9DT05URVhUX0NPTkZJRyB9LFxuICogICBdLFxuICogICBib290c3RyYXA6IFtBcHBDb21wb25lbnRdLFxuICogfSlcbiAqIGBgYFxuICogQGdyb3VwIENvbnRleHRzXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIENoYXJ0Q29tcG9uZW50LFxuICAgIFRhYmxlQ29tcG9uZW50LFxuICAgIENoYXJ0V2lkZ2V0Q29tcG9uZW50LFxuICAgIENvbHVtbkNoYXJ0Q29tcG9uZW50LFxuICAgIEJhckNoYXJ0Q29tcG9uZW50LFxuICAgIEFyZWFDaGFydENvbXBvbmVudCxcbiAgICBBcmVhUmFuZ2VDaGFydENvbXBvbmVudCxcbiAgICBMaW5lQ2hhcnRDb21wb25lbnQsXG4gICAgSW5kaWNhdG9yQ2hhcnRDb21wb25lbnQsXG4gICAgU2NhdHRlckNoYXJ0Q29tcG9uZW50LFxuICAgIFBpZUNoYXJ0Q29tcG9uZW50LFxuICAgIEZ1bm5lbENoYXJ0Q29tcG9uZW50LFxuICAgIFBvbGFyQ2hhcnRDb21wb25lbnQsXG4gICAgVHJlZW1hcENoYXJ0Q29tcG9uZW50LFxuICAgIFN1bmJ1cnN0Q2hhcnRDb21wb25lbnQsXG4gICAgVGFibGVXaWRnZXRDb21wb25lbnQsXG4gICAgV2lkZ2V0QnlJZENvbXBvbmVudCxcbiAgICBNZW1iZXJGaWx0ZXJUaWxlQ29tcG9uZW50LFxuICAgIERyaWxsZG93bldpZGdldENvbXBvbmVudCxcbiAgICBEYXRlUmFuZ2VGaWx0ZXJUaWxlQ29tcG9uZW50LFxuICAgIFJlbGF0aXZlRGF0ZUZpbHRlclRpbGVDb21wb25lbnQsXG4gICAgQ3JpdGVyaWFGaWx0ZXJUaWxlQ29tcG9uZW50LFxuICAgIERyaWxsZG93bkJyZWFkY3J1bWJzQ29tcG9uZW50LFxuICAgIENvbnRleHRNZW51Q29tcG9uZW50LFxuICAgIEJveHBsb3RDaGFydENvbXBvbmVudCxcbiAgICBTY2F0dGVybWFwQ2hhcnRDb21wb25lbnQsXG4gICAgQXJlYW1hcENoYXJ0Q29tcG9uZW50LFxuICAgIFBpdm90VGFibGVDb21wb25lbnQsXG4gICAgRGFzaGJvYXJkQnlJZENvbXBvbmVudCxcbiAgICBEYXNoYm9hcmRDb21wb25lbnQsXG4gICAgUGl2b3RUYWJsZVdpZGdldENvbXBvbmVudCxcbiAgICBGaWx0ZXJUaWxlQ29tcG9uZW50LFxuICAgIFdpZGdldENvbXBvbmVudCxcbiAgXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRGVjb3JhdG9yc01vZHVsZV0sXG4gIGV4cG9ydHM6IFtcbiAgICBDaGFydENvbXBvbmVudCxcbiAgICBUYWJsZUNvbXBvbmVudCxcbiAgICBDaGFydFdpZGdldENvbXBvbmVudCxcbiAgICBDb2x1bW5DaGFydENvbXBvbmVudCxcbiAgICBCYXJDaGFydENvbXBvbmVudCxcbiAgICBBcmVhQ2hhcnRDb21wb25lbnQsXG4gICAgQXJlYVJhbmdlQ2hhcnRDb21wb25lbnQsXG4gICAgTGluZUNoYXJ0Q29tcG9uZW50LFxuICAgIEluZGljYXRvckNoYXJ0Q29tcG9uZW50LFxuICAgIFNjYXR0ZXJDaGFydENvbXBvbmVudCxcbiAgICBQaWVDaGFydENvbXBvbmVudCxcbiAgICBGdW5uZWxDaGFydENvbXBvbmVudCxcbiAgICBQb2xhckNoYXJ0Q29tcG9uZW50LFxuICAgIFRyZWVtYXBDaGFydENvbXBvbmVudCxcbiAgICBTdW5idXJzdENoYXJ0Q29tcG9uZW50LFxuICAgIFRhYmxlV2lkZ2V0Q29tcG9uZW50LFxuICAgIFdpZGdldEJ5SWRDb21wb25lbnQsXG4gICAgTWVtYmVyRmlsdGVyVGlsZUNvbXBvbmVudCxcbiAgICBEcmlsbGRvd25XaWRnZXRDb21wb25lbnQsXG4gICAgRGF0ZVJhbmdlRmlsdGVyVGlsZUNvbXBvbmVudCxcbiAgICBSZWxhdGl2ZURhdGVGaWx0ZXJUaWxlQ29tcG9uZW50LFxuICAgIENyaXRlcmlhRmlsdGVyVGlsZUNvbXBvbmVudCxcbiAgICBEcmlsbGRvd25CcmVhZGNydW1ic0NvbXBvbmVudCxcbiAgICBDb250ZXh0TWVudUNvbXBvbmVudCxcbiAgICBCb3hwbG90Q2hhcnRDb21wb25lbnQsXG4gICAgU2NhdHRlcm1hcENoYXJ0Q29tcG9uZW50LFxuICAgIEFyZWFtYXBDaGFydENvbXBvbmVudCxcbiAgICBQaXZvdFRhYmxlQ29tcG9uZW50LFxuICAgIERhc2hib2FyZEJ5SWRDb21wb25lbnQsXG4gICAgRGFzaGJvYXJkQ29tcG9uZW50LFxuICAgIFBpdm90VGFibGVXaWRnZXRDb21wb25lbnQsXG4gICAgRmlsdGVyVGlsZUNvbXBvbmVudCxcbiAgICBXaWRnZXRDb21wb25lbnQsXG4gIF0sXG4gIHByb3ZpZGVyczogW10sXG59KVxuZXhwb3J0IGNsYXNzIFNka1VpTW9kdWxlIHt9XG4iXX0=
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { Injectable } from '@angular/core';
|
|
3
|
-
import { getDashboardModel, getDashboardModels, } from '@sisense/sdk-ui-preact';
|
|
3
|
+
import { createHookApiFacade, getDashboardModel, getDashboardModels, HookAdapter, useComposedDashboardInternal, } from '@sisense/sdk-ui-preact';
|
|
4
|
+
import { BehaviorSubject } from 'rxjs';
|
|
5
|
+
import { createSisenseContextConnector } from '../component-wrapper-helpers';
|
|
4
6
|
import { TrackableService } from '../decorators/trackable.decorator';
|
|
7
|
+
import { translateFromPreactDashboardProps, translateToPreactDashboardProps, } from '../helpers/dashboard-props-preact-translator';
|
|
5
8
|
import * as i0 from "@angular/core";
|
|
6
9
|
import * as i1 from "./sisense-context.service";
|
|
7
10
|
/**
|
|
@@ -37,6 +40,87 @@ let DashboardService = class DashboardService {
|
|
|
37
40
|
const app = await this.sisenseContextService.getApp();
|
|
38
41
|
return getDashboardModels(app.httpClient, options);
|
|
39
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* Сomposes dashboard or separate dashboard elements into a coordinated dashboard
|
|
45
|
+
* with cross filtering, and change detection.
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* An example of using the `createComposedDashboard` to construct a composed dashboard and render it:
|
|
49
|
+
* ```html
|
|
50
|
+
<!--Component HTML template in example.component.html-->
|
|
51
|
+
<div *ngIf="dashboard$ | async as dashboard">
|
|
52
|
+
<csdk-filter-tile
|
|
53
|
+
*ngFor="let filter of getDashboardFilters(dashboard); trackBy: trackByIndex"
|
|
54
|
+
[filter]="filter"
|
|
55
|
+
/>
|
|
56
|
+
<csdk-widget
|
|
57
|
+
*ngFor="let widget of dashboard.widgets; trackBy: trackByIndex"
|
|
58
|
+
[id]="widget.id"
|
|
59
|
+
[widgetType]="widget.widgetType"
|
|
60
|
+
[chartType]="widget.chartType"
|
|
61
|
+
[pluginType]="widget.pluginType"
|
|
62
|
+
[dataSource]="widget.dataSource"
|
|
63
|
+
[dataOptions]="widget.dataOptions"
|
|
64
|
+
[filters]="widget.filters"
|
|
65
|
+
[highlights]="widget.highlights"
|
|
66
|
+
[styleOptions]="widget.styleOptions"
|
|
67
|
+
[drilldownOptions]="widget.drilldownOptions"
|
|
68
|
+
[title]="widget.title"
|
|
69
|
+
[description]="widget.description"
|
|
70
|
+
[beforeMenuOpen]="widget.beforeMenuOpen"
|
|
71
|
+
(dataPointClick)="widget.dataPointClick?.($event)"
|
|
72
|
+
(dataPointContextMenu)="widget.dataPointContextMenu?.($event)"
|
|
73
|
+
(dataPointsSelect)="widget.dataPointsSelect?.($event)"
|
|
74
|
+
/>
|
|
75
|
+
</div>
|
|
76
|
+
* ```
|
|
77
|
+
*
|
|
78
|
+
* ```ts
|
|
79
|
+
// Component behavior in example.component.ts
|
|
80
|
+
import { Component } from '@angular/core';
|
|
81
|
+
import { BehaviorSubject } from 'rxjs';
|
|
82
|
+
import { DashboardService, type DashboardProps } from '@sisense/sdk-ui-angular';
|
|
83
|
+
|
|
84
|
+
@Component({
|
|
85
|
+
selector: 'example',
|
|
86
|
+
templateUrl: './example.component.html',
|
|
87
|
+
styleUrls: ['./example.component.scss'],
|
|
88
|
+
})
|
|
89
|
+
export class ExampleComponent {
|
|
90
|
+
dashboard$: BehaviorSubject<DashboardProps> | undefined;
|
|
91
|
+
|
|
92
|
+
constructor(private dashboardService: DashboardService) {}
|
|
93
|
+
|
|
94
|
+
ngOnInit() {
|
|
95
|
+
const initialDashboard: DashboardProps = { ... };
|
|
96
|
+
const composedDashboard = this.dashboardService.createComposedDashboard(initialDashboard);
|
|
97
|
+
this.dashboard$ = composedDashboard.dashboard$;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
trackByIndex = (index: number) => index;
|
|
101
|
+
|
|
102
|
+
getDashboardFilters = ({ filters }: DashboardProps) => Array.isArray(filters) ? filters : [];
|
|
103
|
+
}
|
|
104
|
+
* ```
|
|
105
|
+
* @param initialDashboard - Initial dashboard
|
|
106
|
+
* @param options - Configuration options
|
|
107
|
+
* @returns Reactive composed dashboard object and API methods for interacting with it
|
|
108
|
+
*/
|
|
109
|
+
createComposedDashboard(initialDashboard, options = {}) {
|
|
110
|
+
const hookAdapter = new HookAdapter((useComposedDashboardInternal), [createSisenseContextConnector(this.sisenseContextService)]);
|
|
111
|
+
const dashboard$ = new BehaviorSubject(initialDashboard);
|
|
112
|
+
hookAdapter.subscribe(({ dashboard }) => {
|
|
113
|
+
dashboard$.next(translateFromPreactDashboardProps(dashboard));
|
|
114
|
+
});
|
|
115
|
+
hookAdapter.run(translateToPreactDashboardProps(initialDashboard), options);
|
|
116
|
+
const setFilters = createHookApiFacade(hookAdapter, 'setFilters', true);
|
|
117
|
+
const setWidgetsLayout = createHookApiFacade(hookAdapter, 'setWidgetsLayout', true);
|
|
118
|
+
return {
|
|
119
|
+
dashboard$,
|
|
120
|
+
setFilters,
|
|
121
|
+
setWidgetsLayout,
|
|
122
|
+
};
|
|
123
|
+
}
|
|
40
124
|
};
|
|
41
125
|
DashboardService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DashboardService, deps: [{ token: i1.SisenseContextService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
42
126
|
DashboardService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DashboardService, providedIn: 'root' });
|
|
@@ -50,4 +134,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
50
134
|
providedIn: 'root',
|
|
51
135
|
}]
|
|
52
136
|
}], ctorParameters: function () { return [{ type: i1.SisenseContextService }]; } });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2Rhc2hib2FyZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFDTCxpQkFBaUIsRUFFakIsa0JBQWtCLEdBRW5CLE1BQU0sd0JBQXdCLENBQUM7QUFFaEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7OztBQUdyRTs7Ozs7OztHQU9HO0FBS0ksSUFBTSxnQkFBZ0IsR0FBdEIsTUFBTSxnQkFBZ0I7SUFDM0IsWUFBb0IscUJBQTRDO1FBQTVDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7SUFBRyxDQUFDO0lBRXBFOzs7Ozs7T0FNRztJQUNILEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxZQUFvQixFQUFFLE9BQWtDO1FBQzlFLE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RELE9BQU8saUJBQWlCLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsS0FBSyxDQUFDLGtCQUFrQixDQUFDLE9BQW1DO1FBQzFELE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RELE9BQU8sa0JBQWtCLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNyRCxDQUFDOzs4R0F4QlUsZ0JBQWdCO2tIQUFoQixnQkFBZ0IsY0FIZixNQUFNO0FBR1AsZ0JBQWdCO0lBRDVCLGdCQUFnQixDQUFtQixDQUFDLG1CQUFtQixFQUFFLG9CQUFvQixDQUFDLENBQUM7R0FDbkUsZ0JBQWdCLENBeUI1QjtTQXpCWSxnQkFBZ0I7NEZBQWhCLGdCQUFnQjtrQkFKNUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBnZXREYXNoYm9hcmRNb2RlbCxcbiAgdHlwZSBHZXREYXNoYm9hcmRNb2RlbE9wdGlvbnMsXG4gIGdldERhc2hib2FyZE1vZGVscyxcbiAgdHlwZSBHZXREYXNoYm9hcmRNb2RlbHNPcHRpb25zLFxufSBmcm9tICdAc2lzZW5zZS9zZGstdWktcHJlYWN0JztcblxuaW1wb3J0IHsgVHJhY2thYmxlU2VydmljZSB9IGZyb20gJy4uL2RlY29yYXRvcnMvdHJhY2thYmxlLmRlY29yYXRvcic7XG5pbXBvcnQgeyBTaXNlbnNlQ29udGV4dFNlcnZpY2UgfSBmcm9tICcuL3Npc2Vuc2UtY29udGV4dC5zZXJ2aWNlJztcblxuLyoqXG4gKiBTZXJ2aWNlIGZvciB3b3JraW5nIHdpdGggU2lzZW5zZSBGdXNpb24gZGFzaGJvYXJkcy5cbiAqXG4gKiAqKk5vdGU6KiogRGFzaGJvYXJkIGFuZCBXaWRnZXQgZXh0ZW5zaW9ucyBiYXNlZCBvbiBKUyBzY3JpcHRzIGFuZCBhZGQtb25zIGluIEZ1c2lvbiDigJMgZm9yIGV4YW1wbGUsIEJsb3ggYW5kIEp1bXAgVG8gRGFzaGJvYXJkIOKAkyBhcmUgbm90IHN1cHBvcnRlZC5cbiAqXG4gKiBAZ3JvdXAgRnVzaW9uIEFzc2V0c1xuICogQGZ1c2lvbkVtYmVkXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbkBUcmFja2FibGVTZXJ2aWNlPERhc2hib2FyZFNlcnZpY2U+KFsnZ2V0RGFzaGJvYXJkTW9kZWwnLCAnZ2V0RGFzaGJvYXJkTW9kZWxzJ10pXG5leHBvcnQgY2xhc3MgRGFzaGJvYXJkU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2lzZW5zZUNvbnRleHRTZXJ2aWNlOiBTaXNlbnNlQ29udGV4dFNlcnZpY2UpIHt9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlcyBhbiBleGlzdGluZyBkYXNoYm9hcmQgbW9kZWwgZnJvbSB0aGUgU2lzZW5zZSBpbnN0YW5jZS5cbiAgICpcbiAgICogQHBhcmFtIGRhc2hib2FyZE9pZCAtIElkZW50aWZpZXIgb2YgdGhlIGRhc2hib2FyZFxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEFkdmFuY2VkIGNvbmZpZ3VyYXRpb24gb3B0aW9uc1xuICAgKiBAcmV0dXJucyBEYXNoYm9hcmQgbW9kZWxcbiAgICovXG4gIGFzeW5jIGdldERhc2hib2FyZE1vZGVsKGRhc2hib2FyZE9pZDogc3RyaW5nLCBvcHRpb25zPzogR2V0RGFzaGJvYXJkTW9kZWxPcHRpb25zKSB7XG4gICAgY29uc3QgYXBwID0gYXdhaXQgdGhpcy5zaXNlbnNlQ29udGV4dFNlcnZpY2UuZ2V0QXBwKCk7XG4gICAgcmV0dXJuIGdldERhc2hib2FyZE1vZGVsKGFwcC5odHRwQ2xpZW50LCBkYXNoYm9hcmRPaWQsIG9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlcyBleGlzdGluZyBkYXNoYm9hcmQgbW9kZWxzIGZyb20gdGhlIFNpc2Vuc2UgaW5zdGFuY2UuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQWR2YW5jZWQgY29uZmlndXJhdGlvbiBvcHRpb25zXG4gICAqIEByZXR1cm5zIERhc2hib2FyZCBtb2RlbHMgYXJyYXlcbiAgICovXG4gIGFzeW5jIGdldERhc2hib2FyZE1vZGVscyhvcHRpb25zPzogR2V0RGFzaGJvYXJkTW9kZWxzT3B0aW9ucykge1xuICAgIGNvbnN0IGFwcCA9IGF3YWl0IHRoaXMuc2lzZW5zZUNvbnRleHRTZXJ2aWNlLmdldEFwcCgpO1xuICAgIHJldHVybiBnZXREYXNoYm9hcmRNb2RlbHMoYXBwLmh0dHBDbGllbnQsIG9wdGlvbnMpO1xuICB9XG59XG4iXX0=
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2Rhc2hib2FyZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFFTCxtQkFBbUIsRUFFbkIsaUJBQWlCLEVBRWpCLGtCQUFrQixFQUVsQixXQUFXLEVBQ1gsNEJBQTRCLEdBRzdCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV2QyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUc3RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQ0wsaUNBQWlDLEVBQ2pDLCtCQUErQixHQUNoQyxNQUFNLDhDQUE4QyxDQUFDOzs7QUFPdEQ7Ozs7Ozs7R0FPRztBQUtJLElBQU0sZ0JBQWdCLEdBQXRCLE1BQU0sZ0JBQWdCO0lBQzNCLFlBQW9CLHFCQUE0QztRQUE1QywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO0lBQUcsQ0FBQztJQUVwRTs7Ozs7O09BTUc7SUFDSCxLQUFLLENBQUMsaUJBQWlCLENBQUMsWUFBb0IsRUFBRSxPQUFrQztRQUM5RSxNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN0RCxPQUFPLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxPQUFtQztRQUMxRCxNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN0RCxPQUFPLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQWlFRztJQUNILHVCQUF1QixDQUNyQixnQkFBbUIsRUFDbkIsVUFBdUMsRUFBRTtRQU16QyxNQUFNLFdBQVcsR0FBRyxJQUFJLFdBQVcsQ0FDakMsQ0FBQSw0QkFBbUYsQ0FBQSxFQUNuRixDQUFDLDZCQUE2QixDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQzVELENBQUM7UUFDRixNQUFNLFVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBSSxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTVELFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7WUFDdEMsVUFBVSxDQUFDLElBQUksQ0FBQyxpQ0FBaUMsQ0FBQyxTQUFTLENBQU0sQ0FBQyxDQUFDO1FBQ3JFLENBQUMsQ0FBQyxDQUFDO1FBRUgsV0FBVyxDQUFDLEdBQUcsQ0FDYiwrQkFBK0IsQ0FBQyxnQkFBZ0IsQ0FFeEIsRUFDeEIsT0FBTyxDQUNSLENBQUM7UUFFRixNQUFNLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sZ0JBQWdCLEdBQUcsbUJBQW1CLENBQUMsV0FBVyxFQUFFLGtCQUFrQixFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXBGLE9BQU87WUFDTCxVQUFVO1lBQ1YsVUFBVTtZQUNWLGdCQUFnQjtTQUNqQixDQUFDO0lBQ0osQ0FBQzs7OEdBN0hVLGdCQUFnQjtrSEFBaEIsZ0JBQWdCLGNBSGYsTUFBTTtBQUdQLGdCQUFnQjtJQUQ1QixnQkFBZ0IsQ0FBbUIsQ0FBQyxtQkFBbUIsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO0dBQ25FLGdCQUFnQixDQThINUI7U0E5SFksZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBSjVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmlsdGVyLCBGaWx0ZXJSZWxhdGlvbnMgfSBmcm9tICdAc2lzZW5zZS9zZGstZGF0YSc7XG5pbXBvcnQge1xuICB0eXBlIENvbXBvc2FibGVEYXNoYm9hcmRQcm9wcyBhcyBDb21wb3NhYmxlRGFzaGJvYXJkUHJvcHNQcmVhY3QsXG4gIGNyZWF0ZUhvb2tBcGlGYWNhZGUsXG4gIHR5cGUgRGFzaGJvYXJkUHJvcHMgYXMgRGFzaGJvYXJkUHJvcHNQcmVhY3QsXG4gIGdldERhc2hib2FyZE1vZGVsLFxuICB0eXBlIEdldERhc2hib2FyZE1vZGVsT3B0aW9ucyxcbiAgZ2V0RGFzaGJvYXJkTW9kZWxzLFxuICB0eXBlIEdldERhc2hib2FyZE1vZGVsc09wdGlvbnMsXG4gIEhvb2tBZGFwdGVyLFxuICB1c2VDb21wb3NlZERhc2hib2FyZEludGVybmFsLFxuICBVc2VDb21wb3NlZERhc2hib2FyZE9wdGlvbnMsXG4gIFdpZGdldHNQYW5lbExheW91dCxcbn0gZnJvbSAnQHNpc2Vuc2Uvc2RrLXVpLXByZWFjdCc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgY3JlYXRlU2lzZW5zZUNvbnRleHRDb25uZWN0b3IgfSBmcm9tICcuLi9jb21wb25lbnQtd3JhcHBlci1oZWxwZXJzJztcbmltcG9ydCB7IHR5cGUgRGFzaGJvYXJkUHJvcHMgfSBmcm9tICcuLi9jb21wb25lbnRzL2Rhc2hib2FyZC9kYXNoYm9hcmQuY29tcG9uZW50JztcbmltcG9ydCB7IHR5cGUgV2lkZ2V0UHJvcHMgfSBmcm9tICcuLi9jb21wb25lbnRzL3dpZGdldHMvd2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUcmFja2FibGVTZXJ2aWNlIH0gZnJvbSAnLi4vZGVjb3JhdG9ycy90cmFja2FibGUuZGVjb3JhdG9yJztcbmltcG9ydCB7XG4gIHRyYW5zbGF0ZUZyb21QcmVhY3REYXNoYm9hcmRQcm9wcyxcbiAgdHJhbnNsYXRlVG9QcmVhY3REYXNoYm9hcmRQcm9wcyxcbn0gZnJvbSAnLi4vaGVscGVycy9kYXNoYm9hcmQtcHJvcHMtcHJlYWN0LXRyYW5zbGF0b3InO1xuaW1wb3J0IHsgU2lzZW5zZUNvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi9zaXNlbnNlLWNvbnRleHQuc2VydmljZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcG9zYWJsZURhc2hib2FyZFByb3BzIGV4dGVuZHMgT21pdDxDb21wb3NhYmxlRGFzaGJvYXJkUHJvcHNQcmVhY3QsICd3aWRnZXRzJz4ge1xuICB3aWRnZXRzOiBXaWRnZXRQcm9wc1tdO1xufVxuXG4vKipcbiAqIFNlcnZpY2UgZm9yIHdvcmtpbmcgd2l0aCBTaXNlbnNlIEZ1c2lvbiBkYXNoYm9hcmRzLlxuICpcbiAqICoqTm90ZToqKiBEYXNoYm9hcmQgYW5kIFdpZGdldCBleHRlbnNpb25zIGJhc2VkIG9uIEpTIHNjcmlwdHMgYW5kIGFkZC1vbnMgaW4gRnVzaW9uIOKAkyBmb3IgZXhhbXBsZSwgQmxveCBhbmQgSnVtcCBUbyBEYXNoYm9hcmQg4oCTIGFyZSBub3Qgc3VwcG9ydGVkLlxuICpcbiAqIEBncm91cCBGdXNpb24gQXNzZXRzXG4gKiBAZnVzaW9uRW1iZWRcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuQFRyYWNrYWJsZVNlcnZpY2U8RGFzaGJvYXJkU2VydmljZT4oWydnZXREYXNoYm9hcmRNb2RlbCcsICdnZXREYXNoYm9hcmRNb2RlbHMnXSlcbmV4cG9ydCBjbGFzcyBEYXNoYm9hcmRTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzaXNlbnNlQ29udGV4dFNlcnZpY2U6IFNpc2Vuc2VDb250ZXh0U2VydmljZSkge31cblxuICAvKipcbiAgICogUmV0cmlldmVzIGFuIGV4aXN0aW5nIGRhc2hib2FyZCBtb2RlbCBmcm9tIHRoZSBTaXNlbnNlIGluc3RhbmNlLlxuICAgKlxuICAgKiBAcGFyYW0gZGFzaGJvYXJkT2lkIC0gSWRlbnRpZmllciBvZiB0aGUgZGFzaGJvYXJkXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQWR2YW5jZWQgY29uZmlndXJhdGlvbiBvcHRpb25zXG4gICAqIEByZXR1cm5zIERhc2hib2FyZCBtb2RlbFxuICAgKi9cbiAgYXN5bmMgZ2V0RGFzaGJvYXJkTW9kZWwoZGFzaGJvYXJkT2lkOiBzdHJpbmcsIG9wdGlvbnM/OiBHZXREYXNoYm9hcmRNb2RlbE9wdGlvbnMpIHtcbiAgICBjb25zdCBhcHAgPSBhd2FpdCB0aGlzLnNpc2Vuc2VDb250ZXh0U2VydmljZS5nZXRBcHAoKTtcbiAgICByZXR1cm4gZ2V0RGFzaGJvYXJkTW9kZWwoYXBwLmh0dHBDbGllbnQsIGRhc2hib2FyZE9pZCwgb3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIGV4aXN0aW5nIGRhc2hib2FyZCBtb2RlbHMgZnJvbSB0aGUgU2lzZW5zZSBpbnN0YW5jZS5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBZHZhbmNlZCBjb25maWd1cmF0aW9uIG9wdGlvbnNcbiAgICogQHJldHVybnMgRGFzaGJvYXJkIG1vZGVscyBhcnJheVxuICAgKi9cbiAgYXN5bmMgZ2V0RGFzaGJvYXJkTW9kZWxzKG9wdGlvbnM/OiBHZXREYXNoYm9hcmRNb2RlbHNPcHRpb25zKSB7XG4gICAgY29uc3QgYXBwID0gYXdhaXQgdGhpcy5zaXNlbnNlQ29udGV4dFNlcnZpY2UuZ2V0QXBwKCk7XG4gICAgcmV0dXJuIGdldERhc2hib2FyZE1vZGVscyhhcHAuaHR0cENsaWVudCwgb3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICog0KFvbXBvc2VzIGRhc2hib2FyZCBvciBzZXBhcmF0ZSBkYXNoYm9hcmQgZWxlbWVudHMgaW50byBhIGNvb3JkaW5hdGVkIGRhc2hib2FyZFxuICAgKiB3aXRoIGNyb3NzIGZpbHRlcmluZywgYW5kIGNoYW5nZSBkZXRlY3Rpb24uXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIEFuIGV4YW1wbGUgb2YgdXNpbmcgdGhlIGBjcmVhdGVDb21wb3NlZERhc2hib2FyZGAgdG8gY29uc3RydWN0IGEgY29tcG9zZWQgZGFzaGJvYXJkIGFuZCByZW5kZXIgaXQ6XG4gICAqIGBgYGh0bWxcbiAgICA8IS0tQ29tcG9uZW50IEhUTUwgdGVtcGxhdGUgaW4gZXhhbXBsZS5jb21wb25lbnQuaHRtbC0tPlxuICAgIDxkaXYgKm5nSWY9XCJkYXNoYm9hcmQkIHwgYXN5bmMgYXMgZGFzaGJvYXJkXCI+XG4gICAgICA8Y3Nkay1maWx0ZXItdGlsZVxuICAgICAgICAqbmdGb3I9XCJsZXQgZmlsdGVyIG9mIGdldERhc2hib2FyZEZpbHRlcnMoZGFzaGJvYXJkKTsgdHJhY2tCeTogdHJhY2tCeUluZGV4XCJcbiAgICAgICAgW2ZpbHRlcl09XCJmaWx0ZXJcIlxuICAgICAgLz5cbiAgICAgIDxjc2RrLXdpZGdldFxuICAgICAgICAqbmdGb3I9XCJsZXQgd2lkZ2V0IG9mIGRhc2hib2FyZC53aWRnZXRzOyB0cmFja0J5OiB0cmFja0J5SW5kZXhcIlxuICAgICAgICBbaWRdPVwid2lkZ2V0LmlkXCJcbiAgICAgICAgW3dpZGdldFR5cGVdPVwid2lkZ2V0LndpZGdldFR5cGVcIlxuICAgICAgICBbY2hhcnRUeXBlXT1cIndpZGdldC5jaGFydFR5cGVcIlxuICAgICAgICBbcGx1Z2luVHlwZV09XCJ3aWRnZXQucGx1Z2luVHlwZVwiXG4gICAgICAgIFtkYXRhU291cmNlXT1cIndpZGdldC5kYXRhU291cmNlXCJcbiAgICAgICAgW2RhdGFPcHRpb25zXT1cIndpZGdldC5kYXRhT3B0aW9uc1wiXG4gICAgICAgIFtmaWx0ZXJzXT1cIndpZGdldC5maWx0ZXJzXCJcbiAgICAgICAgW2hpZ2hsaWdodHNdPVwid2lkZ2V0LmhpZ2hsaWdodHNcIlxuICAgICAgICBbc3R5bGVPcHRpb25zXT1cIndpZGdldC5zdHlsZU9wdGlvbnNcIlxuICAgICAgICBbZHJpbGxkb3duT3B0aW9uc109XCJ3aWRnZXQuZHJpbGxkb3duT3B0aW9uc1wiXG4gICAgICAgIFt0aXRsZV09XCJ3aWRnZXQudGl0bGVcIlxuICAgICAgICBbZGVzY3JpcHRpb25dPVwid2lkZ2V0LmRlc2NyaXB0aW9uXCJcbiAgICAgICAgW2JlZm9yZU1lbnVPcGVuXT1cIndpZGdldC5iZWZvcmVNZW51T3BlblwiXG4gICAgICAgIChkYXRhUG9pbnRDbGljayk9XCJ3aWRnZXQuZGF0YVBvaW50Q2xpY2s/LigkZXZlbnQpXCJcbiAgICAgICAgKGRhdGFQb2ludENvbnRleHRNZW51KT1cIndpZGdldC5kYXRhUG9pbnRDb250ZXh0TWVudT8uKCRldmVudClcIlxuICAgICAgICAoZGF0YVBvaW50c1NlbGVjdCk9XCJ3aWRnZXQuZGF0YVBvaW50c1NlbGVjdD8uKCRldmVudClcIlxuICAgICAgLz5cbiAgICA8L2Rpdj5cbiAgICogYGBgXG4gICAqXG4gICAqIGBgYHRzXG4gICAgLy8gQ29tcG9uZW50IGJlaGF2aW9yIGluIGV4YW1wbGUuY29tcG9uZW50LnRzXG4gICAgaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG4gICAgaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG4gICAgaW1wb3J0IHsgRGFzaGJvYXJkU2VydmljZSwgdHlwZSBEYXNoYm9hcmRQcm9wcyB9IGZyb20gJ0BzaXNlbnNlL3Nkay11aS1hbmd1bGFyJztcblxuICAgIEBDb21wb25lbnQoe1xuICAgICAgc2VsZWN0b3I6ICdleGFtcGxlJyxcbiAgICAgIHRlbXBsYXRlVXJsOiAnLi9leGFtcGxlLmNvbXBvbmVudC5odG1sJyxcbiAgICAgIHN0eWxlVXJsczogWycuL2V4YW1wbGUuY29tcG9uZW50LnNjc3MnXSxcbiAgICB9KVxuICAgIGV4cG9ydCBjbGFzcyBFeGFtcGxlQ29tcG9uZW50IHtcbiAgICAgIGRhc2hib2FyZCQ6IEJlaGF2aW9yU3ViamVjdDxEYXNoYm9hcmRQcm9wcz4gfCB1bmRlZmluZWQ7XG5cbiAgICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZGFzaGJvYXJkU2VydmljZTogRGFzaGJvYXJkU2VydmljZSkge31cblxuICAgICAgbmdPbkluaXQoKSB7XG4gICAgICAgIGNvbnN0IGluaXRpYWxEYXNoYm9hcmQ6IERhc2hib2FyZFByb3BzID0geyAuLi4gfTtcbiAgICAgICAgY29uc3QgY29tcG9zZWREYXNoYm9hcmQgPSB0aGlzLmRhc2hib2FyZFNlcnZpY2UuY3JlYXRlQ29tcG9zZWREYXNoYm9hcmQoaW5pdGlhbERhc2hib2FyZCk7XG4gICAgICAgIHRoaXMuZGFzaGJvYXJkJCA9IGNvbXBvc2VkRGFzaGJvYXJkLmRhc2hib2FyZCQ7XG4gICAgICB9XG5cbiAgICAgIHRyYWNrQnlJbmRleCA9IChpbmRleDogbnVtYmVyKSA9PiBpbmRleDtcblxuICAgICAgZ2V0RGFzaGJvYXJkRmlsdGVycyA9ICh7IGZpbHRlcnMgfTogRGFzaGJvYXJkUHJvcHMpID0+IEFycmF5LmlzQXJyYXkoZmlsdGVycykgPyBmaWx0ZXJzIDogW107XG4gICAgfVxuICAgKiBgYGBcbiAgICogQHBhcmFtIGluaXRpYWxEYXNoYm9hcmQgLSBJbml0aWFsIGRhc2hib2FyZFxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIENvbmZpZ3VyYXRpb24gb3B0aW9uc1xuICAgKiBAcmV0dXJucyBSZWFjdGl2ZSBjb21wb3NlZCBkYXNoYm9hcmQgb2JqZWN0IGFuZCBBUEkgbWV0aG9kcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBpdFxuICAgKi9cbiAgY3JlYXRlQ29tcG9zZWREYXNoYm9hcmQ8RCBleHRlbmRzIENvbXBvc2FibGVEYXNoYm9hcmRQcm9wcyB8IERhc2hib2FyZFByb3BzPihcbiAgICBpbml0aWFsRGFzaGJvYXJkOiBELFxuICAgIG9wdGlvbnM6IFVzZUNvbXBvc2VkRGFzaGJvYXJkT3B0aW9ucyA9IHt9LFxuICApOiB7XG4gICAgZGFzaGJvYXJkJDogQmVoYXZpb3JTdWJqZWN0PEQ+O1xuICAgIHNldEZpbHRlcnM6IChmaWx0ZXJzOiBGaWx0ZXJbXSB8IEZpbHRlclJlbGF0aW9ucykgPT4gUHJvbWlzZTx2b2lkPjtcbiAgICBzZXRXaWRnZXRzTGF5b3V0OiAobmV3TGF5b3V0OiBXaWRnZXRzUGFuZWxMYXlvdXQpID0+IFByb21pc2U8dm9pZD47XG4gIH0ge1xuICAgIGNvbnN0IGhvb2tBZGFwdGVyID0gbmV3IEhvb2tBZGFwdGVyKFxuICAgICAgdXNlQ29tcG9zZWREYXNoYm9hcmRJbnRlcm5hbDxDb21wb3NhYmxlRGFzaGJvYXJkUHJvcHNQcmVhY3QgfCBEYXNoYm9hcmRQcm9wc1ByZWFjdD4sXG4gICAgICBbY3JlYXRlU2lzZW5zZUNvbnRleHRDb25uZWN0b3IodGhpcy5zaXNlbnNlQ29udGV4dFNlcnZpY2UpXSxcbiAgICApO1xuICAgIGNvbnN0IGRhc2hib2FyZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEQ+KGluaXRpYWxEYXNoYm9hcmQpO1xuXG4gICAgaG9va0FkYXB0ZXIuc3Vic2NyaWJlKCh7IGRhc2hib2FyZCB9KSA9PiB7XG4gICAgICBkYXNoYm9hcmQkLm5leHQodHJhbnNsYXRlRnJvbVByZWFjdERhc2hib2FyZFByb3BzKGRhc2hib2FyZCkgYXMgRCk7XG4gICAgfSk7XG5cbiAgICBob29rQWRhcHRlci5ydW4oXG4gICAgICB0cmFuc2xhdGVUb1ByZWFjdERhc2hib2FyZFByb3BzKGluaXRpYWxEYXNoYm9hcmQpIGFzXG4gICAgICAgIHwgQ29tcG9zYWJsZURhc2hib2FyZFByb3BzUHJlYWN0XG4gICAgICAgIHwgRGFzaGJvYXJkUHJvcHNQcmVhY3QsXG4gICAgICBvcHRpb25zLFxuICAgICk7XG5cbiAgICBjb25zdCBzZXRGaWx0ZXJzID0gY3JlYXRlSG9va0FwaUZhY2FkZShob29rQWRhcHRlciwgJ3NldEZpbHRlcnMnLCB0cnVlKTtcbiAgICBjb25zdCBzZXRXaWRnZXRzTGF5b3V0ID0gY3JlYXRlSG9va0FwaUZhY2FkZShob29rQWRhcHRlciwgJ3NldFdpZGdldHNMYXlvdXQnLCB0cnVlKTtcblxuICAgIHJldHVybiB7XG4gICAgICBkYXNoYm9hcmQkLFxuICAgICAgc2V0RmlsdGVycyxcbiAgICAgIHNldFdpZGdldHNMYXlvdXQsXG4gICAgfTtcbiAgfVxufVxuIl19
|