mirror of
https://github.com/Alfresco/alfresco-content-app.git
synced 2026-09-09 18:02:54 +00:00
[MNT-25408]: fix activeFilter stream logic (#4957)
* [MNT-25408]: fix activeFilter stream logic * [MNT-25408]: UTs update
This commit is contained in:
+34
@@ -446,6 +446,40 @@ describe('SearchComponent', () => {
|
||||
|
||||
flush();
|
||||
}));
|
||||
|
||||
it('should enable the reset button when userFacetBuckets was reset but queryFragments are still present', fakeAsync(() => {
|
||||
queryBuilder.userFacetBucketsUpdate.next({ test: [{ label: 'test-value' }] as FacetFieldBucket[] });
|
||||
queryBuilder.queryFragmentsUpdate.next({ test: 'test-value' });
|
||||
queryBuilder.userFacetBucketsUpdate.next({});
|
||||
|
||||
tick();
|
||||
|
||||
fixture.detectChanges();
|
||||
|
||||
const resetBtn = getResetSearchButton();
|
||||
|
||||
expect(resetBtn).toBeDefined();
|
||||
expect(resetBtn.getAttribute('disabled')).toBeFalsy();
|
||||
|
||||
flush();
|
||||
}));
|
||||
|
||||
it('should enable the reset button when queryFragments was reset but userFacetBuckets are still present', fakeAsync(() => {
|
||||
queryBuilder.userFacetBucketsUpdate.next({ test: [{ label: 'test-value' }] as FacetFieldBucket[] });
|
||||
queryBuilder.queryFragmentsUpdate.next({ test: 'test-value' });
|
||||
queryBuilder.queryFragmentsUpdate.next({});
|
||||
|
||||
tick();
|
||||
|
||||
fixture.detectChanges();
|
||||
|
||||
const resetBtn = getResetSearchButton();
|
||||
|
||||
expect(resetBtn).toBeDefined();
|
||||
expect(resetBtn.getAttribute('disabled')).toBeFalsy();
|
||||
|
||||
flush();
|
||||
}));
|
||||
});
|
||||
|
||||
testHeader(SearchResultsComponent, false);
|
||||
|
||||
+7
-4
@@ -84,7 +84,7 @@ import {
|
||||
formatSearchTerm
|
||||
} from '../../../utils/aca-search-utils';
|
||||
import { SaveSearchDirective } from '../search-save/directive/save-search.directive';
|
||||
import { combineLatest, merge, Observable, of } from 'rxjs';
|
||||
import { combineLatest, Observable, of } from 'rxjs';
|
||||
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
||||
import { MatMenuModule } from '@angular/material/menu';
|
||||
import { IsFeatureSupportedInCurrentAcsPipe } from '../../../pipes/is-feature-supported.pipe';
|
||||
@@ -173,10 +173,13 @@ export class SearchResultsComponent extends PageComponent implements OnInit, OnD
|
||||
this.searchConfig = searchConfig;
|
||||
});
|
||||
|
||||
this.areFiltersActive$ = merge(this.queryBuilder.queryFragmentsUpdate, this.queryBuilder.userFacetBucketsUpdate).pipe(
|
||||
this.areFiltersActive$ = combineLatest([this.queryBuilder.queryFragmentsUpdate, this.queryBuilder.userFacetBucketsUpdate]).pipe(
|
||||
takeUntilDestroyed(),
|
||||
map((v) => {
|
||||
return Object.values(v).some((filterValue) => (Array.isArray(filterValue) ? filterValue.length > 0 : !!filterValue));
|
||||
map((filters) => {
|
||||
const [queryFragments, userFacetBuckets] = filters.map((rawFilter) => {
|
||||
return Object.values(rawFilter).some((filterValue) => (Array.isArray(filterValue) ? filterValue.length > 0 : !!filterValue));
|
||||
});
|
||||
return queryFragments || userFacetBuckets;
|
||||
})
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user