@aquera/nile-visualization 2.0.0 → 2.2.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/src/nile-anomaly-chart/nile-anomaly-chart.d.ts +4 -0
- package/dist/src/nile-anomaly-chart/nile-anomaly-chart.js +12 -0
- package/dist/src/nile-area-chart/nile-area-chart.d.ts +2 -0
- package/dist/src/nile-area-chart/nile-area-chart.js +6 -1
- package/dist/src/nile-area-negative-chart/nile-area-negative-chart.d.ts +4 -0
- package/dist/src/nile-area-negative-chart/nile-area-negative-chart.js +12 -0
- package/dist/src/nile-area-range-chart/nile-area-range-chart.d.ts +4 -0
- package/dist/src/nile-area-range-chart/nile-area-range-chart.js +12 -0
- package/dist/src/nile-area-spline-chart/nile-area-spline-chart.d.ts +4 -0
- package/dist/src/nile-area-spline-chart/nile-area-spline-chart.js +12 -0
- package/dist/src/nile-bar-chart/nile-bar-chart.d.ts +2 -0
- package/dist/src/nile-bar-chart/nile-bar-chart.js +9 -1
- package/dist/src/nile-bellcurve-chart/nile-bellcurve-chart.d.ts +2 -0
- package/dist/src/nile-bellcurve-chart/nile-bellcurve-chart.js +6 -1
- package/dist/src/nile-boxplot-chart/nile-boxplot-chart.d.ts +2 -0
- package/dist/src/nile-boxplot-chart/nile-boxplot-chart.js +6 -1
- package/dist/src/nile-bubble-chart/nile-bubble-chart.d.ts +2 -0
- package/dist/src/nile-bubble-chart/nile-bubble-chart.js +6 -1
- package/dist/src/nile-chart/nile-chart-config.d.ts +8 -4
- package/dist/src/nile-chart/nile-chart.css.js +13 -15
- package/dist/src/nile-chart/nile-chart.js +103 -33
- package/dist/src/nile-cluster-chart/nile-cluster-chart.d.ts +2 -0
- package/dist/src/nile-cluster-chart/nile-cluster-chart.js +6 -1
- package/dist/src/nile-column-chart/nile-column-chart.d.ts +2 -0
- package/dist/src/nile-column-chart/nile-column-chart.js +6 -1
- package/dist/src/nile-column-drilldown-chart/nile-column-drilldown-chart.d.ts +4 -0
- package/dist/src/nile-column-drilldown-chart/nile-column-drilldown-chart.js +12 -1
- package/dist/src/nile-column-pyramid-chart/nile-column-pyramid-chart.d.ts +4 -0
- package/dist/src/nile-column-pyramid-chart/nile-column-pyramid-chart.js +13 -1
- package/dist/src/nile-column-range-chart/nile-column-range-chart.d.ts +4 -0
- package/dist/src/nile-column-range-chart/nile-column-range-chart.js +12 -0
- package/dist/src/nile-donut-chart/nile-donut-chart.d.ts +2 -0
- package/dist/src/nile-donut-chart/nile-donut-chart.js +6 -0
- package/dist/src/nile-dumbbell-chart/nile-dumbbell-chart.d.ts +3 -0
- package/dist/src/nile-dumbbell-chart/nile-dumbbell-chart.js +6 -1
- package/dist/src/nile-dumbbell-lower-chart/nile-dumbbell-lower-chart.d.ts +3 -0
- package/dist/src/nile-dumbbell-lower-chart/nile-dumbbell-lower-chart.js +6 -1
- package/dist/src/nile-dumbbell-upper-chart/nile-dumbbell-upper-chart.d.ts +3 -0
- package/dist/src/nile-dumbbell-upper-chart/nile-dumbbell-upper-chart.js +6 -1
- package/dist/src/nile-euler-chart/nile-euler-chart.d.ts +4 -0
- package/dist/src/nile-euler-chart/nile-euler-chart.js +13 -1
- package/dist/src/nile-fan-chart/nile-fan-chart.d.ts +3 -0
- package/dist/src/nile-fan-chart/nile-fan-chart.js +6 -1
- package/dist/src/nile-flame-chart/nile-flame-chart.d.ts +4 -0
- package/dist/src/nile-flame-chart/nile-flame-chart.js +12 -1
- package/dist/src/nile-funnel-chart/nile-funnel-chart.d.ts +4 -0
- package/dist/src/nile-funnel-chart/nile-funnel-chart.js +12 -1
- package/dist/src/nile-gauge-chart/nile-gauge-chart.d.ts +4 -0
- package/dist/src/nile-gauge-chart/nile-gauge-chart.js +13 -1
- package/dist/src/nile-heatmap-chart/nile-heatmap-chart.d.ts +2 -0
- package/dist/src/nile-heatmap-chart/nile-heatmap-chart.js +6 -1
- package/dist/src/nile-histogram-chart/nile-histogram-chart.d.ts +2 -0
- package/dist/src/nile-histogram-chart/nile-histogram-chart.js +6 -1
- package/dist/src/nile-inverted-area-chart/nile-inverted-area-chart.d.ts +4 -0
- package/dist/src/nile-inverted-area-chart/nile-inverted-area-chart.js +12 -0
- package/dist/src/nile-kpi-chart/nile-kpi-chart.d.ts +10 -0
- package/dist/src/nile-kpi-chart/nile-kpi-chart.js +36 -5
- package/dist/src/nile-line-chart/nile-line-chart.d.ts +2 -0
- package/dist/src/nile-line-chart/nile-line-chart.js +6 -1
- package/dist/src/nile-line-column-chart/nile-line-column-chart.d.ts +4 -0
- package/dist/src/nile-line-column-chart/nile-line-column-chart.js +12 -1
- package/dist/src/nile-lollipop-chart/nile-lollipop-chart.d.ts +4 -0
- package/dist/src/nile-lollipop-chart/nile-lollipop-chart.js +13 -2
- package/dist/src/nile-map-chart/nile-map-chart.d.ts +4 -0
- package/dist/src/nile-map-chart/nile-map-chart.js +12 -3
- package/dist/src/nile-organization-chart/nile-organization-chart.d.ts +4 -0
- package/dist/src/nile-organization-chart/nile-organization-chart.js +12 -0
- package/dist/src/nile-pie-chart/nile-pie-chart.d.ts +53 -0
- package/dist/src/nile-pie-chart/nile-pie-chart.js +9 -0
- package/dist/src/nile-polygon-chart/nile-polygon-chart.d.ts +4 -0
- package/dist/src/nile-polygon-chart/nile-polygon-chart.js +12 -0
- package/dist/src/nile-radar-chart/nile-radar-chart.d.ts +2 -0
- package/dist/src/nile-radar-chart/nile-radar-chart.js +6 -1
- package/dist/src/nile-radial-bar-chart/nile-radial-bar-chart.d.ts +2 -0
- package/dist/src/nile-radial-bar-chart/nile-radial-bar-chart.js +6 -1
- package/dist/src/nile-scatter-chart/nile-scatter-chart.d.ts +2 -0
- package/dist/src/nile-scatter-chart/nile-scatter-chart.js +6 -1
- package/dist/src/nile-spiderweb-chart/nile-spiderweb-chart.d.ts +2 -0
- package/dist/src/nile-spiderweb-chart/nile-spiderweb-chart.js +6 -1
- package/dist/src/nile-spline-chart/nile-spline-chart.d.ts +2 -0
- package/dist/src/nile-spline-chart/nile-spline-chart.js +6 -1
- package/dist/src/nile-stacked-chart/nile-stacked-chart.d.ts +2 -0
- package/dist/src/nile-stacked-chart/nile-stacked-chart.js +6 -1
- package/dist/src/nile-timeline-chart/nile-timeline-chart.d.ts +3 -0
- package/dist/src/nile-timeline-chart/nile-timeline-chart.js +6 -1
- package/dist/src/nile-trendline-chart/nile-trendline-chart.d.ts +4 -0
- package/dist/src/nile-trendline-chart/nile-trendline-chart.js +12 -0
- package/dist/src/nile-variable-pie-chart/nile-variable-pie-chart.d.ts +2 -0
- package/dist/src/nile-variable-pie-chart/nile-variable-pie-chart.js +6 -1
- package/dist/src/nile-vector-chart/nile-vector-chart.d.ts +4 -0
- package/dist/src/nile-vector-chart/nile-vector-chart.js +12 -0
- package/dist/src/nile-waterfall-chart/nile-waterfall-chart.d.ts +2 -0
- package/dist/src/nile-waterfall-chart/nile-waterfall-chart.js +6 -1
- package/dist/src/nile-xrange-chart/nile-xrange-chart.d.ts +2 -0
- package/dist/src/nile-xrange-chart/nile-xrange-chart.js +6 -1
- package/package.json +1 -1
|
@@ -2,6 +2,7 @@ import type { CSSResultGroup, PropertyValues, TemplateResult } from 'lit';
|
|
|
2
2
|
import type Highcharts from 'highcharts';
|
|
3
3
|
import NileElement from '../internal/nile-element.js';
|
|
4
4
|
import type { NileChartConfigInputType } from '../internal/types/index.js';
|
|
5
|
+
import type { LegendConfig } from '../nile-pie-chart/nile-pie-chart.js';
|
|
5
6
|
export interface AnomalySeriesData {
|
|
6
7
|
name: string;
|
|
7
8
|
data: number[];
|
|
@@ -52,6 +53,9 @@ export declare class NileAnomalyChart extends NileElement {
|
|
|
52
53
|
loadingFontSize: string | number;
|
|
53
54
|
loadingFontFamily: string;
|
|
54
55
|
loadingBg: string;
|
|
56
|
+
showLegend: boolean;
|
|
57
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
58
|
+
legend: LegendConfig | null;
|
|
55
59
|
private _syncCssVars;
|
|
56
60
|
/** Apply { chart, aq } config to individual properties. */
|
|
57
61
|
private applyConfig;
|
|
@@ -44,6 +44,9 @@ let NileAnomalyChart = class NileAnomalyChart extends NileElement {
|
|
|
44
44
|
this.loadingFontSize = '';
|
|
45
45
|
this.loadingFontFamily = '';
|
|
46
46
|
this.loadingBg = '';
|
|
47
|
+
this.showLegend = true;
|
|
48
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
49
|
+
this.legend = null;
|
|
47
50
|
}
|
|
48
51
|
_syncCssVars() {
|
|
49
52
|
const set = (prop, val) => {
|
|
@@ -149,6 +152,8 @@ let NileAnomalyChart = class NileAnomalyChart extends NileElement {
|
|
|
149
152
|
'height',
|
|
150
153
|
'yAxisTitle',
|
|
151
154
|
'anomaly',
|
|
155
|
+
'showLegend',
|
|
156
|
+
'legend',
|
|
152
157
|
'loading',
|
|
153
158
|
];
|
|
154
159
|
const needsUpdate = chartProps.some(p => changedProperties.has(p));
|
|
@@ -302,6 +307,7 @@ let NileAnomalyChart = class NileAnomalyChart extends NileElement {
|
|
|
302
307
|
},
|
|
303
308
|
},
|
|
304
309
|
series,
|
|
310
|
+
legend: (() => { const { show, ...rest } = this.legend ?? {}; return { enabled: show ?? this.showLegend, ...rest }; })(),
|
|
305
311
|
credits: {
|
|
306
312
|
enabled: false,
|
|
307
313
|
},
|
|
@@ -396,6 +402,12 @@ __decorate([
|
|
|
396
402
|
__decorate([
|
|
397
403
|
property({ type: String, attribute: 'loading-bg' })
|
|
398
404
|
], NileAnomalyChart.prototype, "loadingBg", void 0);
|
|
405
|
+
__decorate([
|
|
406
|
+
property({ type: Boolean, attribute: 'show-legend' })
|
|
407
|
+
], NileAnomalyChart.prototype, "showLegend", void 0);
|
|
408
|
+
__decorate([
|
|
409
|
+
property({ type: Object })
|
|
410
|
+
], NileAnomalyChart.prototype, "legend", void 0);
|
|
399
411
|
NileAnomalyChart = __decorate([
|
|
400
412
|
customElement('nile-anomaly-chart')
|
|
401
413
|
], NileAnomalyChart);
|
|
@@ -25,6 +25,8 @@ export declare class NileAreaChart extends NileElement {
|
|
|
25
25
|
yAxisTitle: string;
|
|
26
26
|
stacked: boolean;
|
|
27
27
|
showLegend: boolean;
|
|
28
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
29
|
+
legend: import('../nile-pie-chart/nile-pie-chart.js').LegendConfig | null;
|
|
28
30
|
chartBg: string;
|
|
29
31
|
chartBorderRadius: string | number;
|
|
30
32
|
chartBorder: string;
|
|
@@ -23,6 +23,8 @@ let NileAreaChart = class NileAreaChart extends NileElement {
|
|
|
23
23
|
this.yAxisTitle = '';
|
|
24
24
|
this.stacked = false;
|
|
25
25
|
this.showLegend = true;
|
|
26
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
27
|
+
this.legend = null;
|
|
26
28
|
// ── Container styling ──
|
|
27
29
|
this.chartBg = '';
|
|
28
30
|
this.chartBorderRadius = '';
|
|
@@ -168,7 +170,7 @@ let NileAreaChart = class NileAreaChart extends NileElement {
|
|
|
168
170
|
series: { cursor: 'pointer', point: { events: { click() { self.emit('nile-chart-click', { point: this, category: this.category, value: this.y, seriesName: this.series.name }); } } } },
|
|
169
171
|
},
|
|
170
172
|
series: this.data.map(s => ({ type: 'area', name: s.name, data: s.data, color: s.color })),
|
|
171
|
-
legend: { enabled: this.showLegend },
|
|
173
|
+
legend: (() => { const { show, ...rest } = this.legend ?? {}; return { enabled: show ?? this.showLegend, ...rest }; })(),
|
|
172
174
|
credits: { enabled: false },
|
|
173
175
|
}, this.options);
|
|
174
176
|
}
|
|
@@ -227,6 +229,9 @@ __decorate([
|
|
|
227
229
|
__decorate([
|
|
228
230
|
property({ type: Boolean, attribute: 'show-legend' })
|
|
229
231
|
], NileAreaChart.prototype, "showLegend", void 0);
|
|
232
|
+
__decorate([
|
|
233
|
+
property({ type: Object })
|
|
234
|
+
], NileAreaChart.prototype, "legend", void 0);
|
|
230
235
|
__decorate([
|
|
231
236
|
property({ type: String, attribute: 'chart-bg' })
|
|
232
237
|
], NileAreaChart.prototype, "chartBg", void 0);
|
|
@@ -2,6 +2,7 @@ import type { CSSResultGroup, PropertyValues, TemplateResult } from 'lit';
|
|
|
2
2
|
import type Highcharts from 'highcharts';
|
|
3
3
|
import NileElement from '../internal/nile-element.js';
|
|
4
4
|
import type { SeparatedChartConfigInputType } from '../internal/types/separated-chart-config-input.type.js';
|
|
5
|
+
import type { LegendConfig } from '../nile-pie-chart/nile-pie-chart.js';
|
|
5
6
|
export interface AreaNegativeSeriesData {
|
|
6
7
|
name: string;
|
|
7
8
|
data: number[];
|
|
@@ -35,6 +36,9 @@ export declare class NileAreaNegativeChart extends NileElement {
|
|
|
35
36
|
loadingFontSize: string | number;
|
|
36
37
|
loadingFontFamily: string;
|
|
37
38
|
loadingBg: string;
|
|
39
|
+
showLegend: boolean;
|
|
40
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
41
|
+
legend: LegendConfig | null;
|
|
38
42
|
private _syncCssVars;
|
|
39
43
|
private applyConfig;
|
|
40
44
|
connectedCallback(): void;
|
|
@@ -35,6 +35,9 @@ let NileAreaNegativeChart = class NileAreaNegativeChart extends NileElement {
|
|
|
35
35
|
this.loadingFontSize = '';
|
|
36
36
|
this.loadingFontFamily = '';
|
|
37
37
|
this.loadingBg = '';
|
|
38
|
+
this.showLegend = true;
|
|
39
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
40
|
+
this.legend = null;
|
|
38
41
|
}
|
|
39
42
|
_syncCssVars() {
|
|
40
43
|
const set = (prop, val) => {
|
|
@@ -95,6 +98,8 @@ let NileAreaNegativeChart = class NileAreaNegativeChart extends NileElement {
|
|
|
95
98
|
'yAxisTitle',
|
|
96
99
|
'threshold',
|
|
97
100
|
'loading',
|
|
101
|
+
'showLegend',
|
|
102
|
+
'legend',
|
|
98
103
|
];
|
|
99
104
|
if (!props.some(p => changedProperties.has(p)))
|
|
100
105
|
return;
|
|
@@ -152,6 +157,7 @@ let NileAreaNegativeChart = class NileAreaNegativeChart extends NileElement {
|
|
|
152
157
|
color: s.color,
|
|
153
158
|
negativeColor: s.negativeColor,
|
|
154
159
|
})),
|
|
160
|
+
legend: (() => { const { show, ...rest } = this.legend ?? {}; return { enabled: show ?? this.showLegend, ...rest }; })(),
|
|
155
161
|
credits: { enabled: false },
|
|
156
162
|
}, this.options);
|
|
157
163
|
}
|
|
@@ -243,6 +249,12 @@ __decorate([
|
|
|
243
249
|
__decorate([
|
|
244
250
|
property({ type: String, attribute: 'loading-bg' })
|
|
245
251
|
], NileAreaNegativeChart.prototype, "loadingBg", void 0);
|
|
252
|
+
__decorate([
|
|
253
|
+
property({ type: Boolean, attribute: 'show-legend' })
|
|
254
|
+
], NileAreaNegativeChart.prototype, "showLegend", void 0);
|
|
255
|
+
__decorate([
|
|
256
|
+
property({ type: Object })
|
|
257
|
+
], NileAreaNegativeChart.prototype, "legend", void 0);
|
|
246
258
|
NileAreaNegativeChart = __decorate([
|
|
247
259
|
customElement('nile-area-negative-chart')
|
|
248
260
|
], NileAreaNegativeChart);
|
|
@@ -2,6 +2,7 @@ import type { CSSResultGroup, PropertyValues, TemplateResult } from 'lit';
|
|
|
2
2
|
import type Highcharts from 'highcharts';
|
|
3
3
|
import NileElement from '../internal/nile-element.js';
|
|
4
4
|
import type { SeparatedChartConfigInputType } from '../internal/types/separated-chart-config-input.type.js';
|
|
5
|
+
import type { LegendConfig } from '../nile-pie-chart/nile-pie-chart.js';
|
|
5
6
|
export interface AreaRangeSeriesData {
|
|
6
7
|
name: string;
|
|
7
8
|
data: [number, number][];
|
|
@@ -34,6 +35,9 @@ export declare class NileAreaRangeChart extends NileElement {
|
|
|
34
35
|
loadingFontSize: string | number;
|
|
35
36
|
loadingFontFamily: string;
|
|
36
37
|
loadingBg: string;
|
|
38
|
+
showLegend: boolean;
|
|
39
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
40
|
+
legend: LegendConfig | null;
|
|
37
41
|
private _syncCssVars;
|
|
38
42
|
private applyConfig;
|
|
39
43
|
connectedCallback(): void;
|
|
@@ -34,6 +34,9 @@ let NileAreaRangeChart = class NileAreaRangeChart extends NileElement {
|
|
|
34
34
|
this.loadingFontSize = '';
|
|
35
35
|
this.loadingFontFamily = '';
|
|
36
36
|
this.loadingBg = '';
|
|
37
|
+
this.showLegend = true;
|
|
38
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
39
|
+
this.legend = null;
|
|
37
40
|
}
|
|
38
41
|
_syncCssVars() {
|
|
39
42
|
const set = (prop, val) => {
|
|
@@ -93,6 +96,8 @@ let NileAreaRangeChart = class NileAreaRangeChart extends NileElement {
|
|
|
93
96
|
'height',
|
|
94
97
|
'yAxisTitle',
|
|
95
98
|
'loading',
|
|
99
|
+
'showLegend',
|
|
100
|
+
'legend',
|
|
96
101
|
];
|
|
97
102
|
if (!props.some(p => changedProperties.has(p)))
|
|
98
103
|
return;
|
|
@@ -150,6 +155,7 @@ let NileAreaRangeChart = class NileAreaRangeChart extends NileElement {
|
|
|
150
155
|
color: s.color,
|
|
151
156
|
fillOpacity: s.fillOpacity,
|
|
152
157
|
})),
|
|
158
|
+
legend: (() => { const { show, ...rest } = this.legend ?? {}; return { enabled: show ?? this.showLegend, ...rest }; })(),
|
|
153
159
|
credits: { enabled: false },
|
|
154
160
|
}, this.options);
|
|
155
161
|
}
|
|
@@ -238,6 +244,12 @@ __decorate([
|
|
|
238
244
|
__decorate([
|
|
239
245
|
property({ type: String, attribute: 'loading-bg' })
|
|
240
246
|
], NileAreaRangeChart.prototype, "loadingBg", void 0);
|
|
247
|
+
__decorate([
|
|
248
|
+
property({ type: Boolean, attribute: 'show-legend' })
|
|
249
|
+
], NileAreaRangeChart.prototype, "showLegend", void 0);
|
|
250
|
+
__decorate([
|
|
251
|
+
property({ type: Object })
|
|
252
|
+
], NileAreaRangeChart.prototype, "legend", void 0);
|
|
241
253
|
NileAreaRangeChart = __decorate([
|
|
242
254
|
customElement('nile-area-range-chart')
|
|
243
255
|
], NileAreaRangeChart);
|
|
@@ -2,6 +2,7 @@ import type { CSSResultGroup, PropertyValues, TemplateResult } from 'lit';
|
|
|
2
2
|
import type Highcharts from 'highcharts';
|
|
3
3
|
import NileElement from '../internal/nile-element.js';
|
|
4
4
|
import type { SeparatedChartConfigInputType } from '../internal/types/separated-chart-config-input.type.js';
|
|
5
|
+
import type { LegendConfig } from '../nile-pie-chart/nile-pie-chart.js';
|
|
5
6
|
export interface AreaSplineSeriesData {
|
|
6
7
|
name: string;
|
|
7
8
|
data: number[];
|
|
@@ -34,6 +35,9 @@ export declare class NileAreaSplineChart extends NileElement {
|
|
|
34
35
|
loadingFontSize: string | number;
|
|
35
36
|
loadingFontFamily: string;
|
|
36
37
|
loadingBg: string;
|
|
38
|
+
showLegend: boolean;
|
|
39
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
40
|
+
legend: LegendConfig | null;
|
|
37
41
|
private _syncCssVars;
|
|
38
42
|
private applyConfig;
|
|
39
43
|
connectedCallback(): void;
|
|
@@ -35,6 +35,9 @@ let NileAreaSplineChart = class NileAreaSplineChart extends NileElement {
|
|
|
35
35
|
this.loadingFontSize = '';
|
|
36
36
|
this.loadingFontFamily = '';
|
|
37
37
|
this.loadingBg = '';
|
|
38
|
+
this.showLegend = true;
|
|
39
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
40
|
+
this.legend = null;
|
|
38
41
|
}
|
|
39
42
|
_syncCssVars() {
|
|
40
43
|
const set = (prop, val) => {
|
|
@@ -95,6 +98,8 @@ let NileAreaSplineChart = class NileAreaSplineChart extends NileElement {
|
|
|
95
98
|
'yAxisTitle',
|
|
96
99
|
'stacked',
|
|
97
100
|
'loading',
|
|
101
|
+
'showLegend',
|
|
102
|
+
'legend',
|
|
98
103
|
];
|
|
99
104
|
if (!props.some(p => changedProperties.has(p)))
|
|
100
105
|
return;
|
|
@@ -148,6 +153,7 @@ let NileAreaSplineChart = class NileAreaSplineChart extends NileElement {
|
|
|
148
153
|
data: s.data,
|
|
149
154
|
color: s.color,
|
|
150
155
|
})),
|
|
156
|
+
legend: (() => { const { show, ...rest } = this.legend ?? {}; return { enabled: show ?? this.showLegend, ...rest }; })(),
|
|
151
157
|
credits: { enabled: false },
|
|
152
158
|
}, this.options);
|
|
153
159
|
}
|
|
@@ -239,6 +245,12 @@ __decorate([
|
|
|
239
245
|
__decorate([
|
|
240
246
|
property({ type: String, attribute: 'loading-bg' })
|
|
241
247
|
], NileAreaSplineChart.prototype, "loadingBg", void 0);
|
|
248
|
+
__decorate([
|
|
249
|
+
property({ type: Boolean, attribute: 'show-legend' })
|
|
250
|
+
], NileAreaSplineChart.prototype, "showLegend", void 0);
|
|
251
|
+
__decorate([
|
|
252
|
+
property({ type: Object })
|
|
253
|
+
], NileAreaSplineChart.prototype, "legend", void 0);
|
|
242
254
|
NileAreaSplineChart = __decorate([
|
|
243
255
|
customElement('nile-area-spline-chart')
|
|
244
256
|
], NileAreaSplineChart);
|
|
@@ -33,6 +33,8 @@ export declare class NileBarChart extends NileElement {
|
|
|
33
33
|
yAxisTitle: string;
|
|
34
34
|
/** Whether to enable the legend. */
|
|
35
35
|
showLegend: boolean;
|
|
36
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
37
|
+
legend: import('../nile-pie-chart/nile-pie-chart.js').LegendConfig | null;
|
|
36
38
|
chartBg: string;
|
|
37
39
|
chartBorderRadius: string | number;
|
|
38
40
|
chartBorder: string;
|
|
@@ -31,6 +31,8 @@ let NileBarChart = class NileBarChart extends NileElement {
|
|
|
31
31
|
this.yAxisTitle = '';
|
|
32
32
|
/** Whether to enable the legend. */
|
|
33
33
|
this.showLegend = true;
|
|
34
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
35
|
+
this.legend = null;
|
|
34
36
|
// ── Container styling ──
|
|
35
37
|
this.chartBg = '';
|
|
36
38
|
this.chartBorderRadius = '';
|
|
@@ -225,7 +227,10 @@ let NileBarChart = class NileBarChart extends NileElement {
|
|
|
225
227
|
data: s.data,
|
|
226
228
|
color: s.color,
|
|
227
229
|
})),
|
|
228
|
-
legend:
|
|
230
|
+
legend: (() => {
|
|
231
|
+
const { show, ...rest } = this.legend ?? {};
|
|
232
|
+
return { enabled: show ?? this.showLegend, ...rest };
|
|
233
|
+
})(),
|
|
229
234
|
credits: {
|
|
230
235
|
enabled: false,
|
|
231
236
|
},
|
|
@@ -287,6 +292,9 @@ __decorate([
|
|
|
287
292
|
__decorate([
|
|
288
293
|
property({ type: Boolean, attribute: 'show-legend' })
|
|
289
294
|
], NileBarChart.prototype, "showLegend", void 0);
|
|
295
|
+
__decorate([
|
|
296
|
+
property({ type: Object })
|
|
297
|
+
], NileBarChart.prototype, "legend", void 0);
|
|
290
298
|
__decorate([
|
|
291
299
|
property({ type: String, attribute: 'chart-bg' })
|
|
292
300
|
], NileBarChart.prototype, "chartBg", void 0);
|
|
@@ -30,6 +30,8 @@ export declare class NileBellcurveChart extends NileElement {
|
|
|
30
30
|
/** Samples per interval; higher values yield a smoother curve. */
|
|
31
31
|
pointsInInterval: number;
|
|
32
32
|
showLegend: boolean;
|
|
33
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
34
|
+
legend: import('../nile-pie-chart/nile-pie-chart.js').LegendConfig | null;
|
|
33
35
|
chartBg: string;
|
|
34
36
|
chartBorderRadius: string | number;
|
|
35
37
|
chartBorder: string;
|
|
@@ -33,6 +33,8 @@ let NileBellcurveChart = class NileBellcurveChart extends NileElement {
|
|
|
33
33
|
/** Samples per interval; higher values yield a smoother curve. */
|
|
34
34
|
this.pointsInInterval = 40;
|
|
35
35
|
this.showLegend = true;
|
|
36
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
37
|
+
this.legend = null;
|
|
36
38
|
// ── Container styling ──
|
|
37
39
|
this.chartBg = '';
|
|
38
40
|
this.chartBorderRadius = '';
|
|
@@ -148,7 +150,7 @@ let NileBellcurveChart = class NileBellcurveChart extends NileElement {
|
|
|
148
150
|
chart: { ...(this.height ? { height: this.height } : {}) },
|
|
149
151
|
title: { text: this.chartTitle || undefined },
|
|
150
152
|
subtitle: { text: this.chartSubtitle || undefined },
|
|
151
|
-
legend: { enabled: this.showLegend },
|
|
153
|
+
legend: (() => { const { show, ...rest } = this.legend ?? {}; return { enabled: show ?? this.showLegend, ...rest }; })(),
|
|
152
154
|
xAxis: [
|
|
153
155
|
{
|
|
154
156
|
title: { text: this.xAxisTitle || undefined },
|
|
@@ -292,6 +294,9 @@ __decorate([
|
|
|
292
294
|
__decorate([
|
|
293
295
|
property({ type: Boolean, attribute: 'show-legend' })
|
|
294
296
|
], NileBellcurveChart.prototype, "showLegend", void 0);
|
|
297
|
+
__decorate([
|
|
298
|
+
property({ type: Object })
|
|
299
|
+
], NileBellcurveChart.prototype, "legend", void 0);
|
|
295
300
|
__decorate([
|
|
296
301
|
property({ type: String, attribute: 'chart-bg' })
|
|
297
302
|
], NileBellcurveChart.prototype, "chartBg", void 0);
|
|
@@ -36,6 +36,8 @@ export declare class NileBoxplotChart extends NileElement {
|
|
|
36
36
|
xAxisTitle: string;
|
|
37
37
|
yAxisTitle: string;
|
|
38
38
|
showLegend: boolean;
|
|
39
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
40
|
+
legend: import('../nile-pie-chart/nile-pie-chart.js').LegendConfig | null;
|
|
39
41
|
/** When true, draws horizontal boxes (categories on the y-axis). */
|
|
40
42
|
horizontal: boolean;
|
|
41
43
|
chartBg: string;
|
|
@@ -24,6 +24,8 @@ let NileBoxplotChart = class NileBoxplotChart extends NileElement {
|
|
|
24
24
|
this.xAxisTitle = '';
|
|
25
25
|
this.yAxisTitle = '';
|
|
26
26
|
this.showLegend = true;
|
|
27
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
28
|
+
this.legend = null;
|
|
27
29
|
/** When true, draws horizontal boxes (categories on the y-axis). */
|
|
28
30
|
this.horizontal = false;
|
|
29
31
|
// ── Container styling ──
|
|
@@ -163,7 +165,7 @@ let NileBoxplotChart = class NileBoxplotChart extends NileElement {
|
|
|
163
165
|
},
|
|
164
166
|
title: { text: this.chartTitle || undefined },
|
|
165
167
|
subtitle: { text: this.chartSubtitle || undefined },
|
|
166
|
-
legend: { enabled: this.showLegend },
|
|
168
|
+
legend: (() => { const { show, ...rest } = this.legend ?? {}; return { enabled: show ?? this.showLegend, ...rest }; })(),
|
|
167
169
|
xAxis: this.horizontal ? valueAxis : catAxis,
|
|
168
170
|
yAxis: this.horizontal ? catAxis : valueAxis,
|
|
169
171
|
tooltip: {
|
|
@@ -264,6 +266,9 @@ __decorate([
|
|
|
264
266
|
__decorate([
|
|
265
267
|
property({ type: Boolean, attribute: 'show-legend' })
|
|
266
268
|
], NileBoxplotChart.prototype, "showLegend", void 0);
|
|
269
|
+
__decorate([
|
|
270
|
+
property({ type: Object })
|
|
271
|
+
], NileBoxplotChart.prototype, "legend", void 0);
|
|
267
272
|
__decorate([
|
|
268
273
|
property({ type: Boolean, reflect: true, attribute: 'horizontal' })
|
|
269
274
|
], NileBoxplotChart.prototype, "horizontal", void 0);
|
|
@@ -24,6 +24,8 @@ export declare class NileBubbleChart extends NileElement {
|
|
|
24
24
|
xAxisTitle: string;
|
|
25
25
|
yAxisTitle: string;
|
|
26
26
|
showLegend: boolean;
|
|
27
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
28
|
+
legend: import('../nile-pie-chart/nile-pie-chart.js').LegendConfig | null;
|
|
27
29
|
chartBg: string;
|
|
28
30
|
chartBorderRadius: string | number;
|
|
29
31
|
chartBorder: string;
|
|
@@ -22,6 +22,8 @@ let NileBubbleChart = class NileBubbleChart extends NileElement {
|
|
|
22
22
|
this.xAxisTitle = '';
|
|
23
23
|
this.yAxisTitle = '';
|
|
24
24
|
this.showLegend = true;
|
|
25
|
+
/** Full legend configuration — all Highcharts legend options in one object. */
|
|
26
|
+
this.legend = null;
|
|
25
27
|
// ── Container styling ──
|
|
26
28
|
this.chartBg = '';
|
|
27
29
|
this.chartBorderRadius = '';
|
|
@@ -170,7 +172,7 @@ let NileBubbleChart = class NileBubbleChart extends NileElement {
|
|
|
170
172
|
series: { cursor: 'pointer', point: { events: { click() { self.emit('nile-chart-click', { point: this, x: this.x, y: this.y, z: this.z, seriesName: this.series.name }); } } } },
|
|
171
173
|
},
|
|
172
174
|
series: this.data.map(s => ({ type: 'bubble', name: s.name, data: s.data, color: s.color })),
|
|
173
|
-
legend: { enabled: this.showLegend },
|
|
175
|
+
legend: (() => { const { show, ...rest } = this.legend ?? {}; return { enabled: show ?? this.showLegend, ...rest }; })(),
|
|
174
176
|
credits: { enabled: false },
|
|
175
177
|
}, this.options);
|
|
176
178
|
}
|
|
@@ -226,6 +228,9 @@ __decorate([
|
|
|
226
228
|
__decorate([
|
|
227
229
|
property({ type: Boolean, attribute: 'show-legend' })
|
|
228
230
|
], NileBubbleChart.prototype, "showLegend", void 0);
|
|
231
|
+
__decorate([
|
|
232
|
+
property({ type: Object })
|
|
233
|
+
], NileBubbleChart.prototype, "legend", void 0);
|
|
229
234
|
__decorate([
|
|
230
235
|
property({ type: String, attribute: 'chart-bg' })
|
|
231
236
|
], NileBubbleChart.prototype, "chartBg", void 0);
|
|
@@ -2,7 +2,7 @@ import type { ChartConfigType } from '../internal/types/chart-config.type.js';
|
|
|
2
2
|
/** Every supported `chart.type` value for `<nile-chart>`. */
|
|
3
3
|
export type ChartType = ChartConfigType['type'];
|
|
4
4
|
import type { BarChartSeriesData } from '../nile-bar-chart/nile-bar-chart.js';
|
|
5
|
-
import type { PieChartSeriesData } from '../nile-pie-chart/nile-pie-chart.js';
|
|
5
|
+
import type { PieChartSeriesData, LegendConfig } from '../nile-pie-chart/nile-pie-chart.js';
|
|
6
6
|
import type { TrendlineSeriesData, ForecastConfig } from '../nile-trendline-chart/nile-trendline-chart.js';
|
|
7
7
|
import type { AnomalySeriesData, AnomalyConfig } from '../nile-anomaly-chart/nile-anomaly-chart.js';
|
|
8
8
|
import type { LineChartSeriesData } from '../nile-line-chart/nile-line-chart.js';
|
|
@@ -15,7 +15,7 @@ import type { SplineChartSeriesData } from '../nile-spline-chart/nile-spline-cha
|
|
|
15
15
|
import type { RadarChartSeriesData } from '../nile-radar-chart/nile-radar-chart.js';
|
|
16
16
|
import type { GaugeBand } from '../nile-gauge-chart/nile-gauge-chart.js';
|
|
17
17
|
import type { WaterfallDataPoint } from '../nile-waterfall-chart/nile-waterfall-chart.js';
|
|
18
|
-
import type { KpiVariant, KpiValueFormat, SparklineType, TrendDirection } from '../nile-kpi-chart/nile-kpi-chart.js';
|
|
18
|
+
import type { KpiVariant, KpiValueFormat, KpiNumberSystem, SparklineType, TrendDirection } from '../nile-kpi-chart/nile-kpi-chart.js';
|
|
19
19
|
import type { MapChartDataPoint } from '../nile-map-chart/nile-map-chart.js';
|
|
20
20
|
import type { NileDataGridColumn } from '@aquera/nile-data-grid';
|
|
21
21
|
import type { StackedChartSeriesData } from '../nile-stacked-chart/nile-stacked-chart.js';
|
|
@@ -132,8 +132,8 @@ export interface NileChartConfigBase {
|
|
|
132
132
|
menu?: NileChartMenuConfig;
|
|
133
133
|
/** Custom items appended at the bottom of the chart actions menu. */
|
|
134
134
|
menuItems?: NileChartMenuItem[];
|
|
135
|
-
/**
|
|
136
|
-
|
|
135
|
+
/** Legend configuration — full Highcharts legend surface. */
|
|
136
|
+
legend?: LegendConfig;
|
|
137
137
|
chartBg?: string;
|
|
138
138
|
chartBorderRadius?: string | number;
|
|
139
139
|
chartBorder?: string;
|
|
@@ -530,6 +530,10 @@ export interface NileKpiChartConfig extends NileChartConfigBase {
|
|
|
530
530
|
precision?: number | null;
|
|
531
531
|
/** Base unit (e.g. 'L', 'g', 'm') combined with the magnitude prefix: "1.5KL", "2.5Kg". */
|
|
532
532
|
unit?: string;
|
|
533
|
+
/** BCP 47 locale for number formatting, e.g. 'en-IN'. Defaults to browser locale. */
|
|
534
|
+
locale?: string;
|
|
535
|
+
/** Number system: 'indian' (1,00,000 / L / Cr) or 'international' (100,000 / K / M / B / T). */
|
|
536
|
+
numberSystem?: KpiNumberSystem;
|
|
533
537
|
tooltipEnabled?: boolean;
|
|
534
538
|
}
|
|
535
539
|
/** Discriminated union of every named chart config — use for typed `<nile-chart>` configs. */
|
|
@@ -172,30 +172,28 @@ export const styles = css `
|
|
|
172
172
|
contain: layout style;
|
|
173
173
|
}
|
|
174
174
|
|
|
175
|
-
/* Grid:
|
|
175
|
+
/* Grid layout:
|
|
176
|
+
- card uses clip-path (not overflow:hidden) so position:sticky on the header is not broken
|
|
177
|
+
- height goes on nile-data-grid itself so .scroll-container inside shadow DOM scrolls,
|
|
178
|
+
making position:sticky on <th> work correctly
|
|
179
|
+
- AI panel is rendered outside the wrapper and anchored via position:relative on the card */
|
|
176
180
|
.nile-chart-card--grid {
|
|
177
|
-
|
|
178
|
-
|
|
181
|
+
position: relative;
|
|
182
|
+
clip-path: inset(0);
|
|
179
183
|
}
|
|
180
184
|
|
|
181
|
-
.nile-chart-card--grid .nile-chart-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
185
|
+
.nile-chart-card--grid .nile-chart-header {
|
|
186
|
+
position: sticky;
|
|
187
|
+
top: 0;
|
|
188
|
+
z-index: 2;
|
|
189
|
+
background: var(--nile-colors-white-base, var(--ng-colors-bg-primary));
|
|
186
190
|
}
|
|
187
191
|
|
|
188
192
|
.nile-chart-card--grid .nile-chart-inner {
|
|
189
|
-
|
|
190
|
-
min-height: 0;
|
|
193
|
+
overflow: visible;
|
|
191
194
|
contain: none;
|
|
192
195
|
}
|
|
193
196
|
|
|
194
|
-
.nile-chart-card--grid nile-data-grid {
|
|
195
|
-
display: block;
|
|
196
|
-
height: 100%;
|
|
197
|
-
}
|
|
198
|
-
|
|
199
197
|
/* ── Default slot (custom chart body only — not named slots) ── */
|
|
200
198
|
slot:not([name])::slotted(*) {
|
|
201
199
|
display: block;
|