@c8y/ngx-components 1024.19.5 → 1024.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/fesm2022/c8y-ngx-components-ai-agents-html.mjs +0 -9
  2. package/fesm2022/c8y-ngx-components-ai-agents-html.mjs.map +1 -1
  3. package/fesm2022/c8y-ngx-components-ai-agents-scada.mjs +0 -4
  4. package/fesm2022/c8y-ngx-components-ai-agents-scada.mjs.map +1 -1
  5. package/fesm2022/c8y-ngx-components-ai.mjs +10 -10
  6. package/fesm2022/c8y-ngx-components-ai.mjs.map +1 -1
  7. package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs +13 -9
  8. package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs.map +1 -1
  9. package/fesm2022/c8y-ngx-components-asset-properties.mjs +4 -3
  10. package/fesm2022/c8y-ngx-components-asset-properties.mjs.map +1 -1
  11. 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
  12. package/fesm2022/c8y-ngx-components-computed-asset-properties-c8y-ngx-components-computed-asset-properties-1WsTSnO_.mjs.map +1 -0
  13. 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
  14. 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
  15. 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
  16. 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
  17. package/fesm2022/c8y-ngx-components-computed-asset-properties.mjs +1 -1
  18. package/fesm2022/c8y-ngx-components-context-dashboard.mjs +30 -9
  19. package/fesm2022/c8y-ngx-components-context-dashboard.mjs.map +1 -1
  20. package/fesm2022/c8y-ngx-components-datapoint-library-details.mjs +2 -2
  21. package/fesm2022/c8y-ngx-components-datapoint-library-details.mjs.map +1 -1
  22. package/fesm2022/c8y-ngx-components-datapoint-library-list.mjs +12 -5
  23. package/fesm2022/c8y-ngx-components-datapoint-library-list.mjs.map +1 -1
  24. package/fesm2022/c8y-ngx-components-datapoint-selector.mjs +41 -12
  25. package/fesm2022/c8y-ngx-components-datapoint-selector.mjs.map +1 -1
  26. package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs +10 -6
  27. package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs.map +1 -1
  28. package/fesm2022/c8y-ngx-components-echart.mjs +38 -25
  29. package/fesm2022/c8y-ngx-components-echart.mjs.map +1 -1
  30. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs +21 -9
  31. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs.map +1 -1
  32. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-list.mjs +7 -4
  33. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-list.mjs.map +1 -1
  34. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-table.mjs +9 -5
  35. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-table.mjs.map +1 -1
  36. package/fesm2022/c8y-ngx-components-widgets-implementations-info-gauge.mjs +18 -12
  37. package/fesm2022/c8y-ngx-components-widgets-implementations-info-gauge.mjs.map +1 -1
  38. package/fesm2022/c8y-ngx-components-widgets-implementations-kpi.mjs +4 -3
  39. package/fesm2022/c8y-ngx-components-widgets-implementations-kpi.mjs.map +1 -1
  40. package/fesm2022/c8y-ngx-components-widgets-implementations-linear-gauge.mjs +1 -1
  41. package/fesm2022/c8y-ngx-components-widgets-implementations-linear-gauge.mjs.map +1 -1
  42. package/fesm2022/c8y-ngx-components-widgets-implementations-pie-chart.mjs +3 -3
  43. package/fesm2022/c8y-ngx-components-widgets-implementations-pie-chart.mjs.map +1 -1
  44. package/fesm2022/c8y-ngx-components.mjs +166 -29
  45. package/fesm2022/c8y-ngx-components.mjs.map +1 -1
  46. package/locales/locales.pot +6 -0
  47. package/package.json +1 -1
  48. package/types/c8y-ngx-components-ai-agents-html.d.ts.map +1 -1
  49. package/types/c8y-ngx-components-ai-agents-scada.d.ts.map +1 -1
  50. package/types/c8y-ngx-components-ai.d.ts +1 -1
  51. package/types/c8y-ngx-components-ai.d.ts.map +1 -1
  52. package/types/c8y-ngx-components-alarm-event-selector.d.ts.map +1 -1
  53. package/types/c8y-ngx-components-asset-properties.d.ts +0 -1
  54. package/types/c8y-ngx-components-asset-properties.d.ts.map +1 -1
  55. package/types/c8y-ngx-components-context-dashboard.d.ts +5 -0
  56. package/types/c8y-ngx-components-context-dashboard.d.ts.map +1 -1
  57. package/types/c8y-ngx-components-datapoint-library-list.d.ts.map +1 -1
  58. package/types/c8y-ngx-components-datapoint-selector.d.ts +13 -3
  59. package/types/c8y-ngx-components-datapoint-selector.d.ts.map +1 -1
  60. package/types/c8y-ngx-components-datapoints-export-selector.d.ts +2 -0
  61. package/types/c8y-ngx-components-datapoints-export-selector.d.ts.map +1 -1
  62. package/types/c8y-ngx-components-echart.d.ts +1 -0
  63. package/types/c8y-ngx-components-echart.d.ts.map +1 -1
  64. package/types/c8y-ngx-components-widgets-implementations-datapoints-graph.d.ts +7 -0
  65. package/types/c8y-ngx-components-widgets-implementations-datapoints-graph.d.ts.map +1 -1
  66. package/types/c8y-ngx-components-widgets-implementations-datapoints-list.d.ts.map +1 -1
  67. package/types/c8y-ngx-components-widgets-implementations-datapoints-table.d.ts.map +1 -1
  68. package/types/c8y-ngx-components-widgets-implementations-info-gauge.d.ts.map +1 -1
  69. package/types/c8y-ngx-components-widgets-implementations-kpi.d.ts.map +1 -1
  70. package/types/c8y-ngx-components-widgets-implementations-pie-chart.d.ts.map +1 -1
  71. package/types/c8y-ngx-components.d.ts +111 -5
  72. package/types/c8y-ngx-components.d.ts.map +1 -1
  73. package/fesm2022/c8y-ngx-components-computed-asset-properties-c8y-ngx-components-computed-asset-properties-CG8k844T.mjs.map +0 -1
@@ -2,7 +2,7 @@ import * as i0 from '@angular/core';
2
2
  import { Injectable, input, output, ChangeDetectionStrategy, Component, InjectionToken, Inject, computed, viewChild } from '@angular/core';
3
3
  import * as i2 from '@c8y/client';
4
4
  import * as i1 from '@c8y/ngx-components';
5
- import { AGGREGATION_VALUES, CoreModule, ModalModule, IconDirective, C8yTranslatePipe, CommonModule } from '@c8y/ngx-components';
5
+ import { translateDatapointLabel, translateDatapointUnit, AGGREGATION_VALUES, CoreModule, ModalModule, IconDirective, C8yTranslatePipe, CommonModule } from '@c8y/ngx-components';
6
6
  import { gettext } from '@c8y/ngx-components/gettext';
7
7
  import * as i3 from '@ngx-translate/core';
8
8
  import JSZip from 'jszip';
@@ -538,6 +538,7 @@ class DataFetchingService {
538
538
  async fetchAndPrepareListExportData(exportConfig) {
539
539
  const { datapointDetails, dateFrom, dateTo } = exportConfig;
540
540
  const dataPromises = datapointDetails.map(async (detail) => {
541
+ const label = translateDatapointLabel(detail.label, this.translateService) || this.getSeriesName(detail);
541
542
  try {
542
543
  // Fetch the latest measurement within the date range
543
544
  const filter = {
@@ -551,17 +552,20 @@ class DataFetchingService {
551
552
  };
552
553
  const { data } = await this.measurementService.list(filter);
553
554
  const measurement = data && data.length > 0 ? data[0] : null;
554
- // Extract value and unit from measurement
555
+ // Extract value and unit from measurement. The unit configured for the data point wins:
556
+ // that is the one a tenant registers a translation for, the measurement only reports
557
+ // whatever the device sent.
555
558
  let current = null;
556
- let unit;
559
+ let rawUnit = detail.unit;
557
560
  if (measurement) {
558
561
  const fragment = measurement[detail.valueFragmentType];
559
562
  if (fragment && fragment[detail.valueFragmentSeries]) {
560
563
  const seriesData = fragment[detail.valueFragmentSeries];
561
564
  current = seriesData.value != null ? Number(seriesData.value) : null;
562
- unit = seriesData.unit;
565
+ rawUnit = rawUnit || seriesData.unit;
563
566
  }
564
567
  }
568
+ const unit = translateDatapointUnit(rawUnit, this.translateService);
565
569
  // Calculate derived values using target from detail
566
570
  const target = detail.target;
567
571
  const diff = current !== null && current !== undefined && target !== null && target !== undefined
@@ -570,7 +574,7 @@ class DataFetchingService {
570
574
  const diffPercent = target !== null && target !== undefined && diff !== null ? (diff / target) * 100 : null;
571
575
  return {
572
576
  ...detail,
573
- label: detail.label || this.getSeriesName(detail),
577
+ label,
574
578
  target: target ?? null,
575
579
  current,
576
580
  diff,
@@ -581,7 +585,7 @@ class DataFetchingService {
581
585
  catch {
582
586
  return {
583
587
  ...detail,
584
- label: detail.label || this.getSeriesName(detail),
588
+ label,
585
589
  target: detail.target ?? null,
586
590
  current: null,
587
591
  diff: null,