@sisense/sdk-ui-angular 1.5.0 → 1.6.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 +13 -1
- package/dist/esm2020/lib/components/charts/area-chart.component.mjs +137 -0
- package/dist/esm2020/lib/components/charts/areamap-chart.component.mjs +100 -0
- package/dist/esm2020/lib/components/charts/bar-chart.component.mjs +136 -0
- package/dist/esm2020/lib/components/charts/boxplot-chart.component.mjs +129 -0
- package/dist/esm2020/lib/components/charts/chart.component.mjs +171 -0
- package/dist/esm2020/lib/components/charts/column-chart.component.mjs +137 -0
- package/dist/esm2020/lib/components/charts/funnel-chart.component.mjs +135 -0
- package/dist/esm2020/lib/components/charts/index.mjs +18 -0
- package/dist/esm2020/lib/components/charts/indicator-chart.component.mjs +107 -0
- package/dist/esm2020/lib/components/charts/line-chart.component.mjs +135 -0
- package/dist/esm2020/lib/components/charts/pie-chart.component.mjs +137 -0
- package/dist/esm2020/lib/components/charts/pivot-table.component.mjs +116 -0
- package/dist/esm2020/lib/components/charts/polar-chart.component.mjs +136 -0
- package/dist/esm2020/lib/components/charts/scatter-chart.component.mjs +140 -0
- package/dist/esm2020/lib/components/charts/scattermap-chart.component.mjs +108 -0
- package/dist/esm2020/lib/components/charts/sunburst-chart.component.mjs +137 -0
- package/dist/esm2020/lib/components/charts/table.component.mjs +94 -0
- package/dist/esm2020/lib/components/{treemap-chart.component.mjs → charts/treemap-chart.component.mjs} +52 -1
- package/dist/esm2020/lib/components/context-menu.component.mjs +3 -1
- package/dist/esm2020/lib/components/drilldown-breadcrumbs.component.mjs +3 -1
- package/dist/esm2020/lib/components/filters/basic-member-filter-tile.component.mjs +62 -0
- package/dist/esm2020/lib/components/filters/date-range-filter-tile.component.mjs +141 -0
- package/dist/esm2020/lib/components/filters/index.mjs +4 -0
- package/dist/esm2020/lib/components/filters/member-filter-tile.component.mjs +131 -0
- package/dist/esm2020/lib/components/index.mjs +4 -25
- package/dist/esm2020/lib/components/widgets/chart-widget.component.mjs +167 -0
- package/dist/esm2020/lib/components/widgets/dashboard-widget.component.mjs +115 -0
- package/dist/esm2020/lib/components/widgets/drilldown-widget.component.mjs +174 -0
- package/dist/esm2020/lib/components/widgets/index.mjs +5 -0
- package/dist/esm2020/lib/components/widgets/table-widget.component.mjs +104 -0
- package/dist/esm2020/lib/sdk-ui.module.mjs +3 -1
- package/dist/esm2020/lib/services/dashboard.service.mjs +6 -1
- package/dist/esm2020/lib/services/query.service.mjs +7 -2
- package/dist/esm2020/lib/services/sisense-context.service.mjs +7 -1
- package/dist/esm2020/lib/services/theme.service.mjs +7 -1
- package/dist/esm2020/public-api.mjs +9 -1
- package/dist/esm2020/version.mjs +2 -2
- package/dist/fesm2015/sisense-sdk-ui-angular.mjs +1721 -708
- package/dist/fesm2015/sisense-sdk-ui-angular.mjs.map +1 -1
- package/dist/fesm2020/sisense-sdk-ui-angular.mjs +1722 -709
- package/dist/fesm2020/sisense-sdk-ui-angular.mjs.map +1 -1
- package/dist/lib/component-wrapper-helpers/context-connectors.d.ts +12 -0
- package/dist/lib/components/{area-chart.component.d.ts → charts/area-chart.component.d.ts} +53 -2
- package/dist/lib/components/{areamap-chart.component.d.ts → charts/areamap-chart.component.d.ts} +40 -1
- package/dist/lib/components/{bar-chart.component.d.ts → charts/bar-chart.component.d.ts} +52 -2
- package/dist/lib/components/{boxplot-chart.component.d.ts → charts/boxplot-chart.component.d.ts} +45 -2
- package/dist/lib/components/{chart.component.d.ts → charts/chart.component.d.ts} +6 -4
- package/dist/lib/components/{column-chart.component.d.ts → charts/column-chart.component.d.ts} +53 -2
- package/dist/lib/components/{funnel-chart.component.d.ts → charts/funnel-chart.component.d.ts} +52 -2
- package/dist/lib/components/charts/index.d.ts +17 -0
- package/dist/lib/components/{indicator-chart.component.d.ts → charts/indicator-chart.component.d.ts} +57 -1
- package/dist/lib/components/{line-chart.component.d.ts → charts/line-chart.component.d.ts} +52 -2
- package/dist/lib/components/{pie-chart.component.d.ts → charts/pie-chart.component.d.ts} +53 -2
- package/dist/lib/components/{pivot-table.component.d.ts → charts/pivot-table.component.d.ts} +53 -2
- package/dist/lib/components/{polar-chart.component.d.ts → charts/polar-chart.component.d.ts} +53 -2
- package/dist/lib/components/{scatter-chart.component.d.ts → charts/scatter-chart.component.d.ts} +50 -2
- package/dist/lib/components/{scattermap-chart.component.d.ts → charts/scattermap-chart.component.d.ts} +49 -2
- package/dist/lib/components/{sunburst-chart.component.d.ts → charts/sunburst-chart.component.d.ts} +53 -2
- package/dist/lib/components/{table.component.d.ts → charts/table.component.d.ts} +32 -2
- package/dist/lib/components/{treemap-chart.component.d.ts → charts/treemap-chart.component.d.ts} +53 -2
- package/dist/lib/components/context-menu.component.d.ts +2 -0
- package/dist/lib/components/drilldown-breadcrumbs.component.d.ts +2 -0
- package/dist/lib/components/{date-range-filter-tile.component.d.ts → filters/date-range-filter-tile.component.d.ts} +43 -3
- package/dist/lib/components/filters/index.d.ts +3 -0
- package/dist/lib/components/{member-filter-tile.component.d.ts → filters/member-filter-tile.component.d.ts} +39 -3
- package/dist/lib/components/index.d.ts +3 -24
- package/dist/lib/components/{chart-widget.component.d.ts → widgets/chart-widget.component.d.ts} +58 -3
- package/dist/lib/components/{dashboard-widget.component.d.ts → widgets/dashboard-widget.component.d.ts} +26 -2
- package/dist/lib/components/{drilldown-widget.component.d.ts → widgets/drilldown-widget.component.d.ts} +5 -2
- package/dist/lib/components/widgets/index.d.ts +4 -0
- package/dist/lib/components/{table-widget.component.d.ts → widgets/table-widget.component.d.ts} +37 -2
- package/dist/lib/sdk-ui.module.d.ts +26 -24
- package/dist/lib/services/dashboard.service.d.ts +5 -0
- package/dist/lib/services/query.service.d.ts +6 -1
- package/dist/lib/services/sisense-context.service.d.ts +6 -0
- package/dist/lib/services/theme.service.d.ts +6 -0
- package/dist/package.json +1 -1
- package/dist/public-api.d.ts +8 -0
- package/dist/version.d.ts +1 -1
- package/package.json +4 -4
- package/dist/esm2020/lib/components/area-chart.component.mjs +0 -86
- package/dist/esm2020/lib/components/areamap-chart.component.mjs +0 -61
- package/dist/esm2020/lib/components/bar-chart.component.mjs +0 -86
- package/dist/esm2020/lib/components/basic-member-filter-tile.component.mjs +0 -62
- package/dist/esm2020/lib/components/boxplot-chart.component.mjs +0 -86
- package/dist/esm2020/lib/components/chart-widget.component.mjs +0 -112
- package/dist/esm2020/lib/components/chart.component.mjs +0 -169
- package/dist/esm2020/lib/components/column-chart.component.mjs +0 -86
- package/dist/esm2020/lib/components/dashboard-widget.component.mjs +0 -91
- package/dist/esm2020/lib/components/date-range-filter-tile.component.mjs +0 -101
- package/dist/esm2020/lib/components/drilldown-widget.component.mjs +0 -171
- package/dist/esm2020/lib/components/funnel-chart.component.mjs +0 -85
- package/dist/esm2020/lib/components/indicator-chart.component.mjs +0 -51
- package/dist/esm2020/lib/components/line-chart.component.mjs +0 -85
- package/dist/esm2020/lib/components/member-filter-tile.component.mjs +0 -95
- package/dist/esm2020/lib/components/pie-chart.component.mjs +0 -86
- package/dist/esm2020/lib/components/pivot-table.component.mjs +0 -65
- package/dist/esm2020/lib/components/polar-chart.component.mjs +0 -85
- package/dist/esm2020/lib/components/scatter-chart.component.mjs +0 -92
- package/dist/esm2020/lib/components/scattermap-chart.component.mjs +0 -61
- package/dist/esm2020/lib/components/sunburst-chart.component.mjs +0 -86
- package/dist/esm2020/lib/components/table-widget.component.mjs +0 -69
- package/dist/esm2020/lib/components/table.component.mjs +0 -64
- /package/dist/lib/components/{basic-member-filter-tile.component.d.ts → filters/basic-member-filter-tile.component.d.ts} +0 -0
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
|
|
2
|
+
import { Chart, ComponentAdapter, createElement } from '@sisense/sdk-ui-preact';
|
|
3
|
+
import { createSisenseContextConnector, createThemeContextConnector, } from '../../component-wrapper-helpers';
|
|
4
|
+
import { template, rootId } from '../../component-wrapper-helpers/template';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../../services/sisense-context.service";
|
|
7
|
+
import * as i2 from "../../services/theme.service";
|
|
8
|
+
/**
|
|
9
|
+
* An Angular component used for easily switching chart types or rendering multiple series of different chart types.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* An example of using the `Chart` component to
|
|
13
|
+
* plot a column chart of the Sample Healthcare data source hosted in a Sisense instance:
|
|
14
|
+
* ```ts
|
|
15
|
+
* // Component behavior in .component.ts
|
|
16
|
+
* chart = {
|
|
17
|
+
* chartType: 'column' as ChartType,
|
|
18
|
+
* dataSet: DM.DataSource,
|
|
19
|
+
* dataOptions: {
|
|
20
|
+
* category: [DM.Admissions.Admission_Time.Months],
|
|
21
|
+
* value: [measureFactory.count(DM.Admissions.Patient_ID, 'Total Patients')],
|
|
22
|
+
* breakBy: [],
|
|
23
|
+
* },
|
|
24
|
+
* filters: [filterFactory.members(DM.Doctors.Specialty, ['Oncology', 'Cardiology'])],
|
|
25
|
+
* styleOptions: {
|
|
26
|
+
* width: 800,
|
|
27
|
+
* height: 500,
|
|
28
|
+
* xAxis: {
|
|
29
|
+
* title: {
|
|
30
|
+
* text: 'Months',
|
|
31
|
+
* enabled: true,
|
|
32
|
+
* },
|
|
33
|
+
* },
|
|
34
|
+
* yAxis: {
|
|
35
|
+
* title: {
|
|
36
|
+
* text: 'Total Patients',
|
|
37
|
+
* enabled: true,
|
|
38
|
+
* },
|
|
39
|
+
* },
|
|
40
|
+
* },
|
|
41
|
+
* };
|
|
42
|
+
* ```
|
|
43
|
+
* ```html
|
|
44
|
+
* <!--Component HTML template in .component.html-->
|
|
45
|
+
* <csdk-chart
|
|
46
|
+
* [chartType]="chart.chartType"
|
|
47
|
+
* [dataSet]="chart.dataSet"
|
|
48
|
+
* [dataOptions]="chart.dataOptions"
|
|
49
|
+
* [filters]="chart.filters"
|
|
50
|
+
* [styleOptions]="chart.styleOptions"
|
|
51
|
+
* />
|
|
52
|
+
* ```
|
|
53
|
+
*
|
|
54
|
+
* <img src="media://angular-chart-example.png" width="800px" />
|
|
55
|
+
*
|
|
56
|
+
* @group Charts
|
|
57
|
+
*/
|
|
58
|
+
export class ChartComponent {
|
|
59
|
+
/**
|
|
60
|
+
* Constructor for the `Chart` component.
|
|
61
|
+
*
|
|
62
|
+
* @param sisenseContextService - Sisense context service
|
|
63
|
+
* @param themeService - Theme service
|
|
64
|
+
*/
|
|
65
|
+
constructor(
|
|
66
|
+
/**
|
|
67
|
+
* Sisense context service
|
|
68
|
+
*
|
|
69
|
+
* @category Constructor
|
|
70
|
+
*/
|
|
71
|
+
sisenseContextService,
|
|
72
|
+
/**
|
|
73
|
+
* Theme service
|
|
74
|
+
*
|
|
75
|
+
* @category Constructor
|
|
76
|
+
*/
|
|
77
|
+
themeService) {
|
|
78
|
+
this.sisenseContextService = sisenseContextService;
|
|
79
|
+
this.themeService = themeService;
|
|
80
|
+
/**
|
|
81
|
+
* {@inheritDoc @sisense/sdk-ui!ChartProps.onDataPointClick}
|
|
82
|
+
*
|
|
83
|
+
* @category Callbacks
|
|
84
|
+
*/
|
|
85
|
+
this.dataPointClick = new EventEmitter();
|
|
86
|
+
/**
|
|
87
|
+
* {@inheritDoc @sisense/sdk-ui!ChartProps.onDataPointContextMenu}
|
|
88
|
+
*
|
|
89
|
+
* @category Callbacks
|
|
90
|
+
*/
|
|
91
|
+
this.dataPointContextMenu = new EventEmitter();
|
|
92
|
+
/**
|
|
93
|
+
* {@inheritDoc @sisense/sdk-ui!ChartProps.onDataPointsSelected}
|
|
94
|
+
*
|
|
95
|
+
* @category Callbacks
|
|
96
|
+
*/
|
|
97
|
+
this.dataPointsSelect = new EventEmitter();
|
|
98
|
+
this.componentAdapter = new ComponentAdapter(() => this.createPreactComponent(), [
|
|
99
|
+
createSisenseContextConnector(this.sisenseContextService),
|
|
100
|
+
createThemeContextConnector(this.themeService),
|
|
101
|
+
]);
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* @internal
|
|
105
|
+
*/
|
|
106
|
+
ngAfterViewInit() {
|
|
107
|
+
this.componentAdapter.render(this.preactRef.nativeElement);
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* @internal
|
|
111
|
+
*/
|
|
112
|
+
ngOnChanges() {
|
|
113
|
+
if (this.preactRef) {
|
|
114
|
+
this.componentAdapter.render(this.preactRef.nativeElement);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
createPreactComponent() {
|
|
118
|
+
const props = {
|
|
119
|
+
chartType: this.chartType,
|
|
120
|
+
dataSet: this.dataSet,
|
|
121
|
+
dataOptions: this.dataOptions,
|
|
122
|
+
filters: this.filters,
|
|
123
|
+
highlights: this.highlights,
|
|
124
|
+
styleOptions: this.styleOptions,
|
|
125
|
+
onBeforeRender: this.beforeRender?.bind(this),
|
|
126
|
+
onDataPointClick: (...[point, nativeEvent]) => this.dataPointClick.emit({ point, nativeEvent }),
|
|
127
|
+
onDataPointContextMenu: (...[point, nativeEvent]) => this.dataPointContextMenu.emit({ point, nativeEvent }),
|
|
128
|
+
onDataPointsSelected: (...[points, nativeEvent]) => this.dataPointsSelect.emit({ points, nativeEvent }),
|
|
129
|
+
};
|
|
130
|
+
return createElement(Chart, props);
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* @internal
|
|
134
|
+
*/
|
|
135
|
+
ngOnDestroy() {
|
|
136
|
+
this.componentAdapter.destroy();
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
ChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChartComponent, deps: [{ token: i1.SisenseContextService }, { token: i2.ThemeService }], target: i0.ɵɵFactoryTarget.Component });
|
|
140
|
+
ChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ChartComponent, selector: "csdk-chart", inputs: { chartType: "chartType", dataSet: "dataSet", dataOptions: "dataOptions", filters: "filters", highlights: "highlights", styleOptions: "styleOptions", beforeRender: "beforeRender" }, 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 });
|
|
141
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChartComponent, decorators: [{
|
|
142
|
+
type: Component,
|
|
143
|
+
args: [{
|
|
144
|
+
selector: 'csdk-chart',
|
|
145
|
+
template,
|
|
146
|
+
}]
|
|
147
|
+
}], ctorParameters: function () { return [{ type: i1.SisenseContextService }, { type: i2.ThemeService }]; }, propDecorators: { preactRef: [{
|
|
148
|
+
type: ViewChild,
|
|
149
|
+
args: [rootId]
|
|
150
|
+
}], chartType: [{
|
|
151
|
+
type: Input
|
|
152
|
+
}], dataSet: [{
|
|
153
|
+
type: Input
|
|
154
|
+
}], dataOptions: [{
|
|
155
|
+
type: Input
|
|
156
|
+
}], filters: [{
|
|
157
|
+
type: Input
|
|
158
|
+
}], highlights: [{
|
|
159
|
+
type: Input
|
|
160
|
+
}], styleOptions: [{
|
|
161
|
+
type: Input
|
|
162
|
+
}], beforeRender: [{
|
|
163
|
+
type: Input
|
|
164
|
+
}], dataPointClick: [{
|
|
165
|
+
type: Output
|
|
166
|
+
}], dataPointContextMenu: [{
|
|
167
|
+
type: Output
|
|
168
|
+
}], dataPointsSelect: [{
|
|
169
|
+
type: Output
|
|
170
|
+
}] } });
|
|
171
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2NoYXJ0cy9jaGFydC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLEtBQUssRUFBbUIsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFJakcsT0FBTyxFQUNMLDZCQUE2QixFQUM3QiwyQkFBMkIsR0FDNUIsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7O0FBRTVFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaURHO0FBS0gsTUFBTSxPQUFPLGNBQWM7SUErRnpCOzs7OztPQUtHO0lBQ0g7SUFDRTs7OztPQUlHO0lBQ0kscUJBQTRDO0lBQ25EOzs7O09BSUc7SUFDSSxZQUEwQjtRQU4xQiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBTTVDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBbERuQzs7OztXQUlHO1FBRUgsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFFOUIsQ0FBQztRQUVKOzs7O1dBSUc7UUFFSCx5QkFBb0IsR0FBRyxJQUFJLFlBQVksRUFFcEMsQ0FBQztRQUVKOzs7O1dBSUc7UUFFSCxxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFFaEMsQ0FBQztRQXdCRixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FDMUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLEVBQ2xDO1lBQ0UsNkJBQTZCLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDO1lBQ3pELDJCQUEyQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7U0FDL0MsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0gsZUFBZTtRQUNiLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUM1RDtJQUNILENBQUM7SUFFTyxxQkFBcUI7UUFDM0IsTUFBTSxLQUFLLEdBQUc7WUFDWixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMvQixjQUFjLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQzdDLGdCQUFnQixFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQTRDLEVBQUUsRUFBRSxDQUN2RixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsQ0FBQztZQUNsRCxzQkFBc0IsRUFBRSxDQUN0QixHQUFHLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBa0QsRUFDeEUsRUFBRSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLENBQUM7WUFDM0Qsb0JBQW9CLEVBQUUsQ0FDcEIsR0FBRyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQWdELEVBQ3ZFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxDQUFDO1NBQ3pELENBQUM7UUFFRixPQUFPLGFBQWEsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNULElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNsQyxDQUFDOzs0R0F2S1UsY0FBYztnR0FBZCxjQUFjOzRGQUFkLGNBQWM7a0JBSjFCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFFBQVE7aUJBQ1Q7dUlBTUMsU0FBUztzQkFEUixTQUFTO3VCQUFDLE1BQU07Z0JBU2pCLFNBQVM7c0JBRFIsS0FBSztnQkFTTixPQUFPO3NCQUROLEtBQUs7Z0JBU04sV0FBVztzQkFEVixLQUFLO2dCQVNOLE9BQU87c0JBRE4sS0FBSztnQkFTTixVQUFVO3NCQURULEtBQUs7Z0JBU04sWUFBWTtzQkFEWCxLQUFLO2dCQVNOLFlBQVk7c0JBRFgsS0FBSztnQkFTTixjQUFjO3NCQURiLE1BQU07Z0JBV1Asb0JBQW9CO3NCQURuQixNQUFNO2dCQVdQLGdCQUFnQjtzQkFEZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2hhcnQsIHR5cGUgQ2hhcnRQcm9wcywgQ29tcG9uZW50QWRhcHRlciwgY3JlYXRlRWxlbWVudCB9IGZyb20gJ0BzaXNlbnNlL3Nkay11aS1wcmVhY3QnO1xuaW1wb3J0IHsgU2lzZW5zZUNvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2lzZW5zZS1jb250ZXh0LnNlcnZpY2UnO1xuaW1wb3J0IHsgVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdGhlbWUuc2VydmljZSc7XG5pbXBvcnQgdHlwZSB7IEFyZ3VtZW50cywgQXJndW1lbnRzQXNPYmplY3QgfSBmcm9tICcuLi8uLi90eXBlcy91dGlsaXR5LXR5cGVzJztcbmltcG9ydCB7XG4gIGNyZWF0ZVNpc2Vuc2VDb250ZXh0Q29ubmVjdG9yLFxuICBjcmVhdGVUaGVtZUNvbnRleHRDb25uZWN0b3IsXG59IGZyb20gJy4uLy4uL2NvbXBvbmVudC13cmFwcGVyLWhlbHBlcnMnO1xuaW1wb3J0IHsgdGVtcGxhdGUsIHJvb3RJZCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudC13cmFwcGVyLWhlbHBlcnMvdGVtcGxhdGUnO1xuXG4vKipcbiAqIEFuIEFuZ3VsYXIgY29tcG9uZW50IHVzZWQgZm9yIGVhc2lseSBzd2l0Y2hpbmcgY2hhcnQgdHlwZXMgb3IgcmVuZGVyaW5nIG11bHRpcGxlIHNlcmllcyBvZiBkaWZmZXJlbnQgY2hhcnQgdHlwZXMuXG4gKlxuICogQGV4YW1wbGVcbiAqIEFuIGV4YW1wbGUgb2YgdXNpbmcgdGhlIGBDaGFydGAgY29tcG9uZW50IHRvXG4gKiBwbG90IGEgY29sdW1uIGNoYXJ0IG9mIHRoZSBTYW1wbGUgSGVhbHRoY2FyZSBkYXRhIHNvdXJjZSBob3N0ZWQgaW4gYSBTaXNlbnNlIGluc3RhbmNlOlxuICogYGBgdHNcbiAqIC8vIENvbXBvbmVudCBiZWhhdmlvciBpbiAuY29tcG9uZW50LnRzXG4gKiBjaGFydCA9IHtcbiAqICAgY2hhcnRUeXBlOiAnY29sdW1uJyBhcyBDaGFydFR5cGUsXG4gKiAgIGRhdGFTZXQ6IERNLkRhdGFTb3VyY2UsXG4gKiAgIGRhdGFPcHRpb25zOiB7XG4gKiAgICAgY2F0ZWdvcnk6IFtETS5BZG1pc3Npb25zLkFkbWlzc2lvbl9UaW1lLk1vbnRoc10sXG4gKiAgICAgdmFsdWU6IFttZWFzdXJlRmFjdG9yeS5jb3VudChETS5BZG1pc3Npb25zLlBhdGllbnRfSUQsICdUb3RhbCBQYXRpZW50cycpXSxcbiAqICAgICBicmVha0J5OiBbXSxcbiAqICAgfSxcbiAqICAgZmlsdGVyczogW2ZpbHRlckZhY3RvcnkubWVtYmVycyhETS5Eb2N0b3JzLlNwZWNpYWx0eSwgWydPbmNvbG9neScsICdDYXJkaW9sb2d5J10pXSxcbiAqICAgc3R5bGVPcHRpb25zOiB7XG4gKiAgICAgd2lkdGg6IDgwMCxcbiAqICAgICBoZWlnaHQ6IDUwMCxcbiAqICAgICB4QXhpczoge1xuICogICAgICAgdGl0bGU6IHtcbiAqICAgICAgICAgdGV4dDogJ01vbnRocycsXG4gKiAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gKiAgICAgICB9LFxuICogICAgIH0sXG4gKiAgICAgeUF4aXM6IHtcbiAqICAgICAgIHRpdGxlOiB7XG4gKiAgICAgICAgIHRleHQ6ICdUb3RhbCBQYXRpZW50cycsXG4gKiAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gKiAgICAgICB9LFxuICogICAgIH0sXG4gKiAgIH0sXG4gKiB9O1xuICogYGBgXG4gKiBgYGBodG1sXG4gKiA8IS0tQ29tcG9uZW50IEhUTUwgdGVtcGxhdGUgaW4gLmNvbXBvbmVudC5odG1sLS0+XG4gKiA8Y3Nkay1jaGFydFxuICogICBbY2hhcnRUeXBlXT1cImNoYXJ0LmNoYXJ0VHlwZVwiXG4gKiAgIFtkYXRhU2V0XT1cImNoYXJ0LmRhdGFTZXRcIlxuICogICBbZGF0YU9wdGlvbnNdPVwiY2hhcnQuZGF0YU9wdGlvbnNcIlxuICogICBbZmlsdGVyc109XCJjaGFydC5maWx0ZXJzXCJcbiAqICAgW3N0eWxlT3B0aW9uc109XCJjaGFydC5zdHlsZU9wdGlvbnNcIlxuICogLz5cbiAqIGBgYFxuICpcbiAqIDxpbWcgc3JjPVwibWVkaWE6Ly9hbmd1bGFyLWNoYXJ0LWV4YW1wbGUucG5nXCIgd2lkdGg9XCI4MDBweFwiIC8+XG4gKlxuICogQGdyb3VwIENoYXJ0c1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjc2RrLWNoYXJ0JyxcbiAgdGVtcGxhdGUsXG59KVxuZXhwb3J0IGNsYXNzIENoYXJ0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBAVmlld0NoaWxkKHJvb3RJZClcbiAgcHJlYWN0UmVmITogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQ2hhcnRQcm9wcy5jaGFydFR5cGV9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDaGFydFxuICAgKi9cbiAgQElucHV0KClcbiAgY2hhcnRUeXBlITogQ2hhcnRQcm9wc1snY2hhcnRUeXBlJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQ2hhcnRQcm9wcy5kYXRhU2V0fVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgRGF0YVxuICAgKi9cbiAgQElucHV0KClcbiAgZGF0YVNldDogQ2hhcnRQcm9wc1snZGF0YVNldCddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUNoYXJ0UHJvcHMuZGF0YU9wdGlvbnN9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDaGFydFxuICAgKi9cbiAgQElucHV0KClcbiAgZGF0YU9wdGlvbnMhOiBDaGFydFByb3BzWydkYXRhT3B0aW9ucyddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUNoYXJ0UHJvcHMuZmlsdGVyc31cbiAgICpcbiAgICogQGNhdGVnb3J5IERhdGFcbiAgICovXG4gIEBJbnB1dCgpXG4gIGZpbHRlcnM6IENoYXJ0UHJvcHNbJ2ZpbHRlcnMnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFDaGFydFByb3BzLmhpZ2hsaWdodHN9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBEYXRhXG4gICAqL1xuICBASW5wdXQoKVxuICBoaWdobGlnaHRzOiBDaGFydFByb3BzWydoaWdobGlnaHRzJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQ2hhcnRQcm9wcy5zdHlsZU9wdGlvbnN9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDaGFydFxuICAgKi9cbiAgQElucHV0KClcbiAgc3R5bGVPcHRpb25zOiBDaGFydFByb3BzWydzdHlsZU9wdGlvbnMnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFDaGFydFByb3BzLm9uQmVmb3JlUmVuZGVyfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2FsbGJhY2tzXG4gICAqL1xuICBASW5wdXQoKVxuICBiZWZvcmVSZW5kZXI6IENoYXJ0UHJvcHNbJ29uQmVmb3JlUmVuZGVyJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQ2hhcnRQcm9wcy5vbkRhdGFQb2ludENsaWNrfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2FsbGJhY2tzXG4gICAqL1xuICBAT3V0cHV0KClcbiAgZGF0YVBvaW50Q2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPFxuICAgIEFyZ3VtZW50c0FzT2JqZWN0PENoYXJ0UHJvcHNbJ29uRGF0YVBvaW50Q2xpY2snXSwgWydwb2ludCcsICduYXRpdmVFdmVudCddPlxuICA+KCk7XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQ2hhcnRQcm9wcy5vbkRhdGFQb2ludENvbnRleHRNZW51fVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2FsbGJhY2tzXG4gICAqL1xuICBAT3V0cHV0KClcbiAgZGF0YVBvaW50Q29udGV4dE1lbnUgPSBuZXcgRXZlbnRFbWl0dGVyPFxuICAgIEFyZ3VtZW50c0FzT2JqZWN0PENoYXJ0UHJvcHNbJ29uRGF0YVBvaW50Q29udGV4dE1lbnUnXSwgWydwb2ludCcsICduYXRpdmVFdmVudCddPlxuICA+KCk7XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQ2hhcnRQcm9wcy5vbkRhdGFQb2ludHNTZWxlY3RlZH1cbiAgICpcbiAgICogQGNhdGVnb3J5IENhbGxiYWNrc1xuICAgKi9cbiAgQE91dHB1dCgpXG4gIGRhdGFQb2ludHNTZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPFxuICAgIEFyZ3VtZW50c0FzT2JqZWN0PENoYXJ0UHJvcHNbJ29uRGF0YVBvaW50c1NlbGVjdGVkJ10sIFsncG9pbnRzJywgJ25hdGl2ZUV2ZW50J10+XG4gID4oKTtcblxuICBwcml2YXRlIGNvbXBvbmVudEFkYXB0ZXI6IENvbXBvbmVudEFkYXB0ZXI7XG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdG9yIGZvciB0aGUgYENoYXJ0YCBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBzaXNlbnNlQ29udGV4dFNlcnZpY2UgLSBTaXNlbnNlIGNvbnRleHQgc2VydmljZVxuICAgKiBAcGFyYW0gdGhlbWVTZXJ2aWNlIC0gVGhlbWUgc2VydmljZVxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgLyoqXG4gICAgICogU2lzZW5zZSBjb250ZXh0IHNlcnZpY2VcbiAgICAgKlxuICAgICAqIEBjYXRlZ29yeSBDb25zdHJ1Y3RvclxuICAgICAqL1xuICAgIHB1YmxpYyBzaXNlbnNlQ29udGV4dFNlcnZpY2U6IFNpc2Vuc2VDb250ZXh0U2VydmljZSxcbiAgICAvKipcbiAgICAgKiBUaGVtZSBzZXJ2aWNlXG4gICAgICpcbiAgICAgKiBAY2F0ZWdvcnkgQ29uc3RydWN0b3JcbiAgICAgKi9cbiAgICBwdWJsaWMgdGhlbWVTZXJ2aWNlOiBUaGVtZVNlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuY29tcG9uZW50QWRhcHRlciA9IG5ldyBDb21wb25lbnRBZGFwdGVyKFxuICAgICAgKCkgPT4gdGhpcy5jcmVhdGVQcmVhY3RDb21wb25lbnQoKSxcbiAgICAgIFtcbiAgICAgICAgY3JlYXRlU2lzZW5zZUNvbnRleHRDb25uZWN0b3IodGhpcy5zaXNlbnNlQ29udGV4dFNlcnZpY2UpLFxuICAgICAgICBjcmVhdGVUaGVtZUNvbnRleHRDb25uZWN0b3IodGhpcy50aGVtZVNlcnZpY2UpLFxuICAgICAgXSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuY29tcG9uZW50QWRhcHRlci5yZW5kZXIodGhpcy5wcmVhY3RSZWYubmF0aXZlRWxlbWVudCk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBuZ09uQ2hhbmdlcygpIHtcbiAgICBpZiAodGhpcy5wcmVhY3RSZWYpIHtcbiAgICAgIHRoaXMuY29tcG9uZW50QWRhcHRlci5yZW5kZXIodGhpcy5wcmVhY3RSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVQcmVhY3RDb21wb25lbnQoKSB7XG4gICAgY29uc3QgcHJvcHMgPSB7XG4gICAgICBjaGFydFR5cGU6IHRoaXMuY2hhcnRUeXBlLFxuICAgICAgZGF0YVNldDogdGhpcy5kYXRhU2V0LFxuICAgICAgZGF0YU9wdGlvbnM6IHRoaXMuZGF0YU9wdGlvbnMsXG4gICAgICBmaWx0ZXJzOiB0aGlzLmZpbHRlcnMsXG4gICAgICBoaWdobGlnaHRzOiB0aGlzLmhpZ2hsaWdodHMsXG4gICAgICBzdHlsZU9wdGlvbnM6IHRoaXMuc3R5bGVPcHRpb25zLFxuICAgICAgb25CZWZvcmVSZW5kZXI6IHRoaXMuYmVmb3JlUmVuZGVyPy5iaW5kKHRoaXMpLFxuICAgICAgb25EYXRhUG9pbnRDbGljazogKC4uLltwb2ludCwgbmF0aXZlRXZlbnRdOiBBcmd1bWVudHM8Q2hhcnRQcm9wc1snb25EYXRhUG9pbnRDbGljayddPikgPT5cbiAgICAgICAgdGhpcy5kYXRhUG9pbnRDbGljay5lbWl0KHsgcG9pbnQsIG5hdGl2ZUV2ZW50IH0pLFxuICAgICAgb25EYXRhUG9pbnRDb250ZXh0TWVudTogKFxuICAgICAgICAuLi5bcG9pbnQsIG5hdGl2ZUV2ZW50XTogQXJndW1lbnRzPENoYXJ0UHJvcHNbJ29uRGF0YVBvaW50Q29udGV4dE1lbnUnXT5cbiAgICAgICkgPT4gdGhpcy5kYXRhUG9pbnRDb250ZXh0TWVudS5lbWl0KHsgcG9pbnQsIG5hdGl2ZUV2ZW50IH0pLFxuICAgICAgb25EYXRhUG9pbnRzU2VsZWN0ZWQ6IChcbiAgICAgICAgLi4uW3BvaW50cywgbmF0aXZlRXZlbnRdOiBBcmd1bWVudHM8Q2hhcnRQcm9wc1snb25EYXRhUG9pbnRzU2VsZWN0ZWQnXT5cbiAgICAgICkgPT4gdGhpcy5kYXRhUG9pbnRzU2VsZWN0LmVtaXQoeyBwb2ludHMsIG5hdGl2ZUV2ZW50IH0pLFxuICAgIH07XG5cbiAgICByZXR1cm4gY3JlYXRlRWxlbWVudChDaGFydCwgcHJvcHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5jb21wb25lbnRBZGFwdGVyLmRlc3Ryb3koKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "./chart.component";
|
|
4
|
+
/**
|
|
5
|
+
* A component representing categorical data with vertical rectangular bars
|
|
6
|
+
* whose heights are proportional to the values that they represent.
|
|
7
|
+
* See [Column Chart](https://docs.sisense.com/main/SisenseLinux/column-chart.htm) for more information.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```html
|
|
11
|
+
* <csdk-column-chart
|
|
12
|
+
* [dataSet]="chart.dataSet"
|
|
13
|
+
* [dataOptions]="chart.dataOptions"
|
|
14
|
+
* [highlights]="filters"
|
|
15
|
+
* [beforeRender]="onBeforeRender"
|
|
16
|
+
* (dataPointClick)="logArguments($event)"
|
|
17
|
+
* (dataPointContextMenu)="logArguments($event)"
|
|
18
|
+
* (dataPointsSelect)="logArguments($event)"
|
|
19
|
+
* />
|
|
20
|
+
* ```
|
|
21
|
+
* ```ts
|
|
22
|
+
import { Component } from '@angular/core';
|
|
23
|
+
import { measureFactory, filterFactory } from '@sisense/sdk-data';
|
|
24
|
+
import * as DM from '../../assets/sample-healthcare-model';
|
|
25
|
+
import type { ChartType } from '@sisense/sdk-ui-angular';
|
|
26
|
+
|
|
27
|
+
@Component({
|
|
28
|
+
selector: 'app-analytics',
|
|
29
|
+
templateUrl: './analytics.component.html',
|
|
30
|
+
styleUrls: ['./analytics.component.scss'],
|
|
31
|
+
})
|
|
32
|
+
export class AnalyticsComponent {
|
|
33
|
+
DM = DM;
|
|
34
|
+
filters = [filterFactory.members(DM.Divisions.Divison_name, ['Cardiology', 'Neurology'])];
|
|
35
|
+
chart = {
|
|
36
|
+
chartType: 'column' as ChartType,
|
|
37
|
+
dataSet: DM.DataSource,
|
|
38
|
+
dataOptions: {
|
|
39
|
+
category: [DM.Divisions.Divison_name],
|
|
40
|
+
value: [measureFactory.sum(DM.Admissions.Cost_of_admission)],
|
|
41
|
+
breakBy: [],
|
|
42
|
+
},
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
onBeforeRender(options: any) {
|
|
46
|
+
console.log('beforeRender');
|
|
47
|
+
console.log(options);
|
|
48
|
+
return options;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
logArguments(...args: any[]) {
|
|
52
|
+
console.log(args);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
* ```
|
|
56
|
+
* <img src="media://angular-column-chart-example.png" width="800px" />
|
|
57
|
+
*
|
|
58
|
+
* @group Charts
|
|
59
|
+
*/
|
|
60
|
+
export class ColumnChartComponent {
|
|
61
|
+
constructor() {
|
|
62
|
+
/**
|
|
63
|
+
* {@inheritDoc @sisense/sdk-ui!ColumnChartProps.onDataPointClick}
|
|
64
|
+
*
|
|
65
|
+
* @category Callbacks
|
|
66
|
+
*/
|
|
67
|
+
this.dataPointClick = new EventEmitter();
|
|
68
|
+
/**
|
|
69
|
+
* {@inheritDoc @sisense/sdk-ui!ColumnChartProps.onDataPointContextMenu}
|
|
70
|
+
*
|
|
71
|
+
* @category Callbacks
|
|
72
|
+
*/
|
|
73
|
+
this.dataPointContextMenu = new EventEmitter();
|
|
74
|
+
/**
|
|
75
|
+
* {@inheritDoc @sisense/sdk-ui!ColumnChartProps.onDataPointsSelected}
|
|
76
|
+
*
|
|
77
|
+
* @category Callbacks
|
|
78
|
+
*/
|
|
79
|
+
this.dataPointsSelect = new EventEmitter();
|
|
80
|
+
/** @internal */
|
|
81
|
+
this.chartType = 'column';
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
ColumnChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
85
|
+
ColumnChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ColumnChartComponent, selector: "csdk-column-chart", inputs: { dataSet: "dataSet", dataOptions: "dataOptions", filters: "filters", highlights: "highlights", styleOptions: "styleOptions", beforeRender: "beforeRender" }, outputs: { dataPointClick: "dataPointClick", dataPointContextMenu: "dataPointContextMenu", dataPointsSelect: "dataPointsSelect" }, ngImport: i0, template: `
|
|
86
|
+
<csdk-chart
|
|
87
|
+
[chartType]="chartType"
|
|
88
|
+
[dataSet]="dataSet"
|
|
89
|
+
[dataOptions]="dataOptions"
|
|
90
|
+
[filters]="filters"
|
|
91
|
+
[highlights]="highlights"
|
|
92
|
+
[styleOptions]="styleOptions"
|
|
93
|
+
[beforeRender]="beforeRender"
|
|
94
|
+
(dataPointClick)="dataPointClick.emit($event)"
|
|
95
|
+
(dataPointContextMenu)="dataPointContextMenu.emit($event)"
|
|
96
|
+
(dataPointsSelect)="dataPointsSelect.emit($event)"
|
|
97
|
+
/>
|
|
98
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i1.ChartComponent, selector: "csdk-chart", inputs: ["chartType", "dataSet", "dataOptions", "filters", "highlights", "styleOptions", "beforeRender"], outputs: ["dataPointClick", "dataPointContextMenu", "dataPointsSelect"] }] });
|
|
99
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnChartComponent, decorators: [{
|
|
100
|
+
type: Component,
|
|
101
|
+
args: [{
|
|
102
|
+
selector: 'csdk-column-chart',
|
|
103
|
+
template: `
|
|
104
|
+
<csdk-chart
|
|
105
|
+
[chartType]="chartType"
|
|
106
|
+
[dataSet]="dataSet"
|
|
107
|
+
[dataOptions]="dataOptions"
|
|
108
|
+
[filters]="filters"
|
|
109
|
+
[highlights]="highlights"
|
|
110
|
+
[styleOptions]="styleOptions"
|
|
111
|
+
[beforeRender]="beforeRender"
|
|
112
|
+
(dataPointClick)="dataPointClick.emit($event)"
|
|
113
|
+
(dataPointContextMenu)="dataPointContextMenu.emit($event)"
|
|
114
|
+
(dataPointsSelect)="dataPointsSelect.emit($event)"
|
|
115
|
+
/>
|
|
116
|
+
`,
|
|
117
|
+
}]
|
|
118
|
+
}], propDecorators: { dataSet: [{
|
|
119
|
+
type: Input
|
|
120
|
+
}], dataOptions: [{
|
|
121
|
+
type: Input
|
|
122
|
+
}], filters: [{
|
|
123
|
+
type: Input
|
|
124
|
+
}], highlights: [{
|
|
125
|
+
type: Input
|
|
126
|
+
}], styleOptions: [{
|
|
127
|
+
type: Input
|
|
128
|
+
}], beforeRender: [{
|
|
129
|
+
type: Input
|
|
130
|
+
}], dataPointClick: [{
|
|
131
|
+
type: Output
|
|
132
|
+
}], dataPointContextMenu: [{
|
|
133
|
+
type: Output
|
|
134
|
+
}], dataPointsSelect: [{
|
|
135
|
+
type: Output
|
|
136
|
+
}] } });
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9jaGFydHMvY29sdW1uLWNoYXJ0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFLdkU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1REc7QUFrQkgsTUFBTSxPQUFPLG9CQUFvQjtJQWpCakM7UUFrRUU7Ozs7V0FJRztRQUVILG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBRTlCLENBQUM7UUFFSjs7OztXQUlHO1FBRUgseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBRXBDLENBQUM7UUFFSjs7OztXQUlHO1FBRUgscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBRWhDLENBQUM7UUFFSixnQkFBZ0I7UUFDVCxjQUFTLEdBQWMsUUFBUSxDQUFDO0tBQ3hDOztrSEFqRlksb0JBQW9CO3NHQUFwQixvQkFBb0Isa1dBZnJCOzs7Ozs7Ozs7Ozs7O0dBYVQ7NEZBRVUsb0JBQW9CO2tCQWpCaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7R0FhVDtpQkFDRjs4QkFRQyxPQUFPO3NCQUROLEtBQUs7Z0JBU04sV0FBVztzQkFEVixLQUFLO2dCQVNOLE9BQU87c0JBRE4sS0FBSztnQkFTTixVQUFVO3NCQURULEtBQUs7Z0JBU04sWUFBWTtzQkFEWCxLQUFLO2dCQVNOLFlBQVk7c0JBRFgsS0FBSztnQkFTTixjQUFjO3NCQURiLE1BQU07Z0JBV1Asb0JBQW9CO3NCQURuQixNQUFNO2dCQVdQLGdCQUFnQjtzQkFEZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHR5cGUgQ2hhcnRUeXBlIH0gZnJvbSAnLi4vLi4vc2RrLXVpLWNvcmUtZXhwb3J0cyc7XG5pbXBvcnQgeyB0eXBlIENvbHVtbkNoYXJ0UHJvcHMgfSBmcm9tICdAc2lzZW5zZS9zZGstdWktcHJlYWN0JztcbmltcG9ydCB7IHR5cGUgQXJndW1lbnRzQXNPYmplY3QgfSBmcm9tICcuLi8uLi90eXBlcy91dGlsaXR5LXR5cGVzJztcblxuLyoqXG4gKiBBIGNvbXBvbmVudCByZXByZXNlbnRpbmcgY2F0ZWdvcmljYWwgZGF0YSB3aXRoIHZlcnRpY2FsIHJlY3Rhbmd1bGFyIGJhcnNcbiAqIHdob3NlIGhlaWdodHMgYXJlIHByb3BvcnRpb25hbCB0byB0aGUgdmFsdWVzIHRoYXQgdGhleSByZXByZXNlbnQuXG4gKiBTZWUgW0NvbHVtbiBDaGFydF0oaHR0cHM6Ly9kb2NzLnNpc2Vuc2UuY29tL21haW4vU2lzZW5zZUxpbnV4L2NvbHVtbi1jaGFydC5odG0pIGZvciBtb3JlIGluZm9ybWF0aW9uLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBodG1sXG4gKiAgICA8Y3Nkay1jb2x1bW4tY2hhcnRcbiAqICAgICAgW2RhdGFTZXRdPVwiY2hhcnQuZGF0YVNldFwiXG4gKiAgICAgIFtkYXRhT3B0aW9uc109XCJjaGFydC5kYXRhT3B0aW9uc1wiXG4gKiAgICAgIFtoaWdobGlnaHRzXT1cImZpbHRlcnNcIlxuICogICAgICBbYmVmb3JlUmVuZGVyXT1cIm9uQmVmb3JlUmVuZGVyXCJcbiAqICAgICAgKGRhdGFQb2ludENsaWNrKT1cImxvZ0FyZ3VtZW50cygkZXZlbnQpXCJcbiAqICAgICAgKGRhdGFQb2ludENvbnRleHRNZW51KT1cImxvZ0FyZ3VtZW50cygkZXZlbnQpXCJcbiAqICAgICAgKGRhdGFQb2ludHNTZWxlY3QpPVwibG9nQXJndW1lbnRzKCRldmVudClcIlxuICogICAgLz5cbiAqIGBgYFxuICogYGBgdHNcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbWVhc3VyZUZhY3RvcnksIGZpbHRlckZhY3RvcnkgfSBmcm9tICdAc2lzZW5zZS9zZGstZGF0YSc7XG5pbXBvcnQgKiBhcyBETSBmcm9tICcuLi8uLi9hc3NldHMvc2FtcGxlLWhlYWx0aGNhcmUtbW9kZWwnO1xuaW1wb3J0IHR5cGUgeyBDaGFydFR5cGUgfSBmcm9tICdAc2lzZW5zZS9zZGstdWktYW5ndWxhcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1hbmFseXRpY3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vYW5hbHl0aWNzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYW5hbHl0aWNzLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEFuYWx5dGljc0NvbXBvbmVudCB7XG4gIERNID0gRE07XG4gIGZpbHRlcnMgPSBbZmlsdGVyRmFjdG9yeS5tZW1iZXJzKERNLkRpdmlzaW9ucy5EaXZpc29uX25hbWUsIFsnQ2FyZGlvbG9neScsICdOZXVyb2xvZ3knXSldO1xuICBjaGFydCA9IHtcbiAgICBjaGFydFR5cGU6ICdjb2x1bW4nIGFzIENoYXJ0VHlwZSxcbiAgICBkYXRhU2V0OiBETS5EYXRhU291cmNlLFxuICAgIGRhdGFPcHRpb25zOiB7XG4gICAgICBjYXRlZ29yeTogW0RNLkRpdmlzaW9ucy5EaXZpc29uX25hbWVdLFxuICAgICAgdmFsdWU6IFttZWFzdXJlRmFjdG9yeS5zdW0oRE0uQWRtaXNzaW9ucy5Db3N0X29mX2FkbWlzc2lvbildLFxuICAgICAgYnJlYWtCeTogW10sXG4gICAgfSxcbiAgfTtcblxuICBvbkJlZm9yZVJlbmRlcihvcHRpb25zOiBhbnkpIHtcbiAgICBjb25zb2xlLmxvZygnYmVmb3JlUmVuZGVyJyk7XG4gICAgY29uc29sZS5sb2cob3B0aW9ucyk7XG4gICAgcmV0dXJuIG9wdGlvbnM7XG4gIH1cblxuICBsb2dBcmd1bWVudHMoLi4uYXJnczogYW55W10pIHtcbiAgICBjb25zb2xlLmxvZyhhcmdzKTtcbiAgfVxufVxuICogYGBgXG4gKiA8aW1nIHNyYz1cIm1lZGlhOi8vYW5ndWxhci1jb2x1bW4tY2hhcnQtZXhhbXBsZS5wbmdcIiB3aWR0aD1cIjgwMHB4XCIgLz5cbiAqXG4gKiBAZ3JvdXAgQ2hhcnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NzZGstY29sdW1uLWNoYXJ0JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8Y3Nkay1jaGFydFxuICAgICAgW2NoYXJ0VHlwZV09XCJjaGFydFR5cGVcIlxuICAgICAgW2RhdGFTZXRdPVwiZGF0YVNldFwiXG4gICAgICBbZGF0YU9wdGlvbnNdPVwiZGF0YU9wdGlvbnNcIlxuICAgICAgW2ZpbHRlcnNdPVwiZmlsdGVyc1wiXG4gICAgICBbaGlnaGxpZ2h0c109XCJoaWdobGlnaHRzXCJcbiAgICAgIFtzdHlsZU9wdGlvbnNdPVwic3R5bGVPcHRpb25zXCJcbiAgICAgIFtiZWZvcmVSZW5kZXJdPVwiYmVmb3JlUmVuZGVyXCJcbiAgICAgIChkYXRhUG9pbnRDbGljayk9XCJkYXRhUG9pbnRDbGljay5lbWl0KCRldmVudClcIlxuICAgICAgKGRhdGFQb2ludENvbnRleHRNZW51KT1cImRhdGFQb2ludENvbnRleHRNZW51LmVtaXQoJGV2ZW50KVwiXG4gICAgICAoZGF0YVBvaW50c1NlbGVjdCk9XCJkYXRhUG9pbnRzU2VsZWN0LmVtaXQoJGV2ZW50KVwiXG4gICAgLz5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgQ29sdW1uQ2hhcnRDb21wb25lbnQge1xuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFDb2x1bW5DaGFydFByb3BzLmRhdGFTZXR9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBEYXRhXG4gICAqL1xuICBASW5wdXQoKVxuICBkYXRhU2V0OiBDb2x1bW5DaGFydFByb3BzWydkYXRhU2V0J107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQ29sdW1uQ2hhcnRQcm9wcy5kYXRhT3B0aW9uc31cbiAgICpcbiAgICogQGNhdGVnb3J5IENoYXJ0XG4gICAqL1xuICBASW5wdXQoKVxuICBkYXRhT3B0aW9ucyE6IENvbHVtbkNoYXJ0UHJvcHNbJ2RhdGFPcHRpb25zJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhQ29sdW1uQ2hhcnRQcm9wcy5maWx0ZXJzfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgRGF0YVxuICAgKi9cbiAgQElucHV0KClcbiAgZmlsdGVyczogQ29sdW1uQ2hhcnRQcm9wc1snZmlsdGVycyddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUNvbHVtbkNoYXJ0UHJvcHMuaGlnaGxpZ2h0c31cbiAgICpcbiAgICogQGNhdGVnb3J5IERhdGFcbiAgICovXG4gIEBJbnB1dCgpXG4gIGhpZ2hsaWdodHM6IENvbHVtbkNoYXJ0UHJvcHNbJ2hpZ2hsaWdodHMnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFDb2x1bW5DaGFydFByb3BzLnN0eWxlT3B0aW9uc31cbiAgICpcbiAgICogQGNhdGVnb3J5IENoYXJ0XG4gICAqL1xuICBASW5wdXQoKVxuICBzdHlsZU9wdGlvbnM6IENvbHVtbkNoYXJ0UHJvcHNbJ3N0eWxlT3B0aW9ucyddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUNvbHVtbkNoYXJ0UHJvcHMub25CZWZvcmVSZW5kZXJ9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDYWxsYmFja3NcbiAgICovXG4gIEBJbnB1dCgpXG4gIGJlZm9yZVJlbmRlcjogQ29sdW1uQ2hhcnRQcm9wc1snb25CZWZvcmVSZW5kZXInXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFDb2x1bW5DaGFydFByb3BzLm9uRGF0YVBvaW50Q2xpY2t9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDYWxsYmFja3NcbiAgICovXG4gIEBPdXRwdXQoKVxuICBkYXRhUG9pbnRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8XG4gICAgQXJndW1lbnRzQXNPYmplY3Q8Q29sdW1uQ2hhcnRQcm9wc1snb25EYXRhUG9pbnRDbGljayddLCBbJ3BvaW50JywgJ25hdGl2ZUV2ZW50J10+XG4gID4oKTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFDb2x1bW5DaGFydFByb3BzLm9uRGF0YVBvaW50Q29udGV4dE1lbnV9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDYWxsYmFja3NcbiAgICovXG4gIEBPdXRwdXQoKVxuICBkYXRhUG9pbnRDb250ZXh0TWVudSA9IG5ldyBFdmVudEVtaXR0ZXI8XG4gICAgQXJndW1lbnRzQXNPYmplY3Q8Q29sdW1uQ2hhcnRQcm9wc1snb25EYXRhUG9pbnRDb250ZXh0TWVudSddLCBbJ3BvaW50JywgJ25hdGl2ZUV2ZW50J10+XG4gID4oKTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFDb2x1bW5DaGFydFByb3BzLm9uRGF0YVBvaW50c1NlbGVjdGVkfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2FsbGJhY2tzXG4gICAqL1xuICBAT3V0cHV0KClcbiAgZGF0YVBvaW50c1NlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8XG4gICAgQXJndW1lbnRzQXNPYmplY3Q8Q29sdW1uQ2hhcnRQcm9wc1snb25EYXRhUG9pbnRzU2VsZWN0ZWQnXSwgWydwb2ludHMnLCAnbmF0aXZlRXZlbnQnXT5cbiAgPigpO1xuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgcHVibGljIGNoYXJ0VHlwZTogQ2hhcnRUeXBlID0gJ2NvbHVtbic7XG59XG4iXX0=
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "./chart.component";
|
|
4
|
+
/**
|
|
5
|
+
* A component representing data progressively decreasing in size or quantity through a funnel shape.
|
|
6
|
+
* See [Funnel Chart](https://docs.sisense.com/main/SisenseLinux/funnel-chart.htm) for more information.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```html
|
|
10
|
+
* <csdk-funnel-chart
|
|
11
|
+
* [dataSet]="chart.dataSet"
|
|
12
|
+
* [dataOptions]="chart.dataOptions"
|
|
13
|
+
* [highlights]="filters"
|
|
14
|
+
* [beforeRender]="onBeforeRender"
|
|
15
|
+
* (dataPointClick)="logArguments($event)"
|
|
16
|
+
* (dataPointContextMenu)="logArguments($event)"
|
|
17
|
+
* (dataPointsSelect)="logArguments($event)"
|
|
18
|
+
* />
|
|
19
|
+
* ```
|
|
20
|
+
* ```ts
|
|
21
|
+
import { Component } from '@angular/core';
|
|
22
|
+
import { measureFactory, filterFactory, Filter } from '@sisense/sdk-data';
|
|
23
|
+
import * as DM from '../../assets/sample-healthcare-model';
|
|
24
|
+
import type { ChartType } from '@sisense/sdk-ui-angular';
|
|
25
|
+
@Component({
|
|
26
|
+
selector: 'app-analytics',
|
|
27
|
+
templateUrl: './analytics.component.html',
|
|
28
|
+
styleUrls: ['./analytics.component.scss'],
|
|
29
|
+
})
|
|
30
|
+
export class AnalyticsComponent {
|
|
31
|
+
DM = DM;
|
|
32
|
+
filters = [filterFactory.members(DM.Divisions.Divison_name, ['Cardiology', 'Neurology'])];
|
|
33
|
+
chart = {
|
|
34
|
+
chartType: 'column' as ChartType,
|
|
35
|
+
dataSet: DM.DataSource,
|
|
36
|
+
dataOptions: {
|
|
37
|
+
category: [DM.Divisions.Divison_name],
|
|
38
|
+
value: [measureFactory.sum(DM.Admissions.Cost_of_admission)],
|
|
39
|
+
breakBy: [],
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
onBeforeRender(options: any) {
|
|
44
|
+
console.log('beforeRender');
|
|
45
|
+
console.log(options);
|
|
46
|
+
return options;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
logArguments(...args: any[]) {
|
|
50
|
+
console.log(args);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
* ```
|
|
54
|
+
* <img src="media://angular-funnel-chart-example.png" width="800px" />
|
|
55
|
+
*
|
|
56
|
+
* @group Charts
|
|
57
|
+
*/
|
|
58
|
+
export class FunnelChartComponent {
|
|
59
|
+
constructor() {
|
|
60
|
+
/**
|
|
61
|
+
* {@inheritDoc @sisense/sdk-ui!FunnelChartProps.onDataPointClick}
|
|
62
|
+
*
|
|
63
|
+
* @category Callbacks
|
|
64
|
+
*/
|
|
65
|
+
this.dataPointClick = new EventEmitter();
|
|
66
|
+
/**
|
|
67
|
+
* {@inheritDoc @sisense/sdk-ui!FunnelChartProps.onDataPointContextMenu}
|
|
68
|
+
*
|
|
69
|
+
* @category Callbacks
|
|
70
|
+
*/
|
|
71
|
+
this.dataPointContextMenu = new EventEmitter();
|
|
72
|
+
/**
|
|
73
|
+
* {@inheritDoc @sisense/sdk-ui!FunnelChartProps.onDataPointsSelected}
|
|
74
|
+
*
|
|
75
|
+
* @category Callbacks
|
|
76
|
+
*/
|
|
77
|
+
this.dataPointsSelect = new EventEmitter();
|
|
78
|
+
/** @internal */
|
|
79
|
+
this.chartType = 'funnel';
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
FunnelChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FunnelChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
83
|
+
FunnelChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FunnelChartComponent, selector: "csdk-funnel-chart", inputs: { dataSet: "dataSet", dataOptions: "dataOptions", filters: "filters", highlights: "highlights", styleOptions: "styleOptions", beforeRender: "beforeRender" }, outputs: { dataPointClick: "dataPointClick", dataPointContextMenu: "dataPointContextMenu", dataPointsSelect: "dataPointsSelect" }, ngImport: i0, template: `
|
|
84
|
+
<csdk-chart
|
|
85
|
+
[chartType]="chartType"
|
|
86
|
+
[dataSet]="dataSet"
|
|
87
|
+
[dataOptions]="dataOptions"
|
|
88
|
+
[filters]="filters"
|
|
89
|
+
[highlights]="highlights"
|
|
90
|
+
[styleOptions]="styleOptions"
|
|
91
|
+
[beforeRender]="beforeRender"
|
|
92
|
+
(dataPointClick)="dataPointClick.emit($event)"
|
|
93
|
+
(dataPointContextMenu)="dataPointContextMenu.emit($event)"
|
|
94
|
+
(dataPointsSelect)="dataPointsSelect.emit($event)"
|
|
95
|
+
/>
|
|
96
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i1.ChartComponent, selector: "csdk-chart", inputs: ["chartType", "dataSet", "dataOptions", "filters", "highlights", "styleOptions", "beforeRender"], outputs: ["dataPointClick", "dataPointContextMenu", "dataPointsSelect"] }] });
|
|
97
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FunnelChartComponent, decorators: [{
|
|
98
|
+
type: Component,
|
|
99
|
+
args: [{
|
|
100
|
+
selector: 'csdk-funnel-chart',
|
|
101
|
+
template: `
|
|
102
|
+
<csdk-chart
|
|
103
|
+
[chartType]="chartType"
|
|
104
|
+
[dataSet]="dataSet"
|
|
105
|
+
[dataOptions]="dataOptions"
|
|
106
|
+
[filters]="filters"
|
|
107
|
+
[highlights]="highlights"
|
|
108
|
+
[styleOptions]="styleOptions"
|
|
109
|
+
[beforeRender]="beforeRender"
|
|
110
|
+
(dataPointClick)="dataPointClick.emit($event)"
|
|
111
|
+
(dataPointContextMenu)="dataPointContextMenu.emit($event)"
|
|
112
|
+
(dataPointsSelect)="dataPointsSelect.emit($event)"
|
|
113
|
+
/>
|
|
114
|
+
`,
|
|
115
|
+
}]
|
|
116
|
+
}], propDecorators: { dataSet: [{
|
|
117
|
+
type: Input
|
|
118
|
+
}], dataOptions: [{
|
|
119
|
+
type: Input
|
|
120
|
+
}], filters: [{
|
|
121
|
+
type: Input
|
|
122
|
+
}], highlights: [{
|
|
123
|
+
type: Input
|
|
124
|
+
}], styleOptions: [{
|
|
125
|
+
type: Input
|
|
126
|
+
}], beforeRender: [{
|
|
127
|
+
type: Input
|
|
128
|
+
}], dataPointClick: [{
|
|
129
|
+
type: Output
|
|
130
|
+
}], dataPointContextMenu: [{
|
|
131
|
+
type: Output
|
|
132
|
+
}], dataPointsSelect: [{
|
|
133
|
+
type: Output
|
|
134
|
+
}] } });
|
|
135
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVubmVsLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9jaGFydHMvZnVubmVsLWNoYXJ0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFLdkU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcURHO0FBa0JILE1BQU0sT0FBTyxvQkFBb0I7SUFqQmpDO1FBa0VFOzs7O1dBSUc7UUFFSCxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUU5QixDQUFDO1FBRUo7Ozs7V0FJRztRQUVILHlCQUFvQixHQUFHLElBQUksWUFBWSxFQUVwQyxDQUFDO1FBRUo7Ozs7V0FJRztRQUVILHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUVoQyxDQUFDO1FBRUosZ0JBQWdCO1FBQ1QsY0FBUyxHQUFjLFFBQVEsQ0FBQztLQUN4Qzs7a0hBakZZLG9CQUFvQjtzR0FBcEIsb0JBQW9CLGtXQWZyQjs7Ozs7Ozs7Ozs7OztHQWFUOzRGQUVVLG9CQUFvQjtrQkFqQmhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7O0dBYVQ7aUJBQ0Y7OEJBUUMsT0FBTztzQkFETixLQUFLO2dCQVNOLFdBQVc7c0JBRFYsS0FBSztnQkFTTixPQUFPO3NCQUROLEtBQUs7Z0JBU04sVUFBVTtzQkFEVCxLQUFLO2dCQVNOLFlBQVk7c0JBRFgsS0FBSztnQkFTTixZQUFZO3NCQURYLEtBQUs7Z0JBU04sY0FBYztzQkFEYixNQUFNO2dCQVdQLG9CQUFvQjtzQkFEbkIsTUFBTTtnQkFXUCxnQkFBZ0I7c0JBRGYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0eXBlIENoYXJ0VHlwZSB9IGZyb20gJy4uLy4uL3Nkay11aS1jb3JlLWV4cG9ydHMnO1xuaW1wb3J0IHsgdHlwZSBGdW5uZWxDaGFydFByb3BzIH0gZnJvbSAnQHNpc2Vuc2Uvc2RrLXVpLXByZWFjdCc7XG5pbXBvcnQgeyB0eXBlIEFyZ3VtZW50c0FzT2JqZWN0IH0gZnJvbSAnLi4vLi4vdHlwZXMvdXRpbGl0eS10eXBlcyc7XG5cbi8qKlxuICogQSBjb21wb25lbnQgcmVwcmVzZW50aW5nIGRhdGEgcHJvZ3Jlc3NpdmVseSBkZWNyZWFzaW5nIGluIHNpemUgb3IgcXVhbnRpdHkgdGhyb3VnaCBhIGZ1bm5lbCBzaGFwZS5cbiAqIFNlZSBbRnVubmVsIENoYXJ0XShodHRwczovL2RvY3Muc2lzZW5zZS5jb20vbWFpbi9TaXNlbnNlTGludXgvZnVubmVsLWNoYXJ0Lmh0bSkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqICAgIDxjc2RrLWZ1bm5lbC1jaGFydFxuICogICAgICBbZGF0YVNldF09XCJjaGFydC5kYXRhU2V0XCJcbiAqICAgICAgW2RhdGFPcHRpb25zXT1cImNoYXJ0LmRhdGFPcHRpb25zXCJcbiAqICAgICAgW2hpZ2hsaWdodHNdPVwiZmlsdGVyc1wiXG4gKiAgICAgIFtiZWZvcmVSZW5kZXJdPVwib25CZWZvcmVSZW5kZXJcIlxuICogICAgICAoZGF0YVBvaW50Q2xpY2spPVwibG9nQXJndW1lbnRzKCRldmVudClcIlxuICogICAgICAoZGF0YVBvaW50Q29udGV4dE1lbnUpPVwibG9nQXJndW1lbnRzKCRldmVudClcIlxuICogICAgICAoZGF0YVBvaW50c1NlbGVjdCk9XCJsb2dBcmd1bWVudHMoJGV2ZW50KVwiXG4gKiAgICAvPlxuICogYGBgXG4gKiBgYGB0c1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBtZWFzdXJlRmFjdG9yeSwgZmlsdGVyRmFjdG9yeSwgRmlsdGVyIH0gZnJvbSAnQHNpc2Vuc2Uvc2RrLWRhdGEnO1xuaW1wb3J0ICogYXMgRE0gZnJvbSAnLi4vLi4vYXNzZXRzL3NhbXBsZS1oZWFsdGhjYXJlLW1vZGVsJztcbmltcG9ydCB0eXBlIHsgQ2hhcnRUeXBlIH0gZnJvbSAnQHNpc2Vuc2Uvc2RrLXVpLWFuZ3VsYXInO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWFuYWx5dGljcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9hbmFseXRpY3MuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hbmFseXRpY3MuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQW5hbHl0aWNzQ29tcG9uZW50IHtcbiAgRE0gPSBETTtcbiAgZmlsdGVycyA9IFtmaWx0ZXJGYWN0b3J5Lm1lbWJlcnMoRE0uRGl2aXNpb25zLkRpdmlzb25fbmFtZSwgWydDYXJkaW9sb2d5JywgJ05ldXJvbG9neSddKV07XG4gIGNoYXJ0ID0ge1xuICAgIGNoYXJ0VHlwZTogJ2NvbHVtbicgYXMgQ2hhcnRUeXBlLFxuICAgIGRhdGFTZXQ6IERNLkRhdGFTb3VyY2UsXG4gICAgZGF0YU9wdGlvbnM6IHtcbiAgICAgIGNhdGVnb3J5OiBbRE0uRGl2aXNpb25zLkRpdmlzb25fbmFtZV0sXG4gICAgICB2YWx1ZTogW21lYXN1cmVGYWN0b3J5LnN1bShETS5BZG1pc3Npb25zLkNvc3Rfb2ZfYWRtaXNzaW9uKV0sXG4gICAgICBicmVha0J5OiBbXSxcbiAgICB9LFxuICB9O1xuXG4gIG9uQmVmb3JlUmVuZGVyKG9wdGlvbnM6IGFueSkge1xuICAgIGNvbnNvbGUubG9nKCdiZWZvcmVSZW5kZXInKTtcbiAgICBjb25zb2xlLmxvZyhvcHRpb25zKTtcbiAgICByZXR1cm4gb3B0aW9ucztcbiAgfVxuXG4gIGxvZ0FyZ3VtZW50cyguLi5hcmdzOiBhbnlbXSkge1xuICAgIGNvbnNvbGUubG9nKGFyZ3MpO1xuICB9XG59XG4gKiBgYGBcbiAqIDxpbWcgc3JjPVwibWVkaWE6Ly9hbmd1bGFyLWZ1bm5lbC1jaGFydC1leGFtcGxlLnBuZ1wiIHdpZHRoPVwiODAwcHhcIiAvPlxuICpcbiAqIEBncm91cCBDaGFydHNcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3Nkay1mdW5uZWwtY2hhcnQnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxjc2RrLWNoYXJ0XG4gICAgICBbY2hhcnRUeXBlXT1cImNoYXJ0VHlwZVwiXG4gICAgICBbZGF0YVNldF09XCJkYXRhU2V0XCJcbiAgICAgIFtkYXRhT3B0aW9uc109XCJkYXRhT3B0aW9uc1wiXG4gICAgICBbZmlsdGVyc109XCJmaWx0ZXJzXCJcbiAgICAgIFtoaWdobGlnaHRzXT1cImhpZ2hsaWdodHNcIlxuICAgICAgW3N0eWxlT3B0aW9uc109XCJzdHlsZU9wdGlvbnNcIlxuICAgICAgW2JlZm9yZVJlbmRlcl09XCJiZWZvcmVSZW5kZXJcIlxuICAgICAgKGRhdGFQb2ludENsaWNrKT1cImRhdGFQb2ludENsaWNrLmVtaXQoJGV2ZW50KVwiXG4gICAgICAoZGF0YVBvaW50Q29udGV4dE1lbnUpPVwiZGF0YVBvaW50Q29udGV4dE1lbnUuZW1pdCgkZXZlbnQpXCJcbiAgICAgIChkYXRhUG9pbnRzU2VsZWN0KT1cImRhdGFQb2ludHNTZWxlY3QuZW1pdCgkZXZlbnQpXCJcbiAgICAvPlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBGdW5uZWxDaGFydENvbXBvbmVudCB7XG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUZ1bm5lbENoYXJ0UHJvcHMuZGF0YVNldH1cbiAgICpcbiAgICogQGNhdGVnb3J5IERhdGFcbiAgICovXG4gIEBJbnB1dCgpXG4gIGRhdGFTZXQ6IEZ1bm5lbENoYXJ0UHJvcHNbJ2RhdGFTZXQnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFGdW5uZWxDaGFydFByb3BzLmRhdGFPcHRpb25zfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2hhcnRcbiAgICovXG4gIEBJbnB1dCgpXG4gIGRhdGFPcHRpb25zITogRnVubmVsQ2hhcnRQcm9wc1snZGF0YU9wdGlvbnMnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFGdW5uZWxDaGFydFByb3BzLmZpbHRlcnN9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBEYXRhXG4gICAqL1xuICBASW5wdXQoKVxuICBmaWx0ZXJzOiBGdW5uZWxDaGFydFByb3BzWydmaWx0ZXJzJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhRnVubmVsQ2hhcnRQcm9wcy5oaWdobGlnaHRzfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgRGF0YVxuICAgKi9cbiAgQElucHV0KClcbiAgaGlnaGxpZ2h0czogRnVubmVsQ2hhcnRQcm9wc1snaGlnaGxpZ2h0cyddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUZ1bm5lbENoYXJ0UHJvcHMuc3R5bGVPcHRpb25zfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2hhcnRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHN0eWxlT3B0aW9uczogRnVubmVsQ2hhcnRQcm9wc1snc3R5bGVPcHRpb25zJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhRnVubmVsQ2hhcnRQcm9wcy5vbkJlZm9yZVJlbmRlcn1cbiAgICpcbiAgICogQGNhdGVnb3J5IENhbGxiYWNrc1xuICAgKi9cbiAgQElucHV0KClcbiAgYmVmb3JlUmVuZGVyOiBGdW5uZWxDaGFydFByb3BzWydvbkJlZm9yZVJlbmRlciddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUZ1bm5lbENoYXJ0UHJvcHMub25EYXRhUG9pbnRDbGlja31cbiAgICpcbiAgICogQGNhdGVnb3J5IENhbGxiYWNrc1xuICAgKi9cbiAgQE91dHB1dCgpXG4gIGRhdGFQb2ludENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxcbiAgICBBcmd1bWVudHNBc09iamVjdDxGdW5uZWxDaGFydFByb3BzWydvbkRhdGFQb2ludENsaWNrJ10sIFsncG9pbnQnLCAnbmF0aXZlRXZlbnQnXT5cbiAgPigpO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUZ1bm5lbENoYXJ0UHJvcHMub25EYXRhUG9pbnRDb250ZXh0TWVudX1cbiAgICpcbiAgICogQGNhdGVnb3J5IENhbGxiYWNrc1xuICAgKi9cbiAgQE91dHB1dCgpXG4gIGRhdGFQb2ludENvbnRleHRNZW51ID0gbmV3IEV2ZW50RW1pdHRlcjxcbiAgICBBcmd1bWVudHNBc09iamVjdDxGdW5uZWxDaGFydFByb3BzWydvbkRhdGFQb2ludENvbnRleHRNZW51J10sIFsncG9pbnQnLCAnbmF0aXZlRXZlbnQnXT5cbiAgPigpO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUZ1bm5lbENoYXJ0UHJvcHMub25EYXRhUG9pbnRzU2VsZWN0ZWR9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBDYWxsYmFja3NcbiAgICovXG4gIEBPdXRwdXQoKVxuICBkYXRhUG9pbnRzU2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxcbiAgICBBcmd1bWVudHNBc09iamVjdDxGdW5uZWxDaGFydFByb3BzWydvbkRhdGFQb2ludHNTZWxlY3RlZCddLCBbJ3BvaW50cycsICduYXRpdmVFdmVudCddPlxuICA+KCk7XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBwdWJsaWMgY2hhcnRUeXBlOiBDaGFydFR5cGUgPSAnZnVubmVsJztcbn1cbiJdfQ==
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export * from './chart.component';
|
|
2
|
+
export * from './table.component';
|
|
3
|
+
export * from './column-chart.component';
|
|
4
|
+
export * from './bar-chart.component';
|
|
5
|
+
export * from './area-chart.component';
|
|
6
|
+
export * from './line-chart.component';
|
|
7
|
+
export * from './indicator-chart.component';
|
|
8
|
+
export * from './scatter-chart.component';
|
|
9
|
+
export * from './pie-chart.component';
|
|
10
|
+
export * from './funnel-chart.component';
|
|
11
|
+
export * from './polar-chart.component';
|
|
12
|
+
export * from './treemap-chart.component';
|
|
13
|
+
export * from './sunburst-chart.component';
|
|
14
|
+
export * from './boxplot-chart.component';
|
|
15
|
+
export * from './scattermap-chart.component';
|
|
16
|
+
export * from './areamap-chart.component';
|
|
17
|
+
export * from './pivot-table.component';
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvY2hhcnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2hhcnQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGFibGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29sdW1uLWNoYXJ0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2Jhci1jaGFydC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9hcmVhLWNoYXJ0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpbmUtY2hhcnQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaW5kaWNhdG9yLWNoYXJ0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NjYXR0ZXItY2hhcnQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcGllLWNoYXJ0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2Z1bm5lbC1jaGFydC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wb2xhci1jaGFydC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90cmVlbWFwLWNoYXJ0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3N1bmJ1cnN0LWNoYXJ0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2JveHBsb3QtY2hhcnQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2NhdHRlcm1hcC1jaGFydC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9hcmVhbWFwLWNoYXJ0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3Bpdm90LXRhYmxlLmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "./chart.component";
|
|
4
|
+
/**
|
|
5
|
+
* A component that provides various options for displaying one or two numeric values as a number, gauge or ticker.
|
|
6
|
+
* See [Indicator](https://docs.sisense.com/main/SisenseLinux/indicator.htm) for more information.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```html
|
|
10
|
+
* <csdk-indicator-chart
|
|
11
|
+
* [dataSet]="indicator.dataSet"
|
|
12
|
+
* [dataOptions]="indicator.dataOptions"
|
|
13
|
+
* [filters]="filters"
|
|
14
|
+
* [styleOptions]="indicator.styleOptions"
|
|
15
|
+
* />
|
|
16
|
+
* ```
|
|
17
|
+
* ```ts
|
|
18
|
+
import { Component } from '@angular/core';
|
|
19
|
+
import { measureFactory, filterFactory } from '@sisense/sdk-data';
|
|
20
|
+
import * as DM from '../../assets/sample-healthcare-model';
|
|
21
|
+
import type { IndicatorStyleOptions } from '@sisense/sdk-ui-angular';
|
|
22
|
+
|
|
23
|
+
@Component({
|
|
24
|
+
selector: 'app-analytics',
|
|
25
|
+
templateUrl: './analytics.component.html',
|
|
26
|
+
styleUrls: ['./analytics.component.scss'],
|
|
27
|
+
})
|
|
28
|
+
export class AnalyticsComponent {
|
|
29
|
+
DM = DM;
|
|
30
|
+
filters = [filterFactory.members(DM.Divisions.Divison_name, ['Cardiology', 'Neurology'])];
|
|
31
|
+
indicator = {
|
|
32
|
+
dataSet: DM.DataSource,
|
|
33
|
+
dataOptions: {
|
|
34
|
+
value: [measureFactory.sum(DM.Admissions.Cost_of_admission)],
|
|
35
|
+
secondary: [measureFactory.sum(DM.Admissions.Diagnosis_ID)],
|
|
36
|
+
},
|
|
37
|
+
styleOptions: {
|
|
38
|
+
indicatorComponents: {
|
|
39
|
+
title: {
|
|
40
|
+
shouldBeShown: true,
|
|
41
|
+
text: 'Total Cost_of_admission',
|
|
42
|
+
},
|
|
43
|
+
secondaryTitle: {
|
|
44
|
+
text: 'Total Diagnosis_ID',
|
|
45
|
+
},
|
|
46
|
+
ticks: {
|
|
47
|
+
shouldBeShown: true,
|
|
48
|
+
},
|
|
49
|
+
labels: {
|
|
50
|
+
shouldBeShown: true,
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
subtype: 'indicator/gauge',
|
|
54
|
+
skin: 2,
|
|
55
|
+
} as IndicatorStyleOptions,
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
}
|
|
59
|
+
* ```
|
|
60
|
+
* <img src="media://angular-indicator-chart-example.png" width="800px" />
|
|
61
|
+
*
|
|
62
|
+
* @group Charts
|
|
63
|
+
*/
|
|
64
|
+
export class IndicatorChartComponent {
|
|
65
|
+
constructor() {
|
|
66
|
+
/** @internal */
|
|
67
|
+
this.chartType = 'indicator';
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
IndicatorChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: IndicatorChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
71
|
+
IndicatorChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: IndicatorChartComponent, selector: "csdk-indicator-chart", inputs: { dataSet: "dataSet", dataOptions: "dataOptions", filters: "filters", highlights: "highlights", styleOptions: "styleOptions" }, ngImport: i0, template: `
|
|
72
|
+
<csdk-chart
|
|
73
|
+
[chartType]="chartType"
|
|
74
|
+
[dataSet]="dataSet"
|
|
75
|
+
[dataOptions]="dataOptions"
|
|
76
|
+
[filters]="filters"
|
|
77
|
+
[highlights]="highlights"
|
|
78
|
+
[styleOptions]="styleOptions"
|
|
79
|
+
/>
|
|
80
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i1.ChartComponent, selector: "csdk-chart", inputs: ["chartType", "dataSet", "dataOptions", "filters", "highlights", "styleOptions", "beforeRender"], outputs: ["dataPointClick", "dataPointContextMenu", "dataPointsSelect"] }] });
|
|
81
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: IndicatorChartComponent, decorators: [{
|
|
82
|
+
type: Component,
|
|
83
|
+
args: [{
|
|
84
|
+
selector: 'csdk-indicator-chart',
|
|
85
|
+
template: `
|
|
86
|
+
<csdk-chart
|
|
87
|
+
[chartType]="chartType"
|
|
88
|
+
[dataSet]="dataSet"
|
|
89
|
+
[dataOptions]="dataOptions"
|
|
90
|
+
[filters]="filters"
|
|
91
|
+
[highlights]="highlights"
|
|
92
|
+
[styleOptions]="styleOptions"
|
|
93
|
+
/>
|
|
94
|
+
`,
|
|
95
|
+
}]
|
|
96
|
+
}], propDecorators: { dataSet: [{
|
|
97
|
+
type: Input
|
|
98
|
+
}], dataOptions: [{
|
|
99
|
+
type: Input
|
|
100
|
+
}], filters: [{
|
|
101
|
+
type: Input
|
|
102
|
+
}], highlights: [{
|
|
103
|
+
type: Input
|
|
104
|
+
}], styleOptions: [{
|
|
105
|
+
type: Input
|
|
106
|
+
}] } });
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kaWNhdG9yLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9jaGFydHMvaW5kaWNhdG9yLWNoYXJ0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBSWpEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJERztBQWNILE1BQU0sT0FBTyx1QkFBdUI7SUFicEM7UUFzREUsZ0JBQWdCO1FBQ1QsY0FBUyxHQUFjLFdBQVcsQ0FBQztLQUMzQzs7cUhBM0NZLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLG9NQVh4Qjs7Ozs7Ozs7O0dBU1Q7NEZBRVUsdUJBQXVCO2tCQWJuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFFBQVEsRUFBRTs7Ozs7Ozs7O0dBU1Q7aUJBQ0Y7OEJBUUMsT0FBTztzQkFETixLQUFLO2dCQVNOLFdBQVc7c0JBRFYsS0FBSztnQkFTTixPQUFPO3NCQUROLEtBQUs7Z0JBU04sVUFBVTtzQkFEVCxLQUFLO2dCQVNOLFlBQVk7c0JBRFgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHR5cGUgQ2hhcnRUeXBlIH0gZnJvbSAnLi4vLi4vc2RrLXVpLWNvcmUtZXhwb3J0cyc7XG5pbXBvcnQgeyB0eXBlIEluZGljYXRvckNoYXJ0UHJvcHMgfSBmcm9tICdAc2lzZW5zZS9zZGstdWktcHJlYWN0JztcblxuLyoqXG4gKiBBIGNvbXBvbmVudCB0aGF0IHByb3ZpZGVzIHZhcmlvdXMgb3B0aW9ucyBmb3IgZGlzcGxheWluZyBvbmUgb3IgdHdvIG51bWVyaWMgdmFsdWVzIGFzIGEgbnVtYmVyLCBnYXVnZSBvciB0aWNrZXIuXG4gKiBTZWUgW0luZGljYXRvcl0oaHR0cHM6Ly9kb2NzLnNpc2Vuc2UuY29tL21haW4vU2lzZW5zZUxpbnV4L2luZGljYXRvci5odG0pIGZvciBtb3JlIGluZm9ybWF0aW9uLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBodG1sXG4gKiAgICA8Y3Nkay1pbmRpY2F0b3ItY2hhcnRcbiAqICAgICAgW2RhdGFTZXRdPVwiaW5kaWNhdG9yLmRhdGFTZXRcIlxuICogICAgICBbZGF0YU9wdGlvbnNdPVwiaW5kaWNhdG9yLmRhdGFPcHRpb25zXCJcbiAqICAgICAgW2ZpbHRlcnNdPVwiZmlsdGVyc1wiXG4gKiAgICAgIFtzdHlsZU9wdGlvbnNdPVwiaW5kaWNhdG9yLnN0eWxlT3B0aW9uc1wiXG4gKiAgICAvPlxuICogYGBgXG4gKiBgYGB0c1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBtZWFzdXJlRmFjdG9yeSwgZmlsdGVyRmFjdG9yeSB9IGZyb20gJ0BzaXNlbnNlL3Nkay1kYXRhJztcbmltcG9ydCAqIGFzIERNIGZyb20gJy4uLy4uL2Fzc2V0cy9zYW1wbGUtaGVhbHRoY2FyZS1tb2RlbCc7XG5pbXBvcnQgdHlwZSB7IEluZGljYXRvclN0eWxlT3B0aW9ucyB9IGZyb20gJ0BzaXNlbnNlL3Nkay11aS1hbmd1bGFyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWFuYWx5dGljcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9hbmFseXRpY3MuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hbmFseXRpY3MuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQW5hbHl0aWNzQ29tcG9uZW50IHtcbiAgRE0gPSBETTtcbiAgZmlsdGVycyA9IFtmaWx0ZXJGYWN0b3J5Lm1lbWJlcnMoRE0uRGl2aXNpb25zLkRpdmlzb25fbmFtZSwgWydDYXJkaW9sb2d5JywgJ05ldXJvbG9neSddKV07XG4gIGluZGljYXRvciA9IHtcbiAgICBkYXRhU2V0OiBETS5EYXRhU291cmNlLFxuICAgIGRhdGFPcHRpb25zOiB7XG4gICAgICB2YWx1ZTogW21lYXN1cmVGYWN0b3J5LnN1bShETS5BZG1pc3Npb25zLkNvc3Rfb2ZfYWRtaXNzaW9uKV0sXG4gICAgICBzZWNvbmRhcnk6IFttZWFzdXJlRmFjdG9yeS5zdW0oRE0uQWRtaXNzaW9ucy5EaWFnbm9zaXNfSUQpXSxcbiAgICB9LFxuICAgIHN0eWxlT3B0aW9uczoge1xuICAgICAgaW5kaWNhdG9yQ29tcG9uZW50czoge1xuICAgICAgICB0aXRsZToge1xuICAgICAgICAgIHNob3VsZEJlU2hvd246IHRydWUsXG4gICAgICAgICAgdGV4dDogJ1RvdGFsIENvc3Rfb2ZfYWRtaXNzaW9uJyxcbiAgICAgICAgfSxcbiAgICAgICAgc2Vjb25kYXJ5VGl0bGU6IHtcbiAgICAgICAgICB0ZXh0OiAnVG90YWwgRGlhZ25vc2lzX0lEJyxcbiAgICAgICAgfSxcbiAgICAgICAgdGlja3M6IHtcbiAgICAgICAgICBzaG91bGRCZVNob3duOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBsYWJlbHM6IHtcbiAgICAgICAgICBzaG91bGRCZVNob3duOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHN1YnR5cGU6ICdpbmRpY2F0b3IvZ2F1Z2UnLFxuICAgICAgc2tpbjogMixcbiAgICB9IGFzIEluZGljYXRvclN0eWxlT3B0aW9ucyxcbiAgfTtcblxufVxuICogYGBgXG4gKiA8aW1nIHNyYz1cIm1lZGlhOi8vYW5ndWxhci1pbmRpY2F0b3ItY2hhcnQtZXhhbXBsZS5wbmdcIiB3aWR0aD1cIjgwMHB4XCIgLz5cbiAqXG4gKiBAZ3JvdXAgQ2hhcnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NzZGstaW5kaWNhdG9yLWNoYXJ0JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8Y3Nkay1jaGFydFxuICAgICAgW2NoYXJ0VHlwZV09XCJjaGFydFR5cGVcIlxuICAgICAgW2RhdGFTZXRdPVwiZGF0YVNldFwiXG4gICAgICBbZGF0YU9wdGlvbnNdPVwiZGF0YU9wdGlvbnNcIlxuICAgICAgW2ZpbHRlcnNdPVwiZmlsdGVyc1wiXG4gICAgICBbaGlnaGxpZ2h0c109XCJoaWdobGlnaHRzXCJcbiAgICAgIFtzdHlsZU9wdGlvbnNdPVwic3R5bGVPcHRpb25zXCJcbiAgICAvPlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBJbmRpY2F0b3JDaGFydENvbXBvbmVudCB7XG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUluZGljYXRvckNoYXJ0UHJvcHMuZGF0YVNldH1cbiAgICpcbiAgICogQGNhdGVnb3J5IERhdGFcbiAgICovXG4gIEBJbnB1dCgpXG4gIGRhdGFTZXQ6IEluZGljYXRvckNoYXJ0UHJvcHNbJ2RhdGFTZXQnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFJbmRpY2F0b3JDaGFydFByb3BzLmRhdGFPcHRpb25zfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2hhcnRcbiAgICovXG4gIEBJbnB1dCgpXG4gIGRhdGFPcHRpb25zITogSW5kaWNhdG9yQ2hhcnRQcm9wc1snZGF0YU9wdGlvbnMnXTtcblxuICAvKipcbiAgICoge0Bpbmhlcml0RG9jIEBzaXNlbnNlL3Nkay11aSFJbmRpY2F0b3JDaGFydFByb3BzLmZpbHRlcnN9XG4gICAqXG4gICAqIEBjYXRlZ29yeSBEYXRhXG4gICAqL1xuICBASW5wdXQoKVxuICBmaWx0ZXJzOiBJbmRpY2F0b3JDaGFydFByb3BzWydmaWx0ZXJzJ107XG5cbiAgLyoqXG4gICAqIHtAaW5oZXJpdERvYyBAc2lzZW5zZS9zZGstdWkhSW5kaWNhdG9yQ2hhcnRQcm9wcy5oaWdobGlnaHRzfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgRGF0YVxuICAgKi9cbiAgQElucHV0KClcbiAgaGlnaGxpZ2h0czogSW5kaWNhdG9yQ2hhcnRQcm9wc1snaGlnaGxpZ2h0cyddO1xuXG4gIC8qKlxuICAgKiB7QGluaGVyaXREb2MgQHNpc2Vuc2Uvc2RrLXVpIUluZGljYXRvckNoYXJ0UHJvcHMuc3R5bGVPcHRpb25zfVxuICAgKlxuICAgKiBAY2F0ZWdvcnkgQ2hhcnRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHN0eWxlT3B0aW9uczogSW5kaWNhdG9yQ2hhcnRQcm9wc1snc3R5bGVPcHRpb25zJ107XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBwdWJsaWMgY2hhcnRUeXBlOiBDaGFydFR5cGUgPSAnaW5kaWNhdG9yJztcbn1cbiJdfQ==
|