[AMBARI-25012] Log Search UI: cannot save filters + select all selecting the ovirrides as well (#57)

diff --git a/ambari-logsearch-web/src/app/components/action-menu/action-menu.component.html b/ambari-logsearch-web/src/app/components/action-menu/action-menu.component.html
index f8c65de..acd6504 100644
--- a/ambari-logsearch-web/src/app/components/action-menu/action-menu.component.html
+++ b/ambari-logsearch-web/src/app/components/action-menu/action-menu.component.html
@@ -31,7 +31,7 @@
   title="{{'logIndexFilter.title' | translate}}">
   <header>
       <dropdown-button [options]="clustersListItems$ | async" (selectItem)="onSelectCluster($event)"
-      label="{{'logIndexFilter.selectCluster' | translate}}" buttonClass="btn-link"></dropdown-button>
+      label="{{'logIndexFilter.selectCluster' | translate}}" buttonClass="btn-link" (selectItem)="onSelectCluster($event)"></dropdown-button>
   </header>
   <section>
     <p>{{'logIndexFilter.caption' | translate}}</p>
@@ -41,7 +41,7 @@
   </section>
   <footer>
     <button class="btn btn-secondary" (click)="closeLogIndexFilter()">{{'modal.cancel' | translate}}</button>
-    <button class="btn btn-primary" (click)="saveLogIndexFilter()" [disabled]="isModalSubmitDisabled">
+    <button class="btn btn-primary" (click)="saveLogIndexFilter()" [disabled]="isModalSubmitDisabled$ | async">
       {{'modal.save' | translate}}
     </button>
   </footer>
diff --git a/ambari-logsearch-web/src/app/components/action-menu/action-menu.component.ts b/ambari-logsearch-web/src/app/components/action-menu/action-menu.component.ts
index cbc35f1..f00eb2d 100644
--- a/ambari-logsearch-web/src/app/components/action-menu/action-menu.component.ts
+++ b/ambari-logsearch-web/src/app/components/action-menu/action-menu.component.ts
@@ -46,8 +46,6 @@
 
   settingsForm: FormGroup = this.settings.settingsFormGroup;
 
-  isModalSubmitDisabled = true;
-
   clustersListItems$: Observable<ListItem[]> = this.clustersService.getAll()
     .map((clusterNames: string[]): ListItem[] => clusterNames.map(this.utilsService.getListItemFromString))
     .map((clusters: ListItem[]) => {
@@ -58,6 +56,7 @@
     });
 
   selectedClusterName$: BehaviorSubject<string> = new BehaviorSubject('');
+  isModalSubmitDisabled$: Observable<boolean> = this.selectedClusterName$.map(cluster => !cluster);
 
   destroyed$ = new Subject();
 
@@ -72,10 +71,7 @@
   }
 
   ngOnInit() {
-    this.selectedClusterName$.takeUntil(this.destroyed$).subscribe(
-      (clusterName: string) => this.setModalSubmitDisabled(!clusterName)
-    );
-    this.clustersListItems$.filter((items: ListItem[]) => items.some((item: ListItem) => item.isChecked)).first()
+    this.clustersListItems$.filter((items: ListItem[]) => items.some((item: ListItem) => item.isChecked)).take(1)
       .map((items: ListItem[]) => items.find((item: ListItem) => item.isChecked))
       .subscribe((item) => this.selectedClusterName$.next(item.value));
   }
@@ -88,10 +84,6 @@
     return this.logsContainerService.captureSeconds;
   }
 
-  setModalSubmitDisabled(isDisabled: boolean): void {
-    this.isModalSubmitDisabled = isDisabled;
-  }
-
   refresh(): void {
     this.logsContainerService.loadLogs();
   }
diff --git a/ambari-logsearch-web/src/app/components/log-index-filter/log-index-filter.component.ts b/ambari-logsearch-web/src/app/components/log-index-filter/log-index-filter.component.ts
index 5ea0803..02e1679 100644
--- a/ambari-logsearch-web/src/app/components/log-index-filter/log-index-filter.component.ts
+++ b/ambari-logsearch-web/src/app/components/log-index-filter/log-index-filter.component.ts
@@ -143,7 +143,7 @@
   processAllComponentsForLevel(levelName: LogLevel, isChecked: boolean): void {
     this.activeClusterConfigs.forEach((component: LogIndexFilterComponentConfig): void => {
       component[levelName].defaults = isChecked;
-      component[levelName].overrides = isChecked;
+      component[levelName].overrides = component.hasOverrides && isChecked;
     });
     this.updateValue();
   }