From 47f26f136af5098cbe7c92e913b60d0232291905 Mon Sep 17 00:00:00 2001 From: Viacheslav Klimov Date: Tue, 24 Mar 2026 12:55:39 +0200 Subject: [PATCH] Fix keyFiltersOperation not persisted in dashboard configuration filters-dialog.component.ts was the bridge between filter-dialog (which sets keyFiltersOperation on the Filter object) and the dashboard configuration JSON. It was dropping the field in three places: - createFilterFormControl: form group had no keyFiltersOperation field - edit path: patched filter/editable/keyFilters but not operation - save(): rebuilt Filter objects without keyFiltersOperation --- .../home/components/filter/filters-dialog.component.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/ui-ngx/src/app/modules/home/components/filter/filters-dialog.component.ts b/ui-ngx/src/app/modules/home/components/filter/filters-dialog.component.ts index 8282c2cd21..46784b5309 100644 --- a/ui-ngx/src/app/modules/home/components/filter/filters-dialog.component.ts +++ b/ui-ngx/src/app/modules/home/components/filter/filters-dialog.component.ts @@ -37,7 +37,7 @@ import { TranslateService } from '@ngx-translate/core'; import { ActionNotificationShow } from '@core/notification/notification.actions'; import { DialogService } from '@core/services/dialog.service'; import { deepClone, isUndefined } from '@core/utils'; -import { Filter, Filters, KeyFilterInfo } from '@shared/models/query/query.models'; +import { ComplexOperation, Filter, Filters, KeyFilterInfo } from '@shared/models/query/query.models'; import { FilterDialogComponent, FilterDialogData } from '@home/components/filter/filter-dialog.component'; import { DashboardUtilsService } from '@core/services/dashboard-utils.service'; @@ -132,7 +132,8 @@ export class FiltersDialogComponent extends DialogComponent = filterValue.keyFilters; const editable: boolean = filterValue.editable; + const keyFiltersOperation: ComplexOperation = filterValue.keyFiltersOperation; if (uniqueFilterList[filter]) { valid = false; message = this.translate.instant('filter.duplicate-filter-error', {filter}); @@ -263,7 +266,7 @@ export class FiltersDialogComponent extends DialogComponent