@aguacerowx/react-native 0.0.52 → 0.0.53
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/src/main/cpp/satellite_ktx_jni.cpp +6 -1
- 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/ios/SatelliteLayerView.swift +517 -517
- package/lib/commonjs/WeatherLayerManager.js +21 -1
- package/lib/commonjs/WeatherLayerManager.js.map +1 -1
- package/lib/commonjs/aguaceroRnDebug.js +1 -0
- package/lib/commonjs/aguaceroRnDebug.js.map +1 -1
- package/lib/commonjs/index.js +37 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/satellite/satelliteAndroidController.js +17 -9
- package/lib/commonjs/satellite/satelliteAndroidController.js.map +1 -1
- package/lib/commonjs/satelliteRnDebug.js +261 -0
- package/lib/commonjs/satelliteRnDebug.js.map +1 -0
- package/lib/module/WeatherLayerManager.js +21 -1
- package/lib/module/WeatherLayerManager.js.map +1 -1
- package/lib/module/aguaceroRnDebug.js +1 -0
- package/lib/module/aguaceroRnDebug.js.map +1 -1
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/satellite/satelliteAndroidController.js +17 -9
- package/lib/module/satellite/satelliteAndroidController.js.map +1 -1
- package/lib/module/satelliteRnDebug.js +248 -0
- package/lib/module/satelliteRnDebug.js.map +1 -0
- package/lib/typescript/WeatherLayerManager.d.ts.map +1 -1
- package/lib/typescript/aguaceroRnDebug.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +1 -0
- package/lib/typescript/satellite/satelliteAndroidController.d.ts.map +1 -1
- package/lib/typescript/satelliteRnDebug.d.ts +81 -0
- package/lib/typescript/satelliteRnDebug.d.ts.map +1 -0
- package/package.json +2 -2
- package/src/WeatherLayerManager.js +20 -0
- package/src/aguaceroRnDebug.js +1 -0
- package/src/index.js +8 -0
- package/src/satellite/satelliteAndroidController.js +20 -8
- package/src/satelliteRnDebug.js +269 -0
|
@@ -9,6 +9,7 @@ exports.sortFramesByTargetProximity = sortFramesByTargetProximity;
|
|
|
9
9
|
var _javascriptSdk = require("@aguacerowx/javascript-sdk");
|
|
10
10
|
var _satelliteBridgeDiag = require("../satelliteBridgeDiag");
|
|
11
11
|
var _aguaceroRnDebug = require("../aguaceroRnDebug");
|
|
12
|
+
var _satelliteRnDebug = require("../satelliteRnDebug");
|
|
12
13
|
/**
|
|
13
14
|
* AguaceroCore satellite mode → Android native {@link SatelliteLayerView} (parity with mapsgl
|
|
14
15
|
* {@link WeatherLayerManager} satellite paths — preload timeline + scrub via {@code targetUnix}).
|
|
@@ -150,7 +151,10 @@ class SatelliteAndroidController {
|
|
|
150
151
|
timelineKeyCount: keys.length,
|
|
151
152
|
hasApiKey: Boolean(mergedState.apiKey),
|
|
152
153
|
satelliteChannel: mergedState.satelliteChannel,
|
|
153
|
-
|
|
154
|
+
gridRequestSiteOrigin: mergedState.gridRequestSiteOrigin ?? this.core.gridRequestSiteOrigin ?? null,
|
|
155
|
+
bundleId: this.core.bundleId ?? null,
|
|
156
|
+
mapKeys: mergedState.satelliteTimeToFileMap && typeof mergedState.satelliteTimeToFileMap === 'object' ? Object.keys(mergedState.satelliteTimeToFileMap).length : 0,
|
|
157
|
+
hint: keys.length === 0 ? 'Timeline empty — wait for core.initialize / listing, or check satelliteId/sector/product.' : 'Timeline has keys but no resolvable frame URLs — check satelliteChannel vs listing (e.g. geocolor needs MULTI on CONUS).'
|
|
154
158
|
});
|
|
155
159
|
}
|
|
156
160
|
let targetUnix = state.satelliteTimestamp == null || state.satelliteTimestamp === undefined ? null : Number(state.satelliteTimestamp);
|
|
@@ -172,15 +176,18 @@ class SatelliteAndroidController {
|
|
|
172
176
|
const runKeyChanged = satRunKey !== this._cachedRunKey;
|
|
173
177
|
const timelineChanged = timelineSig !== this._cachedTimelineSig;
|
|
174
178
|
if (runKeyChanged || timelineChanged) {
|
|
175
|
-
if ((0, _aguaceroRnDebug.isAguaceroRnDebugEnabled)()) {
|
|
176
|
-
(0, _aguaceroRnDebug.aguaceroDebug)('satellite.sync.payload', {
|
|
177
|
-
auth: (0, _aguaceroRnDebug.getAguaceroAuthDiagnosticSnapshot)(this.core),
|
|
178
|
-
frameCount: frames.length,
|
|
179
|
-
sampleFrameUrl: frames[0] ? (0, _aguaceroRnDebug.redactApiKeyFromUrl)(frames[0].url) : null,
|
|
180
|
-
gridRequestSiteOrigin: mergedState.gridRequestSiteOrigin ?? this.core.gridRequestSiteOrigin ?? null
|
|
181
|
-
});
|
|
182
|
-
}
|
|
183
179
|
const sortedFrames = sortFramesByTargetProximity(frames, targetUnix);
|
|
180
|
+
(0, _satelliteRnDebug.logSatelliteSyncReport)({
|
|
181
|
+
state: mergedState,
|
|
182
|
+
core: this.core,
|
|
183
|
+
frames: sortedFrames,
|
|
184
|
+
targetUnix,
|
|
185
|
+
runKey: satRunKey,
|
|
186
|
+
timelineKeyCount: keys.length,
|
|
187
|
+
runKeyChanged,
|
|
188
|
+
timelineChanged,
|
|
189
|
+
stylePayload
|
|
190
|
+
});
|
|
184
191
|
const payload = {
|
|
185
192
|
runKey: satRunKey,
|
|
186
193
|
// Must match query params on each frame URL (same merge as buildSatelliteFetchParts) and mapsgl fetch headers.
|
|
@@ -192,6 +199,7 @@ class SatelliteAndroidController {
|
|
|
192
199
|
visible: stylePayload.visible,
|
|
193
200
|
opacity: stylePayload.opacity,
|
|
194
201
|
fillSmoothing: stylePayload.fillSmoothing,
|
|
202
|
+
debug: (0, _aguaceroRnDebug.isAguaceroRnDebugEnabled)(),
|
|
195
203
|
frames: sortedFrames
|
|
196
204
|
};
|
|
197
205
|
if (targetUnix != null && Number.isFinite(targetUnix)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_javascriptSdk","require","_satelliteBridgeDiag","_aguaceroRnDebug","sortFramesByTargetProximity","frames","targetUnix","length","Number","isFinite","withDistance","map","f","_d","Math","abs","unix","sort","a","b","rest","buildSatelliteFetchParts","state","satelliteTimestamp","fileName","resolveSatelliteS3FileName","satelliteChannel","satelliteTimeToFileMap","channelName","variable","channelNameUpper","String","toUpperCase","s3FileName","replace","endsWith","shaderFileName","startsWith","token","toLowerCase","apiKey","url","encodeURIComponent","frameKey","SatelliteAndroidController","constructor","core","satelliteLayerRef","_destroyed","_cachedRunKey","undefined","_cachedTimelineSig","_lastTargetUnix","_lastStyleJson","destroy","native","current","clearSatellite","sync","satBridgeWarn","destroyed","isSatellite","Boolean","instrumentId","satelliteInstrumentId","sector","satelliteSectorLabel","channel","tlMapSize","Object","keys","syncSatellite","refExists","satRunKey","timelineSig","join","mergedState","k","ts","parts","push","console","warn","timelineKeyCount","hasApiKey","mapKeys","nk","filter","n","max","stylePayload","visible","opacity","fillSmoothing","styleJson","JSON","stringify","runKeyChanged","timelineChanged","
|
|
1
|
+
{"version":3,"names":["_javascriptSdk","require","_satelliteBridgeDiag","_aguaceroRnDebug","_satelliteRnDebug","sortFramesByTargetProximity","frames","targetUnix","length","Number","isFinite","withDistance","map","f","_d","Math","abs","unix","sort","a","b","rest","buildSatelliteFetchParts","state","satelliteTimestamp","fileName","resolveSatelliteS3FileName","satelliteChannel","satelliteTimeToFileMap","channelName","variable","channelNameUpper","String","toUpperCase","s3FileName","replace","endsWith","shaderFileName","startsWith","token","toLowerCase","apiKey","url","encodeURIComponent","frameKey","SatelliteAndroidController","constructor","core","satelliteLayerRef","_destroyed","_cachedRunKey","undefined","_cachedTimelineSig","_lastTargetUnix","_lastStyleJson","destroy","native","current","clearSatellite","sync","satBridgeWarn","destroyed","isSatellite","Boolean","instrumentId","satelliteInstrumentId","sector","satelliteSectorLabel","channel","tlMapSize","Object","keys","syncSatellite","refExists","satRunKey","timelineSig","join","mergedState","k","ts","parts","push","console","warn","timelineKeyCount","hasApiKey","gridRequestSiteOrigin","bundleId","mapKeys","hint","nk","filter","n","max","stylePayload","visible","opacity","fillSmoothing","styleJson","JSON","stringify","runKeyChanged","timelineChanged","sortedFrames","logSatelliteSyncReport","runKey","payload","userId","debug","isAguaceroRnDebugEnabled","payloadJson","frameCount","jsonChars","finiteTarget","activateSatelliteCachedUnix","updateSatelliteStyle","exports"],"sourceRoot":"..\\..\\..\\src","sources":["satellite/satelliteAndroidController.js"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.SATELLITE_DIAGNOSTIC_EVENT = void 0;
|
|
7
|
+
exports.auditSatelliteIntegration = auditSatelliteIntegration;
|
|
8
|
+
exports.basisFormatLabel = basisFormatLabel;
|
|
9
|
+
exports.installSatelliteDiagnosticListener = installSatelliteDiagnosticListener;
|
|
10
|
+
exports.interpretSatelliteBlackScreenHints = interpretSatelliteBlackScreenHints;
|
|
11
|
+
exports.logSatelliteNativeDiagnostic = logSatelliteNativeDiagnostic;
|
|
12
|
+
exports.logSatelliteSyncReport = logSatelliteSyncReport;
|
|
13
|
+
var _reactNative = require("react-native");
|
|
14
|
+
var _aguaceroRnDebug = require("./aguaceroRnDebug");
|
|
15
|
+
/**
|
|
16
|
+
* Satellite-specific RN diagnostics (Metro + native events → Metro when `debug` is on).
|
|
17
|
+
*
|
|
18
|
+
* Filter Metro: `[AguaceroRN][satellite]`
|
|
19
|
+
* Filter logcat: `AguaceroRN`, `AguaceroSatelliteView`, `AguaceroSatellite`, `AguaceroSatKtx`
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
const SATELLITE_DIAGNOSTIC_EVENT = exports.SATELLITE_DIAGNOSTIC_EVENT = 'AguaceroSatelliteDiagnostic';
|
|
23
|
+
const LOG = '[AguaceroRN][satellite]';
|
|
24
|
+
|
|
25
|
+
/** @type {import('react-native').EmitterSubscription | null} */
|
|
26
|
+
let diagSubscription = null;
|
|
27
|
+
const BASIS_FORMAT_NAMES = {
|
|
28
|
+
1: 'ETC2_RGBA (preferred Android)',
|
|
29
|
+
10: 'ASTC_LDR_4x4 (black tiles if GPU cannot sample ASTC)',
|
|
30
|
+
13: 'RGBA32 (universal fallback)'
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* @param {number | undefined} ordinal
|
|
35
|
+
*/
|
|
36
|
+
function basisFormatLabel(ordinal) {
|
|
37
|
+
if (ordinal == null || Number.isNaN(Number(ordinal))) return 'unknown';
|
|
38
|
+
return BASIS_FORMAT_NAMES[Number(ordinal)] ?? `ordinal_${ordinal}`;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Actionable hints when imagery is black but JS sync looks healthy.
|
|
43
|
+
* @param {Record<string, unknown>} ctx
|
|
44
|
+
*/
|
|
45
|
+
function interpretSatelliteBlackScreenHints(ctx) {
|
|
46
|
+
const hints = [];
|
|
47
|
+
const frameCount = Number(ctx.frameCount ?? 0);
|
|
48
|
+
const nativeCached = Number(ctx.nativeCachedFrames ?? ctx.cachedFrameCount ?? NaN);
|
|
49
|
+
const targetUnix = ctx.targetUnix;
|
|
50
|
+
const activeUnix = ctx.activeUnix;
|
|
51
|
+
const visible = ctx.visible;
|
|
52
|
+
const opacity = ctx.opacity;
|
|
53
|
+
const basisFormat = ctx.basisFormatOrdinal ?? ctx.transcodeFormatOrdinal;
|
|
54
|
+
if (frameCount === 0) {
|
|
55
|
+
hints.push('JS built zero frame URLs — check satellite listing, channel (geocolor), and sector.');
|
|
56
|
+
}
|
|
57
|
+
if (visible === false) {
|
|
58
|
+
hints.push('Layer visible=false — imagery is hidden by state/UI.');
|
|
59
|
+
}
|
|
60
|
+
if (typeof opacity === 'number' && opacity <= 0) {
|
|
61
|
+
hints.push('Layer opacity=0 — increase opacity in WeatherLayerManager state.');
|
|
62
|
+
}
|
|
63
|
+
if (targetUnix != null && nativeCached === 0 && !Number.isNaN(nativeCached)) {
|
|
64
|
+
hints.push('targetUnix is set but native GPU cache is empty — KTX fetch/decode/upload failed; check native diagnostic events or logcat (AguaceroSatelliteView).');
|
|
65
|
+
}
|
|
66
|
+
if (activeUnix == null && targetUnix != null) {
|
|
67
|
+
hints.push('targetUnix set but no active frame on GPU yet — wait for decode or prior frame failed upload (ASTC on unsupported GPU is common).');
|
|
68
|
+
}
|
|
69
|
+
if (Number(basisFormat) === 10) {
|
|
70
|
+
hints.push('Transcoded to ASTC — if the map footprint is black, rebuild SDK with ETC2-first transcode or check AguaceroSatellite for GPU upload GL errors.');
|
|
71
|
+
}
|
|
72
|
+
if (ctx.bundleIdPresent === false) {
|
|
73
|
+
hints.push('bundleId missing — install react-native-device-info; some keys require x-app-identifier (usually 403, not black tiles).');
|
|
74
|
+
}
|
|
75
|
+
if (ctx.mapLayerAdded === false) {
|
|
76
|
+
hints.push('Mapbox custom satellite layer not attached — ensure WeatherLayerManager is a child of MapManager.');
|
|
77
|
+
}
|
|
78
|
+
if (ctx.satelliteNativeMissing === true) {
|
|
79
|
+
hints.push('SatelliteLayer native view manager not registered — rebuild app / link @aguacerowx/react-native android.');
|
|
80
|
+
}
|
|
81
|
+
if (hints.length === 0) {
|
|
82
|
+
hints.push('JS pipeline looks healthy — inspect native events below (fetch bytes, transcode format, GPU upload). Filter logcat: AguaceroSatelliteView AguaceroSatellite AguaceroSatKtx');
|
|
83
|
+
}
|
|
84
|
+
return hints;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* One-shot integration audit (call when WeatherLayerManager mounts with debug).
|
|
89
|
+
* @param {{ core?: import('@aguacerowx/javascript-sdk').AguaceroCore; satelliteLayerRef?: React.RefObject<unknown> }} opts
|
|
90
|
+
*/
|
|
91
|
+
function auditSatelliteIntegration(opts = {}) {
|
|
92
|
+
if (!(0, _aguaceroRnDebug.isAguaceroRnDebugEnabled)()) return;
|
|
93
|
+
const {
|
|
94
|
+
core,
|
|
95
|
+
satelliteLayerRef
|
|
96
|
+
} = opts;
|
|
97
|
+
let satCmdKeys = [];
|
|
98
|
+
let gridCmdKeys = [];
|
|
99
|
+
let satManagerError = null;
|
|
100
|
+
try {
|
|
101
|
+
satCmdKeys = Object.keys(_reactNative.UIManager.getViewManagerConfig?.('SatelliteLayer')?.Commands ?? {});
|
|
102
|
+
} catch (e) {
|
|
103
|
+
satManagerError = String(e?.message ?? e);
|
|
104
|
+
satCmdKeys = [];
|
|
105
|
+
}
|
|
106
|
+
try {
|
|
107
|
+
gridCmdKeys = Object.keys(_reactNative.UIManager.getViewManagerConfig?.('GridRenderLayer')?.Commands ?? {});
|
|
108
|
+
} catch {
|
|
109
|
+
gridCmdKeys = [];
|
|
110
|
+
}
|
|
111
|
+
let deviceInfoOk = false;
|
|
112
|
+
let deviceInfoBundleId = null;
|
|
113
|
+
try {
|
|
114
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports, global-require
|
|
115
|
+
const DeviceInfo = require('react-native-device-info');
|
|
116
|
+
deviceInfoOk = true;
|
|
117
|
+
try {
|
|
118
|
+
deviceInfoBundleId = DeviceInfo.getBundleId?.() ?? null;
|
|
119
|
+
} catch {
|
|
120
|
+
deviceInfoBundleId = null;
|
|
121
|
+
}
|
|
122
|
+
} catch {
|
|
123
|
+
deviceInfoOk = false;
|
|
124
|
+
}
|
|
125
|
+
const snapshot = {
|
|
126
|
+
platform: _reactNative.Platform.OS,
|
|
127
|
+
satelliteNativeCommands: satCmdKeys,
|
|
128
|
+
satelliteNativeMissing: satCmdKeys.length === 0,
|
|
129
|
+
satelliteManagerError: satManagerError,
|
|
130
|
+
gridNativeCommands: gridCmdKeys,
|
|
131
|
+
satelliteRefAttached: Boolean(satelliteLayerRef?.current),
|
|
132
|
+
satelliteRefMethods: satelliteLayerRef?.current ? Object.keys(satelliteLayerRef.current) : [],
|
|
133
|
+
reactNativeDeviceInfo: deviceInfoOk ? {
|
|
134
|
+
installed: true,
|
|
135
|
+
bundleId: deviceInfoBundleId
|
|
136
|
+
} : {
|
|
137
|
+
installed: false,
|
|
138
|
+
hint: 'npm install react-native-device-info — required for core.bundleId / x-app-identifier'
|
|
139
|
+
},
|
|
140
|
+
mapboxNote: 'Requires @rnmapbox/maps v11; WeatherLayerManager must be nested inside MapManager',
|
|
141
|
+
nativeLibraries: ['aguacero_satellite_ktx (KTX2 Basis transcoder JNI)'],
|
|
142
|
+
auth: core ? (0, _aguaceroRnDebug.getAguaceroAuthDiagnosticSnapshot)(core) : undefined
|
|
143
|
+
};
|
|
144
|
+
(0, _aguaceroRnDebug.aguaceroDebug)('integration.audit', snapshot);
|
|
145
|
+
if (satCmdKeys.length === 0) {
|
|
146
|
+
(0, _aguaceroRnDebug.aguaceroDebugWarn)('integration.satelliteNativeMissing', {
|
|
147
|
+
hint: 'SatelliteLayer ViewManager has no commands — satellite will never render on Android.'
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
if (core && !core.bundleId && _reactNative.Platform.OS !== 'web') {
|
|
151
|
+
(0, _aguaceroRnDebug.aguaceroDebugWarn)('integration.bundleIdMissing', {
|
|
152
|
+
hint: 'core.bundleId is null — CDN may still work; some API keys require react-native-device-info.',
|
|
153
|
+
deviceInfoInstalled: deviceInfoOk
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
return snapshot;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
/**
|
|
160
|
+
* @param {object} params
|
|
161
|
+
*/
|
|
162
|
+
function logSatelliteSyncReport(params) {
|
|
163
|
+
if (!(0, _aguaceroRnDebug.isAguaceroRnDebugEnabled)()) return;
|
|
164
|
+
const {
|
|
165
|
+
state,
|
|
166
|
+
core,
|
|
167
|
+
frames,
|
|
168
|
+
targetUnix,
|
|
169
|
+
runKey,
|
|
170
|
+
timelineKeyCount,
|
|
171
|
+
runKeyChanged,
|
|
172
|
+
timelineChanged,
|
|
173
|
+
stylePayload
|
|
174
|
+
} = params;
|
|
175
|
+
const first = frames?.[0];
|
|
176
|
+
const last = frames?.length ? frames[frames.length - 1] : null;
|
|
177
|
+
const report = {
|
|
178
|
+
runKey,
|
|
179
|
+
runKeyChanged,
|
|
180
|
+
timelineChanged,
|
|
181
|
+
timelineKeyCount,
|
|
182
|
+
builtFrameCount: frames?.length ?? 0,
|
|
183
|
+
targetUnix,
|
|
184
|
+
satelliteTimestamp: state?.satelliteTimestamp ?? null,
|
|
185
|
+
style: stylePayload,
|
|
186
|
+
instrument: state?.satelliteInstrumentId,
|
|
187
|
+
sector: state?.satelliteSectorLabel,
|
|
188
|
+
channel: state?.satelliteChannel,
|
|
189
|
+
availableSatelliteTimestamps: state?.availableSatelliteTimestamps?.length ?? 0,
|
|
190
|
+
sampleShaderFileName: first?.shaderFileName ?? null,
|
|
191
|
+
sampleFrameUrl: first?.url ? (0, _aguaceroRnDebug.redactApiKeyFromUrl)(first.url) : null,
|
|
192
|
+
firstUnix: first?.unix ?? null,
|
|
193
|
+
lastUnix: last?.unix ?? null,
|
|
194
|
+
auth: core ? (0, _aguaceroRnDebug.getAguaceroAuthDiagnosticSnapshot)(core) : undefined,
|
|
195
|
+
blackScreenHints: interpretSatelliteBlackScreenHints({
|
|
196
|
+
frameCount: frames?.length ?? 0,
|
|
197
|
+
targetUnix,
|
|
198
|
+
visible: stylePayload?.visible,
|
|
199
|
+
opacity: stylePayload?.opacity,
|
|
200
|
+
bundleIdPresent: Boolean(core?.bundleId)
|
|
201
|
+
})
|
|
202
|
+
};
|
|
203
|
+
(0, _aguaceroRnDebug.aguaceroDebug)('sync.report', report);
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
/**
|
|
207
|
+
* Subscribe to native → JS diagnostic events (Android). Returns unsubscribe.
|
|
208
|
+
* @returns {() => void}
|
|
209
|
+
*/
|
|
210
|
+
function installSatelliteDiagnosticListener() {
|
|
211
|
+
if (!(0, _aguaceroRnDebug.isAguaceroRnDebugEnabled)()) return () => {};
|
|
212
|
+
if (_reactNative.Platform.OS !== 'android') {
|
|
213
|
+
(0, _aguaceroRnDebug.aguaceroDebug)('nativeEvents.skipped', {
|
|
214
|
+
reason: 'only Android emits AguaceroSatelliteDiagnostic today'
|
|
215
|
+
});
|
|
216
|
+
return () => {};
|
|
217
|
+
}
|
|
218
|
+
if (diagSubscription) {
|
|
219
|
+
diagSubscription.remove();
|
|
220
|
+
diagSubscription = null;
|
|
221
|
+
}
|
|
222
|
+
const emitter = new _reactNative.NativeEventEmitter();
|
|
223
|
+
diagSubscription = emitter.addListener(SATELLITE_DIAGNOSTIC_EVENT, payload => {
|
|
224
|
+
if (!payload || typeof payload !== 'object') return;
|
|
225
|
+
const phase = payload.phase ?? 'unknown';
|
|
226
|
+
const detail = {
|
|
227
|
+
...payload
|
|
228
|
+
};
|
|
229
|
+
delete detail.phase;
|
|
230
|
+
if (detail.basisFormatOrdinal != null) {
|
|
231
|
+
detail.basisFormat = basisFormatLabel(detail.basisFormatOrdinal);
|
|
232
|
+
}
|
|
233
|
+
if (detail.transcodeFormatOrdinal != null) {
|
|
234
|
+
detail.transcodeFormat = basisFormatLabel(detail.transcodeFormatOrdinal);
|
|
235
|
+
}
|
|
236
|
+
if (phase.includes('fail') || phase.includes('error') || phase === 'render.noDraw' || phase === 'render.poll' && (detail.cachedFrameCount === 0 || detail.activeUnix == null)) {
|
|
237
|
+
detail.blackScreenHints = interpretSatelliteBlackScreenHints(detail);
|
|
238
|
+
(0, _aguaceroRnDebug.aguaceroDebugWarn)(`native.${phase}`, detail);
|
|
239
|
+
} else {
|
|
240
|
+
(0, _aguaceroRnDebug.aguaceroDebug)(`native.${phase}`, detail);
|
|
241
|
+
}
|
|
242
|
+
});
|
|
243
|
+
(0, _aguaceroRnDebug.aguaceroDebug)('nativeEvents.installed', {
|
|
244
|
+
event: SATELLITE_DIAGNOSTIC_EVENT,
|
|
245
|
+
hint: 'Native fetch/decode/GPU logs will appear here when debug=true on WeatherLayerManager'
|
|
246
|
+
});
|
|
247
|
+
return () => {
|
|
248
|
+
diagSubscription?.remove();
|
|
249
|
+
diagSubscription = null;
|
|
250
|
+
};
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
/**
|
|
254
|
+
* @param {Record<string, unknown>} nativePayload
|
|
255
|
+
*/
|
|
256
|
+
function logSatelliteNativeDiagnostic(nativePayload) {
|
|
257
|
+
if (!(0, _aguaceroRnDebug.isAguaceroRnDebugEnabled)() || !nativePayload) return;
|
|
258
|
+
const phase = nativePayload.phase ?? 'event';
|
|
259
|
+
(0, _aguaceroRnDebug.aguaceroDebug)(`native.${phase}`, nativePayload);
|
|
260
|
+
}
|
|
261
|
+
//# sourceMappingURL=satelliteRnDebug.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_aguaceroRnDebug","SATELLITE_DIAGNOSTIC_EVENT","exports","LOG","diagSubscription","BASIS_FORMAT_NAMES","basisFormatLabel","ordinal","Number","isNaN","interpretSatelliteBlackScreenHints","ctx","hints","frameCount","nativeCached","nativeCachedFrames","cachedFrameCount","NaN","targetUnix","activeUnix","visible","opacity","basisFormat","basisFormatOrdinal","transcodeFormatOrdinal","push","bundleIdPresent","mapLayerAdded","satelliteNativeMissing","length","auditSatelliteIntegration","opts","isAguaceroRnDebugEnabled","core","satelliteLayerRef","satCmdKeys","gridCmdKeys","satManagerError","Object","keys","UIManager","getViewManagerConfig","Commands","e","String","message","deviceInfoOk","deviceInfoBundleId","DeviceInfo","getBundleId","snapshot","platform","Platform","OS","satelliteNativeCommands","satelliteManagerError","gridNativeCommands","satelliteRefAttached","Boolean","current","satelliteRefMethods","reactNativeDeviceInfo","installed","bundleId","hint","mapboxNote","nativeLibraries","auth","getAguaceroAuthDiagnosticSnapshot","undefined","aguaceroDebug","aguaceroDebugWarn","deviceInfoInstalled","logSatelliteSyncReport","params","state","frames","runKey","timelineKeyCount","runKeyChanged","timelineChanged","stylePayload","first","last","report","builtFrameCount","satelliteTimestamp","style","instrument","satelliteInstrumentId","sector","satelliteSectorLabel","channel","satelliteChannel","availableSatelliteTimestamps","sampleShaderFileName","shaderFileName","sampleFrameUrl","url","redactApiKeyFromUrl","firstUnix","unix","lastUnix","blackScreenHints","installSatelliteDiagnosticListener","reason","remove","emitter","NativeEventEmitter","addListener","payload","phase","detail","transcodeFormat","includes","event","logSatelliteNativeDiagnostic","nativePayload"],"sourceRoot":"..\\..\\src","sources":["satelliteRnDebug.js"],"mappings":"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","ignoreList":[]}
|
|
@@ -17,6 +17,7 @@ import { satBridgeWarn } from './satelliteBridgeDiag';
|
|
|
17
17
|
import { augmentProcessFrameOptionsForDebug, aguaceroDebugWarn, configureAguaceroRnDebug, getAguaceroAuthDiagnosticSnapshot, isAguaceroRnDebugEnabled } from './aguaceroRnDebug';
|
|
18
18
|
import { installAguaceroCoreDebugHooks, logProcessFrameAuthMismatch } from './aguaceroCoreDebugHooks';
|
|
19
19
|
import { resolveGridRequestSiteOrigin } from './gridCdnAuth';
|
|
20
|
+
import { auditSatelliteIntegration, installSatelliteDiagnosticListener } from './satelliteRnDebug';
|
|
20
21
|
const NEXRAD_NATIVE = Platform.OS === 'android' || Platform.OS === 'ios';
|
|
21
22
|
const SATELLITE_NATIVE = Platform.OS === 'android' || Platform.OS === 'ios';
|
|
22
23
|
satBridgeWarn('SDK fingerprint', {
|
|
@@ -252,6 +253,12 @@ export const WeatherLayerManager = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
252
253
|
customColormaps,
|
|
253
254
|
initialMode,
|
|
254
255
|
initialVariable,
|
|
256
|
+
/** GOES instrument when {@link initialMode} is `"satellite"` (default `GOES19-EAST`). */
|
|
257
|
+
initialSatelliteId,
|
|
258
|
+
/** Sector token or label when {@link initialMode} is `"satellite"` (default `conus` → GOES-EAST CONUS). */
|
|
259
|
+
initialSatelliteSector,
|
|
260
|
+
/** Product/band when {@link initialMode} is `"satellite"` (e.g. `geocolor`, `C13`). Falls back to {@link initialVariable}. */
|
|
261
|
+
initialSatelliteProduct,
|
|
255
262
|
autoRefresh,
|
|
256
263
|
autoRefreshInterval,
|
|
257
264
|
initialModel,
|
|
@@ -271,6 +278,14 @@ export const WeatherLayerManager = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
271
278
|
enabled: Boolean(debug)
|
|
272
279
|
});
|
|
273
280
|
}, [debug]);
|
|
281
|
+
useEffect(() => {
|
|
282
|
+
if (!debug) return undefined;
|
|
283
|
+
auditSatelliteIntegration({
|
|
284
|
+
core,
|
|
285
|
+
satelliteLayerRef
|
|
286
|
+
});
|
|
287
|
+
return installSatelliteDiagnosticListener();
|
|
288
|
+
}, [debug, core]);
|
|
274
289
|
const context = useContext(AguaceroContext);
|
|
275
290
|
|
|
276
291
|
// Create the core here instead of getting it from context
|
|
@@ -281,7 +296,12 @@ export const WeatherLayerManager = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
281
296
|
layerOptions: {
|
|
282
297
|
mode: initialMode,
|
|
283
298
|
variable: initialVariable,
|
|
284
|
-
model: initialModel
|
|
299
|
+
model: initialModel,
|
|
300
|
+
...(initialMode === 'satellite' ? {
|
|
301
|
+
satelliteId: initialSatelliteId,
|
|
302
|
+
sector: initialSatelliteSector,
|
|
303
|
+
satelliteProduct: initialSatelliteProduct ?? initialVariable
|
|
304
|
+
} : {})
|
|
285
305
|
},
|
|
286
306
|
autoRefresh: false // <-- add this
|
|
287
307
|
}), [apiKey, gridRequestSiteOrigin]);
|