@c8y/ngx-components 1024.19.3 → 1024.19.10
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/c8y-ngx-components-ai-agents-html.mjs +0 -9
- package/fesm2022/c8y-ngx-components-ai-agents-html.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-ai-agents-scada.mjs +0 -4
- package/fesm2022/c8y-ngx-components-ai-agents-scada.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-ai.mjs +10 -10
- package/fesm2022/c8y-ngx-components-ai.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs +13 -9
- package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-alarms.mjs +2 -2
- package/fesm2022/c8y-ngx-components-alarms.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-asset-properties.mjs +4 -3
- package/fesm2022/c8y-ngx-components-asset-properties.mjs.map +1 -1
- package/fesm2022/{c8y-ngx-components-computed-asset-properties-c8y-ngx-components-computed-asset-properties-CG8k844T.mjs → c8y-ngx-components-computed-asset-properties-c8y-ngx-components-computed-asset-properties-1WsTSnO_.mjs} +9 -5
- package/fesm2022/c8y-ngx-components-computed-asset-properties-c8y-ngx-components-computed-asset-properties-1WsTSnO_.mjs.map +1 -0
- package/fesm2022/{c8y-ngx-components-computed-asset-properties-fieldbus-item-status-config.component-CTXM7Dkc.mjs → c8y-ngx-components-computed-asset-properties-fieldbus-item-status-config.component-C3KZGqlc.mjs} +2 -2
- package/fesm2022/{c8y-ngx-components-computed-asset-properties-fieldbus-item-status-config.component-CTXM7Dkc.mjs.map → c8y-ngx-components-computed-asset-properties-fieldbus-item-status-config.component-C3KZGqlc.mjs.map} +1 -1
- package/fesm2022/{c8y-ngx-components-computed-asset-properties-last-measurement-config.component-Da3QVvuf.mjs → c8y-ngx-components-computed-asset-properties-last-measurement-config.component-DOmwNU6m.mjs} +2 -2
- package/fesm2022/{c8y-ngx-components-computed-asset-properties-last-measurement-config.component-Da3QVvuf.mjs.map → c8y-ngx-components-computed-asset-properties-last-measurement-config.component-DOmwNU6m.mjs.map} +1 -1
- package/fesm2022/c8y-ngx-components-computed-asset-properties.mjs +1 -1
- package/fesm2022/c8y-ngx-components-context-dashboard.mjs +24 -5
- package/fesm2022/c8y-ngx-components-context-dashboard.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs +2 -2
- package/fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoint-library-details.mjs +2 -2
- package/fesm2022/c8y-ngx-components-datapoint-library-details.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoint-library-list.mjs +12 -5
- package/fesm2022/c8y-ngx-components-datapoint-library-list.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoint-selector.mjs +41 -12
- package/fesm2022/c8y-ngx-components-datapoint-selector.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs +10 -6
- package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-echart.mjs +39 -25
- package/fesm2022/c8y-ngx-components-echart.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs +21 -9
- package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-list.mjs +7 -4
- package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-list.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-table.mjs +9 -5
- package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-table.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-info-gauge.mjs +6 -2
- package/fesm2022/c8y-ngx-components-widgets-implementations-info-gauge.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-kpi.mjs +4 -3
- package/fesm2022/c8y-ngx-components-widgets-implementations-kpi.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-pie-chart.mjs +3 -3
- package/fesm2022/c8y-ngx-components-widgets-implementations-pie-chart.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components.mjs +158 -23
- package/fesm2022/c8y-ngx-components.mjs.map +1 -1
- package/package.json +1 -1
- package/types/c8y-ngx-components-ai-agents-html.d.ts.map +1 -1
- package/types/c8y-ngx-components-ai-agents-scada.d.ts.map +1 -1
- package/types/c8y-ngx-components-ai.d.ts +1 -1
- package/types/c8y-ngx-components-ai.d.ts.map +1 -1
- package/types/c8y-ngx-components-alarm-event-selector.d.ts.map +1 -1
- package/types/c8y-ngx-components-asset-properties.d.ts +0 -1
- package/types/c8y-ngx-components-asset-properties.d.ts.map +1 -1
- package/types/c8y-ngx-components-context-dashboard.d.ts +5 -0
- package/types/c8y-ngx-components-context-dashboard.d.ts.map +1 -1
- package/types/c8y-ngx-components-datapoint-library-list.d.ts.map +1 -1
- package/types/c8y-ngx-components-datapoint-selector.d.ts +13 -3
- package/types/c8y-ngx-components-datapoint-selector.d.ts.map +1 -1
- package/types/c8y-ngx-components-datapoints-export-selector.d.ts +2 -0
- package/types/c8y-ngx-components-datapoints-export-selector.d.ts.map +1 -1
- package/types/c8y-ngx-components-echart.d.ts +1 -0
- package/types/c8y-ngx-components-echart.d.ts.map +1 -1
- package/types/c8y-ngx-components-widgets-implementations-datapoints-graph.d.ts +7 -0
- package/types/c8y-ngx-components-widgets-implementations-datapoints-graph.d.ts.map +1 -1
- package/types/c8y-ngx-components-widgets-implementations-datapoints-list.d.ts.map +1 -1
- package/types/c8y-ngx-components-widgets-implementations-datapoints-table.d.ts.map +1 -1
- package/types/c8y-ngx-components-widgets-implementations-info-gauge.d.ts.map +1 -1
- package/types/c8y-ngx-components-widgets-implementations-kpi.d.ts.map +1 -1
- package/types/c8y-ngx-components-widgets-implementations-pie-chart.d.ts.map +1 -1
- package/types/c8y-ngx-components.d.ts +110 -4
- package/types/c8y-ngx-components.d.ts.map +1 -1
- package/fesm2022/c8y-ngx-components-computed-asset-properties-c8y-ngx-components-computed-asset-properties-CG8k844T.mjs.map +0 -1
|
@@ -5,7 +5,7 @@ import { isEqual, cloneDeep } from 'lodash-es';
|
|
|
5
5
|
import { from, merge, interval, BehaviorSubject, of, lastValueFrom, defer, forkJoin } from 'rxjs';
|
|
6
6
|
import { mergeMap, map, tap, throttleTime, buffer, switchMap } from 'rxjs/operators';
|
|
7
7
|
import * as i1$1 from '@c8y/ngx-components';
|
|
8
|
-
import { CommonModule, FormsModule, IconDirective, C8yTranslatePipe, WidgetTimeContextMediatorService, WidgetTimeContextDateRangeService, ThemeSwitcherService, DismissAlertStrategy, DynamicComponentAlert, CoreModule, MeasurementRealtimeService, AlarmRealtimeService, EventRealtimeService } from '@c8y/ngx-components';
|
|
8
|
+
import { translateDatapointUnit, translateDatapointLabel, CommonModule, FormsModule, IconDirective, C8yTranslatePipe, DatapointLabelPipe, WidgetTimeContextMediatorService, WidgetTimeContextDateRangeService, ThemeSwitcherService, DismissAlertStrategy, DynamicComponentAlert, CoreModule, MeasurementRealtimeService, AlarmRealtimeService, EventRealtimeService } from '@c8y/ngx-components';
|
|
9
9
|
import chroma from 'chroma-js';
|
|
10
10
|
import * as echarts from 'echarts';
|
|
11
11
|
import * as i1 from '@ngx-translate/core';
|
|
@@ -17,7 +17,7 @@ import * as i4 from '@c8y/ngx-components/alarms';
|
|
|
17
17
|
import { AlarmsModule, AlarmSeverityToIconPipe, AlarmSeverityToLabelPipe } from '@c8y/ngx-components/alarms';
|
|
18
18
|
import { INTERVALS } from '@c8y/ngx-components/interval-picker';
|
|
19
19
|
import * as i1$2 from '@angular/common';
|
|
20
|
-
import {
|
|
20
|
+
import { CommonModule as CommonModule$1 } from '@angular/common';
|
|
21
21
|
import * as i2$1 from 'ngx-echarts';
|
|
22
22
|
import { NgxEchartsModule, NGX_ECHARTS_CONFIG } from 'ngx-echarts';
|
|
23
23
|
import { TooltipModule } from 'ngx-bootstrap/tooltip';
|
|
@@ -120,7 +120,7 @@ class YAxisService {
|
|
|
120
120
|
if (YAxisOptions.forceMergeDatapoints) {
|
|
121
121
|
return {
|
|
122
122
|
name: Array.from(datapointsWithValues)
|
|
123
|
-
.map((dp, index) => `{${index}|${dp.
|
|
123
|
+
.map((dp, index) => `{${index}|${translateDatapointUnit(dp, this.translate)}}`)
|
|
124
124
|
.join(' /'),
|
|
125
125
|
nameLocation: 'middle',
|
|
126
126
|
nameTruncate: {
|
|
@@ -295,9 +295,11 @@ class YAxisService {
|
|
|
295
295
|
return '';
|
|
296
296
|
}
|
|
297
297
|
if (!options.mergeMatchingDatapoints || !isFirstOccurrence) {
|
|
298
|
-
return `${dp.
|
|
298
|
+
return `${translateDatapointLabel(dp, this.translate)} [${translateDatapointUnit(dp, this.translate)}]`;
|
|
299
299
|
}
|
|
300
|
-
return uniqueUnitDps
|
|
300
|
+
return uniqueUnitDps
|
|
301
|
+
.map((dp, index) => `{${index}|${translateDatapointUnit(dp, this.translate)}}`)
|
|
302
|
+
.join(' / ');
|
|
301
303
|
}
|
|
302
304
|
getDecimalPlaces(num) {
|
|
303
305
|
const numStr = num.toString();
|
|
@@ -412,6 +414,7 @@ class ChartTypesService {
|
|
|
412
414
|
color: color
|
|
413
415
|
},
|
|
414
416
|
emphasis: {
|
|
417
|
+
disabled: true,
|
|
415
418
|
scale: 1.2,
|
|
416
419
|
itemStyle: {
|
|
417
420
|
color: color
|
|
@@ -1629,6 +1632,15 @@ class EchartsOptionsService {
|
|
|
1629
1632
|
}
|
|
1630
1633
|
}, []);
|
|
1631
1634
|
}
|
|
1635
|
+
/**
|
|
1636
|
+
* Builds the display name of a datapoint. Passing the whole datapoint lets `translateDatapointLabel`
|
|
1637
|
+
* apply its `fragment → series` fallback, so an unlabeled datapoint still gets an informative
|
|
1638
|
+
* name. `DatapointsGraphWidgetViewComponent` derives the same string the same way, since
|
|
1639
|
+
* `toggleSeriesByName` matches series on exact string equality.
|
|
1640
|
+
*/
|
|
1641
|
+
getTranslatedLabel(dp) {
|
|
1642
|
+
return translateDatapointLabel(dp, this.translate);
|
|
1643
|
+
}
|
|
1632
1644
|
getSingleSeries(dp, renderType, idx, isMinMaxChart = false, displayOptions, seriesType = '', multiRenderTypeLabel) {
|
|
1633
1645
|
const datapointId = dp.__target?.id + dp.fragment + dp.series;
|
|
1634
1646
|
const isLine = dp.lineType === 'line' ||
|
|
@@ -1654,15 +1666,17 @@ class EchartsOptionsService {
|
|
|
1654
1666
|
const displayType = isMinMaxChart && renderType === 'min' ? 'min — max' : effectiveLabel;
|
|
1655
1667
|
return {
|
|
1656
1668
|
datapointId,
|
|
1657
|
-
datapointUnit: renderType !== 'count' ? dp.
|
|
1669
|
+
datapointUnit: renderType !== 'count' ? translateDatapointUnit(dp, this.translate) : '',
|
|
1658
1670
|
// 'id' property is needed as 'seriesId' in tooltip formatter
|
|
1659
1671
|
id: isMinMaxChart
|
|
1660
1672
|
? `${datapointId}/${renderType}${seriesType}`
|
|
1661
1673
|
: `${datapointId}${seriesType}${renderTypeSuffix}`,
|
|
1662
1674
|
name: displayType
|
|
1663
|
-
? `[${displayType}] ${dp
|
|
1664
|
-
: `${dp
|
|
1665
|
-
datapointLabel: displayType
|
|
1675
|
+
? `[${displayType}] ${this.getTranslatedLabel(dp)} (${dp.__target?.['name']})`
|
|
1676
|
+
: `${this.getTranslatedLabel(dp)} (${dp.__target?.['name']})`,
|
|
1677
|
+
datapointLabel: displayType
|
|
1678
|
+
? `[${displayType}] ${this.getTranslatedLabel(dp)}`
|
|
1679
|
+
: this.getTranslatedLabel(dp),
|
|
1666
1680
|
data,
|
|
1667
1681
|
...(displayOptions.forceMergeDatapoints ? {} : { yAxisIndex: idx }),
|
|
1668
1682
|
...this.chartTypesService.getSeriesOptions(dpForSeries, isMinMaxChart, renderType),
|
|
@@ -1713,7 +1727,7 @@ class EchartsOptionsService {
|
|
|
1713
1727
|
datapointId,
|
|
1714
1728
|
datapointUnit: '',
|
|
1715
1729
|
id: `${datapointId}/band-max`,
|
|
1716
|
-
name: `[band-max] ${dp
|
|
1730
|
+
name: `[band-max] ${this.getTranslatedLabel(dp)} (${dp.__target?.['name']})`,
|
|
1717
1731
|
datapointLabel: '',
|
|
1718
1732
|
typeOfSeries: 'fake',
|
|
1719
1733
|
type: 'line',
|
|
@@ -1729,10 +1743,10 @@ class EchartsOptionsService {
|
|
|
1729
1743
|
// a negative diff on a positive sum (or vice versa), leaving it at its raw value.
|
|
1730
1744
|
const bandMinSeries = {
|
|
1731
1745
|
datapointId,
|
|
1732
|
-
datapointUnit: dp.
|
|
1746
|
+
datapointUnit: translateDatapointUnit(dp, this.translate),
|
|
1733
1747
|
id: `${datapointId}/band-area`,
|
|
1734
|
-
name: `[band] ${dp
|
|
1735
|
-
datapointLabel: `[band] ${dp
|
|
1748
|
+
name: `[band] ${this.getTranslatedLabel(dp)} (${dp.__target?.['name']})`,
|
|
1749
|
+
datapointLabel: `[band] ${this.getTranslatedLabel(dp)}`,
|
|
1736
1750
|
typeOfSeries: 'fake',
|
|
1737
1751
|
type: 'line',
|
|
1738
1752
|
stack: stackId,
|
|
@@ -1747,10 +1761,10 @@ class EchartsOptionsService {
|
|
|
1747
1761
|
// Visible max line — not stacked, drawn at actual maxVal.
|
|
1748
1762
|
const maxSeries = {
|
|
1749
1763
|
datapointId,
|
|
1750
|
-
datapointUnit: dp.
|
|
1764
|
+
datapointUnit: translateDatapointUnit(dp, this.translate),
|
|
1751
1765
|
id: `${datapointId}/max`,
|
|
1752
|
-
name: `[max] ${dp
|
|
1753
|
-
datapointLabel: `[max] ${dp
|
|
1766
|
+
name: `[max] ${this.getTranslatedLabel(dp)} (${dp.__target?.['name']})`,
|
|
1767
|
+
datapointLabel: `[max] ${this.getTranslatedLabel(dp)}`,
|
|
1754
1768
|
data: maxData,
|
|
1755
1769
|
...this.chartTypesService.getSeriesOptions({ ...dp, color: maxColor }, true, 'max'),
|
|
1756
1770
|
...yAxisIndex
|
|
@@ -1758,10 +1772,10 @@ class EchartsOptionsService {
|
|
|
1758
1772
|
// Visible min line — not stacked, drawn at actual minVal. Tooltip shows combined [min — max].
|
|
1759
1773
|
const minSeries = {
|
|
1760
1774
|
datapointId,
|
|
1761
|
-
datapointUnit: dp.
|
|
1775
|
+
datapointUnit: translateDatapointUnit(dp, this.translate),
|
|
1762
1776
|
id: `${datapointId}/min`,
|
|
1763
|
-
name: `[min — max] ${dp
|
|
1764
|
-
datapointLabel: `[min — max] ${dp
|
|
1777
|
+
name: `[min — max] ${this.getTranslatedLabel(dp)} (${dp.__target?.['name']})`,
|
|
1778
|
+
datapointLabel: `[min — max] ${this.getTranslatedLabel(dp)}`,
|
|
1765
1779
|
tooltipColor: bandColor,
|
|
1766
1780
|
data: minData,
|
|
1767
1781
|
...this.chartTypesService.getSeriesOptions({ ...dp, color: minColor }, true, 'min'),
|
|
@@ -2624,6 +2638,7 @@ class SelectAggregatedDatapointComponent {
|
|
|
2624
2638
|
this.value = null;
|
|
2625
2639
|
this.valueChange = new EventEmitter();
|
|
2626
2640
|
this.chartHelpersService = inject(ChartHelpersService);
|
|
2641
|
+
this.translate = inject(TranslateService);
|
|
2627
2642
|
this.selectedDatapointLabel = gettext('Select data point');
|
|
2628
2643
|
this.selectedDatapointColor = '';
|
|
2629
2644
|
}
|
|
@@ -2646,15 +2661,15 @@ class SelectAggregatedDatapointComponent {
|
|
|
2646
2661
|
}
|
|
2647
2662
|
const found = this.chartHelpersService.findMatchingDatapoint(this.activeDatapoints, this.value);
|
|
2648
2663
|
if (this.value && !found) {
|
|
2649
|
-
this.selectedDatapointLabel = this.value.
|
|
2664
|
+
this.selectedDatapointLabel = translateDatapointLabel(this.value, this.translate);
|
|
2650
2665
|
this.selectedDatapointColor = this.value.color || '';
|
|
2651
2666
|
return;
|
|
2652
2667
|
}
|
|
2653
|
-
this.selectedDatapointLabel = found
|
|
2668
|
+
this.selectedDatapointLabel = translateDatapointLabel(found, this.translate);
|
|
2654
2669
|
this.selectedDatapointColor = found?.color || '';
|
|
2655
2670
|
}
|
|
2656
2671
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.19", ngImport: i0, type: SelectAggregatedDatapointComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2657
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2672
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.19", type: SelectAggregatedDatapointComponent, isStandalone: true, selector: "c8y-select-aggregated-datapoint", inputs: { activeDatapoints: "activeDatapoints", value: "value" }, outputs: { valueChange: "valueChange" }, host: { classAttribute: "d-contents" }, usesOnChanges: true, ngImport: i0, template: "@if (activeDatapoints?.length > 0) {\n <div\n class=\"dropdown dropup\"\n dropdown\n #datapointDropdown=\"bs-dropdown\"\n [cdkTrapFocus]=\"datapointDropdown.isOpen\"\n >\n <ng-template #selectedDatapoint>\n <div class=\"text-left\">\n <strong>{{ selectedDatapointLabel }}</strong>\n <br />\n {{ 'Click to change' | translate }}\n </div>\n </ng-template>\n <button\n class=\"btn btn-default d-flex a-i-center dropdown-toggle c8y-dropdown\"\n title=\"{{\n 'Select a data point to view its aggregated values in the time slider.' | translate\n }}\"\n type=\"button\"\n dropdownToggle\n >\n <span\n [style.background-color]=\"selectedDatapointColor\"\n style=\"display: inline-block; width: 16px; height: 16px; border-radius: 50%\"\n ></span>\n <span class=\"caret\"></span>\n </button>\n <ul\n class=\"dropdown-menu dropdown-menu-right\"\n *dropdownMenu\n >\n @for (datapoint of activeDatapoints; track datapoint) {\n <li>\n <button\n class=\"p-r-8\"\n type=\"button\"\n (click)=\"changeDatapointSelection(datapoint)\"\n >\n <span\n class=\"d-inline-block m-r-4\"\n [style.background-color]=\"datapoint?.color\"\n style=\"width: 16px; height: 16px; border-radius: 50%\"\n ></span>\n <span\n class=\"text-truncate\"\n style=\"max-width: 220px !important\"\n title=\"{{ datapoint | datapointLabel }}\"\n >\n {{ datapoint | datapointLabel }}\n </span>\n @if (\n datapoint.__target.id === value?.__target.id &&\n datapoint.fragment === value?.fragment &&\n datapoint.series === value?.series\n ) {\n <span class=\"m-l-auto flex-no-shrink\">\n <i\n class=\"text-success h4\"\n [c8yIcon]=\"'check'\"\n ></i>\n </span>\n }\n </button>\n </li>\n }\n </ul>\n </div>\n}\n<button\n class=\"btn-help\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'Select a data point to view its aggregated values in the time slider.' | translate\n }}\"\n placement=\"left\"\n triggers=\"focus\"\n container=\"body\"\n></button>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: PopoverModule }, { kind: "directive", type: i1$4.PopoverDirective, selector: "[popover]", inputs: ["adaptivePosition", "boundariesElement", "popover", "popoverContext", "popoverTitle", "placement", "outsideClick", "triggers", "container", "containerClass", "isOpen", "delay"], outputs: ["onShown", "onHidden"], exportAs: ["bs-popover"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "ngmodule", type: BsDropdownModule }, { kind: "directive", type: i2.BsDropdownMenuDirective, selector: "[bsDropdownMenu],[dropdownMenu]", exportAs: ["bs-dropdown-menu"] }, { kind: "directive", type: i2.BsDropdownToggleDirective, selector: "[bsDropdownToggle],[dropdownToggle]", exportAs: ["bs-dropdown-toggle"] }, { kind: "directive", type: i2.BsDropdownDirective, selector: "[bsDropdown], [dropdown]", inputs: ["placement", "triggers", "container", "dropup", "autoClose", "isAnimated", "insideClick", "isDisabled", "isOpen"], outputs: ["isOpenChange", "onShown", "onHidden"], exportAs: ["bs-dropdown"] }, { kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i3.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: DatapointLabelPipe, name: "datapointLabel" }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
|
|
2658
2673
|
}
|
|
2659
2674
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.19", ngImport: i0, type: SelectAggregatedDatapointComponent, decorators: [{
|
|
2660
2675
|
type: Component,
|
|
@@ -2668,9 +2683,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.19", ngImpo
|
|
|
2668
2683
|
BsDropdownModule,
|
|
2669
2684
|
A11yModule,
|
|
2670
2685
|
IconDirective,
|
|
2671
|
-
|
|
2672
|
-
|
|
2673
|
-
], changeDetection: ChangeDetectionStrategy.Eager, template: "<div\n class=\"dropdown dropup\"\n dropdown\n #datapointDropdown=\"bs-dropdown\"\n [cdkTrapFocus]=\"datapointDropdown.isOpen\"\n *ngIf=\"activeDatapoints?.length > 0\"\n>\n <ng-template #selectedDatapoint>\n <div class=\"text-left\">\n <strong>{{ selectedDatapointLabel }}</strong>\n <br />\n {{ 'Click to change' | translate }}\n </div>\n </ng-template>\n <button\n class=\"btn btn-default d-flex a-i-center dropdown-toggle c8y-dropdown\"\n title=\"{{'Select a data point to view its aggregated values in the time slider.' | translate }}\"\n type=\"button\"\n dropdownToggle\n >\n <span\n [style.background-color]=\"selectedDatapointColor\"\n style=\"display: inline-block; width: 16px; height: 16px; border-radius: 50%\"\n ></span>\n <span class=\"caret\"></span>\n </button>\n <ul\n class=\"dropdown-menu dropdown-menu-right\"\n *dropdownMenu\n >\n <li *ngFor=\"let datapoint of activeDatapoints\">\n <button\n class=\"p-r-8\"\n type=\"button\"\n (click)=\"changeDatapointSelection(datapoint)\"\n >\n <span\n class=\"d-inline-block m-r-4\"\n [style.background-color]=\"datapoint?.color\"\n style=\"width: 16px; height: 16px; border-radius: 50%\"\n ></span>\n <span class=\"text-truncate\" style=\"max-width:220px!important\" title=\"{{ datapoint?.label || `${datapoint?.fragment}-${datapoint?.series}` }}\">\n {{ datapoint?.label || `${datapoint?.fragment}-${datapoint?.series}` }}\n </span>\n <span\n class=\"m-l-auto flex-no-shrink\"\n *ngIf=\"\n datapoint.__target.id === value?.__target.id &&\n datapoint.fragment === value?.fragment &&\n datapoint.series === value?.series\n \"\n >\n <i\n class=\"text-success h4\"\n [c8yIcon]=\"'check'\"\n ></i>\n </span>\n </button>\n </li>\n </ul>\n</div>\n<button\n class=\"btn-help\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'Select a data point to view its aggregated values in the time slider.' | translate\n }}\"\n placement=\"left\"\n triggers=\"focus\"\n container=\"body\"\n></button>\n" }]
|
|
2686
|
+
DatapointLabelPipe
|
|
2687
|
+
], changeDetection: ChangeDetectionStrategy.Eager, template: "@if (activeDatapoints?.length > 0) {\n <div\n class=\"dropdown dropup\"\n dropdown\n #datapointDropdown=\"bs-dropdown\"\n [cdkTrapFocus]=\"datapointDropdown.isOpen\"\n >\n <ng-template #selectedDatapoint>\n <div class=\"text-left\">\n <strong>{{ selectedDatapointLabel }}</strong>\n <br />\n {{ 'Click to change' | translate }}\n </div>\n </ng-template>\n <button\n class=\"btn btn-default d-flex a-i-center dropdown-toggle c8y-dropdown\"\n title=\"{{\n 'Select a data point to view its aggregated values in the time slider.' | translate\n }}\"\n type=\"button\"\n dropdownToggle\n >\n <span\n [style.background-color]=\"selectedDatapointColor\"\n style=\"display: inline-block; width: 16px; height: 16px; border-radius: 50%\"\n ></span>\n <span class=\"caret\"></span>\n </button>\n <ul\n class=\"dropdown-menu dropdown-menu-right\"\n *dropdownMenu\n >\n @for (datapoint of activeDatapoints; track datapoint) {\n <li>\n <button\n class=\"p-r-8\"\n type=\"button\"\n (click)=\"changeDatapointSelection(datapoint)\"\n >\n <span\n class=\"d-inline-block m-r-4\"\n [style.background-color]=\"datapoint?.color\"\n style=\"width: 16px; height: 16px; border-radius: 50%\"\n ></span>\n <span\n class=\"text-truncate\"\n style=\"max-width: 220px !important\"\n title=\"{{ datapoint | datapointLabel }}\"\n >\n {{ datapoint | datapointLabel }}\n </span>\n @if (\n datapoint.__target.id === value?.__target.id &&\n datapoint.fragment === value?.fragment &&\n datapoint.series === value?.series\n ) {\n <span class=\"m-l-auto flex-no-shrink\">\n <i\n class=\"text-success h4\"\n [c8yIcon]=\"'check'\"\n ></i>\n </span>\n }\n </button>\n </li>\n }\n </ul>\n </div>\n}\n<button\n class=\"btn-help\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'Select a data point to view its aggregated values in the time slider.' | translate\n }}\"\n placement=\"left\"\n triggers=\"focus\"\n container=\"body\"\n></button>\n" }]
|
|
2674
2688
|
}], propDecorators: { activeDatapoints: [{
|
|
2675
2689
|
type: Input
|
|
2676
2690
|
}], value: [{
|