react-native-acoustic-connect-beta 19.0.19 → 19.0.21

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.
@@ -106,7 +106,11 @@ const Connect = ({
106
106
 
107
107
  // Listen for the 'state' event to track navigation state changes
108
108
  const unsubscribeState = navigation.current.addListener("state", () => {
109
- currentRoute.current = extractName(navigation) || navigation.current.getCurrentRoute()?.name;
109
+ // extractName resolves the focused route through the nested
110
+ // navigators itself, so there is no outer-level fallback to chain
111
+ // here — one used to be appended, which reported the tab name for
112
+ // every push inside that tab.
113
+ currentRoute.current = extractName(navigation);
110
114
 
111
115
  // Both platforms take the same path. iOS used to be excluded from
112
116
  // the layout call, which left the wrapper with no layout trigger
@@ -132,11 +136,9 @@ const Connect = ({
132
136
  };
133
137
  }, [navReady, navigation]);
134
138
  const onStartShouldSetResponderCapture = (0, _react.useCallback)(event => {
135
- if (navigation?.current?.getCurrentRoute) {
136
- currentRoute.current = extractName(navigation) || navigation.current.getCurrentRoute()?.name;
137
- if (currentRoute.current) {
138
- _TLTRN.default.logScreenViewPageName(currentRoute.current);
139
- }
139
+ currentRoute.current = extractName(navigation);
140
+ if (currentRoute.current) {
141
+ _TLTRN.default.logScreenViewPageName(currentRoute.current);
140
142
  }
141
143
  _TLTRN.default.logClickEvent(event);
142
144
  return false; // Must remain false so events bubble to the host app's handlers
@@ -146,16 +148,19 @@ const Connect = ({
146
148
  return false;
147
149
  }
148
150
  initial.current = true;
149
- if (navigation?.current?.getCurrentRoute) {
150
- currentRoute.current = navigation.current.getCurrentRoute()?.name;
151
- // Same unification as the 'state' listener above: the split sent
152
- // only a screenview on iOS and only a layout on Android, so
153
- // neither platform got both from the first-paint trigger. No delay
154
- // argument, for the reason given there.
155
- if (currentRoute.current) {
156
- _TLTRN.default.logScreenViewPageName(currentRoute.current);
157
- _TLTRN.default.logScreenLayout(currentRoute.current);
158
- }
151
+
152
+ // Resolved through extractName like the other two triggers. This site
153
+ // used to read `getCurrentRoute()?.name` directly, so a `params.name`
154
+ // override was honoured on navigation but silently ignored for the
155
+ // first-paint screen the same screen reported under two names.
156
+ currentRoute.current = extractName(navigation);
157
+ // Same unification as the 'state' listener above: the split sent
158
+ // only a screenview on iOS and only a layout on Android, so
159
+ // neither platform got both from the first-paint trigger. No delay
160
+ // argument, for the reason given there.
161
+ if (currentRoute.current) {
162
+ _TLTRN.default.logScreenViewPageName(currentRoute.current);
163
+ _TLTRN.default.logScreenLayout(currentRoute.current);
159
164
  }
160
165
  return true;
161
166
  }, [navigation]);
@@ -168,15 +173,115 @@ const Connect = ({
168
173
  }) : children
169
174
  });
170
175
  };
176
+
177
+ /**
178
+ * Walks a React Navigation state down to the deepest **focused** route.
179
+ *
180
+ * Nested navigators are the default architecture of production RN apps: a tab
181
+ * navigator whose tabs each hold a stack. The container's root state then
182
+ * describes only the outer level, and the route that the user is actually
183
+ * looking at lives in `routes[index].state`, recursively. Reading the outer
184
+ * level alone reports the *tab* name for every push inside that tab, so screen
185
+ * changes below the first level are invisible to analytics and replay.
186
+ *
187
+ * `index` can legitimately be absent on a partial/rehydrated state, in which
188
+ * case React Navigation treats the last route as focused — matched here.
189
+ *
190
+ * A depth cap guards against a malformed state whose nesting cycles; 32 is far
191
+ * past any real navigator tree.
192
+ */
193
+ function findFocusedRoute(state) {
194
+ let current = state;
195
+ let depth = 0;
196
+ while (current?.routes?.length && depth++ < 32) {
197
+ const index = current.index ?? current.routes.length - 1;
198
+ const route = current.routes[index];
199
+ if (!route?.state?.routes?.length) {
200
+ return route;
201
+ }
202
+ current = route.state;
203
+ }
204
+ return undefined;
205
+ }
206
+
207
+ /**
208
+ * Containers already reported by {@link warnExtractNameFailed}.
209
+ *
210
+ * Keyed by the container itself, so a ref that throws on every navigation
211
+ * produces one line rather than one per transition, while a genuinely
212
+ * different container still gets its own. A `WeakSet` holds no strong
213
+ * reference, so remembering a container cannot keep it alive.
214
+ */
215
+ const extractNameErrorReported = new WeakSet();
216
+
217
+ /**
218
+ * Reports, once per container, that resolving the current route threw.
219
+ *
220
+ * A throw here is expected and harmless during teardown, which is why
221
+ * ``extractName`` swallows it. A ref that keeps throwing is a different
222
+ * matter: every screen view goes unnamed, and without a line here that looks
223
+ * exactly like a ref that never attached. One warning separates the two
224
+ * without flooding a listener that fires per navigation.
225
+ */
226
+ function warnExtractNameFailed(container, error) {
227
+ if (typeof container === "object" && container !== null) {
228
+ if (extractNameErrorReported.has(container)) {
229
+ return;
230
+ }
231
+ extractNameErrorReported.add(container);
232
+ }
233
+ console.warn("Connect: could not resolve the current route — the navigation container ref threw. " + "Screen views stay unnamed while this persists (harmless if the container is unmounting). " + "Cause:", error);
234
+ }
235
+
236
+ /**
237
+ * The screen name to report for the navigation container's current position.
238
+ *
239
+ * Resolution order:
240
+ *
241
+ * 1. The focused route resolved from `getRootState()` by ``findFocusedRoute``.
242
+ * Taking the state and walking it here — rather than trusting a single
243
+ * accessor — keeps the wrapper correct regardless of whether the host app's
244
+ * navigation library resolves nesting inside `getCurrentRoute()`, and works
245
+ * for a custom container ref that exposes state but not that helper.
246
+ * 2. `getCurrentRoute()`, for refs that expose no `getRootState`.
247
+ *
248
+ * Either way `params.name` wins over the route's own `name` when the host app
249
+ * supplies it — the documented override for giving a route a human-readable
250
+ * analytics name. Only a non-empty string counts, so `params: { name: '' }`
251
+ * falls through to the route name instead of blanking the screenview.
252
+ *
253
+ * Returns `""` when nothing resolves, which both callers treat as "skip".
254
+ */
171
255
  function extractName(navigation) {
172
- const routeParams = navigation?.current?.getCurrentRoute?.()?.params;
173
- if (routeParams) {
174
- const {
175
- name
176
- } = routeParams;
177
- return name ? name : navigation.current?.getCurrentRoute()?.name || "";
256
+ const container = navigation?.current;
257
+ if (!container) {
258
+ return "";
259
+ }
260
+ let route;
261
+ try {
262
+ route = findFocusedRoute(container.getRootState?.());
263
+ } catch (error) {
264
+ // A container mid-teardown can throw out of getRootState(). Screen
265
+ // naming is not worth taking the host app's navigation down for.
266
+ warnExtractNameFailed(container, error);
267
+ route = undefined;
268
+ }
269
+ if (!route) {
270
+ try {
271
+ route = container.getCurrentRoute?.();
272
+ } catch (error) {
273
+ warnExtractNameFailed(container, error);
274
+ route = undefined;
275
+ }
276
+ }
277
+ if (!route) {
278
+ return "";
279
+ }
280
+ const overridden = route.params?.name;
281
+ if (typeof overridden === "string" && overridden.length > 0) {
282
+ return overridden;
178
283
  }
179
- return "";
284
+ return typeof route.name === "string" ? route.name : "";
180
285
  }
181
286
  var _default = exports.default = Connect;
182
287
  const styles = _reactNative.StyleSheet.create({
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_TLTRN","_interopRequireDefault","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Connect","children","captureKeyboardEvents","captureDialogEvents","navigationRef","child","childProvidedRef","props","ref","internalRef","useRef","navigation","shouldInjectRef","React","isValidElement","currentRoute","undefined","initial","navReady","setNavReady","useState","useEffect","TLTRN","interceptKeyboardEvents","interceptDialogEvents","isUsable","current","addListener","getCurrentRoute","attempts","POLL_INTERVAL_MS","MAX_ATTEMPTS","timer","poll","console","warn","setTimeout","clearTimeout","unsubscribeState","extractName","name","logScreenViewPageName","logScreenLayout","onStartShouldSetResponderCapture","useCallback","event","logClickEvent","onLayout","_event","jsx","View","style","styles","connect_main","cloneElement","routeParams","params","_default","exports","StyleSheet","create","flex"],"sourceRoot":"../../../src","sources":["components/Connect.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_TLTRN","_interopRequireDefault","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Connect","children","captureKeyboardEvents","captureDialogEvents","navigationRef","child","childProvidedRef","props","ref","internalRef","useRef","navigation","shouldInjectRef","React","isValidElement","currentRoute","undefined","initial","navReady","setNavReady","useState","useEffect","TLTRN","interceptKeyboardEvents","interceptDialogEvents","isUsable","current","addListener","getCurrentRoute","attempts","POLL_INTERVAL_MS","MAX_ATTEMPTS","timer","poll","console","warn","setTimeout","clearTimeout","unsubscribeState","extractName","logScreenViewPageName","logScreenLayout","onStartShouldSetResponderCapture","useCallback","event","logClickEvent","onLayout","_event","jsx","View","style","styles","connect_main","cloneElement","findFocusedRoute","state","depth","routes","length","index","route","extractNameErrorReported","WeakSet","warnExtractNameFailed","container","error","add","getRootState","overridden","params","name","_default","exports","StyleSheet","create","flex"],"sourceRoot":"../../../src","sources":["components/Connect.tsx"],"mappings":"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","ignoreList":[]}
@@ -119,6 +119,14 @@ class TLTRN {
119
119
  * Passing no delay used to send a hardcoded `0`, which made
120
120
  * `CaptureLayoutDelay` inert for React Native apps and fired the capture at
121
121
  * the *start* of the transition rather than after it.
122
+ *
123
+ * @returns With no `delayMs` — the normal case — only that the capture was
124
+ * **scheduled**, not that it produced a layout message. The native
125
+ * deferred overload dispatches and returns immediately, so anything that
126
+ * goes wrong once it runs (no view controller resolved, layout capture
127
+ * gated off by config) cannot be reflected here; those surface in logcat
128
+ * / os_log instead. Pass `0` and the value describes the capture itself,
129
+ * at the cost of capturing mid-transition.
122
130
  */
123
131
  static logScreenLayout = (name, delayMs) => {
124
132
  TLTRN.currentScreen = name || '';
@@ -172,8 +180,82 @@ class TLTRN {
172
180
  }
173
181
  return result;
174
182
  };
183
+
184
+ /**
185
+ * Keys already warned about, so a call site inside a render or a list loop
186
+ * warns once rather than on every pass.
187
+ */
188
+ static warnedNestedValueSites = new Set();
189
+
190
+ /**
191
+ * Cap on {@link warnedNestedValueSites}.
192
+ *
193
+ * The site key includes the nested keys' names, so a payload built from an
194
+ * API response — per-record ids, timestamps — makes every call a distinct
195
+ * site, and the set would then grow for the life of the session. By the
196
+ * hundredth distinct shape the warning has made its point, so it stops
197
+ * instead of accumulating: bounded memory matters more than warning about
198
+ * shape 101.
199
+ */
200
+ static WARNED_NESTED_VALUE_SITES_MAX = 100;
201
+
202
+ /**
203
+ * Warns when a flat-values payload carries a nested object or array.
204
+ *
205
+ * `logCustomEvent`/`logDialogCustomEvent` are typed for flat scalars, but
206
+ * TypeScript types are erased at runtime: a payload built from an API
207
+ * response, widened through `any`, or passed from untyped JS reaches the
208
+ * bridge with its nesting intact. Both platforms then reshape it silently —
209
+ * Android's SDK chain is typed `HashMap<String, String>` end to end, so a
210
+ * nested value is stringified into whatever its `toString()` yields — and
211
+ * the call still returns `true`. `logSignal` is the API that carries nested
212
+ * JSON on both platforms.
213
+ *
214
+ * Warning only: the payload is passed through untouched, so this changes no
215
+ * behaviour and cannot break a caller who is relying on today's reshaping.
216
+ *
217
+ * @param api Name of the calling API, for the message.
218
+ * @param values The payload about to cross the bridge.
219
+ */
220
+ static warnOnNestedValues = (api, values) => {
221
+ if (values == null || typeof values !== 'object') {
222
+ return;
223
+ }
224
+ const nested = Object.keys(values).filter(key => {
225
+ const value = values[key];
226
+ return typeof value === 'object' && value !== null;
227
+ });
228
+ if (nested.length === 0) {
229
+ return;
230
+ }
231
+ const site = `${api}:${nested.sort().join(',')}`;
232
+ if (TLTRN.warnedNestedValueSites.has(site)) {
233
+ return;
234
+ }
235
+ if (TLTRN.warnedNestedValueSites.size >= TLTRN.WARNED_NESTED_VALUE_SITES_MAX) {
236
+ return;
237
+ }
238
+ TLTRN.warnedNestedValueSites.add(site);
239
+ console.warn(`TLTRN.${api}: nested value(s) [${nested.sort().join(', ')}] will be flattened — ` + `${api} carries flat scalars only, and the native SDKs reshape anything else ` + `without reporting it. Use logSignal for nested JSON; it is carried intact on ` + `both platforms.`);
240
+ };
241
+
242
+ /**
243
+ * Logs a custom event.
244
+ *
245
+ * @param eventName Event name, as it appears in the posted JSON.
246
+ * @param values Flat key/value pairs. Nested objects and arrays are NOT
247
+ * supported here and are reshaped by the native SDKs — use `logSignal`
248
+ * for nested JSON.
249
+ * @param level Monitoring level for this event.
250
+ * @returns Whether the native SDK **accepted the event for delivery** —
251
+ * not whether the collector received it. The event is queued locally and
252
+ * posted later, so no return value from this call can attest to delivery;
253
+ * a `true` here means only that the SDK took the event. A `false` is also
254
+ * logged natively (logcat / os_log) so the rejection is visible.
255
+ */
175
256
  static logCustomEvent = async (eventName, values, level) => {
176
257
  let result = false;
258
+ TLTRN.warnOnNestedValues('logCustomEvent', values);
177
259
  try {
178
260
  result = AcousticConnectRN.logCustomEvent(eventName, values, level);
179
261
  } catch (error) {
@@ -210,8 +292,16 @@ class TLTRN {
210
292
  }
211
293
  return result;
212
294
  };
295
+
296
+ /**
297
+ * Logs a custom event tied to a dialog.
298
+ *
299
+ * Same flat-values contract and same return-value meaning as
300
+ * {@link logCustomEvent} — it routes to the same native API.
301
+ */
213
302
  static logDialogCustomEvent = async (dialogId, eventName, values) => {
214
303
  let result = false;
304
+ TLTRN.warnOnNestedValues('logDialogCustomEvent', values);
215
305
  try {
216
306
  result = AcousticConnectRN.logDialogCustomEvent(dialogId, eventName, values);
217
307
  } catch (error) {
@@ -1 +1 @@
1
- {"version":3,"names":["MessageQueue","Platform","KeyboardListener","DialogListener","AcousticConnectRN","previousGlobalErrorHandler","global","ErrorUtils","getGlobalHandler","setGlobalHandler","e","isFatal","logExceptionEvent","JSON","stringify","loggingError","console","warn","message","TLTRN","currentScreen","lastJSBridgeMessageTime","totalRenderTime","messageRenderTime","countMsgs","messageConsole","lastMessageConsole","isLoggingData","displayDebug","myTimer","handle","started","time","startTimer","setInterval","checkTime","stopTimer","clearInterval","init","initialCurrentScreen","showDebugConsoleMessages","undefined","currentScreenMsg","spy","listenToBridge","interceptKeyboardEvents","enable","keyListener","logScreenViewPageName","name","result","setCurrentScreenName","error","log","logScreenViewContextLoad","prevName","USE_CONFIGURED_CAPTURE_DELAY","logScreenLayout","delayMs","logClickEvent","event","target","__nativeTag","_nativeTag","controlId","fiberId","_targetInst","memoizedProps","id","length","Array","isArray","_dispatchInstances","found","find","node","logTextChangeEvent","text","_ariaLabel","OS","logCustomEvent","eventName","values","level","logDialogShowEvent","dialogId","dialogTitle","dialogType","logDialogDismissEvent","dismissReason","logDialogButtonClickEvent","buttonText","buttonIndex","logDialogCustomEvent","eventListenerRegistered","eventListenerUnsubscribe","interceptDialogEvents","dialogListener","getInstance","startIntercepting","addEventListener","stopIntercepting","now","Date","getTime","from","type","data","module","method","args","logTeal","res","dict","ReactLayoutTime","_instance"],"sourceRoot":"../../src","sources":["TLTRN.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["MessageQueue","Platform","KeyboardListener","DialogListener","AcousticConnectRN","previousGlobalErrorHandler","global","ErrorUtils","getGlobalHandler","setGlobalHandler","e","isFatal","logExceptionEvent","JSON","stringify","loggingError","console","warn","message","TLTRN","currentScreen","lastJSBridgeMessageTime","totalRenderTime","messageRenderTime","countMsgs","messageConsole","lastMessageConsole","isLoggingData","displayDebug","myTimer","handle","started","time","startTimer","setInterval","checkTime","stopTimer","clearInterval","init","initialCurrentScreen","showDebugConsoleMessages","undefined","currentScreenMsg","spy","listenToBridge","interceptKeyboardEvents","enable","keyListener","logScreenViewPageName","name","result","setCurrentScreenName","error","log","logScreenViewContextLoad","prevName","USE_CONFIGURED_CAPTURE_DELAY","logScreenLayout","delayMs","logClickEvent","event","target","__nativeTag","_nativeTag","controlId","fiberId","_targetInst","memoizedProps","id","length","Array","isArray","_dispatchInstances","found","find","node","logTextChangeEvent","text","_ariaLabel","OS","warnedNestedValueSites","Set","WARNED_NESTED_VALUE_SITES_MAX","warnOnNestedValues","api","values","nested","Object","keys","filter","key","value","site","sort","join","has","size","add","logCustomEvent","eventName","level","logDialogShowEvent","dialogId","dialogTitle","dialogType","logDialogDismissEvent","dismissReason","logDialogButtonClickEvent","buttonText","buttonIndex","logDialogCustomEvent","eventListenerRegistered","eventListenerUnsubscribe","interceptDialogEvents","dialogListener","getInstance","startIntercepting","addEventListener","stopIntercepting","now","Date","getTime","from","type","data","module","method","args","logTeal","res","dict","ReactLayoutTime","_instance"],"sourceRoot":"../../src","sources":["TLTRN.ts"],"mappings":"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","ignoreList":[]}
@@ -98,7 +98,11 @@ const Connect = ({
98
98
 
99
99
  // Listen for the 'state' event to track navigation state changes
100
100
  const unsubscribeState = navigation.current.addListener("state", () => {
101
- currentRoute.current = extractName(navigation) || navigation.current.getCurrentRoute()?.name;
101
+ // extractName resolves the focused route through the nested
102
+ // navigators itself, so there is no outer-level fallback to chain
103
+ // here — one used to be appended, which reported the tab name for
104
+ // every push inside that tab.
105
+ currentRoute.current = extractName(navigation);
102
106
 
103
107
  // Both platforms take the same path. iOS used to be excluded from
104
108
  // the layout call, which left the wrapper with no layout trigger
@@ -124,11 +128,9 @@ const Connect = ({
124
128
  };
125
129
  }, [navReady, navigation]);
126
130
  const onStartShouldSetResponderCapture = useCallback(event => {
127
- if (navigation?.current?.getCurrentRoute) {
128
- currentRoute.current = extractName(navigation) || navigation.current.getCurrentRoute()?.name;
129
- if (currentRoute.current) {
130
- TLTRN.logScreenViewPageName(currentRoute.current);
131
- }
131
+ currentRoute.current = extractName(navigation);
132
+ if (currentRoute.current) {
133
+ TLTRN.logScreenViewPageName(currentRoute.current);
132
134
  }
133
135
  TLTRN.logClickEvent(event);
134
136
  return false; // Must remain false so events bubble to the host app's handlers
@@ -138,16 +140,19 @@ const Connect = ({
138
140
  return false;
139
141
  }
140
142
  initial.current = true;
141
- if (navigation?.current?.getCurrentRoute) {
142
- currentRoute.current = navigation.current.getCurrentRoute()?.name;
143
- // Same unification as the 'state' listener above: the split sent
144
- // only a screenview on iOS and only a layout on Android, so
145
- // neither platform got both from the first-paint trigger. No delay
146
- // argument, for the reason given there.
147
- if (currentRoute.current) {
148
- TLTRN.logScreenViewPageName(currentRoute.current);
149
- TLTRN.logScreenLayout(currentRoute.current);
150
- }
143
+
144
+ // Resolved through extractName like the other two triggers. This site
145
+ // used to read `getCurrentRoute()?.name` directly, so a `params.name`
146
+ // override was honoured on navigation but silently ignored for the
147
+ // first-paint screen the same screen reported under two names.
148
+ currentRoute.current = extractName(navigation);
149
+ // Same unification as the 'state' listener above: the split sent
150
+ // only a screenview on iOS and only a layout on Android, so
151
+ // neither platform got both from the first-paint trigger. No delay
152
+ // argument, for the reason given there.
153
+ if (currentRoute.current) {
154
+ TLTRN.logScreenViewPageName(currentRoute.current);
155
+ TLTRN.logScreenLayout(currentRoute.current);
151
156
  }
152
157
  return true;
153
158
  }, [navigation]);
@@ -160,15 +165,115 @@ const Connect = ({
160
165
  }) : children
161
166
  });
162
167
  };
168
+
169
+ /**
170
+ * Walks a React Navigation state down to the deepest **focused** route.
171
+ *
172
+ * Nested navigators are the default architecture of production RN apps: a tab
173
+ * navigator whose tabs each hold a stack. The container's root state then
174
+ * describes only the outer level, and the route that the user is actually
175
+ * looking at lives in `routes[index].state`, recursively. Reading the outer
176
+ * level alone reports the *tab* name for every push inside that tab, so screen
177
+ * changes below the first level are invisible to analytics and replay.
178
+ *
179
+ * `index` can legitimately be absent on a partial/rehydrated state, in which
180
+ * case React Navigation treats the last route as focused — matched here.
181
+ *
182
+ * A depth cap guards against a malformed state whose nesting cycles; 32 is far
183
+ * past any real navigator tree.
184
+ */
185
+ function findFocusedRoute(state) {
186
+ let current = state;
187
+ let depth = 0;
188
+ while (current?.routes?.length && depth++ < 32) {
189
+ const index = current.index ?? current.routes.length - 1;
190
+ const route = current.routes[index];
191
+ if (!route?.state?.routes?.length) {
192
+ return route;
193
+ }
194
+ current = route.state;
195
+ }
196
+ return undefined;
197
+ }
198
+
199
+ /**
200
+ * Containers already reported by {@link warnExtractNameFailed}.
201
+ *
202
+ * Keyed by the container itself, so a ref that throws on every navigation
203
+ * produces one line rather than one per transition, while a genuinely
204
+ * different container still gets its own. A `WeakSet` holds no strong
205
+ * reference, so remembering a container cannot keep it alive.
206
+ */
207
+ const extractNameErrorReported = new WeakSet();
208
+
209
+ /**
210
+ * Reports, once per container, that resolving the current route threw.
211
+ *
212
+ * A throw here is expected and harmless during teardown, which is why
213
+ * ``extractName`` swallows it. A ref that keeps throwing is a different
214
+ * matter: every screen view goes unnamed, and without a line here that looks
215
+ * exactly like a ref that never attached. One warning separates the two
216
+ * without flooding a listener that fires per navigation.
217
+ */
218
+ function warnExtractNameFailed(container, error) {
219
+ if (typeof container === "object" && container !== null) {
220
+ if (extractNameErrorReported.has(container)) {
221
+ return;
222
+ }
223
+ extractNameErrorReported.add(container);
224
+ }
225
+ console.warn("Connect: could not resolve the current route — the navigation container ref threw. " + "Screen views stay unnamed while this persists (harmless if the container is unmounting). " + "Cause:", error);
226
+ }
227
+
228
+ /**
229
+ * The screen name to report for the navigation container's current position.
230
+ *
231
+ * Resolution order:
232
+ *
233
+ * 1. The focused route resolved from `getRootState()` by ``findFocusedRoute``.
234
+ * Taking the state and walking it here — rather than trusting a single
235
+ * accessor — keeps the wrapper correct regardless of whether the host app's
236
+ * navigation library resolves nesting inside `getCurrentRoute()`, and works
237
+ * for a custom container ref that exposes state but not that helper.
238
+ * 2. `getCurrentRoute()`, for refs that expose no `getRootState`.
239
+ *
240
+ * Either way `params.name` wins over the route's own `name` when the host app
241
+ * supplies it — the documented override for giving a route a human-readable
242
+ * analytics name. Only a non-empty string counts, so `params: { name: '' }`
243
+ * falls through to the route name instead of blanking the screenview.
244
+ *
245
+ * Returns `""` when nothing resolves, which both callers treat as "skip".
246
+ */
163
247
  function extractName(navigation) {
164
- const routeParams = navigation?.current?.getCurrentRoute?.()?.params;
165
- if (routeParams) {
166
- const {
167
- name
168
- } = routeParams;
169
- return name ? name : navigation.current?.getCurrentRoute()?.name || "";
248
+ const container = navigation?.current;
249
+ if (!container) {
250
+ return "";
251
+ }
252
+ let route;
253
+ try {
254
+ route = findFocusedRoute(container.getRootState?.());
255
+ } catch (error) {
256
+ // A container mid-teardown can throw out of getRootState(). Screen
257
+ // naming is not worth taking the host app's navigation down for.
258
+ warnExtractNameFailed(container, error);
259
+ route = undefined;
260
+ }
261
+ if (!route) {
262
+ try {
263
+ route = container.getCurrentRoute?.();
264
+ } catch (error) {
265
+ warnExtractNameFailed(container, error);
266
+ route = undefined;
267
+ }
268
+ }
269
+ if (!route) {
270
+ return "";
271
+ }
272
+ const overridden = route.params?.name;
273
+ if (typeof overridden === "string" && overridden.length > 0) {
274
+ return overridden;
170
275
  }
171
- return "";
276
+ return typeof route.name === "string" ? route.name : "";
172
277
  }
173
278
  export default Connect;
174
279
  const styles = StyleSheet.create({
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useRef","useState","View","StyleSheet","TLTRN","jsx","_jsx","Connect","children","captureKeyboardEvents","captureDialogEvents","navigationRef","child","childProvidedRef","props","ref","internalRef","navigation","shouldInjectRef","isValidElement","currentRoute","undefined","initial","navReady","setNavReady","interceptKeyboardEvents","interceptDialogEvents","isUsable","current","addListener","getCurrentRoute","attempts","POLL_INTERVAL_MS","MAX_ATTEMPTS","timer","poll","console","warn","setTimeout","clearTimeout","unsubscribeState","extractName","name","logScreenViewPageName","logScreenLayout","onStartShouldSetResponderCapture","event","logClickEvent","onLayout","_event","style","styles","connect_main","cloneElement","routeParams","params","create","flex"],"sourceRoot":"../../../src","sources":["components/Connect.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useCallback","useEffect","useRef","useState","View","StyleSheet","TLTRN","jsx","_jsx","Connect","children","captureKeyboardEvents","captureDialogEvents","navigationRef","child","childProvidedRef","props","ref","internalRef","navigation","shouldInjectRef","isValidElement","currentRoute","undefined","initial","navReady","setNavReady","interceptKeyboardEvents","interceptDialogEvents","isUsable","current","addListener","getCurrentRoute","attempts","POLL_INTERVAL_MS","MAX_ATTEMPTS","timer","poll","console","warn","setTimeout","clearTimeout","unsubscribeState","extractName","logScreenViewPageName","logScreenLayout","onStartShouldSetResponderCapture","event","logClickEvent","onLayout","_event","style","styles","connect_main","cloneElement","findFocusedRoute","state","depth","routes","length","index","route","extractNameErrorReported","WeakSet","warnExtractNameFailed","container","error","has","add","getRootState","overridden","params","name","create","flex"],"sourceRoot":"../../../src","sources":["components/Connect.tsx"],"mappings":"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","ignoreList":[]}