From 3ba7a070d9298b27436e86793fbcea0818255bd1 Mon Sep 17 00:00:00 2001 From: Thomas Trompette Date: Tue, 9 Dec 2025 14:55:14 +0100 Subject: [PATCH] Fix is empty and non empty filter for numbers (#16424) isNonEmptyString does not work for a number. We need to properly handle null and undefined --- .../utils/evaluate-filter-conditions.util.ts | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/packages/twenty-server/src/modules/workflow/workflow-executor/workflow-actions/filter/utils/evaluate-filter-conditions.util.ts b/packages/twenty-server/src/modules/workflow/workflow-executor/workflow-actions/filter/utils/evaluate-filter-conditions.util.ts index efebf74c31..c92802226a 100644 --- a/packages/twenty-server/src/modules/workflow/workflow-executor/workflow-actions/filter/utils/evaluate-filter-conditions.util.ts +++ b/packages/twenty-server/src/modules/workflow/workflow-executor/workflow-actions/filter/utils/evaluate-filter-conditions.util.ts @@ -241,18 +241,10 @@ function evaluateDateFilter(filter: ResolvedFilter): boolean { ); case ViewFilterOperand.IS_EMPTY: - return ( - filter.leftOperand === null || - filter.leftOperand === undefined || - filter.leftOperand === '' - ); + return !isDefined(filter.leftOperand) || filter.leftOperand === ''; case ViewFilterOperand.IS_NOT_EMPTY: - return ( - filter.leftOperand !== null && - filter.leftOperand !== undefined && - filter.leftOperand !== '' - ); + return isDefined(filter.leftOperand) && filter.leftOperand !== ''; case ViewFilterOperand.IS_RELATIVE: return parseAndEvaluateRelativeDateFilter({ @@ -341,10 +333,10 @@ function evaluateNumberFilter(filter: ResolvedFilter): boolean { return Number(leftValue) <= Number(rightValue); case ViewFilterOperand.IS_EMPTY: - return !isNonEmptyString(leftValue); + return !isDefined(filter.leftOperand) || filter.leftOperand === ''; case ViewFilterOperand.IS_NOT_EMPTY: - return isNonEmptyString(leftValue); + return isDefined(filter.leftOperand) && filter.leftOperand !== ''; case ViewFilterOperand.IS: return Number(leftValue) === Number(rightValue);