From 755a02f4a2d3bb459258ca50a520bfd4769124af Mon Sep 17 00:00:00 2001 From: Oliver Date: Fri, 5 Sep 2025 16:48:45 +1000 Subject: [PATCH] Improve part parameter table (#10272) - Handle empty filter values --- .../src/tables/part/ParametricPartTable.tsx | 26 +++++++++++-------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/src/frontend/src/tables/part/ParametricPartTable.tsx b/src/frontend/src/tables/part/ParametricPartTable.tsx index 164df80d21..01b84c7d72 100644 --- a/src/frontend/src/tables/part/ParametricPartTable.tsx +++ b/src/frontend/src/tables/part/ParametricPartTable.tsx @@ -166,7 +166,7 @@ export default function ParametricPartTable({ const paramFilters = filters[filterName] || {}; - if (paramFilters[operator]) { + if (paramFilters[operator] !== undefined) { // Remove the specific operator filter delete paramFilters[operator]; } @@ -192,19 +192,23 @@ export default function ParametricPartTable({ (templateId: number, value: string, operator: string) => { const filterName = `parameter_${templateId}`; - setParameterFilters((prev: any) => { - const filters = { ...prev }; - const paramFilters = filters[filterName] || {}; + const filterValue = value?.toString().trim() ?? ''; - paramFilters[operator] = value; + if (filterValue.length > 0) { + setParameterFilters((prev: any) => { + const filters = { ...prev }; + const paramFilters = filters[filterName] || {}; - return { - ...filters, - [filterName]: paramFilters - }; - }); + paramFilters[operator] = filterValue; - table.refreshTable(); + return { + ...filters, + [filterName]: paramFilters + }; + }); + + table.refreshTable(); + } }, [setParameterFilters, clearParameterFilter, table.refreshTable] );