From c83ace710ff9a10620b260850e92b67bb9707316 Mon Sep 17 00:00:00 2001 From: vkuchenik Date: Fri, 30 Oct 2026 11:32:21 -0700 Subject: [PATCH] refactor: small styling changes --- .../src/pages/data_explorer/QueryBuilder.jsx | 45 +++++++++++++------ 1 file changed, 32 insertions(+), 13 deletions(-) diff --git a/client/src/pages/data_explorer/QueryBuilder.jsx b/client/src/pages/data_explorer/QueryBuilder.jsx index c7e9ec0..0082ceb 100644 --- a/client/src/pages/data_explorer/QueryBuilder.jsx +++ b/client/src/pages/data_explorer/QueryBuilder.jsx @@ -19,7 +19,7 @@ const FilterRow = React.memo(({ filter, columns, setUrl, bundleId, copiedFilter const operators = types[columnType] || ["="]; // default to equals if unknown const handleRemoveFilter = () => { - setUrl((prev) => ({ + setUrl(prev => ({ ...prev, bundles: prev.bundles.map((bundle) => bundle.id === bundleId ? @@ -30,13 +30,13 @@ const FilterRow = React.memo(({ filter, columns, setUrl, bundleId, copiedFilter }; const updateFilterField = (field, value) => { - setUrl((prev) => ({ + setUrl(prev => ({ ...prev, - bundles: prev.bundles.map((bundle) => + bundles: prev.bundles.map(bundle => bundle.id === bundleId ? { ...bundle, - filters: bundle.filters.map((fil) => + filters: bundle.filters.map(fil => fil.id === filter.id ? { ...fil, [field]: value } : fil ), } @@ -182,16 +182,29 @@ const FilterRow = React.memo(({ filter, columns, setUrl, bundleId, copiedFilter // ============================================================================ const FilterBundle = ({ bundle, columns, url, setUrl, copiedFilter }) => { const handleRemoveBundle = () => { - setUrl((prev) => ({ ...prev, bundles: prev.bundles.filter((b) => b.id !== bundle.id) })); + setUrl(prev => ({ + ...prev, + bundles: prev.bundles.filter(b => b.id !== bundle.id) + })); }; const handleAddFilter = () => { - setUrl((prev) => ({ + setUrl(prev => ({ ...prev, - bundles: prev.bundles.map((b) => - b.id === bundle.id - ? { ...b, filters: [...b.filters, { id: crypto.randomUUID(), column: null, type: null, operator: null, value: null }] } - : b + bundles: prev.bundles.map(b => + b.id === bundle.id ? ({ + ...b, + filters: [ + ...b.filters, + { + id: crypto.randomUUID(), + column: null, + type: null, + operator: null, + value: null + } + ] + }) : (b) ), })); }; @@ -224,13 +237,19 @@ export default function QueryBuilder({ url, setUrl, allColumns, getColumns, pull const copiedFilter = useRef(null); const handleAddBundle = () => { - setUrl((prev) => ({ + setUrl(prev => ({ ...prev, bundles: [ ...prev.bundles, { id: crypto.randomUUID(), - filters: [{ id: crypto.randomUUID(), column: null, type: null, operator: null, value: null }], + filters: [{ + id: crypto.randomUUID(), + column: null, + type: null, + operator: null, + value: null + }], }, ], })); @@ -249,7 +268,7 @@ export default function QueryBuilder({ url, setUrl, allColumns, getColumns, pull value={url.source || ""} onChange={(e) => { const selectedView = e.target.value; - setUrl((prev) => ({ ...prev, source: selectedView })); + setUrl(prev => ({ ...prev, source: selectedView })); // 🚨 FIXED: Now uses relative pathing for the production API const endpoint = "/api/v2/view_dash_event_search_columns"; getColumns(endpoint);