diff --git a/packages/twenty-front/src/modules/context-store/hooks/useFindManyRecordsSelectedInContextStore.ts b/packages/twenty-front/src/modules/context-store/hooks/useFindManyRecordsSelectedInContextStore.ts index 5a7b25bfb..5743292a5 100644 --- a/packages/twenty-front/src/modules/context-store/hooks/useFindManyRecordsSelectedInContextStore.ts +++ b/packages/twenty-front/src/modules/context-store/hooks/useFindManyRecordsSelectedInContextStore.ts @@ -53,7 +53,6 @@ export const useFindManyRecordsSelectedInContextStore = ({ contextStoreTargetedRecordsRule.mode === 'selection' && contextStoreTargetedRecordsRule.selectedRecordIds.length === 0, limit, - fetchPolicy: 'cache-and-network', }); return { diff --git a/packages/twenty-front/src/modules/object-record/record-filter/utils/isRecordMatchingFilter.ts b/packages/twenty-front/src/modules/object-record/record-filter/utils/isRecordMatchingFilter.ts index 073846bd1..1124458b6 100644 --- a/packages/twenty-front/src/modules/object-record/record-filter/utils/isRecordMatchingFilter.ts +++ b/packages/twenty-front/src/modules/object-record/record-filter/utils/isRecordMatchingFilter.ts @@ -50,6 +50,9 @@ const isAndFilter = ( filter: RecordGqlOperationFilter, ): filter is AndObjectRecordFilter => 'and' in filter && !!filter.and; +const isImplicitAndFilter = (filter: RecordGqlOperationFilter) => + Object.keys(filter).length > 1; + const isOrFilter = ( filter: RecordGqlOperationFilter, ): filter is OrObjectRecordFilter => 'or' in filter && !!filter.or; @@ -71,6 +74,16 @@ export const isRecordMatchingFilter = ({ return true; } + if (isImplicitAndFilter(filter)) { + return Object.entries(filter).every(([filterKey, value]) => + isRecordMatchingFilter({ + record, + filter: { [filterKey]: value }, + objectMetadataItem, + }), + ); + } + if (isAndFilter(filter)) { const filterValue = filter.and;