@acorex/charts 21.0.1-next.7 → 21.0.1-next.71
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/fesm2022/acorex-charts-bar-chart.mjs +37 -23
- package/fesm2022/acorex-charts-bar-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts-chart-legend.mjs +3 -3
- package/fesm2022/acorex-charts-chart-legend.mjs.map +1 -1
- package/fesm2022/acorex-charts-chart-tooltip.mjs +13 -4
- package/fesm2022/acorex-charts-chart-tooltip.mjs.map +1 -1
- package/fesm2022/acorex-charts-donut-chart.mjs +83 -99
- package/fesm2022/acorex-charts-donut-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts-funnel-chart.mjs +275 -0
- package/fesm2022/acorex-charts-funnel-chart.mjs.map +1 -0
- package/fesm2022/acorex-charts-gauge-chart.mjs +157 -86
- package/fesm2022/acorex-charts-gauge-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts-heatmap-chart.mjs +281 -0
- package/fesm2022/acorex-charts-heatmap-chart.mjs.map +1 -0
- package/fesm2022/acorex-charts-hierarchy-chart.mjs +3 -3
- package/fesm2022/acorex-charts-hierarchy-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts-line-chart.mjs +37 -23
- package/fesm2022/acorex-charts-line-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts.mjs +3 -3
- package/fesm2022/acorex-charts.mjs.map +1 -1
- package/funnel-chart/README.md +3 -0
- package/heatmap-chart/README.md +3 -0
- package/package.json +19 -13
- package/{bar-chart/index.d.ts → types/acorex-charts-bar-chart.d.ts} +7 -6
- package/{chart-tooltip/index.d.ts → types/acorex-charts-chart-tooltip.d.ts} +1 -0
- package/{donut-chart/index.d.ts → types/acorex-charts-donut-chart.d.ts} +12 -11
- package/types/acorex-charts-funnel-chart.d.ts +108 -0
- package/{gauge-chart/index.d.ts → types/acorex-charts-gauge-chart.d.ts} +16 -5
- package/types/acorex-charts-heatmap-chart.d.ts +111 -0
- package/{hierarchy-chart/index.d.ts → types/acorex-charts-hierarchy-chart.d.ts} +4 -3
- package/{line-chart/index.d.ts → types/acorex-charts-line-chart.d.ts} +5 -1
- /package/{chart-legend/index.d.ts → types/acorex-charts-chart-legend.d.ts} +0 -0
- /package/{index.d.ts → types/acorex-charts.d.ts} +0 -0
package/package.json
CHANGED
|
@@ -1,48 +1,54 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acorex/charts",
|
|
3
|
-
"version": "21.0.1-next.
|
|
3
|
+
"version": "21.0.1-next.71",
|
|
4
4
|
"peerDependencies": {
|
|
5
|
-
"
|
|
6
|
-
"@angular/core": "^20.0.0",
|
|
7
|
-
"d3": "^7.9.0"
|
|
5
|
+
"d3": ">=7.9.0"
|
|
8
6
|
},
|
|
9
7
|
"sideEffects": false,
|
|
10
8
|
"module": "fesm2022/acorex-charts.mjs",
|
|
11
|
-
"typings": "
|
|
9
|
+
"typings": "types/acorex-charts.d.ts",
|
|
12
10
|
"exports": {
|
|
13
11
|
"./package.json": {
|
|
14
12
|
"default": "./package.json"
|
|
15
13
|
},
|
|
16
14
|
".": {
|
|
17
|
-
"types": "./
|
|
15
|
+
"types": "./types/acorex-charts.d.ts",
|
|
18
16
|
"default": "./fesm2022/acorex-charts.mjs"
|
|
19
17
|
},
|
|
20
18
|
"./bar-chart": {
|
|
21
|
-
"types": "./bar-chart
|
|
19
|
+
"types": "./types/acorex-charts-bar-chart.d.ts",
|
|
22
20
|
"default": "./fesm2022/acorex-charts-bar-chart.mjs"
|
|
23
21
|
},
|
|
24
22
|
"./chart-legend": {
|
|
25
|
-
"types": "./chart-legend
|
|
23
|
+
"types": "./types/acorex-charts-chart-legend.d.ts",
|
|
26
24
|
"default": "./fesm2022/acorex-charts-chart-legend.mjs"
|
|
27
25
|
},
|
|
28
26
|
"./chart-tooltip": {
|
|
29
|
-
"types": "./chart-tooltip
|
|
27
|
+
"types": "./types/acorex-charts-chart-tooltip.d.ts",
|
|
30
28
|
"default": "./fesm2022/acorex-charts-chart-tooltip.mjs"
|
|
31
29
|
},
|
|
32
30
|
"./donut-chart": {
|
|
33
|
-
"types": "./donut-chart
|
|
31
|
+
"types": "./types/acorex-charts-donut-chart.d.ts",
|
|
34
32
|
"default": "./fesm2022/acorex-charts-donut-chart.mjs"
|
|
35
33
|
},
|
|
34
|
+
"./funnel-chart": {
|
|
35
|
+
"types": "./types/acorex-charts-funnel-chart.d.ts",
|
|
36
|
+
"default": "./fesm2022/acorex-charts-funnel-chart.mjs"
|
|
37
|
+
},
|
|
36
38
|
"./gauge-chart": {
|
|
37
|
-
"types": "./gauge-chart
|
|
39
|
+
"types": "./types/acorex-charts-gauge-chart.d.ts",
|
|
38
40
|
"default": "./fesm2022/acorex-charts-gauge-chart.mjs"
|
|
39
41
|
},
|
|
42
|
+
"./heatmap-chart": {
|
|
43
|
+
"types": "./types/acorex-charts-heatmap-chart.d.ts",
|
|
44
|
+
"default": "./fesm2022/acorex-charts-heatmap-chart.mjs"
|
|
45
|
+
},
|
|
40
46
|
"./hierarchy-chart": {
|
|
41
|
-
"types": "./hierarchy-chart
|
|
47
|
+
"types": "./types/acorex-charts-hierarchy-chart.d.ts",
|
|
42
48
|
"default": "./fesm2022/acorex-charts-hierarchy-chart.mjs"
|
|
43
49
|
},
|
|
44
50
|
"./line-chart": {
|
|
45
|
-
"types": "./line-chart
|
|
51
|
+
"types": "./types/acorex-charts-line-chart.d.ts",
|
|
46
52
|
"default": "./fesm2022/acorex-charts-line-chart.mjs"
|
|
47
53
|
}
|
|
48
54
|
},
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import * as _acorex_charts_bar_chart from '@acorex/charts/bar-chart';
|
|
1
2
|
import * as _acorex_charts from '@acorex/charts';
|
|
2
|
-
import {
|
|
3
|
+
import { NXNativeEvent, AXAnimationEasing, AXChartComponent, AXChartComponentBase } from '@acorex/charts';
|
|
3
4
|
import * as d3 from 'd3';
|
|
4
5
|
import * as _angular_core from '@angular/core';
|
|
5
6
|
import { OnDestroy, InjectionToken } from '@angular/core';
|
|
@@ -116,6 +117,8 @@ declare class AXBarChartComponent extends AXChartComponent implements OnDestroy,
|
|
|
116
117
|
private readonly X_AXIS_TITLE_GAP;
|
|
117
118
|
private readonly X_AXIS_TITLE_BLOCK_HEIGHT;
|
|
118
119
|
private readonly TOP_EDGE_PADDING;
|
|
120
|
+
private readonly BOTTOM_EDGE_PADDING;
|
|
121
|
+
private readonly HORIZONTAL_EDGE_PADDING;
|
|
119
122
|
private readonly FALLBACK_PLOT_HEIGHT;
|
|
120
123
|
private readonly MIN_PLOT_HEIGHT;
|
|
121
124
|
private readonly MIN_TOTAL_WIDTH;
|
|
@@ -146,6 +149,8 @@ declare class AXBarChartComponent extends AXChartComponent implements OnDestroy,
|
|
|
146
149
|
private _tooltipVisible;
|
|
147
150
|
private _tooltipPosition;
|
|
148
151
|
private _tooltipData;
|
|
152
|
+
private _tooltipRafId;
|
|
153
|
+
private _pendingTooltipCoords;
|
|
149
154
|
private _initialized;
|
|
150
155
|
private _rendered;
|
|
151
156
|
protected tooltipVisible: _angular_core.Signal<boolean>;
|
|
@@ -172,7 +177,7 @@ declare class AXBarChartComponent extends AXChartComponent implements OnDestroy,
|
|
|
172
177
|
animationDuration?: number;
|
|
173
178
|
animationDelay?: number;
|
|
174
179
|
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
175
|
-
messages?: AXBarChartMessages;
|
|
180
|
+
messages?: _acorex_charts_bar_chart.AXBarChartMessages;
|
|
176
181
|
}>;
|
|
177
182
|
protected effectiveMessages: _angular_core.Signal<{
|
|
178
183
|
noData: string;
|
|
@@ -258,10 +263,6 @@ declare class AXBarChartComponent extends AXChartComponent implements OnDestroy,
|
|
|
258
263
|
* Handles bar hover event and shows tooltip
|
|
259
264
|
*/
|
|
260
265
|
private handleBarHover;
|
|
261
|
-
/**
|
|
262
|
-
* Updates tooltip position based on mouse coordinates
|
|
263
|
-
* Enhanced to handle overflow issues by positioning tooltips more intelligently
|
|
264
|
-
*/
|
|
265
266
|
private updateTooltipPosition;
|
|
266
267
|
/**
|
|
267
268
|
* Enhanced tooltip positioning that considers chart boundaries and prevents overflow
|
|
@@ -41,6 +41,7 @@ declare class AXChartTooltipComponent {
|
|
|
41
41
|
protected isTitleArray(): boolean;
|
|
42
42
|
protected titleList(): string[];
|
|
43
43
|
protected colorAt(index: number): string | null;
|
|
44
|
+
protected formattedValue(): string;
|
|
44
45
|
/**
|
|
45
46
|
* Updates tooltip dimensions after it's rendered
|
|
46
47
|
*/
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as _acorex_charts_donut_chart from '@acorex/charts/donut-chart';
|
|
1
2
|
import * as _acorex_charts from '@acorex/charts';
|
|
2
3
|
import { AXAnimationEasing, AXChartComponent, AXChartComponentBase } from '@acorex/charts';
|
|
3
4
|
import * as d3 from 'd3';
|
|
@@ -145,6 +146,8 @@ declare class AXDonutChartComponent extends AXChartComponent implements OnDestro
|
|
|
145
146
|
private _tooltipVisible;
|
|
146
147
|
private _tooltipPosition;
|
|
147
148
|
private _tooltipData;
|
|
149
|
+
private _tooltipRafId;
|
|
150
|
+
private _pendingTooltipCoords;
|
|
148
151
|
protected tooltipVisible: _angular_core.Signal<boolean>;
|
|
149
152
|
protected tooltipPosition: _angular_core.Signal<{
|
|
150
153
|
x: number;
|
|
@@ -163,7 +166,7 @@ declare class AXDonutChartComponent extends AXChartComponent implements OnDestro
|
|
|
163
166
|
cornerRadius?: number;
|
|
164
167
|
animationDuration?: number;
|
|
165
168
|
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
166
|
-
messages?: AXDonutChartMessages;
|
|
169
|
+
messages?: _acorex_charts_donut_chart.AXDonutChartMessages;
|
|
167
170
|
}>;
|
|
168
171
|
private readonly TOOLTIP_GAP;
|
|
169
172
|
private readonly HIGHLIGHT_TRANSITION_DURATION;
|
|
@@ -172,6 +175,7 @@ declare class AXDonutChartComponent extends AXChartComponent implements OnDestro
|
|
|
172
175
|
private readonly LABEL_ANIMATION_DELAY;
|
|
173
176
|
private readonly MIN_CHART_DIMENSION;
|
|
174
177
|
private readonly MIN_CHART_FOR_LABELS;
|
|
178
|
+
private readonly CHART_INSET;
|
|
175
179
|
private readonly DIMMED_OPACITY;
|
|
176
180
|
private readonly VISIBLE_OPACITY;
|
|
177
181
|
protected effectiveMessages: _angular_core.Signal<{
|
|
@@ -248,16 +252,17 @@ declare class AXDonutChartComponent extends AXChartComponent implements OnDestro
|
|
|
248
252
|
private isChartLargeEnoughForLabels;
|
|
249
253
|
private addDataLabels;
|
|
250
254
|
/**
|
|
251
|
-
* Calculates
|
|
252
|
-
*
|
|
255
|
+
* Calculates font size for data labels using the donut ring's physical dimensions.
|
|
256
|
+
*
|
|
257
|
+
* Primary driver is the ring width (radial space), with chord length as an
|
|
258
|
+
* overflow guard and a gentle scale-down for smaller segments to create
|
|
259
|
+
* visual hierarchy.
|
|
253
260
|
*/
|
|
254
261
|
private calculateLabelFontSize;
|
|
255
262
|
private formatPercentage;
|
|
256
|
-
private buildLabelText;
|
|
257
263
|
/**
|
|
258
|
-
*
|
|
259
|
-
*
|
|
260
|
-
* Calculates chord length (straight line) since text is rendered horizontally, not along the arc
|
|
264
|
+
* Returns the best-fit label text for a segment, progressively truncating
|
|
265
|
+
* from "Label (XX%)" → "Label" → "XX%" → truncated label → truncated percentage.
|
|
261
266
|
*/
|
|
262
267
|
private getTruncatedLabelText;
|
|
263
268
|
/**
|
|
@@ -281,10 +286,6 @@ declare class AXDonutChartComponent extends AXChartComponent implements OnDestro
|
|
|
281
286
|
* Handles mouse leave from segments
|
|
282
287
|
*/
|
|
283
288
|
private handleSegmentLeave;
|
|
284
|
-
/**
|
|
285
|
-
* Updates tooltip position
|
|
286
|
-
* Ensures the tooltip is visible by adjusting position when near edges
|
|
287
|
-
*/
|
|
288
289
|
private updateTooltipPosition;
|
|
289
290
|
/**
|
|
290
291
|
* Adds center display with total value
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import * as _acorex_charts_funnel_chart from '@acorex/charts/funnel-chart';
|
|
2
|
+
import * as _acorex_charts from '@acorex/charts';
|
|
3
|
+
import { AXAnimationEasing, AXChartComponent, AXChartComponentBase } from '@acorex/charts';
|
|
4
|
+
import * as d3 from 'd3';
|
|
5
|
+
import * as _angular_core from '@angular/core';
|
|
6
|
+
import { OnDestroy, InjectionToken } from '@angular/core';
|
|
7
|
+
import { AXChartTooltipData } from '@acorex/charts/chart-tooltip';
|
|
8
|
+
|
|
9
|
+
interface AXFunnelData {
|
|
10
|
+
id?: string | number;
|
|
11
|
+
name: string;
|
|
12
|
+
value: number;
|
|
13
|
+
color?: string;
|
|
14
|
+
}
|
|
15
|
+
interface AXFunnelChartMessages {
|
|
16
|
+
noData?: string;
|
|
17
|
+
noDataIcon?: string;
|
|
18
|
+
}
|
|
19
|
+
interface AXFunnelChartOption {
|
|
20
|
+
margin?: {
|
|
21
|
+
top: number;
|
|
22
|
+
right: number;
|
|
23
|
+
bottom: number;
|
|
24
|
+
left: number;
|
|
25
|
+
};
|
|
26
|
+
width?: number;
|
|
27
|
+
height?: number;
|
|
28
|
+
/** The ratio of the bottom width compared to the top width for the last segment (0 to 1). Default: 0.3 */
|
|
29
|
+
neckWidth?: number;
|
|
30
|
+
colors?: string[];
|
|
31
|
+
/** Color used for the minimum value when `colors` is not provided. */
|
|
32
|
+
startColor?: string;
|
|
33
|
+
/** Color used for the maximum value when `colors` is not provided. */
|
|
34
|
+
endColor?: string;
|
|
35
|
+
showLabels?: boolean;
|
|
36
|
+
/** Label offset from the slice edge (px). */
|
|
37
|
+
labelOffset?: number;
|
|
38
|
+
showTooltip?: boolean;
|
|
39
|
+
animationDuration?: number;
|
|
40
|
+
animationEasing?: AXAnimationEasing;
|
|
41
|
+
messages?: AXFunnelChartMessages;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
declare class AXFunnelChartComponent extends AXChartComponent implements OnDestroy, AXChartComponentBase {
|
|
45
|
+
data: _angular_core.InputSignal<AXFunnelData[]>;
|
|
46
|
+
options: _angular_core.InputSignal<AXFunnelChartOption>;
|
|
47
|
+
/** Emitted when a funnel segment is clicked */
|
|
48
|
+
segmentClick: _angular_core.OutputEmitterRef<AXFunnelData>;
|
|
49
|
+
private readonly chartContainerEl;
|
|
50
|
+
private svgElement;
|
|
51
|
+
protected d3: typeof d3;
|
|
52
|
+
private _initialized;
|
|
53
|
+
private _rendered;
|
|
54
|
+
private platformService;
|
|
55
|
+
protected isRtl: _angular_core.WritableSignal<boolean>;
|
|
56
|
+
private directionSub?;
|
|
57
|
+
private _tooltipVisible;
|
|
58
|
+
private _tooltipPosition;
|
|
59
|
+
private _tooltipData;
|
|
60
|
+
private _tooltipRafId;
|
|
61
|
+
protected tooltipVisible: _angular_core.Signal<boolean>;
|
|
62
|
+
protected tooltipPosition: _angular_core.Signal<{
|
|
63
|
+
x: number;
|
|
64
|
+
y: number;
|
|
65
|
+
}>;
|
|
66
|
+
protected tooltipData: _angular_core.Signal<AXChartTooltipData>;
|
|
67
|
+
private configToken;
|
|
68
|
+
protected effectiveOptions: _angular_core.Signal<{
|
|
69
|
+
margin?: {
|
|
70
|
+
top: number;
|
|
71
|
+
right: number;
|
|
72
|
+
bottom: number;
|
|
73
|
+
left: number;
|
|
74
|
+
};
|
|
75
|
+
width?: number;
|
|
76
|
+
height?: number;
|
|
77
|
+
neckWidth?: number;
|
|
78
|
+
colors?: string[];
|
|
79
|
+
startColor?: string;
|
|
80
|
+
endColor?: string;
|
|
81
|
+
showLabels?: boolean;
|
|
82
|
+
labelOffset?: number;
|
|
83
|
+
showTooltip?: boolean;
|
|
84
|
+
animationDuration?: number;
|
|
85
|
+
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
86
|
+
messages?: _acorex_charts_funnel_chart.AXFunnelChartMessages;
|
|
87
|
+
}>;
|
|
88
|
+
constructor();
|
|
89
|
+
ngOnDestroy(): void;
|
|
90
|
+
protected loadD3(): Promise<void>;
|
|
91
|
+
createChart(): void;
|
|
92
|
+
private resolveSliceColor;
|
|
93
|
+
private hashStringToUint32;
|
|
94
|
+
private resolveCssColor;
|
|
95
|
+
updateChart(): void;
|
|
96
|
+
private showTooltip;
|
|
97
|
+
private updateTooltipPosition;
|
|
98
|
+
private hideTooltip;
|
|
99
|
+
cleanupChart(): void;
|
|
100
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFunnelChartComponent, never>;
|
|
101
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFunnelChartComponent, "ax-funnel-chart", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, { "segmentClick": "segmentClick"; }, never, never, true, never>;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
declare const AXFunnelChartDefaultConfig: AXFunnelChartOption;
|
|
105
|
+
declare const AX_FUNNEL_CHART_CONFIG: InjectionToken<AXFunnelChartOption>;
|
|
106
|
+
|
|
107
|
+
export { AXFunnelChartComponent, AXFunnelChartDefaultConfig, AX_FUNNEL_CHART_CONFIG };
|
|
108
|
+
export type { AXFunnelChartMessages, AXFunnelChartOption, AXFunnelData };
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as _acorex_charts_gauge_chart from '@acorex/charts/gauge-chart';
|
|
1
2
|
import * as _acorex_charts from '@acorex/charts';
|
|
2
3
|
import { AXAnimationEasing, AXChartComponent, AXChartComponentBase } from '@acorex/charts';
|
|
3
4
|
import * as d3 from 'd3';
|
|
@@ -106,6 +107,8 @@ declare class AXGaugeChartComponent extends AXChartComponent implements OnDestro
|
|
|
106
107
|
private _tooltipVisible;
|
|
107
108
|
private _tooltipPosition;
|
|
108
109
|
private _tooltipData;
|
|
110
|
+
private _tooltipRafId;
|
|
111
|
+
private _pendingTooltipCoords;
|
|
109
112
|
protected tooltipVisible: _angular_core.Signal<boolean>;
|
|
110
113
|
protected tooltipPosition: _angular_core.Signal<{
|
|
111
114
|
x: number;
|
|
@@ -130,12 +133,16 @@ declare class AXGaugeChartComponent extends AXChartComponent implements OnDestro
|
|
|
130
133
|
label?: string;
|
|
131
134
|
animationDuration?: number;
|
|
132
135
|
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
133
|
-
messages?: AXGaugeChartMessages;
|
|
136
|
+
messages?: _acorex_charts_gauge_chart.AXGaugeChartMessages;
|
|
134
137
|
}>;
|
|
135
138
|
private readonly TOOLTIP_GAP;
|
|
136
139
|
private readonly HALF_CIRCLE_RADIANS;
|
|
137
140
|
private readonly QUARTER_CIRCLE_RADIANS;
|
|
138
141
|
private readonly DEGREES_PER_RADIAN;
|
|
142
|
+
private readonly CHART_EDGE_PADDING;
|
|
143
|
+
private readonly TICK_LABEL_CHAR_WIDTH_RATIO;
|
|
144
|
+
private readonly TICK_LABEL_SIDE_PADDING;
|
|
145
|
+
private readonly LABEL_TICK_CLEARANCE;
|
|
139
146
|
constructor();
|
|
140
147
|
ngOnDestroy(): void;
|
|
141
148
|
/**
|
|
@@ -170,10 +177,6 @@ declare class AXGaugeChartComponent extends AXChartComponent implements OnDestro
|
|
|
170
177
|
* Shows tooltip for the entire range when no thresholds are defined
|
|
171
178
|
*/
|
|
172
179
|
private showSingleRangeTooltip;
|
|
173
|
-
/**
|
|
174
|
-
* Updates the tooltip position based on the mouse event
|
|
175
|
-
* For gauge charts, we need simpler coordinate handling since D3 events are already in container coordinates
|
|
176
|
-
*/
|
|
177
180
|
private updateTooltipPosition;
|
|
178
181
|
/**
|
|
179
182
|
* Hides the tooltip
|
|
@@ -191,6 +194,14 @@ declare class AXGaugeChartComponent extends AXChartComponent implements OnDestro
|
|
|
191
194
|
* Draws tick marks and labels around the gauge
|
|
192
195
|
*/
|
|
193
196
|
private drawTicks;
|
|
197
|
+
private getTickCount;
|
|
198
|
+
private getTickFontSize;
|
|
199
|
+
private getBaseLabelOffset;
|
|
200
|
+
private getTickLabelAnchor;
|
|
201
|
+
private getNearEdgeProjection;
|
|
202
|
+
private formatTickValue;
|
|
203
|
+
private estimateLabelWidth;
|
|
204
|
+
private estimateMaxTickLabelWidth;
|
|
194
205
|
/**
|
|
195
206
|
* Draws the value and label text in the center
|
|
196
207
|
*/
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import * as _acorex_charts_heatmap_chart from '@acorex/charts/heatmap-chart';
|
|
2
|
+
import * as _acorex_charts from '@acorex/charts';
|
|
3
|
+
import { AXAnimationEasing, AXChartComponent } from '@acorex/charts';
|
|
4
|
+
import * as _angular_core from '@angular/core';
|
|
5
|
+
import { OnDestroy, InjectionToken } from '@angular/core';
|
|
6
|
+
import { AXChartTooltipData } from '@acorex/charts/chart-tooltip';
|
|
7
|
+
|
|
8
|
+
interface AXHeatmapData {
|
|
9
|
+
x: string | number;
|
|
10
|
+
y: string | number;
|
|
11
|
+
value: number;
|
|
12
|
+
label?: string;
|
|
13
|
+
}
|
|
14
|
+
interface AXHeatmapMessages {
|
|
15
|
+
noData?: string;
|
|
16
|
+
noDataHelp?: string;
|
|
17
|
+
noDataIcon?: string;
|
|
18
|
+
}
|
|
19
|
+
interface AXHeatmapChartOption {
|
|
20
|
+
width?: number;
|
|
21
|
+
height?: number;
|
|
22
|
+
margin?: {
|
|
23
|
+
top: number;
|
|
24
|
+
right: number;
|
|
25
|
+
bottom: number;
|
|
26
|
+
left: number;
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Discrete palette. If provided (non-empty), a (stable) random color is chosen per cell.
|
|
30
|
+
* If omitted/empty, colors are computed from `startColor` → `endColor` based on the cell value.
|
|
31
|
+
*/
|
|
32
|
+
colors?: string[];
|
|
33
|
+
/** Color used for the minimum value when `colors` is not provided. */
|
|
34
|
+
startColor?: string;
|
|
35
|
+
/** Color used for the maximum value when `colors` is not provided. */
|
|
36
|
+
endColor?: string;
|
|
37
|
+
cellPadding?: number;
|
|
38
|
+
borderRadius?: number;
|
|
39
|
+
showXAxis?: boolean;
|
|
40
|
+
showYAxis?: boolean;
|
|
41
|
+
xAxisLabel?: string;
|
|
42
|
+
yAxisLabel?: string;
|
|
43
|
+
showTooltip?: boolean;
|
|
44
|
+
animationDuration?: number;
|
|
45
|
+
animationEasing?: AXAnimationEasing;
|
|
46
|
+
messages?: AXHeatmapMessages;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
declare class AXHeatmapChartComponent extends AXChartComponent implements OnDestroy {
|
|
50
|
+
private readonly defaultConfig;
|
|
51
|
+
data: _angular_core.InputSignal<AXHeatmapData[]>;
|
|
52
|
+
options: _angular_core.InputSignal<AXHeatmapChartOption>;
|
|
53
|
+
/** Emitted when a heatmap cell is clicked */
|
|
54
|
+
cellClick: _angular_core.OutputEmitterRef<AXHeatmapData>;
|
|
55
|
+
private readonly containerRef;
|
|
56
|
+
private svg;
|
|
57
|
+
protected d3: any;
|
|
58
|
+
private _d3Ready;
|
|
59
|
+
private platformService;
|
|
60
|
+
protected isRtl: _angular_core.WritableSignal<boolean>;
|
|
61
|
+
private directionSub?;
|
|
62
|
+
protected tooltipVisible: _angular_core.WritableSignal<boolean>;
|
|
63
|
+
protected tooltipPosition: _angular_core.WritableSignal<{
|
|
64
|
+
x: number;
|
|
65
|
+
y: number;
|
|
66
|
+
}>;
|
|
67
|
+
protected tooltipData: _angular_core.WritableSignal<AXChartTooltipData>;
|
|
68
|
+
private _tooltipRafId;
|
|
69
|
+
protected effectiveOptions: _angular_core.Signal<{
|
|
70
|
+
width?: number;
|
|
71
|
+
height?: number;
|
|
72
|
+
margin?: {
|
|
73
|
+
top: number;
|
|
74
|
+
right: number;
|
|
75
|
+
bottom: number;
|
|
76
|
+
left: number;
|
|
77
|
+
};
|
|
78
|
+
colors?: string[];
|
|
79
|
+
startColor?: string;
|
|
80
|
+
endColor?: string;
|
|
81
|
+
cellPadding?: number;
|
|
82
|
+
borderRadius?: number;
|
|
83
|
+
showXAxis?: boolean;
|
|
84
|
+
showYAxis?: boolean;
|
|
85
|
+
xAxisLabel?: string;
|
|
86
|
+
yAxisLabel?: string;
|
|
87
|
+
showTooltip?: boolean;
|
|
88
|
+
animationDuration?: number;
|
|
89
|
+
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
90
|
+
messages?: _acorex_charts_heatmap_chart.AXHeatmapMessages;
|
|
91
|
+
}>;
|
|
92
|
+
constructor();
|
|
93
|
+
private init;
|
|
94
|
+
private renderChart;
|
|
95
|
+
private hashStringToUint32;
|
|
96
|
+
private resolveCssColor;
|
|
97
|
+
private drawAxis;
|
|
98
|
+
private showTooltip;
|
|
99
|
+
private updateTooltipPos;
|
|
100
|
+
private hideTooltip;
|
|
101
|
+
ngOnDestroy(): void;
|
|
102
|
+
private drawAxisLabels;
|
|
103
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXHeatmapChartComponent, never>;
|
|
104
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXHeatmapChartComponent, "ax-heatmap-chart", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, { "cellClick": "cellClick"; }, never, never, true, never>;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
declare const AXHeatmapChartDefaultConfig: AXHeatmapChartOption;
|
|
108
|
+
declare const AX_HEATMAP_CHART_CONFIG: InjectionToken<AXHeatmapChartOption>;
|
|
109
|
+
|
|
110
|
+
export { AXHeatmapChartComponent, AXHeatmapChartDefaultConfig, AX_HEATMAP_CHART_CONFIG };
|
|
111
|
+
export type { AXHeatmapChartOption, AXHeatmapData, AXHeatmapMessages };
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as _acorex_charts from '@acorex/charts';
|
|
2
|
-
import {
|
|
2
|
+
import { NXNativeEvent, AXAnimationEasing, AXChartComponent, AXChartComponentBase } from '@acorex/charts';
|
|
3
|
+
import * as _acorex_charts_hierarchy_chart from '@acorex/charts/hierarchy-chart';
|
|
3
4
|
import * as _angular_core from '@angular/core';
|
|
4
5
|
import { TemplateRef, InjectionToken } from '@angular/core';
|
|
5
6
|
|
|
@@ -308,7 +309,7 @@ declare class AXHierarchyChartComponent extends AXChartComponent implements AXCh
|
|
|
308
309
|
protected effectiveOptions: _angular_core.Signal<{
|
|
309
310
|
width?: number;
|
|
310
311
|
height?: number;
|
|
311
|
-
margin?: AXHierarchyChartMargin;
|
|
312
|
+
margin?: _acorex_charts_hierarchy_chart.AXHierarchyChartMargin;
|
|
312
313
|
nodeRadius?: number;
|
|
313
314
|
nodeStrokeWidth?: number;
|
|
314
315
|
linkWidth?: number;
|
|
@@ -324,7 +325,7 @@ declare class AXHierarchyChartComponent extends AXChartComponent implements AXCh
|
|
|
324
325
|
className?: string;
|
|
325
326
|
animationDuration?: number;
|
|
326
327
|
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
327
|
-
messages?: AXHierarchyChartMessages;
|
|
328
|
+
messages?: _acorex_charts_hierarchy_chart.AXHierarchyChartMessages;
|
|
328
329
|
}>;
|
|
329
330
|
protected effectiveMessages: _angular_core.Signal<{
|
|
330
331
|
noData: string;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as _acorex_charts_line_chart from '@acorex/charts/line-chart';
|
|
1
2
|
import * as _acorex_charts from '@acorex/charts';
|
|
2
3
|
import { AXAnimationEasing, NXNativeEvent, AXChartComponent, AXChartComponentBase } from '@acorex/charts';
|
|
3
4
|
import * as d3 from 'd3';
|
|
@@ -121,6 +122,8 @@ declare class AXLineChartComponent extends AXChartComponent implements OnInit, A
|
|
|
121
122
|
private _tooltipVisible;
|
|
122
123
|
private _tooltipPosition;
|
|
123
124
|
private _tooltipData;
|
|
125
|
+
private _tooltipRafId;
|
|
126
|
+
private _pendingTooltipCoords;
|
|
124
127
|
private _initialized;
|
|
125
128
|
private _rendered;
|
|
126
129
|
private hiddenSeries;
|
|
@@ -160,7 +163,7 @@ declare class AXLineChartComponent extends AXChartComponent implements OnInit, A
|
|
|
160
163
|
showCrosshair?: boolean;
|
|
161
164
|
animationDuration?: number;
|
|
162
165
|
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
163
|
-
messages?: AXLineChartMessages;
|
|
166
|
+
messages?: _acorex_charts_line_chart.AXLineChartMessages;
|
|
164
167
|
}>;
|
|
165
168
|
protected effectiveMessages: _angular_core.Signal<{
|
|
166
169
|
noData: string;
|
|
@@ -179,6 +182,7 @@ declare class AXLineChartComponent extends AXChartComponent implements OnInit, A
|
|
|
179
182
|
private readonly MIN_MARGIN_BOTTOM;
|
|
180
183
|
private readonly MIN_MARGIN_LEFT;
|
|
181
184
|
private readonly MAX_EXTRA_MARGIN;
|
|
185
|
+
private readonly CHART_EDGE_PADDING;
|
|
182
186
|
private readonly DEFAULT_LINE_WIDTH;
|
|
183
187
|
private readonly DEFAULT_POINT_RADIUS;
|
|
184
188
|
private readonly DEFAULT_FILL_OPACITY;
|
|
File without changes
|
|
File without changes
|