Skip to content

Commit 07a94db

Browse files
authored
Implement boolean filters correctly (#2402)
1 parent fbc17d9 commit 07a94db

File tree

1 file changed

+7
-1
lines changed
  • app/institutions/dashboard/-components/object-list

1 file changed

+7
-1
lines changed

app/institutions/dashboard/-components/object-list/component.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import Component from '@glimmer/component';
33
import { tracked } from '@glimmer/tracking';
44

55
import InstitutionModel from 'ember-osf-web/models/institution';
6+
import { SuggestedFilterOperators } from 'ember-osf-web/models/related-property-path';
67
import SearchResultModel from 'ember-osf-web/models/search-result';
78
import { Filter } from 'osf-components/components/search-page/component';
89

@@ -29,7 +30,7 @@ export type ObjectListColumn = ValueColumn | LinkColumn | ComponentColumn;
2930

3031
interface InstitutionalObjectListArgs {
3132
institution: InstitutionModel;
32-
defaultQueryOptions: Record<'cardSearchFilter', Record<string, string[]>>;
33+
defaultQueryOptions: Record<'cardSearchFilter', Record<string, string[] | any>>;
3334
columns: ObjectListColumn[];
3435
objectType: string;
3536
}
@@ -53,6 +54,11 @@ export default class InstitutionalObjectList extends Component<InstitutionalObje
5354
sort: this.sortParam ? { [this.sortParam]: this.sort } : this.sort,
5455
};
5556
const fullQueryOptions = this.activeFilters.reduce((acc, filter: Filter) => {
57+
if (filter.suggestedFilterOperator === SuggestedFilterOperators.IsPresent) {
58+
acc.cardSearchFilter[filter.propertyPathKey] = {};
59+
acc.cardSearchFilter[filter.propertyPathKey][filter.value] = true;
60+
return acc;
61+
}
5662
const currentValue = acc.cardSearchFilter[filter.propertyPathKey];
5763
acc.cardSearchFilter[filter.propertyPathKey] =
5864
currentValue ? currentValue.concat(filter.value) : [filter.value];

0 commit comments

Comments
 (0)