@agorapulse/ui-charts-map 18.0.1 → 18.0.2
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/agorapulse-ui-charts-map-18.0.2.tgz +0 -0
- package/esm2022/src/lib/chart-map/chart-map.component.mjs +56 -39
- package/fesm2022/agorapulse-ui-charts-map.mjs +55 -38
- package/fesm2022/agorapulse-ui-charts-map.mjs.map +1 -1
- package/package.json +1 -1
- package/src/lib/chart-map/chart-map.component.d.ts +11 -11
- package/agorapulse-ui-charts-map-18.0.1.tgz +0 -0
|
Binary file
|
|
@@ -1,54 +1,71 @@
|
|
|
1
|
-
import { Component,
|
|
1
|
+
import { Component, effect, input, signal, untracked, viewChild } from '@angular/core';
|
|
2
2
|
import { mapChart } from 'highcharts/highmaps';
|
|
3
3
|
import { ChartColor } from '../chart-colors';
|
|
4
4
|
import { ChartMapOptions } from './chart-map-options.model';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class ChartMapComponent {
|
|
7
|
-
chartRef;
|
|
8
|
-
chartOptions = {};
|
|
9
|
-
color = ChartColor.ElectricBlue;
|
|
10
|
-
labelDateFormat = '%m/%d';
|
|
11
|
-
series =
|
|
12
|
-
lastWidth = 0;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
7
|
+
chartRef = viewChild.required('chart');
|
|
8
|
+
chartOptions = input({});
|
|
9
|
+
color = input(ChartColor.ElectricBlue);
|
|
10
|
+
labelDateFormat = input('%m/%d');
|
|
11
|
+
series = input.required();
|
|
12
|
+
lastWidth = signal(0);
|
|
13
|
+
chartInstance = signal(null);
|
|
14
|
+
constructor() {
|
|
15
|
+
effect(() => {
|
|
16
|
+
const seriesValue = this.series();
|
|
17
|
+
const colorValue = this.color();
|
|
18
|
+
const chartOptionsValue = this.chartOptions();
|
|
19
|
+
const labelDateFormatValue = this.labelDateFormat();
|
|
20
|
+
if (seriesValue.length > 0) {
|
|
21
|
+
untracked(() => {
|
|
22
|
+
this.initChart();
|
|
23
|
+
});
|
|
23
24
|
}
|
|
24
|
-
}
|
|
25
|
+
});
|
|
26
|
+
effect(() => {
|
|
27
|
+
const chartElement = this.chartRef()?.nativeElement;
|
|
28
|
+
if (!chartElement)
|
|
29
|
+
return;
|
|
30
|
+
const currentWidth = chartElement.clientWidth;
|
|
31
|
+
if (currentWidth > 0 && currentWidth !== this.lastWidth()) {
|
|
32
|
+
untracked(() => {
|
|
33
|
+
this.lastWidth.set(currentWidth);
|
|
34
|
+
});
|
|
35
|
+
const seriesValue = this.series();
|
|
36
|
+
if (seriesValue.length > 0) {
|
|
37
|
+
untracked(() => {
|
|
38
|
+
this.initChart();
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
});
|
|
25
43
|
}
|
|
26
44
|
initChart() {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
45
|
+
const seriesValue = this.series();
|
|
46
|
+
const chartElement = this.chartRef()?.nativeElement;
|
|
47
|
+
if (!seriesValue.length || !chartElement) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
const currentChart = this.chartInstance();
|
|
51
|
+
if (currentChart) {
|
|
52
|
+
currentChart.destroy();
|
|
53
|
+
}
|
|
54
|
+
try {
|
|
55
|
+
const builtOptions = ChartMapOptions.build(this.chartOptions());
|
|
56
|
+
ChartMapOptions.configureMap(seriesValue, builtOptions, this.color(), this.labelDateFormat());
|
|
57
|
+
const newChart = mapChart(chartElement, builtOptions);
|
|
58
|
+
this.chartInstance.set(newChart);
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
console.error('Failed to initialize chart:', error);
|
|
31
62
|
}
|
|
32
63
|
}
|
|
33
64
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ChartMapComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
65
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.9", type: ChartMapComponent, isStandalone: true, selector: "ap-chart-map", inputs: { chartOptions: { classPropertyName: "chartOptions", publicName: "chartOptions", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, labelDateFormat: { classPropertyName: "labelDateFormat", publicName: "labelDateFormat", isSignal: true, isRequired: false, transformFunction: null }, series: { classPropertyName: "series", publicName: "series", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "chartRef", first: true, predicate: ["chart"], descendants: true, isSignal: true }], ngImport: i0, template: "<div #chart></div>\n" });
|
|
35
66
|
}
|
|
36
67
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ChartMapComponent, decorators: [{
|
|
37
68
|
type: Component,
|
|
38
69
|
args: [{ selector: 'ap-chart-map', standalone: true, template: "<div #chart></div>\n" }]
|
|
39
|
-
}],
|
|
40
|
-
|
|
41
|
-
args: ['chart']
|
|
42
|
-
}], chartOptions: [{
|
|
43
|
-
type: Input
|
|
44
|
-
}], color: [{
|
|
45
|
-
type: Input
|
|
46
|
-
}], labelDateFormat: [{
|
|
47
|
-
type: Input
|
|
48
|
-
}], series: [{
|
|
49
|
-
type: Input,
|
|
50
|
-
args: [{
|
|
51
|
-
required: true,
|
|
52
|
-
}]
|
|
53
|
-
}] } });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWktY2hhcnRzLW1hcC9zcmMvbGliL2NoYXJ0LW1hcC9jaGFydC1tYXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jaGFydHMtbWFwL3NyYy9saWIvY2hhcnQtbWFwL2NoYXJ0LW1hcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFNBQVMsRUFBYyxLQUFLLEVBQTRCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwSCxPQUFPLEVBQTZCLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBTzVELE1BQU0sT0FBTyxpQkFBaUI7SUFDTixRQUFRLENBQWM7SUFFakMsWUFBWSxHQUFZLEVBQUUsQ0FBQyxDQUFDLHlDQUF5QztJQUNyRSxLQUFLLEdBQWUsVUFBVSxDQUFDLFlBQVksQ0FBQztJQUM1QyxlQUFlLEdBQUcsT0FBTyxDQUFDO0lBSW5DLE1BQU0sR0FBdUIsRUFBRSxDQUFDO0lBRXhCLFNBQVMsR0FBRyxDQUFDLENBQUM7SUFFdEIsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7WUFDbkcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3JCLENBQUM7SUFDTCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFdBQVcsS0FBSyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDOUUsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUM7WUFDekQsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ3BDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNyQixDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFTyxTQUFTO1FBQ2IsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDZCxJQUFJLENBQUMsWUFBWSxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzdELGVBQWUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQy9GLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDN0QsQ0FBQztJQUNMLENBQUM7dUdBbENRLGlCQUFpQjsyRkFBakIsaUJBQWlCLGdUQ1Y5QixzQkFDQTs7MkZEU2EsaUJBQWlCO2tCQUw3QixTQUFTOytCQUNJLGNBQWMsY0FFWixJQUFJOzhCQUdJLFFBQVE7c0JBQTNCLFNBQVM7dUJBQUMsT0FBTztnQkFFVCxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUlOLE1BQU07c0JBSEwsS0FBSzt1QkFBQzt3QkFDSCxRQUFRLEVBQUUsSUFBSTtxQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdDaGVja2VkLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT3B0aW9ucywgU2VyaWVzTWFwT3B0aW9ucywgbWFwQ2hhcnQgfSBmcm9tICdoaWdoY2hhcnRzL2hpZ2htYXBzJztcbmltcG9ydCB7IENoYXJ0Q29sb3IgfSBmcm9tICcuLi9jaGFydC1jb2xvcnMnO1xuaW1wb3J0IHsgQ2hhcnRNYXBPcHRpb25zIH0gZnJvbSAnLi9jaGFydC1tYXAtb3B0aW9ucy5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXAtY2hhcnQtbWFwJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2hhcnQtbWFwLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydE1hcENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0NoZWNrZWQsIE9uQ2hhbmdlcyB7XG4gICAgQFZpZXdDaGlsZCgnY2hhcnQnKSBjaGFydFJlZiE6IEVsZW1lbnRSZWY7XG5cbiAgICBASW5wdXQoKSBjaGFydE9wdGlvbnM6IE9wdGlvbnMgPSB7fTsgLy8gaHR0cHM6Ly9hcGkuaGlnaGNoYXJ0cy5jb20vaGlnaGNoYXJ0cy9cbiAgICBASW5wdXQoKSBjb2xvcjogQ2hhcnRDb2xvciA9IENoYXJ0Q29sb3IuRWxlY3RyaWNCbHVlO1xuICAgIEBJbnB1dCgpIGxhYmVsRGF0ZUZvcm1hdCA9ICclbS8lZCc7XG4gICAgQElucHV0KHtcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgfSlcbiAgICBzZXJpZXM6IFNlcmllc01hcE9wdGlvbnNbXSA9IFtdO1xuXG4gICAgcHJpdmF0ZSBsYXN0V2lkdGggPSAwO1xuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoKGNoYW5nZXMuc2VyaWVzICYmICFjaGFuZ2VzLnNlcmllcy5maXJzdENoYW5nZSkgfHwgKGNoYW5nZXMuY29sb3IgJiYgIWNoYW5nZXMuY29sb3IuZmlyc3RDaGFuZ2UpKSB7XG4gICAgICAgICAgICB0aGlzLmluaXRDaGFydCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdDaGVja2VkKCkge1xuICAgICAgICBpZiAodGhpcy5jaGFydFJlZiAmJiB0aGlzLmNoYXJ0UmVmLm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGggIT09IHRoaXMubGFzdFdpZHRoKSB7XG4gICAgICAgICAgICB0aGlzLmxhc3RXaWR0aCA9IHRoaXMuY2hhcnRSZWYubmF0aXZlRWxlbWVudC5jbGllbnRXaWR0aDtcbiAgICAgICAgICAgIGlmICh0aGlzLnNlcmllcyAmJiB0aGlzLnNlcmllcy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmluaXRDaGFydCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0Q2hhcnQoKSB7XG4gICAgICAgIGlmICh0aGlzLnNlcmllcykge1xuICAgICAgICAgICAgdGhpcy5jaGFydE9wdGlvbnMgPSBDaGFydE1hcE9wdGlvbnMuYnVpbGQodGhpcy5jaGFydE9wdGlvbnMpO1xuICAgICAgICAgICAgQ2hhcnRNYXBPcHRpb25zLmNvbmZpZ3VyZU1hcCh0aGlzLnNlcmllcywgdGhpcy5jaGFydE9wdGlvbnMsIHRoaXMuY29sb3IsIHRoaXMubGFiZWxEYXRlRm9ybWF0KTtcbiAgICAgICAgICAgIG1hcENoYXJ0KHRoaXMuY2hhcnRSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5jaGFydE9wdGlvbnMpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdiAjY2hhcnQ+PC9kaXY+XG4iXX0=
|
|
70
|
+
}], ctorParameters: () => [] });
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWktY2hhcnRzLW1hcC9zcmMvbGliL2NoYXJ0LW1hcC9jaGFydC1tYXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jaGFydHMtbWFwL3NyYy9saWIvY2hhcnQtbWFwL2NoYXJ0LW1hcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkcsT0FBTyxFQUE2QixRQUFRLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQU81RCxNQUFNLE9BQU8saUJBQWlCO0lBQ1AsUUFBUSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQTZCLE9BQU8sQ0FBQyxDQUFDO0lBRTdFLFlBQVksR0FBRyxLQUFLLENBQVUsRUFBRSxDQUFDLENBQUM7SUFDbEMsS0FBSyxHQUFHLEtBQUssQ0FBYSxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDbkQsZUFBZSxHQUFHLEtBQUssQ0FBUyxPQUFPLENBQUMsQ0FBQztJQUN6QyxNQUFNLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBc0IsQ0FBQztJQUV0QyxTQUFTLEdBQUcsTUFBTSxDQUFTLENBQUMsQ0FBQyxDQUFDO0lBQzlCLGFBQWEsR0FBRyxNQUFNLENBQTBCLElBQUksQ0FBQyxDQUFDO0lBRXZFO1FBQ0ksTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNSLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNsQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDaEMsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDOUMsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFFcEQsSUFBSSxXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN6QixTQUFTLENBQUMsR0FBRyxFQUFFO29CQUNYLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDckIsQ0FBQyxDQUFDLENBQUM7WUFDUCxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1IsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLGFBQWEsQ0FBQztZQUNwRCxJQUFJLENBQUMsWUFBWTtnQkFBRSxPQUFPO1lBRTFCLE1BQU0sWUFBWSxHQUFHLFlBQVksQ0FBQyxXQUFXLENBQUM7WUFDOUMsSUFBSSxZQUFZLEdBQUcsQ0FBQyxJQUFJLFlBQVksS0FBSyxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQztnQkFDeEQsU0FBUyxDQUFDLEdBQUcsRUFBRTtvQkFDWCxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDckMsQ0FBQyxDQUFDLENBQUM7Z0JBQ0gsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNsQyxJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7b0JBQ3pCLFNBQVMsQ0FBQyxHQUFHLEVBQUU7d0JBQ1gsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO29CQUNyQixDQUFDLENBQUMsQ0FBQztnQkFDUCxDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLFNBQVM7UUFDYixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDbEMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLGFBQWEsQ0FBQztRQUVwRCxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3ZDLE9BQU87UUFDWCxDQUFDO1FBRUQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzFDLElBQUksWUFBWSxFQUFFLENBQUM7WUFDZixZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDM0IsQ0FBQztRQUVELElBQUksQ0FBQztZQUNELE1BQU0sWUFBWSxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7WUFDaEUsZUFBZSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQztZQUU5RixNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQyxDQUFDO1lBQ3RELElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3JDLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2IsT0FBTyxDQUFDLEtBQUssQ0FBQyw2QkFBNkIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN4RCxDQUFDO0lBQ0wsQ0FBQzt1R0FsRVEsaUJBQWlCOzJGQUFqQixpQkFBaUIsNHRCQ1Y5QixzQkFDQTs7MkZEU2EsaUJBQWlCO2tCQUw3QixTQUFTOytCQUNJLGNBQWMsY0FFWixJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBlZmZlY3QsIGlucHV0LCBzaWduYWwsIHVudHJhY2tlZCwgdmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPcHRpb25zLCBTZXJpZXNNYXBPcHRpb25zLCBtYXBDaGFydCB9IGZyb20gJ2hpZ2hjaGFydHMvaGlnaG1hcHMnO1xuaW1wb3J0IHsgQ2hhcnRDb2xvciB9IGZyb20gJy4uL2NoYXJ0LWNvbG9ycyc7XG5pbXBvcnQgeyBDaGFydE1hcE9wdGlvbnMgfSBmcm9tICcuL2NoYXJ0LW1hcC1vcHRpb25zLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcC1jaGFydC1tYXAnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jaGFydC1tYXAuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIENoYXJ0TWFwQ29tcG9uZW50IHtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2hhcnRSZWYgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD4+KCdjaGFydCcpO1xuXG4gICAgcmVhZG9ubHkgY2hhcnRPcHRpb25zID0gaW5wdXQ8T3B0aW9ucz4oe30pO1xuICAgIHJlYWRvbmx5IGNvbG9yID0gaW5wdXQ8Q2hhcnRDb2xvcj4oQ2hhcnRDb2xvci5FbGVjdHJpY0JsdWUpO1xuICAgIHJlYWRvbmx5IGxhYmVsRGF0ZUZvcm1hdCA9IGlucHV0PHN0cmluZz4oJyVtLyVkJyk7XG4gICAgcmVhZG9ubHkgc2VyaWVzID0gaW5wdXQucmVxdWlyZWQ8U2VyaWVzTWFwT3B0aW9uc1tdPigpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBsYXN0V2lkdGggPSBzaWduYWw8bnVtYmVyPigwKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoYXJ0SW5zdGFuY2UgPSBzaWduYWw8SGlnaGNoYXJ0cy5DaGFydCB8IG51bGw+KG51bGwpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzZXJpZXNWYWx1ZSA9IHRoaXMuc2VyaWVzKCk7XG4gICAgICAgICAgICBjb25zdCBjb2xvclZhbHVlID0gdGhpcy5jb2xvcigpO1xuICAgICAgICAgICAgY29uc3QgY2hhcnRPcHRpb25zVmFsdWUgPSB0aGlzLmNoYXJ0T3B0aW9ucygpO1xuICAgICAgICAgICAgY29uc3QgbGFiZWxEYXRlRm9ybWF0VmFsdWUgPSB0aGlzLmxhYmVsRGF0ZUZvcm1hdCgpO1xuXG4gICAgICAgICAgICBpZiAoc2VyaWVzVmFsdWUubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIHVudHJhY2tlZCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5pdENoYXJ0KCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjaGFydEVsZW1lbnQgPSB0aGlzLmNoYXJ0UmVmKCk/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICBpZiAoIWNoYXJ0RWxlbWVudCkgcmV0dXJuO1xuXG4gICAgICAgICAgICBjb25zdCBjdXJyZW50V2lkdGggPSBjaGFydEVsZW1lbnQuY2xpZW50V2lkdGg7XG4gICAgICAgICAgICBpZiAoY3VycmVudFdpZHRoID4gMCAmJiBjdXJyZW50V2lkdGggIT09IHRoaXMubGFzdFdpZHRoKCkpIHtcbiAgICAgICAgICAgICAgICB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxhc3RXaWR0aC5zZXQoY3VycmVudFdpZHRoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBjb25zdCBzZXJpZXNWYWx1ZSA9IHRoaXMuc2VyaWVzKCk7XG4gICAgICAgICAgICAgICAgaWYgKHNlcmllc1ZhbHVlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdW50cmFja2VkKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaW5pdENoYXJ0KCk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0Q2hhcnQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHNlcmllc1ZhbHVlID0gdGhpcy5zZXJpZXMoKTtcbiAgICAgICAgY29uc3QgY2hhcnRFbGVtZW50ID0gdGhpcy5jaGFydFJlZigpPy5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIGlmICghc2VyaWVzVmFsdWUubGVuZ3RoIHx8ICFjaGFydEVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGN1cnJlbnRDaGFydCA9IHRoaXMuY2hhcnRJbnN0YW5jZSgpO1xuICAgICAgICBpZiAoY3VycmVudENoYXJ0KSB7XG4gICAgICAgICAgICBjdXJyZW50Q2hhcnQuZGVzdHJveSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IGJ1aWx0T3B0aW9ucyA9IENoYXJ0TWFwT3B0aW9ucy5idWlsZCh0aGlzLmNoYXJ0T3B0aW9ucygpKTtcbiAgICAgICAgICAgIENoYXJ0TWFwT3B0aW9ucy5jb25maWd1cmVNYXAoc2VyaWVzVmFsdWUsIGJ1aWx0T3B0aW9ucywgdGhpcy5jb2xvcigpLCB0aGlzLmxhYmVsRGF0ZUZvcm1hdCgpKTtcblxuICAgICAgICAgICAgY29uc3QgbmV3Q2hhcnQgPSBtYXBDaGFydChjaGFydEVsZW1lbnQsIGJ1aWx0T3B0aW9ucyk7XG4gICAgICAgICAgICB0aGlzLmNoYXJ0SW5zdGFuY2Uuc2V0KG5ld0NoYXJ0KTtcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBpbml0aWFsaXplIGNoYXJ0OicsIGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgI2NoYXJ0PjwvZGl2PlxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { viewChild, input, signal, effect, untracked, Component } from '@angular/core';
|
|
3
3
|
import { mapChart } from 'highcharts/highmaps';
|
|
4
4
|
import geojson from '@highcharts/map-collection/custom/world-highres2.geo.json';
|
|
5
5
|
import { dateFormat } from 'highcharts';
|
|
@@ -377,53 +377,70 @@ class ChartMapOptions extends ChartOptions {
|
|
|
377
377
|
}
|
|
378
378
|
|
|
379
379
|
class ChartMapComponent {
|
|
380
|
-
chartRef;
|
|
381
|
-
chartOptions = {};
|
|
382
|
-
color = ChartColor.ElectricBlue;
|
|
383
|
-
labelDateFormat = '%m/%d';
|
|
384
|
-
series =
|
|
385
|
-
lastWidth = 0;
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
380
|
+
chartRef = viewChild.required('chart');
|
|
381
|
+
chartOptions = input({});
|
|
382
|
+
color = input(ChartColor.ElectricBlue);
|
|
383
|
+
labelDateFormat = input('%m/%d');
|
|
384
|
+
series = input.required();
|
|
385
|
+
lastWidth = signal(0);
|
|
386
|
+
chartInstance = signal(null);
|
|
387
|
+
constructor() {
|
|
388
|
+
effect(() => {
|
|
389
|
+
const seriesValue = this.series();
|
|
390
|
+
const colorValue = this.color();
|
|
391
|
+
const chartOptionsValue = this.chartOptions();
|
|
392
|
+
const labelDateFormatValue = this.labelDateFormat();
|
|
393
|
+
if (seriesValue.length > 0) {
|
|
394
|
+
untracked(() => {
|
|
395
|
+
this.initChart();
|
|
396
|
+
});
|
|
396
397
|
}
|
|
397
|
-
}
|
|
398
|
+
});
|
|
399
|
+
effect(() => {
|
|
400
|
+
const chartElement = this.chartRef()?.nativeElement;
|
|
401
|
+
if (!chartElement)
|
|
402
|
+
return;
|
|
403
|
+
const currentWidth = chartElement.clientWidth;
|
|
404
|
+
if (currentWidth > 0 && currentWidth !== this.lastWidth()) {
|
|
405
|
+
untracked(() => {
|
|
406
|
+
this.lastWidth.set(currentWidth);
|
|
407
|
+
});
|
|
408
|
+
const seriesValue = this.series();
|
|
409
|
+
if (seriesValue.length > 0) {
|
|
410
|
+
untracked(() => {
|
|
411
|
+
this.initChart();
|
|
412
|
+
});
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
});
|
|
398
416
|
}
|
|
399
417
|
initChart() {
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
418
|
+
const seriesValue = this.series();
|
|
419
|
+
const chartElement = this.chartRef()?.nativeElement;
|
|
420
|
+
if (!seriesValue.length || !chartElement) {
|
|
421
|
+
return;
|
|
422
|
+
}
|
|
423
|
+
const currentChart = this.chartInstance();
|
|
424
|
+
if (currentChart) {
|
|
425
|
+
currentChart.destroy();
|
|
426
|
+
}
|
|
427
|
+
try {
|
|
428
|
+
const builtOptions = ChartMapOptions.build(this.chartOptions());
|
|
429
|
+
ChartMapOptions.configureMap(seriesValue, builtOptions, this.color(), this.labelDateFormat());
|
|
430
|
+
const newChart = mapChart(chartElement, builtOptions);
|
|
431
|
+
this.chartInstance.set(newChart);
|
|
432
|
+
}
|
|
433
|
+
catch (error) {
|
|
434
|
+
console.error('Failed to initialize chart:', error);
|
|
404
435
|
}
|
|
405
436
|
}
|
|
406
437
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ChartMapComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
407
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
438
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.9", type: ChartMapComponent, isStandalone: true, selector: "ap-chart-map", inputs: { chartOptions: { classPropertyName: "chartOptions", publicName: "chartOptions", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, labelDateFormat: { classPropertyName: "labelDateFormat", publicName: "labelDateFormat", isSignal: true, isRequired: false, transformFunction: null }, series: { classPropertyName: "series", publicName: "series", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "chartRef", first: true, predicate: ["chart"], descendants: true, isSignal: true }], ngImport: i0, template: "<div #chart></div>\n" });
|
|
408
439
|
}
|
|
409
440
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ChartMapComponent, decorators: [{
|
|
410
441
|
type: Component,
|
|
411
442
|
args: [{ selector: 'ap-chart-map', standalone: true, template: "<div #chart></div>\n" }]
|
|
412
|
-
}],
|
|
413
|
-
type: ViewChild,
|
|
414
|
-
args: ['chart']
|
|
415
|
-
}], chartOptions: [{
|
|
416
|
-
type: Input
|
|
417
|
-
}], color: [{
|
|
418
|
-
type: Input
|
|
419
|
-
}], labelDateFormat: [{
|
|
420
|
-
type: Input
|
|
421
|
-
}], series: [{
|
|
422
|
-
type: Input,
|
|
423
|
-
args: [{
|
|
424
|
-
required: true,
|
|
425
|
-
}]
|
|
426
|
-
}] } });
|
|
443
|
+
}], ctorParameters: () => [] });
|
|
427
444
|
|
|
428
445
|
/*
|
|
429
446
|
* Public API Surface of ui-charts-map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agorapulse-ui-charts-map.mjs","sources":["../../../libs/ui-charts-map/src/lib/chart-colors.ts","../../../libs/ui-charts-map/src/lib/chart-options.ts","../../../libs/ui-charts-map/src/lib/chart-map/chart-map-options.model.ts","../../../libs/ui-charts-map/src/lib/chart-map/chart-map.component.ts","../../../libs/ui-charts-map/src/lib/chart-map/chart-map.component.html","../../../libs/ui-charts-map/index.ts","../../../libs/ui-charts-map/agorapulse-ui-charts-map.ts"],"sourcesContent":["export enum ChartColor {\n Grey,\n Orange,\n SoftBlue,\n ElectricBlue,\n Purple,\n Green,\n}\n\nexport class ChartColors {\n static readonly SOFT_BLUE_COLORS = {\n '10': '#EFF5FC',\n '20': '#DFEDFA',\n '40': '#C0DBF4',\n '60': '#A0C8EF',\n '85': '#78B1E8',\n '100': '#61A4E4',\n };\n static readonly ELECTRIC_BLUE_COLORS = {\n '10': '#e8f4ff',\n '20': '#d1e8ff',\n '40': '#a2d1ff',\n '60': '#74bbfe',\n '85': '#3a9efe',\n '100': '#178dfe',\n };\n static readonly ORANGE_COLORS = {\n '10': '#FFEFE9',\n '20': '#FFE1D4',\n '40': '#FFC2A8',\n '60': '#FFA47D',\n '85': '#FF7E46',\n '100': '#FF6726',\n };\n static readonly GREEN_COLORS = {\n '10': '#ECF7ED',\n '20': '#DAF1DD',\n '40': '#B5E3BB',\n '60': '#8FD498',\n '85': '#61C26D',\n '100': '#45B854',\n };\n static readonly PURPLE_COLORS = {\n '10': '#EFEDF8',\n '20': '#E0DDF2',\n '40': '#C1BBE6',\n '60': '#A398D9',\n '85': '#7C6DC9',\n '100': '#6554C0',\n };\n static readonly GREY_COLORS = {\n '10': '#EAECEF',\n '20': '#D6DAE0',\n '40': '#AEB5C1',\n '60': '#858FA1',\n '85': '#5D6A82',\n '100': '#344563',\n };\n\n static readonly BLACK_COLOR: string = '#000000';\n static readonly LIMIT_COLOR: string = '#E81313';\n static readonly WHITE_COLOR: string = '#FFFFFF';\n\n static getChartColors(color: ChartColor): { [shade: string]: string } {\n switch (color) {\n case ChartColor.Orange:\n return this.ORANGE_COLORS;\n case ChartColor.SoftBlue:\n return this.SOFT_BLUE_COLORS;\n case ChartColor.ElectricBlue:\n return this.ELECTRIC_BLUE_COLORS;\n case ChartColor.Purple:\n return this.PURPLE_COLORS;\n case ChartColor.Green:\n return this.GREEN_COLORS;\n default:\n return this.GREY_COLORS;\n }\n }\n\n static getColors(seriesCount: number, color: ChartColor): string[] {\n const colors = this.getChartColors(color);\n switch (seriesCount) {\n case 1:\n return [colors[100]];\n case 2:\n return [colors[40], colors[100]];\n case 3:\n return [colors[20], colors[60], colors[100]];\n case 4:\n return [colors[20], colors[40], colors[60], colors[100]];\n case 5:\n return [colors[10], colors[20], colors[40], colors[60], colors[100]];\n default:\n return [colors[20], colors[40], colors[60], colors[100]];\n }\n }\n}\n","import { dateFormat, Options, SeriesOptionsType } from 'highcharts';\nimport { ChartColor, ChartColors } from './chart-colors';\n\nexport class ChartOptions {\n static readonly DEFAULT_DATE_FORMAT: string = '%A, %b %e, %Y';\n static readonly DEFAULT_OPTIONS: Options = {\n /*lang: {\n decimalPoint: (manager && manager.locale !== 'en') ? ',' : '.',\n resetZoom: resetZoomLabel,\n resetZoomTitle: resetZoomHtmlTitle,\n shortMonths: [\n shortJanuary, shortFebruary, shortMarch, shortApril, shortMay, shortJune,\n shortJuly, shortAugust, shortSeptember, shortOctober, shortNovember, shortDecember\n ],\n thousandsSep: (manager && manager.locale !== 'en') ? ' ' : ',',\n weekdays: this.weekDays,\n zoomIn: zoomInHtmlTitle,\n zoomOut: zoomOutHtmlTitle\n },*/\n chart: {\n spacingRight: 20,\n zooming: {\n type: 'xy',\n resetButton: {\n theme: {\n fill: ChartColors.WHITE_COLOR,\n r: 4,\n style: {\n color: ChartColors.GREY_COLORS[100],\n fontSize: '12px',\n },\n states: {\n hover: {\n fill: ChartColors.GREY_COLORS[10],\n },\n },\n },\n },\n },\n panning: {\n enabled: true,\n },\n panKey: 'shift',\n style: {\n fontFamily: \"Averta, 'Open Sans', Helvetica, sans-serif\",\n },\n },\n colorAxis: {\n labels: {\n style: {\n color: ChartColors.GREY_COLORS[60],\n },\n },\n },\n credits: {\n enabled: false,\n },\n legend: {\n borderWidth: 0,\n itemStyle: {\n color: ChartColors.GREY_COLORS[60],\n fontSize: '14px',\n fontWeight: 'normal',\n },\n itemHoverStyle: {\n color: ChartColors.GREY_COLORS[100],\n fontWeight: 'bold',\n },\n },\n plotOptions: {\n series: {\n states: {\n hover: {\n brightness: 0,\n },\n },\n connectNulls: true,\n lineWidth: 4,\n },\n },\n navigation: {\n buttonOptions: {\n y: 0,\n },\n },\n title: {\n text: undefined,\n },\n tooltip: {\n backgroundColor: ChartColors.WHITE_COLOR,\n borderRadius: 4,\n borderWidth: 0,\n dateTimeLabelFormats: {\n day: ChartOptions.DEFAULT_DATE_FORMAT,\n week: ChartOptions.DEFAULT_DATE_FORMAT,\n },\n shadow: {\n color: ChartColors.BLACK_COLOR,\n offsetX: 0,\n offsetY: 2,\n opacity: 0.02,\n width: 6,\n },\n split: false,\n shared: true,\n useHTML: true,\n headerFormat:\n `<div style=\"border-bottom: 1px solid ${ChartColors.GREY_COLORS[10]}; padding: 0 8px 7px\">` +\n `<span style=\"font-size: 12px; color: ${ChartColors.GREY_COLORS[60]}\">{point.key}</span></div>`,\n pointFormat:\n `<div style=\"font-size: 14px; color: ${ChartColors.GREY_COLORS[100]}; margin: 6px 8px 0 8px;\">` +\n '<span style=\"color:{point.color}\">\\u25CF</span> {series.name}: <b>{point.y}</b></div>',\n },\n xAxis: {\n gridLineColor: ChartColors.GREY_COLORS[10],\n lineColor: ChartColors.GREY_COLORS[10],\n tickColor: ChartColors.GREY_COLORS[10],\n gridLineWidth: 1,\n title: {\n text: null,\n },\n labels: {\n style: {\n color: ChartColors.GREY_COLORS[40],\n fontSize: '12px',\n },\n },\n },\n yAxis: {\n allowDecimals: false,\n gridLineColor: ChartColors.GREY_COLORS[10],\n lineColor: ChartColors.GREY_COLORS[10],\n gridLineWidth: 1,\n title: {\n text: null,\n },\n labels: {\n style: {\n color: ChartColors.GREY_COLORS[40],\n fontSize: '12px',\n },\n },\n },\n };\n\n static build(options: Options): Options {\n return mergeDeep(ChartOptions.DEFAULT_OPTIONS, options);\n }\n\n static configure(series: SeriesOptionsType[], options: Options, color: ChartColor, labelDateFormat?: string) {\n // Configure axis\n options.xAxis = mergeDeep(\n {\n labels: {\n formatter: function (): string {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return dateFormat(labelDateFormat ? labelDateFormat : '%m/%d', this.value);\n },\n },\n //minTickInterval: 24 * 60 * 60 * 1000 // One day\n },\n options.xAxis\n );\n // Configure series\n if (series && series.length) {\n options.series = series;\n if (options.legend) {\n options.legend.enabled = series.length >= 2;\n }\n options.colors = ChartColors.getColors(series.length, color);\n }\n }\n}\n\nexport function isObject(item: any) {\n return item && typeof item === 'object' && !Array.isArray(item);\n}\n\nexport function mergeDeep(target: any, source: any) {\n const output = deepCopy(target);\n if (isObject(target) && isObject(source)) {\n Object.keys(source).forEach(key => {\n if (isObject(source[key])) {\n if (!(key in target)) Object.assign(output, { [key]: source[key] });\n else output[key] = mergeDeep(target[key], source[key]);\n } else {\n Object.assign(output, { [key]: source[key] });\n }\n });\n }\n return output;\n}\n\nfunction deepCopy(source: any) {\n if (typeof source !== 'object' || source === null) {\n return source; // Return the value if source is not an object\n }\n // Create an array or object to hold the values\n const newObject = Array.isArray(source) ? [] : {};\n for (const key in source) {\n if (source.hasOwnProperty(key)) {\n // Recursively (deep) copy for nested objects, including arrays\n (newObject as any)[key] = deepCopy(source[key]);\n }\n }\n return newObject;\n}\n","import geojson from '@highcharts/map-collection/custom/world-highres2.geo.json';\nimport * as Highcharts from 'highcharts';\nimport { ColorAxisOptions, Options, SeriesOptionsType } from 'highcharts';\n\nimport { ChartColor, ChartColors } from '../chart-colors';\nimport { ChartOptions, mergeDeep } from '../chart-options';\n\nexport class ChartMapOptions extends ChartOptions {\n static override build(options: Highcharts.Options): Highcharts.Options {\n const defaultMapOptions: Highcharts.Options = {\n chart: {\n height: 450,\n map: geojson,\n },\n colorAxis: {\n allowDecimals: false,\n gridLineWidth: 2,\n gridLineColor: ChartColors.WHITE_COLOR,\n min: 0,\n tickAmount: 6,\n labels: {\n style: {\n fontSize: '12px',\n },\n },\n minColor: ChartColors.SOFT_BLUE_COLORS[20],\n maxColor: ChartColors.SOFT_BLUE_COLORS[100],\n },\n legend: {\n align: 'left',\n floating: true,\n },\n mapNavigation: {\n enabled: true,\n enableMouseWheelZoom: false,\n buttonOptions: {\n verticalAlign: 'middle',\n style: {\n color: ChartColors.GREY_COLORS[100],\n fontSize: '16px',\n fontWeight: 'normal',\n },\n theme: {\n fill: ChartColors.WHITE_COLOR,\n r: 4,\n states: {\n hover: {\n fill: ChartColors.GREY_COLORS[10],\n },\n },\n },\n },\n },\n plotOptions: {\n map: {\n borderColor: ChartColors.WHITE_COLOR,\n borderWidth: 0.5,\n nullColor: '#e2e2ea',\n },\n },\n tooltip: {\n headerFormat: '',\n pointFormat:\n '<div style=\"border-bottom: 1px solid #eaecef; padding: 0 8px 7px\">' +\n '<span style=\"font-size: 12px; color: #858fa1\">{point.translatedName}</span></div>' +\n '<div style=\"font-size: 14px; color: #344563; margin: 6px 8px 0 8px;\">' +\n '<span style=\"color:{point.color}\">\\u25CF</span> {series.name}: <b>{point.value}</b></div>',\n },\n xAxis: {\n crosshair: true,\n },\n };\n return super.build(mergeDeep(defaultMapOptions, options));\n }\n\n static configureMap(series: SeriesOptionsType[], options: Options, color: ChartColor, labelDateFormat?: string) {\n super.configure(series, options, color, labelDateFormat);\n const colors = ChartColors.getChartColors(color);\n if (options.legend) {\n options.legend.enabled = true;\n }\n (options.colorAxis as ColorAxisOptions).minColor = colors[20];\n (options.colorAxis as ColorAxisOptions).maxColor = colors[100];\n }\n}\n","import { AfterViewChecked, Component, ElementRef, Input, OnChanges, SimpleChanges, ViewChild } from '@angular/core';\nimport { Options, SeriesMapOptions, mapChart } from 'highcharts/highmaps';\nimport { ChartColor } from '../chart-colors';\nimport { ChartMapOptions } from './chart-map-options.model';\n\n@Component({\n selector: 'ap-chart-map',\n templateUrl: './chart-map.component.html',\n standalone: true,\n})\nexport class ChartMapComponent implements AfterViewChecked, OnChanges {\n @ViewChild('chart') chartRef!: ElementRef;\n\n @Input() chartOptions: Options = {}; // https://api.highcharts.com/highcharts/\n @Input() color: ChartColor = ChartColor.ElectricBlue;\n @Input() labelDateFormat = '%m/%d';\n @Input({\n required: true,\n })\n series: SeriesMapOptions[] = [];\n\n private lastWidth = 0;\n\n ngOnChanges(changes: SimpleChanges): void {\n if ((changes.series && !changes.series.firstChange) || (changes.color && !changes.color.firstChange)) {\n this.initChart();\n }\n }\n\n ngAfterViewChecked() {\n if (this.chartRef && this.chartRef.nativeElement.clientWidth !== this.lastWidth) {\n this.lastWidth = this.chartRef.nativeElement.clientWidth;\n if (this.series && this.series.length) {\n this.initChart();\n }\n }\n }\n\n private initChart() {\n if (this.series) {\n this.chartOptions = ChartMapOptions.build(this.chartOptions);\n ChartMapOptions.configureMap(this.series, this.chartOptions, this.color, this.labelDateFormat);\n mapChart(this.chartRef.nativeElement, this.chartOptions);\n }\n }\n}\n","<div #chart></div>\n","/*\n * Public API Surface of ui-charts-map\n */\n\nexport { ChartMapComponent } from './src/lib/chart-map/chart-map.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agorapulse-ui-charts-map.mjs","sources":["../../../libs/ui-charts-map/src/lib/chart-colors.ts","../../../libs/ui-charts-map/src/lib/chart-options.ts","../../../libs/ui-charts-map/src/lib/chart-map/chart-map-options.model.ts","../../../libs/ui-charts-map/src/lib/chart-map/chart-map.component.ts","../../../libs/ui-charts-map/src/lib/chart-map/chart-map.component.html","../../../libs/ui-charts-map/index.ts","../../../libs/ui-charts-map/agorapulse-ui-charts-map.ts"],"sourcesContent":["export enum ChartColor {\n Grey,\n Orange,\n SoftBlue,\n ElectricBlue,\n Purple,\n Green,\n}\n\nexport class ChartColors {\n static readonly SOFT_BLUE_COLORS = {\n '10': '#EFF5FC',\n '20': '#DFEDFA',\n '40': '#C0DBF4',\n '60': '#A0C8EF',\n '85': '#78B1E8',\n '100': '#61A4E4',\n };\n static readonly ELECTRIC_BLUE_COLORS = {\n '10': '#e8f4ff',\n '20': '#d1e8ff',\n '40': '#a2d1ff',\n '60': '#74bbfe',\n '85': '#3a9efe',\n '100': '#178dfe',\n };\n static readonly ORANGE_COLORS = {\n '10': '#FFEFE9',\n '20': '#FFE1D4',\n '40': '#FFC2A8',\n '60': '#FFA47D',\n '85': '#FF7E46',\n '100': '#FF6726',\n };\n static readonly GREEN_COLORS = {\n '10': '#ECF7ED',\n '20': '#DAF1DD',\n '40': '#B5E3BB',\n '60': '#8FD498',\n '85': '#61C26D',\n '100': '#45B854',\n };\n static readonly PURPLE_COLORS = {\n '10': '#EFEDF8',\n '20': '#E0DDF2',\n '40': '#C1BBE6',\n '60': '#A398D9',\n '85': '#7C6DC9',\n '100': '#6554C0',\n };\n static readonly GREY_COLORS = {\n '10': '#EAECEF',\n '20': '#D6DAE0',\n '40': '#AEB5C1',\n '60': '#858FA1',\n '85': '#5D6A82',\n '100': '#344563',\n };\n\n static readonly BLACK_COLOR: string = '#000000';\n static readonly LIMIT_COLOR: string = '#E81313';\n static readonly WHITE_COLOR: string = '#FFFFFF';\n\n static getChartColors(color: ChartColor): { [shade: string]: string } {\n switch (color) {\n case ChartColor.Orange:\n return this.ORANGE_COLORS;\n case ChartColor.SoftBlue:\n return this.SOFT_BLUE_COLORS;\n case ChartColor.ElectricBlue:\n return this.ELECTRIC_BLUE_COLORS;\n case ChartColor.Purple:\n return this.PURPLE_COLORS;\n case ChartColor.Green:\n return this.GREEN_COLORS;\n default:\n return this.GREY_COLORS;\n }\n }\n\n static getColors(seriesCount: number, color: ChartColor): string[] {\n const colors = this.getChartColors(color);\n switch (seriesCount) {\n case 1:\n return [colors[100]];\n case 2:\n return [colors[40], colors[100]];\n case 3:\n return [colors[20], colors[60], colors[100]];\n case 4:\n return [colors[20], colors[40], colors[60], colors[100]];\n case 5:\n return [colors[10], colors[20], colors[40], colors[60], colors[100]];\n default:\n return [colors[20], colors[40], colors[60], colors[100]];\n }\n }\n}\n","import { dateFormat, Options, SeriesOptionsType } from 'highcharts';\nimport { ChartColor, ChartColors } from './chart-colors';\n\nexport class ChartOptions {\n static readonly DEFAULT_DATE_FORMAT: string = '%A, %b %e, %Y';\n static readonly DEFAULT_OPTIONS: Options = {\n /*lang: {\n decimalPoint: (manager && manager.locale !== 'en') ? ',' : '.',\n resetZoom: resetZoomLabel,\n resetZoomTitle: resetZoomHtmlTitle,\n shortMonths: [\n shortJanuary, shortFebruary, shortMarch, shortApril, shortMay, shortJune,\n shortJuly, shortAugust, shortSeptember, shortOctober, shortNovember, shortDecember\n ],\n thousandsSep: (manager && manager.locale !== 'en') ? ' ' : ',',\n weekdays: this.weekDays,\n zoomIn: zoomInHtmlTitle,\n zoomOut: zoomOutHtmlTitle\n },*/\n chart: {\n spacingRight: 20,\n zooming: {\n type: 'xy',\n resetButton: {\n theme: {\n fill: ChartColors.WHITE_COLOR,\n r: 4,\n style: {\n color: ChartColors.GREY_COLORS[100],\n fontSize: '12px',\n },\n states: {\n hover: {\n fill: ChartColors.GREY_COLORS[10],\n },\n },\n },\n },\n },\n panning: {\n enabled: true,\n },\n panKey: 'shift',\n style: {\n fontFamily: \"Averta, 'Open Sans', Helvetica, sans-serif\",\n },\n },\n colorAxis: {\n labels: {\n style: {\n color: ChartColors.GREY_COLORS[60],\n },\n },\n },\n credits: {\n enabled: false,\n },\n legend: {\n borderWidth: 0,\n itemStyle: {\n color: ChartColors.GREY_COLORS[60],\n fontSize: '14px',\n fontWeight: 'normal',\n },\n itemHoverStyle: {\n color: ChartColors.GREY_COLORS[100],\n fontWeight: 'bold',\n },\n },\n plotOptions: {\n series: {\n states: {\n hover: {\n brightness: 0,\n },\n },\n connectNulls: true,\n lineWidth: 4,\n },\n },\n navigation: {\n buttonOptions: {\n y: 0,\n },\n },\n title: {\n text: undefined,\n },\n tooltip: {\n backgroundColor: ChartColors.WHITE_COLOR,\n borderRadius: 4,\n borderWidth: 0,\n dateTimeLabelFormats: {\n day: ChartOptions.DEFAULT_DATE_FORMAT,\n week: ChartOptions.DEFAULT_DATE_FORMAT,\n },\n shadow: {\n color: ChartColors.BLACK_COLOR,\n offsetX: 0,\n offsetY: 2,\n opacity: 0.02,\n width: 6,\n },\n split: false,\n shared: true,\n useHTML: true,\n headerFormat:\n `<div style=\"border-bottom: 1px solid ${ChartColors.GREY_COLORS[10]}; padding: 0 8px 7px\">` +\n `<span style=\"font-size: 12px; color: ${ChartColors.GREY_COLORS[60]}\">{point.key}</span></div>`,\n pointFormat:\n `<div style=\"font-size: 14px; color: ${ChartColors.GREY_COLORS[100]}; margin: 6px 8px 0 8px;\">` +\n '<span style=\"color:{point.color}\">\\u25CF</span> {series.name}: <b>{point.y}</b></div>',\n },\n xAxis: {\n gridLineColor: ChartColors.GREY_COLORS[10],\n lineColor: ChartColors.GREY_COLORS[10],\n tickColor: ChartColors.GREY_COLORS[10],\n gridLineWidth: 1,\n title: {\n text: null,\n },\n labels: {\n style: {\n color: ChartColors.GREY_COLORS[40],\n fontSize: '12px',\n },\n },\n },\n yAxis: {\n allowDecimals: false,\n gridLineColor: ChartColors.GREY_COLORS[10],\n lineColor: ChartColors.GREY_COLORS[10],\n gridLineWidth: 1,\n title: {\n text: null,\n },\n labels: {\n style: {\n color: ChartColors.GREY_COLORS[40],\n fontSize: '12px',\n },\n },\n },\n };\n\n static build(options: Options): Options {\n return mergeDeep(ChartOptions.DEFAULT_OPTIONS, options);\n }\n\n static configure(series: SeriesOptionsType[], options: Options, color: ChartColor, labelDateFormat?: string) {\n // Configure axis\n options.xAxis = mergeDeep(\n {\n labels: {\n formatter: function (): string {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return dateFormat(labelDateFormat ? labelDateFormat : '%m/%d', this.value);\n },\n },\n //minTickInterval: 24 * 60 * 60 * 1000 // One day\n },\n options.xAxis\n );\n // Configure series\n if (series && series.length) {\n options.series = series;\n if (options.legend) {\n options.legend.enabled = series.length >= 2;\n }\n options.colors = ChartColors.getColors(series.length, color);\n }\n }\n}\n\nexport function isObject(item: any) {\n return item && typeof item === 'object' && !Array.isArray(item);\n}\n\nexport function mergeDeep(target: any, source: any) {\n const output = deepCopy(target);\n if (isObject(target) && isObject(source)) {\n Object.keys(source).forEach(key => {\n if (isObject(source[key])) {\n if (!(key in target)) Object.assign(output, { [key]: source[key] });\n else output[key] = mergeDeep(target[key], source[key]);\n } else {\n Object.assign(output, { [key]: source[key] });\n }\n });\n }\n return output;\n}\n\nfunction deepCopy(source: any) {\n if (typeof source !== 'object' || source === null) {\n return source; // Return the value if source is not an object\n }\n // Create an array or object to hold the values\n const newObject = Array.isArray(source) ? [] : {};\n for (const key in source) {\n if (source.hasOwnProperty(key)) {\n // Recursively (deep) copy for nested objects, including arrays\n (newObject as any)[key] = deepCopy(source[key]);\n }\n }\n return newObject;\n}\n","import geojson from '@highcharts/map-collection/custom/world-highres2.geo.json';\nimport * as Highcharts from 'highcharts';\nimport { ColorAxisOptions, Options, SeriesOptionsType } from 'highcharts';\n\nimport { ChartColor, ChartColors } from '../chart-colors';\nimport { ChartOptions, mergeDeep } from '../chart-options';\n\nexport class ChartMapOptions extends ChartOptions {\n static override build(options: Highcharts.Options): Highcharts.Options {\n const defaultMapOptions: Highcharts.Options = {\n chart: {\n height: 450,\n map: geojson,\n },\n colorAxis: {\n allowDecimals: false,\n gridLineWidth: 2,\n gridLineColor: ChartColors.WHITE_COLOR,\n min: 0,\n tickAmount: 6,\n labels: {\n style: {\n fontSize: '12px',\n },\n },\n minColor: ChartColors.SOFT_BLUE_COLORS[20],\n maxColor: ChartColors.SOFT_BLUE_COLORS[100],\n },\n legend: {\n align: 'left',\n floating: true,\n },\n mapNavigation: {\n enabled: true,\n enableMouseWheelZoom: false,\n buttonOptions: {\n verticalAlign: 'middle',\n style: {\n color: ChartColors.GREY_COLORS[100],\n fontSize: '16px',\n fontWeight: 'normal',\n },\n theme: {\n fill: ChartColors.WHITE_COLOR,\n r: 4,\n states: {\n hover: {\n fill: ChartColors.GREY_COLORS[10],\n },\n },\n },\n },\n },\n plotOptions: {\n map: {\n borderColor: ChartColors.WHITE_COLOR,\n borderWidth: 0.5,\n nullColor: '#e2e2ea',\n },\n },\n tooltip: {\n headerFormat: '',\n pointFormat:\n '<div style=\"border-bottom: 1px solid #eaecef; padding: 0 8px 7px\">' +\n '<span style=\"font-size: 12px; color: #858fa1\">{point.translatedName}</span></div>' +\n '<div style=\"font-size: 14px; color: #344563; margin: 6px 8px 0 8px;\">' +\n '<span style=\"color:{point.color}\">\\u25CF</span> {series.name}: <b>{point.value}</b></div>',\n },\n xAxis: {\n crosshair: true,\n },\n };\n return super.build(mergeDeep(defaultMapOptions, options));\n }\n\n static configureMap(series: SeriesOptionsType[], options: Options, color: ChartColor, labelDateFormat?: string) {\n super.configure(series, options, color, labelDateFormat);\n const colors = ChartColors.getChartColors(color);\n if (options.legend) {\n options.legend.enabled = true;\n }\n (options.colorAxis as ColorAxisOptions).minColor = colors[20];\n (options.colorAxis as ColorAxisOptions).maxColor = colors[100];\n }\n}\n","import { Component, ElementRef, effect, input, signal, untracked, viewChild } from '@angular/core';\nimport { Options, SeriesMapOptions, mapChart } from 'highcharts/highmaps';\nimport { ChartColor } from '../chart-colors';\nimport { ChartMapOptions } from './chart-map-options.model';\n\n@Component({\n selector: 'ap-chart-map',\n templateUrl: './chart-map.component.html',\n standalone: true,\n})\nexport class ChartMapComponent {\n protected readonly chartRef = viewChild.required<ElementRef<HTMLDivElement>>('chart');\n\n readonly chartOptions = input<Options>({});\n readonly color = input<ChartColor>(ChartColor.ElectricBlue);\n readonly labelDateFormat = input<string>('%m/%d');\n readonly series = input.required<SeriesMapOptions[]>();\n\n private readonly lastWidth = signal<number>(0);\n private readonly chartInstance = signal<Highcharts.Chart | null>(null);\n\n constructor() {\n effect(() => {\n const seriesValue = this.series();\n const colorValue = this.color();\n const chartOptionsValue = this.chartOptions();\n const labelDateFormatValue = this.labelDateFormat();\n\n if (seriesValue.length > 0) {\n untracked(() => {\n this.initChart();\n });\n }\n });\n\n effect(() => {\n const chartElement = this.chartRef()?.nativeElement;\n if (!chartElement) return;\n\n const currentWidth = chartElement.clientWidth;\n if (currentWidth > 0 && currentWidth !== this.lastWidth()) {\n untracked(() => {\n this.lastWidth.set(currentWidth);\n });\n const seriesValue = this.series();\n if (seriesValue.length > 0) {\n untracked(() => {\n this.initChart();\n });\n }\n }\n });\n }\n\n private initChart(): void {\n const seriesValue = this.series();\n const chartElement = this.chartRef()?.nativeElement;\n\n if (!seriesValue.length || !chartElement) {\n return;\n }\n\n const currentChart = this.chartInstance();\n if (currentChart) {\n currentChart.destroy();\n }\n\n try {\n const builtOptions = ChartMapOptions.build(this.chartOptions());\n ChartMapOptions.configureMap(seriesValue, builtOptions, this.color(), this.labelDateFormat());\n\n const newChart = mapChart(chartElement, builtOptions);\n this.chartInstance.set(newChart);\n } catch (error) {\n console.error('Failed to initialize chart:', error);\n }\n }\n}\n","<div #chart></div>\n","/*\n * Public API Surface of ui-charts-map\n */\n\nexport { ChartMapComponent } from './src/lib/chart-map/chart-map.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ElementRef } from '@angular/core';
|
|
2
2
|
import { Options, SeriesMapOptions } from 'highcharts/highmaps';
|
|
3
3
|
import { ChartColor } from '../chart-colors';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class ChartMapComponent
|
|
6
|
-
chartRef: ElementRef
|
|
7
|
-
chartOptions: Options
|
|
8
|
-
color: ChartColor
|
|
9
|
-
labelDateFormat: string
|
|
10
|
-
series: SeriesMapOptions[]
|
|
11
|
-
private lastWidth;
|
|
12
|
-
|
|
13
|
-
|
|
5
|
+
export declare class ChartMapComponent {
|
|
6
|
+
protected readonly chartRef: import("@angular/core").Signal<ElementRef<HTMLDivElement>>;
|
|
7
|
+
readonly chartOptions: import("@angular/core").InputSignal<Options>;
|
|
8
|
+
readonly color: import("@angular/core").InputSignal<ChartColor>;
|
|
9
|
+
readonly labelDateFormat: import("@angular/core").InputSignal<string>;
|
|
10
|
+
readonly series: import("@angular/core").InputSignal<SeriesMapOptions[]>;
|
|
11
|
+
private readonly lastWidth;
|
|
12
|
+
private readonly chartInstance;
|
|
13
|
+
constructor();
|
|
14
14
|
private initChart;
|
|
15
15
|
static ɵfac: i0.ɵɵFactoryDeclaration<ChartMapComponent, never>;
|
|
16
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ChartMapComponent, "ap-chart-map", never, { "chartOptions": { "alias": "chartOptions"; "required": false; }; "color": { "alias": "color"; "required": false; }; "labelDateFormat": { "alias": "labelDateFormat"; "required": false; }; "series": { "alias": "series"; "required": true; }; }, {}, never, never, true, never>;
|
|
16
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ChartMapComponent, "ap-chart-map", never, { "chartOptions": { "alias": "chartOptions"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "labelDateFormat": { "alias": "labelDateFormat"; "required": false; "isSignal": true; }; "series": { "alias": "series"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
17
17
|
}
|
|
Binary file
|