UI: Fixed mutation default widget settings in advanced mode
This commit is contained in:
		
							parent
							
								
									b9083a7cd9
								
							
						
					
					
						commit
						506c0927f6
					
				@ -40,7 +40,7 @@ export class AlarmCountWidgetSettingsComponent extends WidgetSettingsComponent {
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...countDefaultSettings(true)};
 | 
					    return countDefaultSettings(true);
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -56,7 +56,7 @@ export class ActionButtonWidgetSettingsComponent extends WidgetSettingsComponent
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...actionButtonDefaultSettings};
 | 
					    return actionButtonDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -54,7 +54,7 @@ export class CommandButtonWidgetSettingsComponent extends WidgetSettingsComponen
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...commandButtonDefaultSettings};
 | 
					    return commandButtonDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -61,7 +61,7 @@ export class PowerButtonWidgetSettingsComponent extends WidgetSettingsComponent
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...powerButtonDefaultSettings};
 | 
					    return powerButtonDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -77,7 +77,7 @@ export class SegmentedButtonWidgetSettingsComponent extends WidgetSettingsCompon
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...segmentedButtonDefaultSettings};
 | 
					    return segmentedButtonDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -55,7 +55,7 @@ export class ToggleButtonWidgetSettingsComponent extends WidgetSettingsComponent
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...toggleButtonDefaultSettings};
 | 
					    return toggleButtonDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -24,7 +24,6 @@ import {
 | 
				
			|||||||
  AggregatedValueCardKeyPosition,
 | 
					  AggregatedValueCardKeyPosition,
 | 
				
			||||||
  aggregatedValueCardKeyPositionTranslations
 | 
					  aggregatedValueCardKeyPositionTranslations
 | 
				
			||||||
} from '@home/components/widget/lib/cards/aggregated-value-card.models';
 | 
					} from '@home/components/widget/lib/cards/aggregated-value-card.models';
 | 
				
			||||||
import { constantColor } from '@shared/models/widget-settings.models';
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
@Component({
 | 
					@Component({
 | 
				
			||||||
  selector: 'tb-aggregated-value-card-key-settings',
 | 
					  selector: 'tb-aggregated-value-card-key-settings',
 | 
				
			||||||
@ -50,7 +49,7 @@ export class AggregatedValueCardKeySettingsComponent extends WidgetSettingsCompo
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...aggregatedValueCardDefaultKeySettings};
 | 
					    return aggregatedValueCardDefaultKeySettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -44,7 +44,7 @@ export class AggregatedValueCardWidgetSettingsComponent extends WidgetSettingsCo
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...aggregatedValueCardDefaultSettings};
 | 
					    return aggregatedValueCardDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -40,7 +40,7 @@ export class LabelCardWidgetSettingsComponent extends WidgetSettingsComponent {
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...labelCardWidgetDefaultSettings};
 | 
					    return labelCardWidgetDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -43,7 +43,7 @@ export class LabelValueCardWidgetSettingsComponent extends WidgetSettingsCompone
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...labelValueCardWidgetDefaultSettings};
 | 
					    return labelValueCardWidgetDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -15,7 +15,7 @@
 | 
				
			|||||||
///
 | 
					///
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import { Component } from "@angular/core";
 | 
					import { Component } from "@angular/core";
 | 
				
			||||||
import { UntypedFormBuilder, UntypedFormGroup, Validators } from "@angular/forms";
 | 
					import { UntypedFormBuilder, UntypedFormGroup } from "@angular/forms";
 | 
				
			||||||
import { WidgetSettings, WidgetSettingsComponent } from "@shared/models/widget.models";
 | 
					import { WidgetSettings, WidgetSettingsComponent } from "@shared/models/widget.models";
 | 
				
			||||||
import { AppState } from '@core/core.state';
 | 
					import { AppState } from '@core/core.state';
 | 
				
			||||||
import { Store } from "@ngrx/store";
 | 
					import { Store } from "@ngrx/store";
 | 
				
			||||||
@ -43,7 +43,7 @@ export class MobileAppQrCodeWidgetSettingsComponent extends WidgetSettingsCompon
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...mobileAppQrCodeWidgetDefaultSettings};
 | 
					    return mobileAppQrCodeWidgetDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -57,7 +57,7 @@ export class ProgressBarWidgetSettingsComponent extends WidgetSettingsComponent
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...progressBarDefaultSettings};
 | 
					    return progressBarDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -42,7 +42,7 @@ export class UnreadNotificationWidgetSettingsComponent extends WidgetSettingsCom
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...unreadNotificationDefaultSettings};
 | 
					    return unreadNotificationDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -54,7 +54,7 @@ export class ValueChartCardWidgetSettingsComponent extends WidgetSettingsCompone
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...valueChartCardDefaultSettings};
 | 
					    return valueChartCardDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -25,10 +25,10 @@ import {
 | 
				
			|||||||
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
 | 
					import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
 | 
				
			||||||
import { Store } from '@ngrx/store';
 | 
					import { Store } from '@ngrx/store';
 | 
				
			||||||
import { AppState } from '@core/core.state';
 | 
					import { AppState } from '@core/core.state';
 | 
				
			||||||
import { formatValue, mergeDeep } from '@core/utils';
 | 
					import { formatValue } from '@core/utils';
 | 
				
			||||||
import { DateFormatProcessor, DateFormatSettings } from '@shared/models/widget-settings.models';
 | 
					import { DateFormatProcessor, DateFormatSettings } from '@shared/models/widget-settings.models';
 | 
				
			||||||
import {
 | 
					import {
 | 
				
			||||||
  barChartWithLabelsDefaultSettings, BarChartWithLabelsWidgetSettings
 | 
					  barChartWithLabelsDefaultSettings
 | 
				
			||||||
} from '@home/components/widget/lib/chart/bar-chart-with-labels-widget.models';
 | 
					} from '@home/components/widget/lib/chart/bar-chart-with-labels-widget.models';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@Component({
 | 
					@Component({
 | 
				
			||||||
@ -68,7 +68,7 @@ export class BarChartWithLabelsWidgetSettingsComponent extends WidgetSettingsCom
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return mergeDeep<BarChartWithLabelsWidgetSettings>({} as BarChartWithLabelsWidgetSettings, barChartWithLabelsDefaultSettings);
 | 
					    return barChartWithLabelsDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -29,9 +29,11 @@ import {
 | 
				
			|||||||
} from '@shared/models/widget.models';
 | 
					} from '@shared/models/widget.models';
 | 
				
			||||||
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
 | 
					import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
 | 
				
			||||||
import {
 | 
					import {
 | 
				
			||||||
  DoughnutLayout, doughnutLayoutImages,
 | 
					  DoughnutLayout,
 | 
				
			||||||
 | 
					  doughnutLayoutImages,
 | 
				
			||||||
  doughnutLayouts,
 | 
					  doughnutLayouts,
 | 
				
			||||||
  doughnutLayoutTranslations, horizontalDoughnutLayoutImages
 | 
					  doughnutLayoutTranslations,
 | 
				
			||||||
 | 
					  horizontalDoughnutLayoutImages
 | 
				
			||||||
} from '@home/components/widget/lib/chart/doughnut-widget.models';
 | 
					} from '@home/components/widget/lib/chart/doughnut-widget.models';
 | 
				
			||||||
import {
 | 
					import {
 | 
				
			||||||
  chartLabelPositions,
 | 
					  chartLabelPositions,
 | 
				
			||||||
@ -44,7 +46,7 @@ import {
 | 
				
			|||||||
  pieChartLabelPositionTranslations
 | 
					  pieChartLabelPositionTranslations
 | 
				
			||||||
} from '@home/components/widget/lib/chart/chart.models';
 | 
					} from '@home/components/widget/lib/chart/chart.models';
 | 
				
			||||||
import { radarChartShapes, radarChartShapeTranslations } from '@home/components/widget/lib/chart/radar-chart.models';
 | 
					import { radarChartShapes, radarChartShapeTranslations } from '@home/components/widget/lib/chart/radar-chart.models';
 | 
				
			||||||
import { formatValue, isDefinedAndNotNull, mergeDeep } from '@core/utils';
 | 
					import { formatValue, isDefinedAndNotNull } from '@core/utils';
 | 
				
			||||||
import { Store } from '@ngrx/store';
 | 
					import { Store } from '@ngrx/store';
 | 
				
			||||||
import { AppState } from '@core/core.state';
 | 
					import { AppState } from '@core/core.state';
 | 
				
			||||||
import { WidgetConfigComponentData } from '@home/models/widget-component.models';
 | 
					import { WidgetConfigComponentData } from '@home/models/widget-component.models';
 | 
				
			||||||
@ -116,7 +118,7 @@ export abstract class LatestChartWidgetSettingsComponent<S extends LatestChartWi
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return mergeDeep<S>({} as S, this.defaultLatestChartSettings());
 | 
					    return this.defaultLatestChartSettings();
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -25,11 +25,8 @@ import {
 | 
				
			|||||||
import { UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';
 | 
					import { UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';
 | 
				
			||||||
import { Store } from '@ngrx/store';
 | 
					import { Store } from '@ngrx/store';
 | 
				
			||||||
import { AppState } from '@core/core.state';
 | 
					import { AppState } from '@core/core.state';
 | 
				
			||||||
import { formatValue, mergeDeepIgnoreArray } from '@core/utils';
 | 
					import { formatValue } from '@core/utils';
 | 
				
			||||||
import {
 | 
					import { rangeChartDefaultSettings } from '@home/components/widget/lib/chart/range-chart-widget.models';
 | 
				
			||||||
  rangeChartDefaultSettings,
 | 
					 | 
				
			||||||
  RangeChartWidgetSettings
 | 
					 | 
				
			||||||
} from '@home/components/widget/lib/chart/range-chart-widget.models';
 | 
					 | 
				
			||||||
import { DateFormatProcessor, DateFormatSettings } from '@shared/models/widget-settings.models';
 | 
					import { DateFormatProcessor, DateFormatSettings } from '@shared/models/widget-settings.models';
 | 
				
			||||||
import {
 | 
					import {
 | 
				
			||||||
  lineSeriesStepTypes,
 | 
					  lineSeriesStepTypes,
 | 
				
			||||||
@ -99,7 +96,7 @@ export class RangeChartWidgetSettingsComponent extends WidgetSettingsComponent {
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return mergeDeepIgnoreArray<RangeChartWidgetSettings>({} as RangeChartWidgetSettings, rangeChartDefaultSettings);
 | 
					    return rangeChartDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -19,13 +19,16 @@ import { WidgetSettings, WidgetSettingsComponent } from '@shared/models/widget.m
 | 
				
			|||||||
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
 | 
					import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
 | 
				
			||||||
import { Store } from '@ngrx/store';
 | 
					import { Store } from '@ngrx/store';
 | 
				
			||||||
import { AppState } from '@core/core.state';
 | 
					import { AppState } from '@core/core.state';
 | 
				
			||||||
import { isDefinedAndNotNull, mergeDeep } from '@core/utils';
 | 
					import { isDefinedAndNotNull } from '@core/utils';
 | 
				
			||||||
import {
 | 
					import {
 | 
				
			||||||
  timeSeriesChartKeyDefaultSettings,
 | 
					  timeSeriesChartKeyDefaultSettings,
 | 
				
			||||||
  TimeSeriesChartKeySettings,
 | 
					  TimeSeriesChartKeySettings,
 | 
				
			||||||
  TimeSeriesChartSeriesType,
 | 
					  TimeSeriesChartSeriesType,
 | 
				
			||||||
  timeSeriesChartSeriesTypes,
 | 
					  timeSeriesChartSeriesTypes,
 | 
				
			||||||
  timeSeriesChartSeriesTypeTranslations, TimeSeriesChartType, timeSeriesChartTypeTranslations, TimeSeriesChartYAxisId
 | 
					  timeSeriesChartSeriesTypeTranslations,
 | 
				
			||||||
 | 
					  TimeSeriesChartType,
 | 
				
			||||||
 | 
					  timeSeriesChartTypeTranslations,
 | 
				
			||||||
 | 
					  TimeSeriesChartYAxisId
 | 
				
			||||||
} from '@home/components/widget/lib/chart/time-series-chart.models';
 | 
					} from '@home/components/widget/lib/chart/time-series-chart.models';
 | 
				
			||||||
import { WidgetConfigComponentData } from '@home/models/widget-component.models';
 | 
					import { WidgetConfigComponentData } from '@home/models/widget-component.models';
 | 
				
			||||||
import { TimeSeriesChartWidgetSettings } from '@home/components/widget/lib/chart/time-series-chart-widget.models';
 | 
					import { TimeSeriesChartWidgetSettings } from '@home/components/widget/lib/chart/time-series-chart-widget.models';
 | 
				
			||||||
@ -79,8 +82,7 @@ export class TimeSeriesChartKeySettingsComponent extends WidgetSettingsComponent
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return mergeDeep<TimeSeriesChartKeySettings>({} as TimeSeriesChartKeySettings,
 | 
					    return timeSeriesChartKeyDefaultSettings;
 | 
				
			||||||
      timeSeriesChartKeyDefaultSettings);
 | 
					 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -26,11 +26,10 @@ import {
 | 
				
			|||||||
import { UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';
 | 
					import { UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';
 | 
				
			||||||
import { Store } from '@ngrx/store';
 | 
					import { Store } from '@ngrx/store';
 | 
				
			||||||
import { AppState } from '@core/core.state';
 | 
					import { AppState } from '@core/core.state';
 | 
				
			||||||
import { formatValue, isDefinedAndNotNull, mergeDeep } from '@core/utils';
 | 
					import { formatValue, isDefinedAndNotNull } from '@core/utils';
 | 
				
			||||||
import { DateFormatProcessor, DateFormatSettings } from '@shared/models/widget-settings.models';
 | 
					import { DateFormatProcessor, DateFormatSettings } from '@shared/models/widget-settings.models';
 | 
				
			||||||
import {
 | 
					import {
 | 
				
			||||||
  timeSeriesChartWidgetDefaultSettings,
 | 
					  timeSeriesChartWidgetDefaultSettings
 | 
				
			||||||
  TimeSeriesChartWidgetSettings
 | 
					 | 
				
			||||||
} from '@home/components/widget/lib/chart/time-series-chart-widget.models';
 | 
					} from '@home/components/widget/lib/chart/time-series-chart-widget.models';
 | 
				
			||||||
import {
 | 
					import {
 | 
				
			||||||
  TimeSeriesChartKeySettings,
 | 
					  TimeSeriesChartKeySettings,
 | 
				
			||||||
@ -120,7 +119,7 @@ export class TimeSeriesChartWidgetSettingsComponent extends WidgetSettingsCompon
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return mergeDeep<TimeSeriesChartWidgetSettings>({} as TimeSeriesChartWidgetSettings, timeSeriesChartWidgetDefaultSettings);
 | 
					    return timeSeriesChartWidgetDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -61,7 +61,7 @@ export class SingleSwitchWidgetSettingsComponent extends WidgetSettingsComponent
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...singleSwitchDefaultSettings};
 | 
					    return singleSwitchDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -67,7 +67,7 @@ export class SliderWidgetSettingsComponent extends WidgetSettingsComponent {
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...sliderWidgetDefaultSettings};
 | 
					    return sliderWidgetDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -72,7 +72,7 @@ export class ValueStepperWidgetSettingsComponent extends WidgetSettingsComponent
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...valueStepperDefaultSettings};
 | 
					    return valueStepperDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -40,7 +40,7 @@ export class EntityCountWidgetSettingsComponent extends WidgetSettingsComponent
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...countDefaultSettings(false)};
 | 
					    return countDefaultSettings(false);
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -21,7 +21,8 @@ import { Store } from '@ngrx/store';
 | 
				
			|||||||
import { AppState } from '@core/core.state';
 | 
					import { AppState } from '@core/core.state';
 | 
				
			||||||
import { formatValue } from '@core/utils';
 | 
					import { formatValue } from '@core/utils';
 | 
				
			||||||
import {
 | 
					import {
 | 
				
			||||||
  batteryLevelDefaultSettings, BatteryLevelLayout,
 | 
					  batteryLevelDefaultSettings,
 | 
				
			||||||
 | 
					  BatteryLevelLayout,
 | 
				
			||||||
  batteryLevelLayoutImages,
 | 
					  batteryLevelLayoutImages,
 | 
				
			||||||
  batteryLevelLayouts,
 | 
					  batteryLevelLayouts,
 | 
				
			||||||
  batteryLevelLayoutTranslations
 | 
					  batteryLevelLayoutTranslations
 | 
				
			||||||
@ -68,7 +69,7 @@ export class BatteryLevelWidgetSettingsComponent extends WidgetSettingsComponent
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...batteryLevelDefaultSettings};
 | 
					    return batteryLevelDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -57,7 +57,7 @@ export class SignalStrengthWidgetSettingsComponent extends WidgetSettingsCompone
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...signalStrengthDefaultSettings};
 | 
					    return signalStrengthDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -64,7 +64,7 @@ export class StatusWidgetSettingsComponent extends WidgetSettingsComponent {
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...statusWidgetDefaultSettings};
 | 
					    return statusWidgetDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -40,9 +40,7 @@ export class MapWidgetSettingsLegacyComponent extends WidgetSettingsComponent {
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {
 | 
					    return defaultMapSettings;
 | 
				
			||||||
      ...defaultMapSettings
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -40,9 +40,7 @@ export class RouteMapWidgetSettingsComponent extends WidgetSettingsComponent {
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {
 | 
					    return defaultMapSettings;
 | 
				
			||||||
      ...defaultMapSettings
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -57,9 +57,7 @@ export class TripAnimationWidgetSettingsComponent extends WidgetSettingsComponen
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {
 | 
					    return defaultTripAnimationSettings;
 | 
				
			||||||
      ...defaultTripAnimationSettings
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -19,8 +19,8 @@ import { WidgetSettings, WidgetSettingsComponent } from '@shared/models/widget.m
 | 
				
			|||||||
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
 | 
					import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
 | 
				
			||||||
import { Store } from '@ngrx/store';
 | 
					import { Store } from '@ngrx/store';
 | 
				
			||||||
import { AppState } from '@core/core.state';
 | 
					import { AppState } from '@core/core.state';
 | 
				
			||||||
import { isDefinedAndNotNull, mergeDeepIgnoreArray } from '@core/utils';
 | 
					import { isDefinedAndNotNull } from '@core/utils';
 | 
				
			||||||
import { mapWidgetDefaultSettings, MapWidgetSettings } from '@home/components/widget/lib/maps/map-widget.models';
 | 
					import { mapWidgetDefaultSettings } from '@home/components/widget/lib/maps/map-widget.models';
 | 
				
			||||||
import { WidgetConfigComponentData } from '@home/models/widget-component.models';
 | 
					import { WidgetConfigComponentData } from '@home/models/widget-component.models';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@Component({
 | 
					@Component({
 | 
				
			||||||
@ -53,7 +53,7 @@ export class MapWidgetSettingsComponent extends WidgetSettingsComponent {
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return mergeDeepIgnoreArray<MapWidgetSettings>({} as MapWidgetSettings, mapWidgetDefaultSettings);
 | 
					    return mapWidgetDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected prepareInputSettings(settings: WidgetSettings): WidgetSettings {
 | 
					  protected prepareInputSettings(settings: WidgetSettings): WidgetSettings {
 | 
				
			||||||
 | 
				
			|||||||
@ -48,7 +48,7 @@ export class ScadaSymbolWidgetSettingsComponent extends WidgetSettingsComponent
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...scadaSymbolWidgetDefaultSettings};
 | 
					    return scadaSymbolWidgetDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -70,7 +70,7 @@ export class WindSpeedDirectionWidgetSettingsComponent extends WidgetSettingsCom
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected defaultSettings(): WidgetSettings {
 | 
					  protected defaultSettings(): WidgetSettings {
 | 
				
			||||||
    return {...windSpeedDirectionDefaultSettings};
 | 
					    return windSpeedDirectionDefaultSettings;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  protected onSettingsSet(settings: WidgetSettings) {
 | 
					  protected onSettingsSet(settings: WidgetSettings) {
 | 
				
			||||||
 | 
				
			|||||||
@ -37,17 +37,19 @@ import { AbstractControl, UntypedFormGroup } from '@angular/forms';
 | 
				
			|||||||
import { Observable } from 'rxjs';
 | 
					import { Observable } from 'rxjs';
 | 
				
			||||||
import { Dashboard } from '@shared/models/dashboard.models';
 | 
					import { Dashboard } from '@shared/models/dashboard.models';
 | 
				
			||||||
import { IAliasController } from '@core/api/widget-api.models';
 | 
					import { IAliasController } from '@core/api/widget-api.models';
 | 
				
			||||||
import { isNotEmptyStr, mergeDeepIgnoreArray } from '@core/utils';
 | 
					import { isNotEmptyStr, mergeDeep, mergeDeepIgnoreArray } from '@core/utils';
 | 
				
			||||||
import { WidgetConfigComponentData } from '@home/models/widget-component.models';
 | 
					import { WidgetConfigComponentData } from '@home/models/widget-component.models';
 | 
				
			||||||
import { ComponentStyle, Font, TimewindowStyle } from '@shared/models/widget-settings.models';
 | 
					import { ComponentStyle, Font, TimewindowStyle } from '@shared/models/widget-settings.models';
 | 
				
			||||||
import { NULL_UUID } from '@shared/models/id/has-uuid';
 | 
					import { NULL_UUID } from '@shared/models/id/has-uuid';
 | 
				
			||||||
import { EntityInfoData, HasTenantId, HasVersion } from '@shared/models/entity.models';
 | 
					import { EntityInfoData, HasTenantId, HasVersion } from '@shared/models/entity.models';
 | 
				
			||||||
import { DataKeysCallbacks, DataKeySettingsFunction } from '@home/components/widget/lib/settings/common/key/data-keys.component.models';
 | 
					import {
 | 
				
			||||||
 | 
					  DataKeysCallbacks,
 | 
				
			||||||
 | 
					  DataKeySettingsFunction
 | 
				
			||||||
 | 
					} from '@home/components/widget/lib/settings/common/key/data-keys.component.models';
 | 
				
			||||||
import { WidgetConfigCallbacks } from '@home/components/widget/config/widget-config.component.models';
 | 
					import { WidgetConfigCallbacks } from '@home/components/widget/config/widget-config.component.models';
 | 
				
			||||||
import { TbFunction } from '@shared/models/js-function.models';
 | 
					import { TbFunction } from '@shared/models/js-function.models';
 | 
				
			||||||
import { FormProperty, jsonFormSchemaToFormProperties } from '@shared/models/dynamic-form.models';
 | 
					import { FormProperty, jsonFormSchemaToFormProperties } from '@shared/models/dynamic-form.models';
 | 
				
			||||||
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
 | 
					import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
 | 
				
			||||||
import { Device } from '@shared/models/device.models';
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
export enum widgetType {
 | 
					export enum widgetType {
 | 
				
			||||||
  timeseries = 'timeseries',
 | 
					  timeseries = 'timeseries',
 | 
				
			||||||
@ -1000,9 +1002,9 @@ export abstract class WidgetSettingsComponent extends PageComponent implements
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  set settings(value: WidgetSettings) {
 | 
					  set settings(value: WidgetSettings) {
 | 
				
			||||||
    if (!value) {
 | 
					    if (!value) {
 | 
				
			||||||
      this.settingsValue = this.defaultSettings();
 | 
					      this.settingsValue = mergeDeep({}, this.defaultSettings());
 | 
				
			||||||
    } else {
 | 
					    } else {
 | 
				
			||||||
      this.settingsValue = mergeDeepIgnoreArray(this.defaultSettings(), value);
 | 
					      this.settingsValue = mergeDeepIgnoreArray({}, this.defaultSettings(), value);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    if (!this.settingsSet) {
 | 
					    if (!this.settingsSet) {
 | 
				
			||||||
      this.settingsSet = true;
 | 
					      this.settingsSet = true;
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user