Update more usages of processing search filters

This commit is contained in:
Andrew Kingston 2024-10-23 16:24:02 +01:00
parent b6dbe54236
commit c8c5cbe16c
No known key found for this signature in database
5 changed files with 18 additions and 15 deletions

View File

@ -798,7 +798,9 @@
break break
} }
} }
return utils.processSearchFilters(filters) return Array.isArray(filters)
? utils.processSearchFilters(filters)
: filters
} }
function saveFilters(key) { function saveFilters(key) {

View File

@ -5,7 +5,6 @@
import { getUserBindings } from "dataBinding" import { getUserBindings } from "dataBinding"
import { makePropSafe } from "@budibase/string-templates" import { makePropSafe } from "@budibase/string-templates"
import { search } from "@budibase/frontend-core" import { search } from "@budibase/frontend-core"
import { utils } from "@budibase/shared-core"
import { tables } from "stores/builder" import { tables } from "stores/builder"
export let schema export let schema
@ -17,7 +16,7 @@
let drawer let drawer
$: localFilters = utils.processSearchFilters(filters) $: localFilters = filters
$: schemaFields = search.getFields( $: schemaFields = search.getFields(
$tables.list, $tables.list,
Object.values(schema || {}), Object.values(schema || {}),
@ -53,15 +52,7 @@
{filterCount ? `Filter: ${filterCount}` : "Filter"} {filterCount ? `Filter: ${filterCount}` : "Filter"}
</ActionButton> </ActionButton>
<Drawer <Drawer bind:this={drawer} title="Filtering" on:drawerHide forceModal>
bind:this={drawer}
title="Filtering"
on:drawerHide
on:drawerShow={() => {
localFilters = utils.processSearchFilters(filters)
}}
forceModal
>
<Button <Button
cta cta
slot="buttons" slot="buttons"

View File

@ -207,7 +207,6 @@ export class ComponentStore extends BudiStore {
) )
for (let setting of filterableTypes || []) { for (let setting of filterableTypes || []) {
const isLegacy = Array.isArray(enrichedComponent[setting.key]) const isLegacy = Array.isArray(enrichedComponent[setting.key])
if (isLegacy) { if (isLegacy) {
const processedSetting = utils.processSearchFilters( const processedSetting = utils.processSearchFilters(
enrichedComponent[setting.key] enrichedComponent[setting.key]

View File

@ -16,6 +16,7 @@
import { QueryUtils, Constants } from "@budibase/frontend-core" import { QueryUtils, Constants } from "@budibase/frontend-core"
import { getContext, createEventDispatcher } from "svelte" import { getContext, createEventDispatcher } from "svelte"
import FilterField from "./FilterField.svelte" import FilterField from "./FilterField.svelte"
import { utils } from "@budibase/shared-core"
const dispatch = createEventDispatcher() const dispatch = createEventDispatcher()
const { const {
@ -39,8 +40,7 @@
export let toReadable export let toReadable
export let toRuntime export let toRuntime
$: editableFilters = filters ? Helpers.cloneDeep(filters) : null $: editableFilters = migrateFilters(filters)
$: { $: {
if ( if (
tables.find( tables.find(
@ -54,6 +54,16 @@
} }
} }
// We still may need to migrate this even though the backend does it automatically nmow
// for query definitions. This is because we might be editing saved filter definitions
// from old screens, which will still be of type LegacyFilter[]
const migrateFilters = filters => {
if (Array.isArray(filters)) {
return utils.processSearchFilters(filters)
}
return Helpers.cloneDeep(filters)
}
const filterOperatorOptions = Object.values(FilterOperator).map(entry => { const filterOperatorOptions = Object.values(FilterOperator).map(entry => {
return { value: entry, label: Helpers.capitalise(entry) } return { value: entry, label: Helpers.capitalise(entry) }
}) })

View File

@ -126,6 +126,7 @@ export const initialise = context => {
} }
// Only override filter state if we don't have an initial filter // Only override filter state if we don't have an initial filter
if (!get(initialFilter)) { if (!get(initialFilter)) {
console.log("setting to", $definition.queryUI)
filter.set($definition.queryUI) filter.set($definition.queryUI)
} }
}) })