@@ -83,9 +83,13 @@ const ClimateMap = observer(({ onMount = () => true }: ClimateMapProps) => {
8383 currentMonth : userStore . currentMonth ,
8484 selectedOptimism : userStore . selectedOptimism ,
8585 } ) ;
86+ const mapViewportBounds = mapDataStore . mapViewportBounds ;
87+ const dataResolution = mapDataStore . dataResolution ;
88+ const rawRegionTemperatureData =
89+ temperatureDataStore . rawRegionTemperatureData ;
90+ const rawRegionTemperatureDataLength = rawRegionTemperatureData . length ;
8691
8792 // Set theme to purple
88- // eslint-disable-next-line react-hooks/exhaustive-deps
8993 useEffect ( ( ) => {
9094 document . documentElement . setAttribute ( "data-theme" , "purple" ) ;
9195 } , [ ] ) ;
@@ -95,7 +99,7 @@ const ClimateMap = observer(({ onMount = () => true }: ClimateMapProps) => {
9599 useEffect ( ( ) => {
96100 const loadData = async ( ) => {
97101 // Avoid global requests before viewport is known in grid mode
98- if ( userStore . mapMode === "grid" && ! mapDataStore . mapViewportBounds ) {
102+ if ( userStore . mapMode === "grid" && ! mapViewportBounds ) {
99103 console . log ( "Skipping grid data load until viewport is available" ) ;
100104 return ;
101105 }
@@ -104,11 +108,11 @@ const ClimateMap = observer(({ onMount = () => true }: ClimateMapProps) => {
104108 console . log ( `Loading lat/lon data for ${ userStore . mapMode } mode` ) ;
105109 console . log (
106110 "🗺️ Current mapViewportBounds when loading data:" ,
107- mapDataStore . mapViewportBounds ,
111+ mapViewportBounds ,
108112 ) ;
109113
110114 // Use current viewport bounds for data fetching
111- const viewportBoundsToUse = mapDataStore . mapViewportBounds ;
115+ const viewportBoundsToUse = mapViewportBounds ;
112116 console . log ( "🔄 Using viewport bounds:" , viewportBoundsToUse ) ;
113117
114118 await temperatureDataStore . loadTemperatureData (
@@ -124,7 +128,7 @@ const ClimateMap = observer(({ onMount = () => true }: ClimateMapProps) => {
124128 mapDataStore . setIsLoadingRawData ,
125129 setGeneralError ,
126130 viewportBoundsToUse ,
127- mapDataStore . dataResolution ,
131+ dataResolution ,
128132 ) ;
129133 }
130134
@@ -146,8 +150,8 @@ const ClimateMap = observer(({ onMount = () => true }: ClimateMapProps) => {
146150 setNoDataModalVisible ,
147151 setDataFetchErrorMessage ,
148152 setGeneralError ,
149- mapDataStore . mapViewportBounds ,
150- mapDataStore . dataResolution ,
153+ mapViewportBounds ,
154+ dataResolution ,
151155 ] ) ;
152156
153157 // Handle popup close button clicks
@@ -318,9 +322,9 @@ const ClimateMap = observer(({ onMount = () => true }: ClimateMapProps) => {
318322 useEffect ( ( ) => {
319323 console . log ( "GRID-PROBLEM-DEBUG effect: processData start" , {
320324 mapMode : userStore . mapMode ,
321- rawLen : temperatureDataStore . rawRegionTemperatureData . length ,
322- hasViewport : ! ! mapDataStore . mapViewportBounds ,
323- dataResolution : mapDataStore . dataResolution ,
325+ rawLen : rawRegionTemperatureDataLength ,
326+ hasViewport : ! ! mapViewportBounds ,
327+ dataResolution,
324328 dataProcessingError,
325329 } ) ;
326330 // Skip processing if there's already a processing error or in Europe mode
@@ -333,7 +337,7 @@ const ClimateMap = observer(({ onMount = () => true }: ClimateMapProps) => {
333337 return ;
334338 }
335339
336- const rawDataLength = temperatureDataStore . rawRegionTemperatureData . length ;
340+ const rawDataLength = rawRegionTemperatureDataLength ;
337341 console . log ( "GRID-PROBLEM-DEBUG effect: rawDataLength" , rawDataLength ) ;
338342
339343 const processData = async ( ) => {
@@ -354,7 +358,7 @@ const ClimateMap = observer(({ onMount = () => true }: ClimateMapProps) => {
354358 mapDataStore . setIsProcessingWorldwideRegionData ( true ) ;
355359 const { processedGeoJSON, extremes } =
356360 await regionProcessor . processWorldwideRegions (
357- temperatureDataStore . rawRegionTemperatureData ,
361+ rawRegionTemperatureData ,
358362 temperatureDataStore . worldwideRegionBoundaries ,
359363 ) ;
360364 mapDataStore . setProcessedWorldwideRegions ( processedGeoJSON ) ;
@@ -372,20 +376,15 @@ const ClimateMap = observer(({ onMount = () => true }: ClimateMapProps) => {
372376 const gridBuildRequestId = ++ latestGridBuildRequestRef . current ;
373377 console . log ( "GRID-PROBLEM-DEBUG grid branch entry" , {
374378 rawDataLength,
375- viewport : mapDataStore . mapViewportBounds ,
376- resolution : mapDataStore . dataResolution ,
379+ viewport : mapViewportBounds ,
380+ resolution : dataResolution ,
377381 } ) ;
378382 console . log ( "Grid processing check:" , userStore . mapMode , rawDataLength ) ;
379- console . log (
380- "mapDataStore.mapViewportBounds:" ,
381- mapDataStore . mapViewportBounds ,
382- ) ;
383- console . log ( "dataResolution:" , mapDataStore . dataResolution ) ;
383+ console . log ( "mapDataStore.mapViewportBounds:" , mapViewportBounds ) ;
384+ console . log ( "dataResolution:" , dataResolution ) ;
384385
385386 // Grid mode: set extremes from raw temperature data and generate grid cells
386- const temps = temperatureDataStore . rawRegionTemperatureData . map (
387- ( d ) => d . temperature ,
388- ) ;
387+ const temps = rawRegionTemperatureData . map ( ( d ) => d . temperature ) ;
389388 const extremes = {
390389 min : Math . min ( ...temps ) ,
391390 max : Math . max ( ...temps ) ,
@@ -394,15 +393,15 @@ const ClimateMap = observer(({ onMount = () => true }: ClimateMapProps) => {
394393
395394 // Generate grid cells using MobX store
396395 console . log ( "About to call generateGridCellsFromTemperatureData" ) ;
397- const viewportBounds = mapDataStore . mapViewportBounds ;
398- const resolution = mapDataStore . dataResolution ;
396+ const viewportBounds = mapViewportBounds ;
397+ const resolution = dataResolution ;
399398 console . log ( "GRID-PROBLEM-DEBUG before gridProcessingStore.generate" , {
400399 viewportBounds,
401400 resolution,
402401 } ) ;
403402 const nextGridCells =
404403 gridProcessingStore . generateGridCellsFromTemperatureData (
405- temperatureDataStore . rawRegionTemperatureData ,
404+ rawRegionTemperatureData ,
406405 viewportBounds ,
407406 resolution ,
408407 ) ;
@@ -443,10 +442,10 @@ const ClimateMap = observer(({ onMount = () => true }: ClimateMapProps) => {
443442 dataProcessingError ,
444443 setDataProcessingError ,
445444 setGeneralError ,
446- temperatureDataStore . rawRegionTemperatureData ,
447- temperatureDataStore . rawRegionTemperatureData . length ,
448- mapDataStore . mapViewportBounds ,
449- mapDataStore . dataResolution ,
445+ rawRegionTemperatureData ,
446+ rawRegionTemperatureDataLength ,
447+ mapViewportBounds ,
448+ dataResolution ,
450449 ] ) ;
451450
452451 // Cleanup timeouts on unmount
0 commit comments