1
0
Fork 0
mirror of synced 2024-08-12 08:31:27 +12:00

Prevent overriding onEmptyFilter behaviour for views

This commit is contained in:
Andrew Kingston 2023-08-21 12:01:17 +01:00
parent 6d46fb2963
commit 729b93532b

View file

@ -39,12 +39,16 @@ export async function searchView(
?.filter(filter => filter.field)
.map(filter => db.removeKeyNumbering(filter.field)) || []
// Prevent using an "OR" search
// Delete extraneous search params that cannot be overridden
delete body.query.allOr
delete body.query.onEmptyFilter
// Carry over filters for unused fields
Object.keys(body.query).forEach(key => {
const operator = key as keyof Omit<SearchFilters, "allOr">
const operator = key as keyof Omit<
SearchFilters,
"allOr" | "onEmptyFilter"
>
Object.keys(body.query[operator] || {}).forEach(field => {
if (!existingFields.includes(db.removeKeyNumbering(field))) {
query[operator]![field] = body.query[operator]![field]