Skip to content

Commit

Permalink
Merge pull request #14852 from Budibase/fix-processSearchFilters
Browse files Browse the repository at this point in the history
Make sure processSearchFilters handles an undefined input.
  • Loading branch information
samwho authored Oct 23, 2024
2 parents 9d05f32 + f7b84ca commit 685d8cf
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 9 deletions.
11 changes: 5 additions & 6 deletions packages/shared-core/src/filters.ts
Original file line number Diff line number Diff line change
Expand Up @@ -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(
Expand Down
10 changes: 7 additions & 3 deletions packages/shared-core/src/utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -135,12 +135,16 @@ export function isSupportedUserSearch(query: SearchFilters) {
return false
}
}

return true
}

export const processSearchFilters = (
filterArray: LegacyFilter[]
): Required<UISearchFilter> => {
export function processSearchFilters(
filterArray?: LegacyFilter[]
): Required<UISearchFilter> | undefined {
if (!filterArray || filterArray.length === 0) {
return undefined
}
const { allOr, onEmptyFilter, filters } = splitFiltersArray(filterArray)
return {
logicalOperator: UILogicalOperator.ALL,
Expand Down

0 comments on commit 685d8cf

Please sign in to comment.