Timewindow: optimize false properties deletion
This commit is contained in:
parent
6d509ca5d9
commit
d95a00e4af
@ -197,6 +197,23 @@ export function deleteNullProperties(obj: any) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function deleteFalseProperties(obj: any) {
|
||||||
|
if (isUndefinedOrNull(obj)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Object.keys(obj).forEach((propName) => {
|
||||||
|
if (obj[propName] === false || isUndefinedOrNull(obj[propName])) {
|
||||||
|
delete obj[propName];
|
||||||
|
} else if (isObject(obj[propName])) {
|
||||||
|
deleteFalseProperties(obj[propName]);
|
||||||
|
} else if (Array.isArray(obj[propName])) {
|
||||||
|
(obj[propName] as any[]).forEach((elem) => {
|
||||||
|
deleteFalseProperties(elem);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
export function objToBase64(obj: any): string {
|
export function objToBase64(obj: any): string {
|
||||||
const json = JSON.stringify(obj);
|
const json = JSON.stringify(obj);
|
||||||
return btoa(encodeURIComponent(json).replace(/%([0-9A-F]{2})/g,
|
return btoa(encodeURIComponent(json).replace(/%([0-9A-F]{2})/g,
|
||||||
|
|||||||
@ -36,7 +36,15 @@ import { Store } from '@ngrx/store';
|
|||||||
import { AppState } from '@core/core.state';
|
import { AppState } from '@core/core.state';
|
||||||
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
||||||
import { TimeService } from '@core/services/time.service';
|
import { TimeService } from '@core/services/time.service';
|
||||||
import { deepClean, deepClone, isDefined, isDefinedAndNotNull, isEmpty, mergeDeepIgnoreArray } from '@core/utils';
|
import {
|
||||||
|
deepClean,
|
||||||
|
deepClone,
|
||||||
|
deleteFalseProperties,
|
||||||
|
isDefined,
|
||||||
|
isDefinedAndNotNull,
|
||||||
|
isEmpty,
|
||||||
|
mergeDeepIgnoreArray
|
||||||
|
} from '@core/utils';
|
||||||
import { ToggleHeaderOption } from '@shared/components/toggle-header.component';
|
import { ToggleHeaderOption } from '@shared/components/toggle-header.component';
|
||||||
import { TranslateService } from '@ngx-translate/core';
|
import { TranslateService } from '@ngx-translate/core';
|
||||||
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
||||||
@ -472,54 +480,11 @@ export class TimewindowConfigDialogComponent extends PageComponent implements On
|
|||||||
delete this.timewindow.allowedAggTypes;
|
delete this.timewindow.allowedAggTypes;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!this.timewindow.realtime.disableCustomInterval) {
|
|
||||||
delete this.timewindow.realtime.disableCustomInterval;
|
|
||||||
}
|
|
||||||
if (!this.timewindow.realtime.disableCustomGroupInterval) {
|
|
||||||
delete this.timewindow.realtime.disableCustomGroupInterval;
|
|
||||||
}
|
|
||||||
if (!this.timewindow.history.disableCustomInterval) {
|
|
||||||
delete this.timewindow.history.disableCustomInterval;
|
|
||||||
}
|
|
||||||
if (!this.timewindow.history.disableCustomGroupInterval) {
|
|
||||||
delete this.timewindow.history.disableCustomGroupInterval;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!this.timewindow.hideAggregation) {
|
|
||||||
delete this.timewindow.hideAggregation;
|
|
||||||
}
|
|
||||||
if (!this.timewindow.hideAggInterval) {
|
|
||||||
delete this.timewindow.hideAggInterval;
|
|
||||||
}
|
|
||||||
if (!this.timewindow.hideTimezone) {
|
|
||||||
delete this.timewindow.hideTimezone;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!this.timewindow.realtime.hideInterval) {
|
|
||||||
delete this.timewindow.realtime.hideInterval;
|
|
||||||
}
|
|
||||||
if (!this.timewindow.realtime.hideLastInterval) {
|
|
||||||
delete this.timewindow.realtime.hideLastInterval;
|
|
||||||
}
|
|
||||||
if (!this.timewindow.realtime.hideQuickInterval) {
|
|
||||||
delete this.timewindow.realtime.hideQuickInterval;
|
|
||||||
}
|
|
||||||
if (!this.timewindow.history.hideInterval) {
|
|
||||||
delete this.timewindow.history.hideInterval;
|
|
||||||
}
|
|
||||||
if (!this.timewindow.history.hideLastInterval) {
|
|
||||||
delete this.timewindow.history.hideLastInterval;
|
|
||||||
}
|
|
||||||
if (!this.timewindow.history.hideFixedInterval) {
|
|
||||||
delete this.timewindow.history.hideFixedInterval;
|
|
||||||
}
|
|
||||||
if (!this.timewindow.history.hideQuickInterval) {
|
|
||||||
delete this.timewindow.history.hideQuickInterval;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!this.aggregation) {
|
if (!this.aggregation) {
|
||||||
delete this.timewindow.aggregation;
|
delete this.timewindow.aggregation;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
deleteFalseProperties(this.timewindow);
|
||||||
this.dialogRef.close(deepClean(this.timewindow));
|
this.dialogRef.close(deepClean(this.timewindow));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user