in packages/search-ui/src/helpers.ts [31:56]
export function removeSingleFilterValue(
filters: Filter[],
fieldName: string,
value: FilterValue,
filterType: FilterType
): Filter[] {
return filters.reduce((acc, filter) => {
const { field, values, type, ...rest } = filter;
if (field === fieldName && (!filterType || type === filterType)) {
const updatedFilterValues = values.filter(
(filterValue) => !doFilterValuesMatch(filterValue, value)
);
if (updatedFilterValues.length > 0) {
return acc.concat({
field,
values: updatedFilterValues,
type,
...rest
});
} else {
return acc;
}
}
return acc.concat(filter);
}, []);
}