@aguacerowx/react-native 0.0.52 → 0.0.54
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/LICENSE +21 -0
- package/android/src/main/cpp/satellite_ktx_jni.cpp +6 -1
- package/android/src/main/java/com/aguacerowx/reactnative/NexradRadarLayerView.java +14 -2
- package/android/src/main/java/com/aguacerowx/reactnative/SatelliteLayer.java +121 -1
- package/android/src/main/java/com/aguacerowx/reactnative/SatelliteLayerView.java +556 -392
- package/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +77 -0
- package/index.js +1 -1
- package/ios/SatelliteLayerView.swift +517 -517
- package/ios/WeatherFrameProcessorModule.m +19 -15
- package/ios/WeatherFrameProcessorModule.swift +65 -0
- package/lib/commonjs/AguaceroContext.js +0 -4
- package/lib/commonjs/AguaceroContext.js.map +1 -1
- package/lib/commonjs/GridRenderLayer.js +62 -76
- package/lib/commonjs/GridRenderLayer.js.map +1 -1
- package/lib/commonjs/MapManager.js +110 -224
- package/lib/commonjs/MapManager.js.map +1 -1
- package/lib/commonjs/MapRegistry.js +21 -33
- package/lib/commonjs/MapRegistry.js.map +1 -1
- package/lib/commonjs/NexradRadarLayer.android.js +28 -100
- package/lib/commonjs/NexradRadarLayer.android.js.map +1 -1
- package/lib/commonjs/NexradRadarLayer.ios.js +26 -97
- package/lib/commonjs/NexradRadarLayer.ios.js.map +1 -1
- package/lib/commonjs/NexradSitesMapLayer.js +41 -61
- package/lib/commonjs/NexradSitesMapLayer.js.map +1 -1
- package/lib/commonjs/SatelliteLayer.android.js +26 -38
- package/lib/commonjs/SatelliteLayer.android.js.map +1 -1
- package/lib/commonjs/SatelliteLayer.ios.js +30 -42
- package/lib/commonjs/SatelliteLayer.ios.js.map +1 -1
- package/lib/commonjs/StyleApplicator.js +129 -175
- package/lib/commonjs/StyleApplicator.js.map +1 -1
- package/lib/commonjs/WeatherLayerManager.js +996 -1627
- package/lib/commonjs/WeatherLayerManager.js.map +1 -1
- package/lib/commonjs/aguaceroCoreDebugHooks.js +58 -130
- package/lib/commonjs/aguaceroCoreDebugHooks.js.map +1 -1
- package/lib/commonjs/aguaceroRnDebug.js +147 -287
- package/lib/commonjs/aguaceroRnDebug.js.map +1 -1
- package/lib/commonjs/cdnAuthenticatedFetch.js +104 -0
- package/lib/commonjs/cdnAuthenticatedFetch.js.map +1 -0
- package/lib/commonjs/dispatchViewManagerCommandCompat.js +51 -88
- package/lib/commonjs/dispatchViewManagerCommandCompat.js.map +1 -1
- package/lib/commonjs/gridCdnAuth.js +41 -50
- package/lib/commonjs/gridCdnAuth.js.map +1 -1
- package/lib/commonjs/index.js +51 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/nexrad/nexradAndroidController.js +851 -863
- package/lib/commonjs/nexrad/nexradAndroidController.js.map +1 -1
- package/lib/commonjs/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js +62 -85
- package/lib/commonjs/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js.map +1 -1
- package/lib/commonjs/nexrad/nexradDiag.js +32 -148
- package/lib/commonjs/nexrad/nexradDiag.js.map +1 -1
- package/lib/commonjs/nexrad/nexradLevel2Keys.js +261 -0
- package/lib/commonjs/nexrad/nexradLevel2Keys.js.map +1 -0
- package/lib/commonjs/nexrad/nexradLutBuild.js +64 -111
- package/lib/commonjs/nexrad/nexradLutBuild.js.map +1 -1
- package/lib/commonjs/nexrad/nexradMapboxFrameOpts.bundled.js +136 -164
- package/lib/commonjs/nexrad/nexradMapboxFrameOpts.bundled.js.map +1 -1
- package/lib/commonjs/nexrad/nexradSdkImports.js +51 -0
- package/lib/commonjs/nexrad/nexradSdkImports.js.map +1 -0
- package/lib/commonjs/nexrad/radarArchiveCore.bundled.js +2848 -4455
- package/lib/commonjs/nexrad/radarArchiveCore.bundled.js.map +1 -1
- package/lib/commonjs/nexrad/radarDecode.worker.bundled.js +445 -648
- package/lib/commonjs/nexrad/radarDecode.worker.bundled.js.map +1 -1
- package/lib/commonjs/nexrad/radarFrameGpuMatch.bundled.js +52 -68
- package/lib/commonjs/nexrad/radarFrameGpuMatch.bundled.js.map +1 -1
- package/lib/commonjs/nexradNativeCommandIds.js +24 -0
- package/lib/commonjs/nexradNativeCommandIds.js.map +1 -0
- package/lib/commonjs/nws/NwsAlertsOverlay.android.js.map +1 -1
- package/lib/commonjs/nws/NwsAlertsOverlay.ios.js.map +1 -1
- package/lib/commonjs/nws/NwsAlertsOverlay.js +3 -3
- package/lib/commonjs/nws/NwsAlertsOverlay.js.map +1 -1
- package/lib/commonjs/nws/NwsAlertsOverlay.native.js +235 -361
- package/lib/commonjs/nws/NwsAlertsOverlay.native.js.map +1 -1
- package/lib/commonjs/nws/eventSourceRnPolyfill.js +92 -146
- package/lib/commonjs/nws/eventSourceRnPolyfill.js.map +1 -1
- package/lib/commonjs/nws/nwsAndroidConstants.js +2 -8
- package/lib/commonjs/nws/nwsAndroidConstants.js.map +1 -1
- package/lib/commonjs/satellite/satelliteAndroidController.js +122 -199
- package/lib/commonjs/satellite/satelliteAndroidController.js.map +1 -1
- package/lib/commonjs/satelliteBridgeDiag.js +3 -13
- package/lib/commonjs/satelliteBridgeDiag.js.map +1 -1
- package/lib/commonjs/satelliteRnDebug.js +160 -0
- package/lib/commonjs/satelliteRnDebug.js.map +1 -0
- package/lib/module/AguaceroContext.js +2 -7
- package/lib/module/AguaceroContext.js.map +1 -1
- package/lib/module/GridRenderLayer.js +66 -80
- package/lib/module/GridRenderLayer.js.map +1 -1
- package/lib/module/MapManager.js +125 -239
- package/lib/module/MapManager.js.map +1 -1
- package/lib/module/MapRegistry.js +21 -33
- package/lib/module/MapRegistry.js.map +1 -1
- package/lib/module/NexradRadarLayer.android.js +32 -104
- package/lib/module/NexradRadarLayer.android.js.map +1 -1
- package/lib/module/NexradRadarLayer.ios.js +30 -101
- package/lib/module/NexradRadarLayer.ios.js.map +1 -1
- package/lib/module/NexradSitesMapLayer.js +44 -63
- package/lib/module/NexradSitesMapLayer.js.map +1 -1
- package/lib/module/SatelliteLayer.android.js +32 -44
- package/lib/module/SatelliteLayer.android.js.map +1 -1
- package/lib/module/SatelliteLayer.ios.js +36 -48
- package/lib/module/SatelliteLayer.ios.js.map +1 -1
- package/lib/module/StyleApplicator.js +144 -191
- package/lib/module/StyleApplicator.js.map +1 -1
- package/lib/module/WeatherLayerManager.js +1024 -1655
- package/lib/module/WeatherLayerManager.js.map +1 -1
- package/lib/module/aguaceroCoreDebugHooks.js +59 -130
- package/lib/module/aguaceroCoreDebugHooks.js.map +1 -1
- package/lib/module/aguaceroRnDebug.js +151 -291
- package/lib/module/aguaceroRnDebug.js.map +1 -1
- package/lib/module/cdnAuthenticatedFetch.js +97 -0
- package/lib/module/cdnAuthenticatedFetch.js.map +1 -0
- package/lib/module/dispatchViewManagerCommandCompat.js +52 -90
- package/lib/module/dispatchViewManagerCommandCompat.js.map +1 -1
- package/lib/module/gridCdnAuth.js +38 -50
- package/lib/module/gridCdnAuth.js.map +1 -1
- package/lib/module/index.js +9 -6
- package/lib/module/index.js.map +1 -1
- package/lib/module/nexrad/nexradAndroidController.js +865 -876
- package/lib/module/nexrad/nexradAndroidController.js.map +1 -1
- package/lib/module/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js +62 -85
- package/lib/module/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js.map +1 -1
- package/lib/module/nexrad/nexradDiag.js +31 -145
- package/lib/module/nexrad/nexradDiag.js.map +1 -1
- package/lib/module/nexrad/nexradLevel2Keys.js +245 -0
- package/lib/module/nexrad/nexradLevel2Keys.js.map +1 -0
- package/lib/module/nexrad/nexradLutBuild.js +64 -110
- package/lib/module/nexrad/nexradLutBuild.js.map +1 -1
- package/lib/module/nexrad/nexradMapboxFrameOpts.bundled.js +136 -163
- package/lib/module/nexrad/nexradMapboxFrameOpts.bundled.js.map +1 -1
- package/lib/module/nexrad/nexradSdkImports.js +4 -0
- package/lib/module/nexrad/nexradSdkImports.js.map +1 -0
- package/lib/module/nexrad/radarArchiveCore.bundled.js +2839 -4448
- package/lib/module/nexrad/radarArchiveCore.bundled.js.map +1 -1
- package/lib/module/nexrad/radarDecode.worker.bundled.js +445 -648
- package/lib/module/nexrad/radarDecode.worker.bundled.js.map +1 -1
- package/lib/module/nexrad/radarFrameGpuMatch.bundled.js +50 -66
- package/lib/module/nexrad/radarFrameGpuMatch.bundled.js.map +1 -1
- package/lib/module/nexradNativeCommandIds.js +18 -0
- package/lib/module/nexradNativeCommandIds.js.map +1 -0
- package/lib/module/nws/NwsAlertsOverlay.android.js +1 -1
- package/lib/module/nws/NwsAlertsOverlay.android.js.map +1 -1
- package/lib/module/nws/NwsAlertsOverlay.ios.js +1 -1
- package/lib/module/nws/NwsAlertsOverlay.ios.js.map +1 -1
- package/lib/module/nws/NwsAlertsOverlay.js +5 -5
- package/lib/module/nws/NwsAlertsOverlay.js.map +1 -1
- package/lib/module/nws/NwsAlertsOverlay.native.js +248 -373
- package/lib/module/nws/NwsAlertsOverlay.native.js.map +1 -1
- package/lib/module/nws/eventSourceRnPolyfill.js +92 -146
- package/lib/module/nws/eventSourceRnPolyfill.js.map +1 -1
- package/lib/module/nws/nwsAndroidConstants.js +2 -8
- package/lib/module/nws/nwsAndroidConstants.js.map +1 -1
- package/lib/module/satellite/satelliteAndroidController.js +125 -202
- package/lib/module/satellite/satelliteAndroidController.js.map +1 -1
- package/lib/module/satelliteBridgeDiag.js +3 -13
- package/lib/module/satelliteBridgeDiag.js.map +1 -1
- package/lib/module/satelliteRnDebug.js +148 -0
- package/lib/module/satelliteRnDebug.js.map +1 -0
- package/lib/typescript/AguaceroContext.d.ts +0 -4
- package/lib/typescript/AguaceroContext.d.ts.map +1 -1
- package/lib/typescript/GridRenderLayer.d.ts.map +1 -1
- package/lib/typescript/MapManager.d.ts +0 -12
- package/lib/typescript/MapManager.d.ts.map +1 -1
- package/lib/typescript/MapRegistry.d.ts +10 -12
- package/lib/typescript/MapRegistry.d.ts.map +1 -1
- package/lib/typescript/NexradRadarLayer.android.d.ts.map +1 -1
- package/lib/typescript/NexradRadarLayer.ios.d.ts.map +1 -1
- package/lib/typescript/NexradSitesMapLayer.d.ts +4 -10
- package/lib/typescript/NexradSitesMapLayer.d.ts.map +1 -1
- package/lib/typescript/SatelliteLayer.android.d.ts.map +1 -1
- package/lib/typescript/SatelliteLayer.ios.d.ts.map +1 -1
- package/lib/typescript/StyleApplicator.d.ts +1 -1
- package/lib/typescript/StyleApplicator.d.ts.map +1 -1
- package/lib/typescript/WeatherLayerManager.d.ts.map +1 -1
- package/lib/typescript/aguaceroCoreDebugHooks.d.ts +2 -9
- package/lib/typescript/aguaceroCoreDebugHooks.d.ts.map +1 -1
- package/lib/typescript/aguaceroRnDebug.d.ts +47 -66
- package/lib/typescript/aguaceroRnDebug.d.ts.map +1 -1
- package/lib/typescript/cdnAuthenticatedFetch.d.ts +10 -0
- package/lib/typescript/cdnAuthenticatedFetch.d.ts.map +1 -0
- package/lib/typescript/dispatchViewManagerCommandCompat.d.ts +1 -17
- package/lib/typescript/dispatchViewManagerCommandCompat.d.ts.map +1 -1
- package/lib/typescript/gridCdnAuth.d.ts +16 -21
- package/lib/typescript/gridCdnAuth.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +2 -0
- package/lib/typescript/nexrad/nexradAndroidController.d.ts +39 -89
- package/lib/typescript/nexrad/nexradAndroidController.d.ts.map +1 -1
- package/lib/typescript/nexrad/nexradCrossSectionSampleAtLatLon.bundled.d.ts +2 -1
- package/lib/typescript/nexrad/nexradCrossSectionSampleAtLatLon.bundled.d.ts.map +1 -1
- package/lib/typescript/nexrad/nexradDiag.d.ts +13 -101
- package/lib/typescript/nexrad/nexradDiag.d.ts.map +1 -1
- package/lib/typescript/nexrad/nexradLevel2Keys.d.ts +36 -0
- package/lib/typescript/nexrad/nexradLevel2Keys.d.ts.map +1 -0
- package/lib/typescript/nexrad/nexradLutBuild.d.ts +3 -10
- package/lib/typescript/nexrad/nexradLutBuild.d.ts.map +1 -1
- package/lib/typescript/nexrad/nexradMapboxFrameOpts.bundled.d.ts +4 -3
- package/lib/typescript/nexrad/nexradMapboxFrameOpts.bundled.d.ts.map +1 -1
- package/lib/typescript/nexrad/nexradSdkImports.d.ts +2 -0
- package/lib/typescript/nexrad/nexradSdkImports.d.ts.map +1 -0
- package/lib/typescript/nexrad/radarArchiveCore.bundled.d.ts +12 -7
- package/lib/typescript/nexrad/radarArchiveCore.bundled.d.ts.map +1 -1
- package/lib/typescript/nexrad/radarDecode.worker.bundled.d.ts +20 -20
- package/lib/typescript/nexrad/radarDecode.worker.bundled.d.ts.map +1 -1
- package/lib/typescript/nexrad/radarFrameGpuMatch.bundled.d.ts +4 -3
- package/lib/typescript/nexrad/radarFrameGpuMatch.bundled.d.ts.map +1 -1
- package/lib/typescript/nexradNativeCommandIds.d.ts +2 -0
- package/lib/typescript/nexradNativeCommandIds.d.ts.map +1 -0
- package/lib/typescript/nws/NwsAlertsOverlay.native.d.ts +6 -17
- package/lib/typescript/nws/NwsAlertsOverlay.native.d.ts.map +1 -1
- package/lib/typescript/nws/eventSourceRnPolyfill.d.ts +0 -3
- package/lib/typescript/nws/eventSourceRnPolyfill.d.ts.map +1 -1
- package/lib/typescript/nws/nwsAndroidConstants.d.ts +0 -5
- package/lib/typescript/nws/nwsAndroidConstants.d.ts.map +1 -1
- package/lib/typescript/satellite/satelliteAndroidController.d.ts +9 -47
- package/lib/typescript/satellite/satelliteAndroidController.d.ts.map +1 -1
- package/lib/typescript/satelliteBridgeDiag.d.ts +1 -5
- package/lib/typescript/satelliteBridgeDiag.d.ts.map +1 -1
- package/lib/typescript/satelliteRnDebug.d.ts +75 -0
- package/lib/typescript/satelliteRnDebug.d.ts.map +1 -0
- package/package.json +75 -74
- package/src/AguaceroContext.js +1 -7
- package/src/GridRenderLayer.js +1 -128
- package/src/MapManager.js +1 -277
- package/src/MapRegistry.js +1 -56
- package/src/NexradRadarLayer.android.js +1 -121
- package/src/NexradRadarLayer.ios.js +1 -115
- package/src/NexradSitesMapLayer.js +1 -75
- package/src/SatelliteLayer.android.js +1 -63
- package/src/SatelliteLayer.ios.js +1 -70
- package/src/StyleApplicator.js +1 -241
- package/src/WeatherLayerManager.js +1 -2025
- package/src/aguaceroCoreDebugHooks.js +1 -142
- package/src/aguaceroRnDebug.js +1 -335
- package/src/cdnAuthenticatedFetch.js +1 -0
- package/src/dispatchViewManagerCommandCompat.js +1 -100
- package/src/gridCdnAuth.js +1 -56
- package/src/index.js +1 -19
- package/src/nexrad/nexradAndroidController.js +1 -1078
- package/src/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js +1 -91
- package/src/nexrad/nexradDiag.js +1 -150
- package/src/nexrad/nexradLevel2Keys.js +1 -0
- package/src/nexrad/nexradLutBuild.js +1 -126
- package/src/nexrad/nexradMapboxFrameOpts.bundled.js +1 -245
- package/src/nexrad/nexradSdkImports.js +1 -0
- package/src/nexrad/radarArchiveCore.bundled.js +1 -7085
- package/src/nexrad/radarDecode.worker.bundled.js +1 -813
- package/src/nexrad/radarFrameGpuMatch.bundled.js +1 -79
- package/src/nexradNativeCommandIds.js +1 -0
- package/src/nws/NwsAlertsOverlay.android.js +1 -1
- package/src/nws/NwsAlertsOverlay.ios.js +1 -1
- package/src/nws/NwsAlertsOverlay.js +1 -7
- package/src/nws/NwsAlertsOverlay.native.js +1 -463
- package/src/nws/eventSourceRnPolyfill.js +7 -193
- package/src/nws/nwsAndroidConstants.js +1 -8
- package/src/satellite/satelliteAndroidController.js +1 -245
- package/src/satelliteBridgeDiag.js +1 -15
- package/src/satelliteRnDebug.js +1 -0
- package/lib/commonjs/nexrad/nexradNativeCommandIds.js +0 -51
- package/lib/commonjs/nexrad/nexradNativeCommandIds.js.map +0 -1
- package/lib/module/nexrad/nexradNativeCommandIds.js +0 -44
- package/lib/module/nexrad/nexradNativeCommandIds.js.map +0 -1
- package/lib/typescript/nexrad/nexradNativeCommandIds.d.ts +0 -9
- package/lib/typescript/nexrad/nexradNativeCommandIds.d.ts.map +0 -1
- package/src/nexrad/nexradNativeCommandIds.js +0 -44
- /package/lib/commonjs/{nexrad/nexradSitesUs.json → nexradSitesUs.json} +0 -0
- /package/lib/module/{nexrad/nexradSitesUs.json → nexradSitesUs.json} +0 -0
- /package/src/{nexrad/nexradSitesUs.json → nexradSitesUs.json} +0 -0
|
@@ -1,125 +1,79 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
return Array.isArray(cm) && cm.length >= 2 ? cm : null;
|
|
1
|
+
const M = 256;
|
|
2
|
+
function h(t) {
|
|
3
|
+
const o = String(t || "").trim(),
|
|
4
|
+
u = /^#?([0-9a-f]{6,8})$/i.exec(o);
|
|
5
|
+
if (!u) return [0, 0, 0, 255];
|
|
6
|
+
const n = u[1];
|
|
7
|
+
return n.length === 8 ? [parseInt(n.slice(0, 2), 16), parseInt(n.slice(2, 4), 16), parseInt(n.slice(4, 6), 16), parseInt(n.slice(6, 8), 16)] : [parseInt(n.slice(0, 2), 16), parseInt(n.slice(2, 4), 16), parseInt(n.slice(4, 6), 16), 255];
|
|
9
8
|
}
|
|
10
|
-
function
|
|
11
|
-
const
|
|
12
|
-
if (!
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
a = parseInt(s.slice(6, 8), 16);
|
|
23
|
-
} else if (s.length === 6) {
|
|
24
|
-
r = parseInt(s.slice(0, 2), 16);
|
|
25
|
-
g = parseInt(s.slice(2, 4), 16);
|
|
26
|
-
b = parseInt(s.slice(4, 6), 16);
|
|
27
|
-
} else {
|
|
28
|
-
r = parseInt(s[0] + s[0], 16);
|
|
29
|
-
g = parseInt(s[1] + s[1], 16);
|
|
30
|
-
b = parseInt(s[2] + s[2], 16);
|
|
9
|
+
function g(t) {
|
|
10
|
+
const o = [];
|
|
11
|
+
if (!t || t.length < 2) return o;
|
|
12
|
+
for (let u = 0; u < t.length - 1; u += 2) {
|
|
13
|
+
const n = Number(t[u]),
|
|
14
|
+
r = t[u + 1];
|
|
15
|
+
if (!Number.isFinite(n) || r == null) continue;
|
|
16
|
+
const [e, l, c, i] = h(r);
|
|
17
|
+
o.push({
|
|
18
|
+
value: n,
|
|
19
|
+
color: [e, l, c, i]
|
|
20
|
+
});
|
|
31
21
|
}
|
|
32
|
-
return
|
|
22
|
+
return o;
|
|
33
23
|
}
|
|
34
|
-
function
|
|
35
|
-
if (
|
|
36
|
-
const
|
|
37
|
-
|
|
38
|
-
if (!Number.isFinite(
|
|
39
|
-
const
|
|
40
|
-
if (
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
if (Math.abs(stops[i].value - (lo + i)) > 1e-3) return false;
|
|
44
|
-
}
|
|
45
|
-
return true;
|
|
24
|
+
function b(t, o, u, n) {
|
|
25
|
+
if (n || t.length < 2) return !1;
|
|
26
|
+
const r = o,
|
|
27
|
+
e = u;
|
|
28
|
+
if (!Number.isFinite(r) || !Number.isFinite(e)) return !1;
|
|
29
|
+
const l = Math.round(e - r + 1);
|
|
30
|
+
if (t.length !== l || Math.abs(Math.round(r) - r) > .001 || Math.abs(Math.round(e) - e) > .001) return !1;
|
|
31
|
+
for (let c = 0; c < t.length; c++) if (Math.abs(t[c].value - (r + c)) > .001) return !1;
|
|
32
|
+
return !0;
|
|
46
33
|
}
|
|
47
|
-
function
|
|
48
|
-
if (
|
|
49
|
-
if (
|
|
50
|
-
for (let
|
|
51
|
-
if (
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
return [Math.round(low.color[0] + (high.color[0] - low.color[0]) * t), Math.round(low.color[1] + (high.color[1] - low.color[1]) * t), Math.round(low.color[2] + (high.color[2] - low.color[2]) * t), Math.round(low.color[3] + (high.color[3] - low.color[3]) * t)];
|
|
57
|
-
}
|
|
58
|
-
} else if (value < stops[i].value) {
|
|
59
|
-
return stops[i - 1].color;
|
|
34
|
+
function d(t, o, u) {
|
|
35
|
+
if (o <= t[0].value) return t[0].color;
|
|
36
|
+
if (o >= t[t.length - 1].value) return t[t.length - 1].color;
|
|
37
|
+
for (let n = 1; n < t.length; n++) if (u) {
|
|
38
|
+
if (o <= t[n].value) {
|
|
39
|
+
const r = t[n - 1],
|
|
40
|
+
e = t[n],
|
|
41
|
+
l = (o - r.value) / Math.max(e.value - r.value, 1e-5);
|
|
42
|
+
return [Math.round(r.color[0] + (e.color[0] - r.color[0]) * l), Math.round(r.color[1] + (e.color[1] - r.color[1]) * l), Math.round(r.color[2] + (e.color[2] - r.color[2]) * l), Math.round(r.color[3] + (e.color[3] - r.color[3]) * l)];
|
|
60
43
|
}
|
|
61
|
-
}
|
|
62
|
-
return
|
|
44
|
+
} else if (o < t[n].value) return t[n - 1].color;
|
|
45
|
+
return t[t.length - 1].color;
|
|
63
46
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
const [r, g, b, a] = parseHex(hex);
|
|
80
|
-
stops.push({
|
|
81
|
-
value,
|
|
82
|
-
color: [r, g, b, a]
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
const out = new Uint8Array(LUT_SIZE * 4);
|
|
87
|
-
if (stops.length === 0) {
|
|
88
|
-
return {
|
|
89
|
-
bytes: out,
|
|
90
|
-
discreteIntegerLut: 0
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
|
-
const discrete = shouldUseDiscreteIntegerLut(stops, lutValueMin, lutValueMax, interpolateColormap) ? 1 : 0;
|
|
94
|
-
if (discrete) {
|
|
95
|
-
const n = stops.length;
|
|
96
|
-
for (let i = 0; i < LUT_SIZE; i++) {
|
|
97
|
-
const u = (i + 0.5) / LUT_SIZE;
|
|
98
|
-
const bin = Math.min(Math.floor(u * n), n - 1);
|
|
99
|
-
const c = stops[bin].color;
|
|
100
|
-
const idx = i * 4;
|
|
101
|
-
out[idx] = c[0];
|
|
102
|
-
out[idx + 1] = c[1];
|
|
103
|
-
out[idx + 2] = c[2];
|
|
104
|
-
out[idx + 3] = c[3];
|
|
47
|
+
export function buildNexradLutRgba(t, o, u, n) {
|
|
48
|
+
const r = g(t),
|
|
49
|
+
e = new Uint8Array(256 * 4);
|
|
50
|
+
if (r.length === 0) return {
|
|
51
|
+
bytes: e,
|
|
52
|
+
discreteIntegerLut: !1
|
|
53
|
+
};
|
|
54
|
+
if (b(r, o, u, n)) {
|
|
55
|
+
const l = r.length;
|
|
56
|
+
for (let c = 0; c < 256; c++) {
|
|
57
|
+
const i = (c + .5) / 256,
|
|
58
|
+
s = Math.min(Math.floor(i * l), l - 1),
|
|
59
|
+
a = r[s].color,
|
|
60
|
+
f = c * 4;
|
|
61
|
+
e[f] = a[0], e[f + 1] = a[1], e[f + 2] = a[2], e[f + 3] = a[3];
|
|
105
62
|
}
|
|
106
63
|
return {
|
|
107
|
-
bytes:
|
|
108
|
-
discreteIntegerLut:
|
|
64
|
+
bytes: e,
|
|
65
|
+
discreteIntegerLut: !0
|
|
109
66
|
};
|
|
110
67
|
}
|
|
111
|
-
for (let
|
|
112
|
-
const
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
out[idx + 1] = color[1];
|
|
117
|
-
out[idx + 2] = color[2];
|
|
118
|
-
out[idx + 3] = color[3];
|
|
68
|
+
for (let l = 0; l < 256; l++) {
|
|
69
|
+
const c = o + l / 255 * (u - o),
|
|
70
|
+
i = d(r, c, n),
|
|
71
|
+
s = l * 4;
|
|
72
|
+
e[s] = i[0], e[s + 1] = i[1], e[s + 2] = i[2], e[s + 3] = i[3];
|
|
119
73
|
}
|
|
120
74
|
return {
|
|
121
|
-
bytes:
|
|
122
|
-
discreteIntegerLut:
|
|
75
|
+
bytes: e,
|
|
76
|
+
discreteIntegerLut: !1
|
|
123
77
|
};
|
|
124
78
|
}
|
|
125
79
|
//# sourceMappingURL=nexradLutBuild.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["M","h","t","o","String","trim","u","exec","n","length","parseInt","slice","g","Number","r","isFinite","e","l","c","i","push","value","color","b","Math","round","abs","d","max","buildNexradLutRgba","Uint8Array","bytes","discreteIntegerLut","s","min","floor","a","f"],"sourceRoot":"..\\..\\..\\src","sources":["nexrad/nexradLutBuild.js"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,186 +1,159 @@
|
|
|
1
|
-
|
|
2
|
-
import { clampNexradTiltForVariable as
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
1
|
+
import { clampNexradTiltForVariable as u, getDefaultRadarTilt as y, getRadarTilts as m } from "@aguacerowx/javascript-sdk";
|
|
2
|
+
import { clampNexradTiltForVariable as _, getRadarTilts as x } from "@aguacerowx/javascript-sdk";
|
|
3
|
+
var H = [{
|
|
4
|
+
radarKey: "VEL",
|
|
5
|
+
product: "N0G",
|
|
6
|
+
menuLabel: "Storm Relative Velocity",
|
|
7
|
+
fldKey: "nexrad_vel",
|
|
8
|
+
cmapPropertyKey: "nexrad_vel",
|
|
9
|
+
decodeMode: "velocity",
|
|
10
|
+
stormRelativeVelocity: !0
|
|
11
|
+
}, {
|
|
12
|
+
radarKey: "KDP",
|
|
13
|
+
product: "N0K",
|
|
14
|
+
menuLabel: "Specific Differential Phase",
|
|
15
|
+
fldKey: "nexrad_l3_n0k",
|
|
16
|
+
cmapPropertyKey: "nexrad_kdp",
|
|
17
|
+
defaultUnit: "deg/km",
|
|
18
|
+
decodeMode: "generic_physical"
|
|
19
|
+
}, {
|
|
20
|
+
radarKey: "N0H",
|
|
21
|
+
product: "N0H",
|
|
22
|
+
menuLabel: "Hydrometeor Classification",
|
|
23
|
+
fldKey: "nexrad_l3_n0h",
|
|
24
|
+
cmapPropertyKey: "nexrad_l3_n0h",
|
|
25
|
+
defaultUnit: "None",
|
|
26
|
+
decodeMode: "categorical"
|
|
27
|
+
}, {
|
|
28
|
+
radarKey: "HHC",
|
|
29
|
+
product: "HHC",
|
|
30
|
+
menuLabel: "Hybrid Hydrometeor Classification",
|
|
31
|
+
fldKey: "nexrad_l3_hhc",
|
|
32
|
+
cmapPropertyKey: "nexrad_l3_hhc",
|
|
33
|
+
defaultUnit: "None",
|
|
34
|
+
decodeMode: "categorical"
|
|
35
|
+
}, {
|
|
36
|
+
radarKey: "EET",
|
|
37
|
+
product: "EET",
|
|
38
|
+
menuLabel: "Enhanced Echo Tops",
|
|
39
|
+
fldKey: "nexrad_l3_eet",
|
|
40
|
+
cmapPropertyKey: "nexrad_l3_eet",
|
|
41
|
+
defaultUnit: "kft",
|
|
42
|
+
decodeMode: "tops_kft"
|
|
43
|
+
}, {
|
|
44
|
+
radarKey: "DVL",
|
|
45
|
+
product: "DVL",
|
|
46
|
+
menuLabel: "Vertically Integrated Liquid",
|
|
47
|
+
fldKey: "nexrad_l3_dvl",
|
|
48
|
+
cmapPropertyKey: "nexrad_l3_dvl",
|
|
49
|
+
defaultUnit: "kg/m\xB2",
|
|
50
|
+
decodeMode: "vil"
|
|
51
|
+
}, {
|
|
52
|
+
radarKey: "DAA",
|
|
53
|
+
product: "DAA",
|
|
54
|
+
menuLabel: "1-Hour Precipitation",
|
|
55
|
+
fldKey: "nexrad_l3_daa",
|
|
56
|
+
cmapPropertyKey: "tp_0_1",
|
|
57
|
+
defaultUnit: "in",
|
|
58
|
+
decodeMode: "precip"
|
|
59
|
+
}, {
|
|
60
|
+
radarKey: "DU3",
|
|
61
|
+
product: "DU3",
|
|
62
|
+
menuLabel: "3-Hour Precipitation",
|
|
63
|
+
fldKey: "nexrad_l3_du3",
|
|
64
|
+
cmapPropertyKey: "tp_0_total",
|
|
65
|
+
defaultUnit: "in",
|
|
66
|
+
decodeMode: "precip"
|
|
67
|
+
}, {
|
|
68
|
+
radarKey: "DTA",
|
|
69
|
+
product: "DTA",
|
|
70
|
+
menuLabel: "Storm Total Precipitation",
|
|
71
|
+
fldKey: "nexrad_l3_dta",
|
|
72
|
+
cmapPropertyKey: "tp_0_total",
|
|
73
|
+
defaultUnit: "in",
|
|
74
|
+
decodeMode: "precip"
|
|
75
|
+
}],
|
|
76
|
+
p = new Map();
|
|
77
|
+
for (const e of H) p.set(e.radarKey, e), e.radarKey === "DVL" && p.set("NVL", e);
|
|
78
|
+
var h = ["NXK", "NYK", "NZK", "N0K", "NAK", "N1K", "NBK", "N2K", "N3K"],
|
|
79
|
+
L = ["NXH", "NYH", "NZH", "N0H", "NAH", "N1H", "NBH", "N2H", "N3H"],
|
|
80
|
+
g = h.slice(3),
|
|
81
|
+
F = L.slice(3),
|
|
82
|
+
b = ["NXG", "NYG", "NZG", "N0G", "NAG", "N1G", "NBG", "N2G", "N3G"],
|
|
83
|
+
P = b.slice(3),
|
|
84
|
+
M = g.length;
|
|
85
|
+
function D(e) {
|
|
86
|
+
return x(e, "VEL").slice(0, M);
|
|
83
87
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
function getNexradLevel3RadarTiltsForVelocity(siteId) {
|
|
92
|
-
return getRadarTilts(siteId, "VEL").slice(0, NEXRAD_LEVEL3_MANIFEST_TILT_COUNT);
|
|
88
|
+
function T(e, r) {
|
|
89
|
+
const t = P,
|
|
90
|
+
a = D(e);
|
|
91
|
+
if (!a.length) return t[0];
|
|
92
|
+
const n = _(e, "VEL", r);
|
|
93
|
+
let o = a.indexOf(n);
|
|
94
|
+
return o === -1 && (o = a.reduce((d, l, i) => Math.abs(l - n) < Math.abs(a[d] - n) ? i : d, 0)), o = Math.min(o, t.length - 1), t[o];
|
|
93
95
|
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
96
|
+
var K = ["N0K", "NAK", "N1K", "NBK", "N2K", "N3K"],
|
|
97
|
+
v = ["N0H", "NAH", "N1H", "NBH", "N2H", "N3H"],
|
|
98
|
+
U = K.length;
|
|
99
|
+
function V(e, r) {
|
|
100
|
+
if (!e.length) return r;
|
|
101
|
+
let t = e[0],
|
|
102
|
+
a = Math.abs(t - r);
|
|
103
|
+
for (let n = 1; n < e.length; n++) {
|
|
104
|
+
const o = e[n],
|
|
105
|
+
d = Math.abs(o - r);
|
|
106
|
+
(d < a || d === a && o < t) && (t = o, a = d);
|
|
99
107
|
}
|
|
100
|
-
|
|
101
|
-
let idx = tilts.indexOf(clamped);
|
|
102
|
-
if (idx === -1) {
|
|
103
|
-
idx = tilts.reduce((bestI, t, i) => Math.abs(t - clamped) < Math.abs(tilts[bestI] - clamped) ? i : bestI, 0);
|
|
104
|
-
}
|
|
105
|
-
idx = Math.min(idx, products.length - 1);
|
|
106
|
-
return products[idx];
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
// src/nexrad/nexradMapboxFrameOpts.ts
|
|
110
|
-
var NEXRAD_LEVEL3_KDP_PRODUCTS_FOR_MANIFEST2 = ["N0K", "NAK", "N1K", "NBK", "N2K", "N3K"];
|
|
111
|
-
var NEXRAD_LEVEL3_DHC_PRODUCTS_FOR_MANIFEST2 = ["N0H", "NAH", "N1H", "NBH", "N2H", "N3H"];
|
|
112
|
-
var NEXRAD_LEVEL3_MANIFEST_TILT_COUNT2 = NEXRAD_LEVEL3_KDP_PRODUCTS_FOR_MANIFEST2.length;
|
|
113
|
-
function nearestTiltInSortedList(tilts, target) {
|
|
114
|
-
if (!tilts.length) return target;
|
|
115
|
-
let best = tilts[0];
|
|
116
|
-
let bestD = Math.abs(best - target);
|
|
117
|
-
for (let i = 1; i < tilts.length; i++) {
|
|
118
|
-
const t = tilts[i];
|
|
119
|
-
const d = Math.abs(t - target);
|
|
120
|
-
if (d < bestD || d === bestD && t < best) {
|
|
121
|
-
best = t;
|
|
122
|
-
bestD = d;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
return best;
|
|
108
|
+
return t;
|
|
126
109
|
}
|
|
127
|
-
function
|
|
128
|
-
return
|
|
110
|
+
function N(e, r) {
|
|
111
|
+
return m(e, r).slice(0, U);
|
|
129
112
|
}
|
|
130
|
-
function
|
|
131
|
-
const
|
|
132
|
-
return
|
|
113
|
+
function c(e) {
|
|
114
|
+
const r = e || "";
|
|
115
|
+
return r === "KDP" || r === "N0H";
|
|
133
116
|
}
|
|
134
|
-
function
|
|
135
|
-
if (!
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
const c = clampNexradTiltForVariable2(siteId, radarVariable, tilt);
|
|
140
|
-
if (!tilts.length) return c;
|
|
141
|
-
return nearestTiltInSortedList(tilts, c);
|
|
117
|
+
function A(e, r, t) {
|
|
118
|
+
if (!c(r)) return u(e, r, t);
|
|
119
|
+
const a = N(e, r),
|
|
120
|
+
n = u(e, r, t);
|
|
121
|
+
return a.length ? V(a, n) : n;
|
|
142
122
|
}
|
|
143
|
-
function
|
|
144
|
-
const
|
|
145
|
-
|
|
146
|
-
if (!
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
let idx = tilts.indexOf(clamped);
|
|
151
|
-
if (idx === -1) {
|
|
152
|
-
idx = tilts.reduce((bestI, t, i) => Math.abs(t - clamped) < Math.abs(tilts[bestI] - clamped) ? i : bestI, 0);
|
|
153
|
-
}
|
|
154
|
-
idx = Math.min(idx, products.length - 1);
|
|
155
|
-
return products[idx];
|
|
123
|
+
function s(e, r, t) {
|
|
124
|
+
const a = r === "KDP" ? K : v,
|
|
125
|
+
n = N(e, r);
|
|
126
|
+
if (!n.length) return a[0];
|
|
127
|
+
const o = A(e, r, t);
|
|
128
|
+
let d = n.indexOf(o);
|
|
129
|
+
return d === -1 && (d = n.reduce((l, i, f) => Math.abs(i - o) < Math.abs(n[l] - o) ? f : l, 0)), d = Math.min(d, a.length - 1), a[d];
|
|
156
130
|
}
|
|
157
|
-
function
|
|
158
|
-
if (!
|
|
131
|
+
function E(e) {
|
|
132
|
+
if (!e) return {
|
|
159
133
|
geometryLayoutKey: "canonical"
|
|
160
134
|
};
|
|
161
|
-
if (
|
|
135
|
+
if (e.nexradDataSource !== "level3") return {
|
|
162
136
|
geometryLayoutKey: "canonical"
|
|
163
137
|
};
|
|
164
|
-
const
|
|
165
|
-
|
|
166
|
-
if (
|
|
167
|
-
const
|
|
168
|
-
|
|
169
|
-
const mnemonic = nexradLevel3S3ProductForSiteTilt(site, kind, tilt);
|
|
138
|
+
const r = e.nexradSite,
|
|
139
|
+
t = (e.nexradProduct || "REF").toUpperCase();
|
|
140
|
+
if (c(t) && r) {
|
|
141
|
+
const a = Number.isFinite(e.nexradTilt) ? Number(e.nexradTilt) : y(r),
|
|
142
|
+
n = s(r, t === "KDP" ? "KDP" : "N0H", a);
|
|
170
143
|
return {
|
|
171
|
-
geometryLayoutKey: `${
|
|
144
|
+
geometryLayoutKey: `${r}|${t}|${n}`
|
|
172
145
|
};
|
|
173
146
|
}
|
|
174
|
-
if (
|
|
175
|
-
const
|
|
176
|
-
|
|
147
|
+
if (t === "VEL" && r) {
|
|
148
|
+
const a = Number.isFinite(e.nexradTilt) ? Number(e.nexradTilt) : y(r),
|
|
149
|
+
n = T(r, a);
|
|
177
150
|
return {
|
|
178
|
-
geometryLayoutKey: `${
|
|
151
|
+
geometryLayoutKey: `${r}|${t}|${n}`
|
|
179
152
|
};
|
|
180
153
|
}
|
|
181
154
|
return {
|
|
182
155
|
geometryLayoutKey: "canonical"
|
|
183
156
|
};
|
|
184
157
|
}
|
|
185
|
-
export { mapboxFrameUploadOptionsForNexradState, nexradLevel3S3ProductForSiteTilt, nexradLevel3UsesTiltIndexedS3Products };
|
|
158
|
+
export { E as mapboxFrameUploadOptionsForNexradState, s as nexradLevel3S3ProductForSiteTilt, c as nexradLevel3UsesTiltIndexedS3Products };
|
|
186
159
|
//# sourceMappingURL=nexradMapboxFrameOpts.bundled.js.map
|