diff --git a/packages/shared-core/src/filters.ts b/packages/shared-core/src/filters.ts index e0703321e8..003e6b5082 100644 --- a/packages/shared-core/src/filters.ts +++ b/packages/shared-core/src/filters.ts @@ -455,19 +455,18 @@ export function splitFiltersArray(filters: LegacyFilter[]) { * Legacy support remains for the old **SearchFilter[]** format. * These will be migrated to an appropriate **SearchFilters** object, if encountered */ -export function buildQuery(filter: undefined): undefined -export function buildQuery( - filter: UISearchFilter | LegacyFilter[] -): SearchFilters export function buildQuery( filter?: UISearchFilter | LegacyFilter[] -): SearchFilters | undefined { +): SearchFilters { if (!filter) { - return + return {} } if (Array.isArray(filter)) { filter = processSearchFilters(filter) + if (!filter) { + return {} + } } const operator = logicalOperatorFromUI( diff --git a/packages/shared-core/src/utils.ts b/packages/shared-core/src/utils.ts index 5db4ead1dc..0e49db9c7c 100644 --- a/packages/shared-core/src/utils.ts +++ b/packages/shared-core/src/utils.ts @@ -135,12 +135,16 @@ export function isSupportedUserSearch(query: SearchFilters) { return false } } + return true } -export const processSearchFilters = ( - filterArray: LegacyFilter[] -): Required => { +export function processSearchFilters( + filterArray?: LegacyFilter[] +): Required | undefined { + if (!filterArray || filterArray.length === 0) { + return undefined + } const { allOr, onEmptyFilter, filters } = splitFiltersArray(filterArray) return { logicalOperator: UILogicalOperator.ALL,