From d437f64fcb2cddf6e79f71e2f74a805ccf887521 Mon Sep 17 00:00:00 2001 From: tglide <26071571+TGlide@users.noreply.github.com> Date: Mon, 7 Aug 2023 13:00:52 +0100 Subject: [PATCH] improve filtering --- .../collection-[collection]/filters.svelte | 75 ++++++++++--------- 1 file changed, 38 insertions(+), 37 deletions(-) diff --git a/src/routes/console/project-[project]/databases/database-[database]/collection-[collection]/filters.svelte b/src/routes/console/project-[project]/databases/database-[database]/collection-[collection]/filters.svelte index 60812ec33..63dd4a7a2 100644 --- a/src/routes/console/project-[project]/databases/database-[database]/collection-[collection]/filters.svelte +++ b/src/routes/console/project-[project]/databases/database-[database]/collection-[collection]/filters.svelte @@ -157,22 +157,19 @@ operatorKey = null; } - let valueStr: string | null = null; - let valueNum: number | null = null; - $: value = column?.type === 'integer' || column?.type === 'double' ? valueNum : valueStr; + // We cast to any to not cause type errors in the input components + let value: any = null; $: { columnId; - valueStr = null; - valueNum = null; + value = null; } // This Map is keyed by tags, and has a query as the value function addFilter() { if (column && operator) { queries.addFilter({ column, operator, value }); - valueStr = null; - valueNum = null; + value = null; } } @@ -180,7 +177,7 @@ node.innerHTML = node.innerHTML.replace(/\*\*(.*?)\*\*/g, '$1'); } - let applied = 0; + let applied = $queries.size; function apply() { queries.apply(); @@ -196,7 +193,7 @@ } $: isDisabled = (function getDisabled() { - return !operator || (column?.type === 'string' && !value); + return !operator || (!operator?.hideInput && !value); })(); @@ -211,35 +208,39 @@ {/if}
Apply filter rules to refine the table view
-