From 7adbe017231d88a98ab5487a597c30b4dfc4db19 Mon Sep 17 00:00:00 2001 From: Jeremy Gallant <8975765+philon-@users.noreply.github.com> Date: Wed, 18 Jun 2025 16:02:42 +0200 Subject: [PATCH] Add advanced filters (#655) * Add advanced filters * Review edits --------- Co-authored-by: philon- --- .../generic/Filter/FilterControl.tsx | 32 ++++++++++++++++--- .../generic/Filter/useFilterNode.test.ts | 22 +++++++++++++ .../generic/Filter/useFilterNode.ts | 18 +++++++++++ src/i18n/locales/en/ui.json | 9 ++++++ 4 files changed, 77 insertions(+), 4 deletions(-) diff --git a/src/components/generic/Filter/FilterControl.tsx b/src/components/generic/Filter/FilterControl.tsx index 87ff3723..f3c0c14c 100644 --- a/src/components/generic/Filter/FilterControl.tsx +++ b/src/components/generic/Filter/FilterControl.tsx @@ -190,10 +190,12 @@ export function FilterControl({ ); const handleBoolChange = useCallback( - (key: K, value: string) => { - const typedValue = value === "" - ? undefined - : JSON.parse(value.toLowerCase()); + (key: K, value: string | boolean) => { + const typedValue = value === true || value === "true" + ? true + : value === false || value === "false" + ? false + : undefined; setFilterState((prev) => ({ ...prev, @@ -386,6 +388,28 @@ export function FilterControl({ formatEnumLabel(Protobuf.Mesh.HardwareModel[val])} /> + + + +