From 90b5213b52409db3932f448e60a96d1e506caef5 Mon Sep 17 00:00:00 2001 From: Frederik Bosch <6979916+fbosch@users.noreply.github.com> Date: Wed, 7 Aug 2024 11:38:09 +0200 Subject: [PATCH] fix: array filterFns --- packages/table-core/src/filterFns.ts | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/packages/table-core/src/filterFns.ts b/packages/table-core/src/filterFns.ts index d6aabdb6c4..112e351e2f 100644 --- a/packages/table-core/src/filterFns.ts +++ b/packages/table-core/src/filterFns.ts @@ -47,7 +47,10 @@ const arrIncludes: FilterFn = ( columnId: string, filterValue: unknown ) => { - return row.getValue(columnId)?.includes(filterValue) + if (Array.isArray(row.getValue(columnId))) { + return row.getValue(columnId)?.includes(filterValue) + } + return filterValue === row.getValue(columnId) } arrIncludes.autoRemove = (val: any) => testFalsey(val) || !val?.length @@ -57,9 +60,12 @@ const arrIncludesAll: FilterFn = ( columnId: string, filterValue: unknown[] ) => { - return !filterValue.some( - val => !row.getValue(columnId)?.includes(val) - ) + if (Array.isArray(row.getValue(columnId))) { + return !filterValue.some( + val => !row.getValue(columnId)?.includes(val) + ) + } + return !filterValue.some(val => val !== row.getValue(columnId)) } arrIncludesAll.autoRemove = (val: any) => testFalsey(val) || !val?.length @@ -69,9 +75,12 @@ const arrIncludesSome: FilterFn = ( columnId: string, filterValue: unknown[] ) => { - return filterValue.some(val => - row.getValue(columnId)?.includes(val) - ) + if (Array.isArray(row.getValue(columnId))) { + return filterValue.some(val => + row.getValue(columnId)?.includes(val) + ) + } + return filterValue.some(val => val === row.getValue(columnId)) } arrIncludesSome.autoRemove = (val: any) => testFalsey(val) || !val?.length