Browse Source

use normal combobox for filtering array columns

pull/4023/head
Peter Clement 5 years ago
parent
commit
078cb07b04
  1. 2
      packages/builder/src/components/design/PropertiesPanel/PropertyControls/FilterEditor/FilterDrawer.svelte
  2. 18
      packages/server/src/api/controllers/row/internalSearch.js

2
packages/builder/src/components/design/PropertiesPanel/PropertyControls/FilterEditor/FilterDrawer.svelte

@ -136,7 +136,7 @@
/>
{:else if ["string", "longform", "number"].includes(filter.type)}
<Input disabled={filter.noValue} bind:value={filter.value} />
{:else if filter.type === "options"}
{:else if filter.type === "options" || filter.type === "array"}
<Combobox
disabled={filter.noValue}
options={getFieldOptions(filter.field)}

18
packages/server/src/api/controllers/row/internalSearch.js

@ -229,14 +229,7 @@ class QueryBuilder {
if (!value) {
return null
}
let opts = []
value.forEach(val =>
opts.push(
`${key}.${val}:${builder.preprocess(val, allPreProcessingOpts)}`
)
)
const joined = opts.join(" AND ")
return joined
return `${key}.${value}:${builder.preprocess(value, allPreProcessingOpts)}`
})
}
@ -245,14 +238,7 @@ class QueryBuilder {
if (!value) {
return null
}
let opts = []
value.forEach(val =>
opts.push(
`!${key}.${val}:${builder.preprocess(val, allPreProcessingOpts)}`
)
)
const joined = opts.join(" AND ")
return joined
return `!${key}.${value}:${builder.preprocess(value, allPreProcessingOpts)}`
})
}

Loading…
Cancel
Save