Add rating filter/sort + fix isEmpty/isNotEmpty + fix combinedViewFilters (#6310)
## Context - Adding RATING sort and filter capabilities. - Fixing isEmpty/isNotEmpty filters - Fixing combined view filters so it combines filters per field metadata and not per filter id. This is more a product question but to me it does not make sense to apply multiples filters on the same field IF the operations is wrapped in a AND. If at some point we want to put a OR instead then that would make more sense
This commit is contained in:
@ -4,6 +4,7 @@ import { useRecoilValue } from 'recoil';
|
||||
import { MultipleFiltersDropdownContent } from '@/object-record/object-filter-dropdown/components/MultipleFiltersDropdownContent';
|
||||
import { useFilterDropdown } from '@/object-record/object-filter-dropdown/hooks/useFilterDropdown';
|
||||
import { Filter } from '@/object-record/object-filter-dropdown/types/Filter';
|
||||
import { FilterOperand } from '@/object-record/object-filter-dropdown/types/FilterOperand';
|
||||
import { Dropdown } from '@/ui/layout/dropdown/components/Dropdown';
|
||||
import { useDropdown } from '@/ui/layout/dropdown/hooks/useDropdown';
|
||||
import { HotkeyScope } from '@/ui/utilities/hotkey/types/HotkeyScope';
|
||||
@ -66,8 +67,11 @@ export const EditableFilterDropdownButton = ({
|
||||
};
|
||||
|
||||
const handleDropdownClickOutside = useCallback(() => {
|
||||
const { id: fieldId, value } = viewFilter;
|
||||
if (!value) {
|
||||
const { id: fieldId, value, operand } = viewFilter;
|
||||
if (
|
||||
!value &&
|
||||
![FilterOperand.IsEmpty, FilterOperand.IsNotEmpty].includes(operand)
|
||||
) {
|
||||
removeCombinedViewFilter(fieldId);
|
||||
}
|
||||
}, [viewFilter, removeCombinedViewFilter]);
|
||||
|
||||
Reference in New Issue
Block a user