Merge pull request #14852 from Budibase/fix-processSearchFilters

Make sure processSearchFilters handles an undefined input.
This commit is contained in:
Sam Rose 2024-10-23 15:52:18 +01:00 committed by GitHub
commit 685d8cfd20
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 12 additions and 9 deletions

View File

@ -455,19 +455,18 @@ export function splitFiltersArray(filters: LegacyFilter[]) {
* Legacy support remains for the old **SearchFilter[]** format. * Legacy support remains for the old **SearchFilter[]** format.
* These will be migrated to an appropriate **SearchFilters** object, if encountered * 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( export function buildQuery(
filter?: UISearchFilter | LegacyFilter[] filter?: UISearchFilter | LegacyFilter[]
): SearchFilters | undefined { ): SearchFilters {
if (!filter) { if (!filter) {
return return {}
} }
if (Array.isArray(filter)) { if (Array.isArray(filter)) {
filter = processSearchFilters(filter) filter = processSearchFilters(filter)
if (!filter) {
return {}
}
} }
const operator = logicalOperatorFromUI( const operator = logicalOperatorFromUI(

View File

@ -135,12 +135,16 @@ export function isSupportedUserSearch(query: SearchFilters) {
return false return false
} }
} }
return true return true
} }
export const processSearchFilters = ( export function processSearchFilters(
filterArray: LegacyFilter[] filterArray?: LegacyFilter[]
): Required<UISearchFilter> => { ): Required<UISearchFilter> | undefined {
if (!filterArray || filterArray.length === 0) {
return undefined
}
const { allOr, onEmptyFilter, filters } = splitFiltersArray(filterArray) const { allOr, onEmptyFilter, filters } = splitFiltersArray(filterArray)
return { return {
logicalOperator: UILogicalOperator.ALL, logicalOperator: UILogicalOperator.ALL,