@aguacerowx/react-native 0.0.31 → 0.0.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/AguaceroPackage.class.uniqueId1 +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/{GridRenderLayer$VertexInfo.class.uniqueId0 → GridRenderLayer$VertexInfo.class.uniqueId2} +0 -0
- package/{lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer.class.uniqueId1 → android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer.class.uniqueId3} +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId4 +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderManager.class.uniqueId0 +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId5 +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/AguaceroPackage.class.uniqueId1 +0 -0
- package/lib/{module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer$VertexInfo.class.uniqueId0 → commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer$VertexInfo.class.uniqueId2} +0 -0
- package/{android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer.class.uniqueId1 → lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer.class.uniqueId3} +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId4 +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderManager.class.uniqueId0 +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId5 +0 -0
- package/lib/commonjs/package.json +1 -1
- package/lib/commonjs/src/WeatherLayerManager.js +75 -3
- package/lib/commonjs/src/WeatherLayerManager.js.map +1 -1
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/AguaceroPackage.class.uniqueId1 +0 -0
- package/lib/{commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer$VertexInfo.class.uniqueId0 → module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer$VertexInfo.class.uniqueId2} +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/{GridRenderLayer.class.uniqueId1 → GridRenderLayer.class.uniqueId3} +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId4 +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderManager.class.uniqueId0 +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId5 +0 -0
- package/lib/module/lib/commonjs/ios/generated/AguaceroWxReactNativeSpec.h +0 -0
- package/lib/module/lib/commonjs/package.json +1 -1
- package/lib/module/lib/commonjs/src/WeatherLayerManager.js +75 -3
- package/lib/module/lib/commonjs/src/WeatherLayerManager.js.map +1 -1
- package/lib/module/package.json +1 -1
- package/lib/module/src/WeatherLayerManager.js +76 -4
- package/lib/module/src/WeatherLayerManager.js.map +1 -1
- package/lib/typescript/src/WeatherLayerManager.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/WeatherLayerManager.js +82 -7
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -89,6 +89,7 @@ const WeatherLayerManager = exports.WeatherLayerManager = /*#__PURE__*/(0, _reac
|
|
|
89
89
|
initialVariable,
|
|
90
90
|
autoRefresh,
|
|
91
91
|
autoRefreshInterval,
|
|
92
|
+
initialModel,
|
|
92
93
|
...restProps
|
|
93
94
|
} = props;
|
|
94
95
|
const context = (0, _react.useContext)(_AguaceroContext.AguaceroContext);
|
|
@@ -100,7 +101,8 @@ const WeatherLayerManager = exports.WeatherLayerManager = /*#__PURE__*/(0, _reac
|
|
|
100
101
|
// ADD: Pass layerOptions to the core's constructor
|
|
101
102
|
layerOptions: {
|
|
102
103
|
mode: initialMode,
|
|
103
|
-
variable: initialVariable
|
|
104
|
+
variable: initialVariable,
|
|
105
|
+
model: initialModel
|
|
104
106
|
}
|
|
105
107
|
}), [apiKey]);
|
|
106
108
|
const gridLayerRef = (0, _react.useRef)(null);
|
|
@@ -269,7 +271,6 @@ const WeatherLayerManager = exports.WeatherLayerManager = /*#__PURE__*/(0, _reac
|
|
|
269
271
|
// Double-check currentFrame is valid
|
|
270
272
|
if (currentFrame == null) {
|
|
271
273
|
hasPreloadedRef.current = false;
|
|
272
|
-
return;
|
|
273
274
|
}
|
|
274
275
|
|
|
275
276
|
// Reverse the frame order to load from last to first
|
|
@@ -312,10 +313,32 @@ const WeatherLayerManager = exports.WeatherLayerManager = /*#__PURE__*/(0, _reac
|
|
|
312
313
|
baseUnit
|
|
313
314
|
} = core._getColormapForVariable(variable);
|
|
314
315
|
const toUnit = core._getTargetUnit(baseUnit, units);
|
|
316
|
+
const fieldInfo = _javascriptSdk.DICTIONARIES?.fld?.[variable] || {};
|
|
317
|
+
const serverDataUnit = fieldInfo.defaultUnit || baseUnit;
|
|
315
318
|
let dataScale = result.scale;
|
|
316
319
|
let dataOffset = result.offset;
|
|
317
320
|
let convertedScale = dataScale;
|
|
318
321
|
let convertedOffset = dataOffset;
|
|
322
|
+
if (serverDataUnit !== baseUnit) {
|
|
323
|
+
const conversionFunc = (0, _javascriptSdk.getUnitConversionFunction)(serverDataUnit, baseUnit);
|
|
324
|
+
if (conversionFunc) {
|
|
325
|
+
if (result.scaleType === 'sqrt') {
|
|
326
|
+
const physicalAtOffset = dataOffset * dataOffset;
|
|
327
|
+
const physicalAtOffsetPlusScale = (dataOffset + dataScale) * (dataOffset + dataScale);
|
|
328
|
+
const convertedPhysicalAtOffset = conversionFunc(physicalAtOffset);
|
|
329
|
+
const convertedPhysicalAtOffsetPlusScale = conversionFunc(physicalAtOffsetPlusScale);
|
|
330
|
+
convertedOffset = Math.sqrt(Math.abs(convertedPhysicalAtOffset)) * Math.sign(convertedPhysicalAtOffset);
|
|
331
|
+
const newOffsetPlusScale = Math.sqrt(Math.abs(convertedPhysicalAtOffsetPlusScale)) * Math.sign(convertedPhysicalAtOffsetPlusScale);
|
|
332
|
+
convertedScale = newOffsetPlusScale - convertedOffset;
|
|
333
|
+
} else {
|
|
334
|
+
convertedOffset = conversionFunc(dataOffset);
|
|
335
|
+
const convertedOffsetPlusScale = conversionFunc(dataOffset + dataScale);
|
|
336
|
+
convertedScale = convertedOffsetPlusScale - convertedOffset;
|
|
337
|
+
}
|
|
338
|
+
dataScale = convertedScale;
|
|
339
|
+
dataOffset = convertedOffset;
|
|
340
|
+
}
|
|
341
|
+
}
|
|
319
342
|
if (baseUnit !== toUnit) {
|
|
320
343
|
const conversionFunc = (0, _javascriptSdk.getUnitConversionFunction)(baseUnit, toUnit);
|
|
321
344
|
if (conversionFunc) {
|
|
@@ -365,7 +388,6 @@ const WeatherLayerManager = exports.WeatherLayerManager = /*#__PURE__*/(0, _reac
|
|
|
365
388
|
} catch (error) {
|
|
366
389
|
console.warn(`⚠️ [preloadAllFramesToDisk] Failed frame ${currentFrame}:`, error);
|
|
367
390
|
hasPreloadedRef.current = false;
|
|
368
|
-
return;
|
|
369
391
|
}
|
|
370
392
|
}
|
|
371
393
|
|
|
@@ -396,14 +418,42 @@ const WeatherLayerManager = exports.WeatherLayerManager = /*#__PURE__*/(0, _reac
|
|
|
396
418
|
console.warn(`⚠️ [preloadAllFramesToDisk] Failed frame ${frame}: No filePath`);
|
|
397
419
|
return;
|
|
398
420
|
}
|
|
421
|
+
|
|
422
|
+
// ADD: Same two-step conversion as the current frame
|
|
399
423
|
const {
|
|
400
424
|
baseUnit
|
|
401
425
|
} = core._getColormapForVariable(variable);
|
|
402
426
|
const toUnit = core._getTargetUnit(baseUnit, units);
|
|
427
|
+
const fieldInfo = _javascriptSdk.DICTIONARIES?.fld?.[variable] || {};
|
|
428
|
+
const serverDataUnit = fieldInfo.defaultUnit || baseUnit;
|
|
403
429
|
let dataScale = result.scale;
|
|
404
430
|
let dataOffset = result.offset;
|
|
405
431
|
let convertedScale = dataScale;
|
|
406
432
|
let convertedOffset = dataOffset;
|
|
433
|
+
|
|
434
|
+
// Step 1: Convert from server unit to colormap base unit
|
|
435
|
+
if (serverDataUnit !== baseUnit) {
|
|
436
|
+
const conversionFunc = (0, _javascriptSdk.getUnitConversionFunction)(serverDataUnit, baseUnit);
|
|
437
|
+
if (conversionFunc) {
|
|
438
|
+
if (result.scaleType === 'sqrt') {
|
|
439
|
+
const physicalAtOffset = dataOffset * dataOffset;
|
|
440
|
+
const physicalAtOffsetPlusScale = (dataOffset + dataScale) * (dataOffset + dataScale);
|
|
441
|
+
const convertedPhysicalAtOffset = conversionFunc(physicalAtOffset);
|
|
442
|
+
const convertedPhysicalAtOffsetPlusScale = conversionFunc(physicalAtOffsetPlusScale);
|
|
443
|
+
convertedOffset = Math.sqrt(Math.abs(convertedPhysicalAtOffset)) * Math.sign(convertedPhysicalAtOffset);
|
|
444
|
+
const newOffsetPlusScale = Math.sqrt(Math.abs(convertedPhysicalAtOffsetPlusScale)) * Math.sign(convertedPhysicalAtOffsetPlusScale);
|
|
445
|
+
convertedScale = newOffsetPlusScale - convertedOffset;
|
|
446
|
+
} else {
|
|
447
|
+
convertedOffset = conversionFunc(dataOffset);
|
|
448
|
+
const convertedOffsetPlusScale = conversionFunc(dataOffset + dataScale);
|
|
449
|
+
convertedScale = convertedOffsetPlusScale - convertedOffset;
|
|
450
|
+
}
|
|
451
|
+
dataScale = convertedScale;
|
|
452
|
+
dataOffset = convertedOffset;
|
|
453
|
+
}
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
// Step 2: Convert from colormap base unit to target display unit
|
|
407
457
|
if (baseUnit !== toUnit) {
|
|
408
458
|
const conversionFunc = (0, _javascriptSdk.getUnitConversionFunction)(baseUnit, toUnit);
|
|
409
459
|
if (conversionFunc) {
|
|
@@ -814,8 +864,30 @@ const WeatherLayerManager = exports.WeatherLayerManager = /*#__PURE__*/(0, _reac
|
|
|
814
864
|
baseUnit
|
|
815
865
|
} = core._getColormapForVariable(variable);
|
|
816
866
|
const toUnit = core._getTargetUnit(baseUnit, units);
|
|
867
|
+
const fieldInfo = _javascriptSdk.DICTIONARIES?.fld?.[variable] || {};
|
|
868
|
+
const serverDataUnit = fieldInfo.defaultUnit || baseUnit;
|
|
817
869
|
let dataScale = cachedData.originalScale;
|
|
818
870
|
let dataOffset = cachedData.originalOffset;
|
|
871
|
+
if (serverDataUnit !== baseUnit) {
|
|
872
|
+
const conversionFunc = (0, _javascriptSdk.getUnitConversionFunction)(serverDataUnit, baseUnit);
|
|
873
|
+
if (conversionFunc) {
|
|
874
|
+
if (cachedData.scaleType === 'sqrt') {
|
|
875
|
+
const physicalAtOffset = dataOffset * dataOffset;
|
|
876
|
+
const physicalAtOffsetPlusScale = (dataOffset + dataScale) * (dataOffset + dataScale);
|
|
877
|
+
const convertedPhysicalAtOffset = conversionFunc(physicalAtOffset);
|
|
878
|
+
const convertedPhysicalAtOffsetPlusScale = conversionFunc(physicalAtOffsetPlusScale);
|
|
879
|
+
const newOffset = Math.sqrt(Math.abs(convertedPhysicalAtOffset)) * Math.sign(convertedPhysicalAtOffset);
|
|
880
|
+
const newOffsetPlusScale = Math.sqrt(Math.abs(convertedPhysicalAtOffsetPlusScale)) * Math.sign(convertedPhysicalAtOffsetPlusScale);
|
|
881
|
+
dataScale = newOffsetPlusScale - newOffset;
|
|
882
|
+
dataOffset = newOffset;
|
|
883
|
+
} else {
|
|
884
|
+
const convertedOffset = conversionFunc(dataOffset);
|
|
885
|
+
const convertedOffsetPlusScale = conversionFunc(dataOffset + dataScale);
|
|
886
|
+
dataScale = convertedOffsetPlusScale - convertedOffset;
|
|
887
|
+
dataOffset = convertedOffset;
|
|
888
|
+
}
|
|
889
|
+
}
|
|
890
|
+
}
|
|
819
891
|
if (baseUnit !== toUnit) {
|
|
820
892
|
const conversionFunc = (0, _javascriptSdk.getUnitConversionFunction)(baseUnit, toUnit);
|
|
821
893
|
if (conversionFunc) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_javascriptSdk","_AguaceroContext","_GridRenderLayer","_base64Js","_reactNative","_MapRegistry","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","findLatestModelRun","modelsData","modelName","model","availableDates","keys","sort","a","b","localeCompare","date","runs","availableRuns","length","run","WeatherFrameProcessorModule","InspectorModule","NativeModules","_generateColormapBytes","colormap","width","data","Uint8Array","stops","reduce","acc","_","value","color","minVal","maxVal","hexToRgb","hex","parseInt","slice","g","val","lower","upper","j","lowerRgb","upperRgb","rgb","map","c","idx","offset","Math","round","AguaceroCore","prototype","setMapCenter","center","emit","WeatherLayerManager","exports","forwardRef","props","ref","inspectorEnabled","onInspect","apiKey","customColormaps","initialMode","initialVariable","autoRefresh","autoRefreshInterval","restProps","context","useContext","AguaceroContext","core","useMemo","layerOptions","mode","variable","gridLayerRef","useRef","currentGridDataRef","autoRefreshIntervalId","preloadedDataCache","Map","cachedGeometry","cachedColormap","cachedDataRange","hasInitialLoad","hasPreloadedRef","lastProcessedState","previousStateRef","renderProps","setRenderProps","useState","opacity","dataRange","useImperativeHandle","setAutoRefresh","enabled","intervalSeconds","current","clearInterval","effectiveInterval","_checkForUpdates","setInterval","play","pause","togglePlay","step","direction","setPlaybackSpeed","speed","playbackSpeed","isPlaying","setOpacity","setUnits","units","switchMode","options","getAvailableVariables","getVariableDisplayName","code","setRun","runString","setState","split","newState","setMRMSTimestamp","timestamp","setSmoothing","refreshData","preloadAllFramesToDisk","state","isMRMS","availableHours","availableTimestamps","forecastHour","mrmsTimestamp","effectiveForecastHour","validHours","filter","hour","gridModel","corners","gridDef","_getGridCornersAndDef","updateGeometry","baseUnit","_getColormapForVariable","toUnit","_getTargetUnit","finalColormap","_convertColormapUnits","colormapBytes","colormapAsBase64","fromByteArray","updateColormapTexture","key","filteredHours","allFrames","currentFrame","reversedFrames","reverse","framesToPreload","frame","nx","ny","grid_params","currentCacheKey","resourcePath","frameDate","Date","y","getUTCFullYear","m","getUTCMonth","toString","padStart","d","getUTCDate","url","baseGridUrl","bundleId","result","processFrame","filePath","dataScale","scale","dataOffset","convertedScale","convertedOffset","conversionFunc","getUnitConversionFunction","scaleType","physicalAtOffset","physicalAtOffsetPlusScale","convertedPhysicalAtOffset","convertedPhysicalAtOffsetPlusScale","sqrt","abs","sign","newOffsetPlusScale","convertedOffsetPlusScale","frameData","missing","originalScale","originalOffset","updateDataTextureFromFile","error","console","warn","forEach","cacheKey","then","Platform","OS","primeGpuCache","frameInfoForGpu","catch","useEffect","interval","updateGPUWithCachedData","setActiveFrame","cachedData","colormapKey","prev","dataAsBase64","updateDataTexture","binaryString","atob","uint8Array","charCodeAt","updateDataParameters","handleStateChangeRef","debounceTimeoutRef","_emitStateChange","getValueAtPoint","lng","lat","gridIndices","_getGridIndexFromLngLat","getValueAtGridIndex","displayUnit","minThreshold","isFinite","unit","name","lngLat","currentModel","currentVariable","oldTimestamps","Set","mrmsStatus","fetchMRMSStatus","newTimestamps","newTimestampsToPreload","ts","newTimestampsSet","oldTs","delete","modelStatus","fetchModelStatus","latestRun","currentRunKey","latestRunKey","handleStateChange","onStateChange","variableChanged","setVariable","stateKey","isOpacityOnlyChange","isPlayStateOnlyChange","isUnitsOnlyChange","oldCacheKey","undefined","newOffset","scaleTypeValue","newCacheKey","needsFullLoad","clear","clearGpuCache","cancelAllFrames","success","stableHandler","clearTimeout","setTimeout","on","off","lastInspectorUpdateRef","INSPECTOR_THROTTLE_MS","handleMapMove","Array","isArray","now","longitude","latitude","payload","getCenter","triggerReinspection","mapRef","mapRegistry","getMap","_currentCenter","timer","handleCameraChange","addCameraListener","removeCameraListener","initialize","destroy","createElement","GridRenderLayer","belowID"],"sourceRoot":"..\\..\\..","sources":["src/WeatherLayerManager.js"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_javascriptSdk","_AguaceroContext","_GridRenderLayer","_base64Js","_reactNative","_MapRegistry","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","findLatestModelRun","modelsData","modelName","model","availableDates","keys","sort","a","b","localeCompare","date","runs","availableRuns","length","run","WeatherFrameProcessorModule","InspectorModule","NativeModules","_generateColormapBytes","colormap","width","data","Uint8Array","stops","reduce","acc","_","value","color","minVal","maxVal","hexToRgb","hex","parseInt","slice","g","val","lower","upper","j","lowerRgb","upperRgb","rgb","map","c","idx","offset","Math","round","AguaceroCore","prototype","setMapCenter","center","emit","WeatherLayerManager","exports","forwardRef","props","ref","inspectorEnabled","onInspect","apiKey","customColormaps","initialMode","initialVariable","autoRefresh","autoRefreshInterval","initialModel","restProps","context","useContext","AguaceroContext","core","useMemo","layerOptions","mode","variable","gridLayerRef","useRef","currentGridDataRef","autoRefreshIntervalId","preloadedDataCache","Map","cachedGeometry","cachedColormap","cachedDataRange","hasInitialLoad","hasPreloadedRef","lastProcessedState","previousStateRef","renderProps","setRenderProps","useState","opacity","dataRange","useImperativeHandle","setAutoRefresh","enabled","intervalSeconds","current","clearInterval","effectiveInterval","_checkForUpdates","setInterval","play","pause","togglePlay","step","direction","setPlaybackSpeed","speed","playbackSpeed","isPlaying","setOpacity","setUnits","units","switchMode","options","getAvailableVariables","getVariableDisplayName","code","setRun","runString","setState","split","newState","setMRMSTimestamp","timestamp","setSmoothing","refreshData","preloadAllFramesToDisk","state","isMRMS","availableHours","availableTimestamps","forecastHour","mrmsTimestamp","effectiveForecastHour","validHours","filter","hour","gridModel","corners","gridDef","_getGridCornersAndDef","updateGeometry","baseUnit","_getColormapForVariable","toUnit","_getTargetUnit","finalColormap","_convertColormapUnits","colormapBytes","colormapAsBase64","fromByteArray","updateColormapTexture","key","filteredHours","allFrames","currentFrame","reversedFrames","reverse","framesToPreload","frame","nx","ny","grid_params","currentCacheKey","resourcePath","frameDate","Date","y","getUTCFullYear","m","getUTCMonth","toString","padStart","d","getUTCDate","url","baseGridUrl","bundleId","result","processFrame","filePath","fieldInfo","DICTIONARIES","fld","serverDataUnit","defaultUnit","dataScale","scale","dataOffset","convertedScale","convertedOffset","conversionFunc","getUnitConversionFunction","scaleType","physicalAtOffset","physicalAtOffsetPlusScale","convertedPhysicalAtOffset","convertedPhysicalAtOffsetPlusScale","sqrt","abs","sign","newOffsetPlusScale","convertedOffsetPlusScale","frameData","missing","originalScale","originalOffset","updateDataTextureFromFile","error","console","warn","forEach","cacheKey","then","Platform","OS","primeGpuCache","frameInfoForGpu","catch","useEffect","interval","updateGPUWithCachedData","setActiveFrame","cachedData","colormapKey","prev","dataAsBase64","updateDataTexture","binaryString","atob","uint8Array","charCodeAt","updateDataParameters","handleStateChangeRef","debounceTimeoutRef","_emitStateChange","getValueAtPoint","lng","lat","gridIndices","_getGridIndexFromLngLat","getValueAtGridIndex","displayUnit","minThreshold","isFinite","unit","name","lngLat","currentModel","currentVariable","oldTimestamps","Set","mrmsStatus","fetchMRMSStatus","newTimestamps","newTimestampsToPreload","ts","newTimestampsSet","oldTs","delete","modelStatus","fetchModelStatus","latestRun","currentRunKey","latestRunKey","handleStateChange","onStateChange","variableChanged","setVariable","stateKey","isOpacityOnlyChange","isPlayStateOnlyChange","isUnitsOnlyChange","oldCacheKey","undefined","newOffset","scaleTypeValue","newCacheKey","needsFullLoad","clear","clearGpuCache","cancelAllFrames","success","stableHandler","clearTimeout","setTimeout","on","off","lastInspectorUpdateRef","INSPECTOR_THROTTLE_MS","handleMapMove","Array","isArray","now","longitude","latitude","payload","getCenter","triggerReinspection","mapRef","mapRegistry","getMap","_currentCenter","timer","handleCameraChange","addCameraListener","removeCameraListener","initialize","destroy","createElement","GridRenderLayer","belowID"],"sourceRoot":"..\\..\\..","sources":["src/WeatherLayerManager.js"],"mappings":"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","ignoreList":[]}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
File without changes
|
|
@@ -108,6 +108,7 @@ const WeatherLayerManager = exports.WeatherLayerManager = /*#__PURE__*/(0, _reac
|
|
|
108
108
|
initialVariable,
|
|
109
109
|
autoRefresh,
|
|
110
110
|
autoRefreshInterval,
|
|
111
|
+
initialModel,
|
|
111
112
|
...restProps
|
|
112
113
|
} = props;
|
|
113
114
|
const context = (0, _react.useContext)(_AguaceroContext.AguaceroContext);
|
|
@@ -119,7 +120,8 @@ const WeatherLayerManager = exports.WeatherLayerManager = /*#__PURE__*/(0, _reac
|
|
|
119
120
|
// ADD: Pass layerOptions to the core's constructor
|
|
120
121
|
layerOptions: {
|
|
121
122
|
mode: initialMode,
|
|
122
|
-
variable: initialVariable
|
|
123
|
+
variable: initialVariable,
|
|
124
|
+
model: initialModel
|
|
123
125
|
}
|
|
124
126
|
}), [apiKey]);
|
|
125
127
|
const gridLayerRef = (0, _react.useRef)(null);
|
|
@@ -288,7 +290,6 @@ const WeatherLayerManager = exports.WeatherLayerManager = /*#__PURE__*/(0, _reac
|
|
|
288
290
|
// Double-check currentFrame is valid
|
|
289
291
|
if (currentFrame == null) {
|
|
290
292
|
hasPreloadedRef.current = false;
|
|
291
|
-
return;
|
|
292
293
|
}
|
|
293
294
|
|
|
294
295
|
// Reverse the frame order to load from last to first
|
|
@@ -331,10 +332,32 @@ const WeatherLayerManager = exports.WeatherLayerManager = /*#__PURE__*/(0, _reac
|
|
|
331
332
|
baseUnit
|
|
332
333
|
} = core._getColormapForVariable(variable);
|
|
333
334
|
const toUnit = core._getTargetUnit(baseUnit, units);
|
|
335
|
+
const fieldInfo = _javascriptSdk.DICTIONARIES?.fld?.[variable] || {};
|
|
336
|
+
const serverDataUnit = fieldInfo.defaultUnit || baseUnit;
|
|
334
337
|
let dataScale = result.scale;
|
|
335
338
|
let dataOffset = result.offset;
|
|
336
339
|
let convertedScale = dataScale;
|
|
337
340
|
let convertedOffset = dataOffset;
|
|
341
|
+
if (serverDataUnit !== baseUnit) {
|
|
342
|
+
const conversionFunc = (0, _javascriptSdk.getUnitConversionFunction)(serverDataUnit, baseUnit);
|
|
343
|
+
if (conversionFunc) {
|
|
344
|
+
if (result.scaleType === 'sqrt') {
|
|
345
|
+
const physicalAtOffset = dataOffset * dataOffset;
|
|
346
|
+
const physicalAtOffsetPlusScale = (dataOffset + dataScale) * (dataOffset + dataScale);
|
|
347
|
+
const convertedPhysicalAtOffset = conversionFunc(physicalAtOffset);
|
|
348
|
+
const convertedPhysicalAtOffsetPlusScale = conversionFunc(physicalAtOffsetPlusScale);
|
|
349
|
+
convertedOffset = Math.sqrt(Math.abs(convertedPhysicalAtOffset)) * Math.sign(convertedPhysicalAtOffset);
|
|
350
|
+
const newOffsetPlusScale = Math.sqrt(Math.abs(convertedPhysicalAtOffsetPlusScale)) * Math.sign(convertedPhysicalAtOffsetPlusScale);
|
|
351
|
+
convertedScale = newOffsetPlusScale - convertedOffset;
|
|
352
|
+
} else {
|
|
353
|
+
convertedOffset = conversionFunc(dataOffset);
|
|
354
|
+
const convertedOffsetPlusScale = conversionFunc(dataOffset + dataScale);
|
|
355
|
+
convertedScale = convertedOffsetPlusScale - convertedOffset;
|
|
356
|
+
}
|
|
357
|
+
dataScale = convertedScale;
|
|
358
|
+
dataOffset = convertedOffset;
|
|
359
|
+
}
|
|
360
|
+
}
|
|
338
361
|
if (baseUnit !== toUnit) {
|
|
339
362
|
const conversionFunc = (0, _javascriptSdk.getUnitConversionFunction)(baseUnit, toUnit);
|
|
340
363
|
if (conversionFunc) {
|
|
@@ -384,7 +407,6 @@ const WeatherLayerManager = exports.WeatherLayerManager = /*#__PURE__*/(0, _reac
|
|
|
384
407
|
} catch (error) {
|
|
385
408
|
console.warn(`⚠️ [preloadAllFramesToDisk] Failed frame ${currentFrame}:`, error);
|
|
386
409
|
hasPreloadedRef.current = false;
|
|
387
|
-
return;
|
|
388
410
|
}
|
|
389
411
|
}
|
|
390
412
|
|
|
@@ -415,14 +437,42 @@ const WeatherLayerManager = exports.WeatherLayerManager = /*#__PURE__*/(0, _reac
|
|
|
415
437
|
console.warn(`⚠️ [preloadAllFramesToDisk] Failed frame ${frame}: No filePath`);
|
|
416
438
|
return;
|
|
417
439
|
}
|
|
440
|
+
|
|
441
|
+
// ADD: Same two-step conversion as the current frame
|
|
418
442
|
const {
|
|
419
443
|
baseUnit
|
|
420
444
|
} = core._getColormapForVariable(variable);
|
|
421
445
|
const toUnit = core._getTargetUnit(baseUnit, units);
|
|
446
|
+
const fieldInfo = _javascriptSdk.DICTIONARIES?.fld?.[variable] || {};
|
|
447
|
+
const serverDataUnit = fieldInfo.defaultUnit || baseUnit;
|
|
422
448
|
let dataScale = result.scale;
|
|
423
449
|
let dataOffset = result.offset;
|
|
424
450
|
let convertedScale = dataScale;
|
|
425
451
|
let convertedOffset = dataOffset;
|
|
452
|
+
|
|
453
|
+
// Step 1: Convert from server unit to colormap base unit
|
|
454
|
+
if (serverDataUnit !== baseUnit) {
|
|
455
|
+
const conversionFunc = (0, _javascriptSdk.getUnitConversionFunction)(serverDataUnit, baseUnit);
|
|
456
|
+
if (conversionFunc) {
|
|
457
|
+
if (result.scaleType === 'sqrt') {
|
|
458
|
+
const physicalAtOffset = dataOffset * dataOffset;
|
|
459
|
+
const physicalAtOffsetPlusScale = (dataOffset + dataScale) * (dataOffset + dataScale);
|
|
460
|
+
const convertedPhysicalAtOffset = conversionFunc(physicalAtOffset);
|
|
461
|
+
const convertedPhysicalAtOffsetPlusScale = conversionFunc(physicalAtOffsetPlusScale);
|
|
462
|
+
convertedOffset = Math.sqrt(Math.abs(convertedPhysicalAtOffset)) * Math.sign(convertedPhysicalAtOffset);
|
|
463
|
+
const newOffsetPlusScale = Math.sqrt(Math.abs(convertedPhysicalAtOffsetPlusScale)) * Math.sign(convertedPhysicalAtOffsetPlusScale);
|
|
464
|
+
convertedScale = newOffsetPlusScale - convertedOffset;
|
|
465
|
+
} else {
|
|
466
|
+
convertedOffset = conversionFunc(dataOffset);
|
|
467
|
+
const convertedOffsetPlusScale = conversionFunc(dataOffset + dataScale);
|
|
468
|
+
convertedScale = convertedOffsetPlusScale - convertedOffset;
|
|
469
|
+
}
|
|
470
|
+
dataScale = convertedScale;
|
|
471
|
+
dataOffset = convertedOffset;
|
|
472
|
+
}
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
// Step 2: Convert from colormap base unit to target display unit
|
|
426
476
|
if (baseUnit !== toUnit) {
|
|
427
477
|
const conversionFunc = (0, _javascriptSdk.getUnitConversionFunction)(baseUnit, toUnit);
|
|
428
478
|
if (conversionFunc) {
|
|
@@ -833,8 +883,30 @@ const WeatherLayerManager = exports.WeatherLayerManager = /*#__PURE__*/(0, _reac
|
|
|
833
883
|
baseUnit
|
|
834
884
|
} = core._getColormapForVariable(variable);
|
|
835
885
|
const toUnit = core._getTargetUnit(baseUnit, units);
|
|
886
|
+
const fieldInfo = _javascriptSdk.DICTIONARIES?.fld?.[variable] || {};
|
|
887
|
+
const serverDataUnit = fieldInfo.defaultUnit || baseUnit;
|
|
836
888
|
let dataScale = cachedData.originalScale;
|
|
837
889
|
let dataOffset = cachedData.originalOffset;
|
|
890
|
+
if (serverDataUnit !== baseUnit) {
|
|
891
|
+
const conversionFunc = (0, _javascriptSdk.getUnitConversionFunction)(serverDataUnit, baseUnit);
|
|
892
|
+
if (conversionFunc) {
|
|
893
|
+
if (cachedData.scaleType === 'sqrt') {
|
|
894
|
+
const physicalAtOffset = dataOffset * dataOffset;
|
|
895
|
+
const physicalAtOffsetPlusScale = (dataOffset + dataScale) * (dataOffset + dataScale);
|
|
896
|
+
const convertedPhysicalAtOffset = conversionFunc(physicalAtOffset);
|
|
897
|
+
const convertedPhysicalAtOffsetPlusScale = conversionFunc(physicalAtOffsetPlusScale);
|
|
898
|
+
const newOffset = Math.sqrt(Math.abs(convertedPhysicalAtOffset)) * Math.sign(convertedPhysicalAtOffset);
|
|
899
|
+
const newOffsetPlusScale = Math.sqrt(Math.abs(convertedPhysicalAtOffsetPlusScale)) * Math.sign(convertedPhysicalAtOffsetPlusScale);
|
|
900
|
+
dataScale = newOffsetPlusScale - newOffset;
|
|
901
|
+
dataOffset = newOffset;
|
|
902
|
+
} else {
|
|
903
|
+
const convertedOffset = conversionFunc(dataOffset);
|
|
904
|
+
const convertedOffsetPlusScale = conversionFunc(dataOffset + dataScale);
|
|
905
|
+
dataScale = convertedOffsetPlusScale - convertedOffset;
|
|
906
|
+
dataOffset = convertedOffset;
|
|
907
|
+
}
|
|
908
|
+
}
|
|
909
|
+
}
|
|
838
910
|
if (baseUnit !== toUnit) {
|
|
839
911
|
const conversionFunc = (0, _javascriptSdk.getUnitConversionFunction)(baseUnit, toUnit);
|
|
840
912
|
if (conversionFunc) {
|