From e1fcd77180176b2adc66d96e97f6023ae34985d3 Mon Sep 17 00:00:00 2001 From: "Tanner Collin (aider)" Date: Fri, 15 Aug 2025 19:16:48 +0000 Subject: [PATCH] feat: display area search results in misc submenu --- mapper/src/App.js | 61 ++++++++++++++++++++++++++++++----------------- 1 file changed, 39 insertions(+), 22 deletions(-) diff --git a/mapper/src/App.js b/mapper/src/App.js index 30baa7a..79f771f 100644 --- a/mapper/src/App.js +++ b/mapper/src/App.js @@ -314,6 +314,7 @@ function Map({data, loading, end, duration, slider, mapState, setMapState, setSu function Menu({data, duration, setDuration, end, setEnd, slider, setSlider, submenu, setSubmenu, showDirection, setShowDirection, setMapState, shareStart, shareEnd, drawnItems}) { const [showRange, setShowRange] = useState(false); const [isSearching, setIsSearching] = useState(false); + const [searchResults, setSearchResults] = useState(null); const chooseDuration = (x) => { setSubmenu(false); @@ -451,7 +452,6 @@ function Menu({data, duration, setDuration, end, setEnd, slider, setSlider, subm const drawnRectangles = drawnItems.map(item => item.bounds); if (!drawnRectangles.length) { alert("Please draw one or more rectangles on the map first."); - setSubmenu(false); return; } @@ -474,16 +474,13 @@ function Menu({data, duration, setDuration, end, setEnd, slider, setSlider, subm { params: params } ); - console.log('Search results:', res.data); - alert('Search complete. Check the browser console for results.'); + setSearchResults(res.data); } catch (error) { console.error('Error during area search:', error); alert('An error occurred during the search.'); } finally { setIsSearching(false); } - - setSubmenu(false); }; const range = parseSlider(end, duration, slider); @@ -643,24 +640,44 @@ function Menu({data, duration, setDuration, end, setEnd, slider, setSlider, subm {submenu === 'misc' && <>
-

Misc

- +

{searchResults ? 'Search Results' : 'Misc'}

+ {searchResults ? ( + + ) : ( + + )}
- - - - - - + {searchResults ? ( + <> + {searchResults.length > 0 ? ( + searchResults.map((result, index) => ( + + )) + ) : ( +

No results found.

+ )} + + ) : ( + <> + + + + + + + + )} }