@dynamic-labs/react-native-extension 4.75.0 → 4.76.0

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.
Files changed (3) hide show
  1. package/index.cjs +39 -6
  2. package/index.js +39 -6
  3. package/package.json +6 -6
package/index.cjs CHANGED
@@ -34,7 +34,7 @@ function _interopNamespace(e) {
34
34
  return Object.freeze(n);
35
35
  }
36
36
 
37
- var version = "4.75.0";
37
+ var version = "4.76.0";
38
38
 
39
39
  function _extends() {
40
40
  return _extends = Object.assign ? Object.assign.bind() : function (n) {
@@ -90,7 +90,14 @@ const useMessageTransportWebViewBridge = (core, webViewRef) => {
90
90
  const sendMessageToWebView = message => {
91
91
  var _a;
92
92
  if (!webViewRef.current) {
93
- logger.debug(`WebView ref not found — dropping message type=${message.type} origin=${message.origin}`);
93
+ logger.instrument('WebView ref not found — dropping message', {
94
+ environmentId: core.environmentId,
95
+ hostSdkSessionId: core.hostSdkSessionId,
96
+ key: 'webview.message_dropped',
97
+ messageOrigin: message.origin,
98
+ messageType: message.type,
99
+ time: 0
100
+ });
94
101
  return;
95
102
  }
96
103
  /**
@@ -189,7 +196,13 @@ const useWebViewRecoveryTimeout = ({
189
196
  return;
190
197
  }
191
198
  if (hasClearStateInUrl(webViewUrl)) {
192
- logger.debug('timeout recovery: disabled because webview already cleared its state', webViewUrl.toString());
199
+ logger.instrument('Webview failed to load after clearing its state', {
200
+ environmentId: core.environmentId,
201
+ hostSdkSessionId: core.hostSdkSessionId,
202
+ key: 'webview.failed_to_load_after_clear_state',
203
+ time: 0,
204
+ webviewUrl: webViewUrl.toString()
205
+ });
193
206
  onFailedToLoadAfterClearStateRef.current();
194
207
  return;
195
208
  }
@@ -199,14 +212,26 @@ const useWebViewRecoveryTimeout = ({
199
212
  }
200
213
  timeoutRef.current = setTimeout(() => {
201
214
  if (!core.messageTransport.isBlocked()) {
202
- logger.debug('timeout recovery: skip the timeout because the webview did load');
215
+ logger.instrument('Webview recovery skipped because the webview did load', {
216
+ environmentId: core.environmentId,
217
+ hostSdkSessionId: core.hostSdkSessionId,
218
+ key: 'webview.recovery_skipped',
219
+ time: 0,
220
+ webviewUrl: webViewUrl.toString()
221
+ });
203
222
  return;
204
223
  }
205
224
  core.messageTransport.block();
206
225
  // Increase the retry
207
226
  setWebViewUrl(webViewUrl => {
208
227
  const newWebViewUrl = setClearStateToUrl(webViewUrl);
209
- logger.debug('timeout recovery: reloading webview to clear its state', newWebViewUrl.toString());
228
+ logger.instrument('timeout recovery: reloading webview to clear its state', {
229
+ environmentId: core.environmentId,
230
+ hostSdkSessionId: core.hostSdkSessionId,
231
+ key: 'webview.recovery_by_clear_state',
232
+ time: 0,
233
+ webviewUrl: webViewUrl.toString()
234
+ });
210
235
  return newWebViewUrl;
211
236
  });
212
237
  }, recoveryTimeout);
@@ -310,7 +335,15 @@ const WebView = ({
310
335
  core.messageTransport.block();
311
336
  setWebViewUrl(webViewUrl => {
312
337
  const newWebViewUrl = increaseRetryToUrl(webViewUrl);
313
- logger.debug(`Reloading webview reason=${reason} url=${newWebViewUrl.toString()}`);
338
+ logger.instrument('Reloading webview', {
339
+ environmentId: core.environmentId,
340
+ hostSdkSessionId: core.hostSdkSessionId,
341
+ key: 'webview.reloading',
342
+ newWebViewUrl,
343
+ reason,
344
+ time: 0,
345
+ webviewUrl: webViewUrl.toString()
346
+ });
314
347
  return newWebViewUrl;
315
348
  });
316
349
  }, [core]);
package/index.js CHANGED
@@ -12,7 +12,7 @@ import { getItemAsync, deleteItemAsync, setItemAsync } from 'expo-secure-store';
12
12
  import { createPasskey, PasskeyStamper } from '@turnkey/react-native-passkey-stamper';
13
13
  import { requireNativeModule } from 'expo-modules-core';
14
14
 
15
- var version = "4.75.0";
15
+ var version = "4.76.0";
16
16
 
17
17
  function _extends() {
18
18
  return _extends = Object.assign ? Object.assign.bind() : function (n) {
@@ -68,7 +68,14 @@ const useMessageTransportWebViewBridge = (core, webViewRef) => {
68
68
  const sendMessageToWebView = message => {
69
69
  var _a;
70
70
  if (!webViewRef.current) {
71
- logger.debug(`WebView ref not found — dropping message type=${message.type} origin=${message.origin}`);
71
+ logger.instrument('WebView ref not found — dropping message', {
72
+ environmentId: core.environmentId,
73
+ hostSdkSessionId: core.hostSdkSessionId,
74
+ key: 'webview.message_dropped',
75
+ messageOrigin: message.origin,
76
+ messageType: message.type,
77
+ time: 0
78
+ });
72
79
  return;
73
80
  }
74
81
  /**
@@ -167,7 +174,13 @@ const useWebViewRecoveryTimeout = ({
167
174
  return;
168
175
  }
169
176
  if (hasClearStateInUrl(webViewUrl)) {
170
- logger.debug('timeout recovery: disabled because webview already cleared its state', webViewUrl.toString());
177
+ logger.instrument('Webview failed to load after clearing its state', {
178
+ environmentId: core.environmentId,
179
+ hostSdkSessionId: core.hostSdkSessionId,
180
+ key: 'webview.failed_to_load_after_clear_state',
181
+ time: 0,
182
+ webviewUrl: webViewUrl.toString()
183
+ });
171
184
  onFailedToLoadAfterClearStateRef.current();
172
185
  return;
173
186
  }
@@ -177,14 +190,26 @@ const useWebViewRecoveryTimeout = ({
177
190
  }
178
191
  timeoutRef.current = setTimeout(() => {
179
192
  if (!core.messageTransport.isBlocked()) {
180
- logger.debug('timeout recovery: skip the timeout because the webview did load');
193
+ logger.instrument('Webview recovery skipped because the webview did load', {
194
+ environmentId: core.environmentId,
195
+ hostSdkSessionId: core.hostSdkSessionId,
196
+ key: 'webview.recovery_skipped',
197
+ time: 0,
198
+ webviewUrl: webViewUrl.toString()
199
+ });
181
200
  return;
182
201
  }
183
202
  core.messageTransport.block();
184
203
  // Increase the retry
185
204
  setWebViewUrl(webViewUrl => {
186
205
  const newWebViewUrl = setClearStateToUrl(webViewUrl);
187
- logger.debug('timeout recovery: reloading webview to clear its state', newWebViewUrl.toString());
206
+ logger.instrument('timeout recovery: reloading webview to clear its state', {
207
+ environmentId: core.environmentId,
208
+ hostSdkSessionId: core.hostSdkSessionId,
209
+ key: 'webview.recovery_by_clear_state',
210
+ time: 0,
211
+ webviewUrl: webViewUrl.toString()
212
+ });
188
213
  return newWebViewUrl;
189
214
  });
190
215
  }, recoveryTimeout);
@@ -288,7 +313,15 @@ const WebView = ({
288
313
  core.messageTransport.block();
289
314
  setWebViewUrl(webViewUrl => {
290
315
  const newWebViewUrl = increaseRetryToUrl(webViewUrl);
291
- logger.debug(`Reloading webview reason=${reason} url=${newWebViewUrl.toString()}`);
316
+ logger.instrument('Reloading webview', {
317
+ environmentId: core.environmentId,
318
+ hostSdkSessionId: core.hostSdkSessionId,
319
+ key: 'webview.reloading',
320
+ newWebViewUrl,
321
+ reason,
322
+ time: 0,
323
+ webviewUrl: webViewUrl.toString()
324
+ });
292
325
  return newWebViewUrl;
293
326
  });
294
327
  }, [core]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/react-native-extension",
3
- "version": "4.75.0",
3
+ "version": "4.76.0",
4
4
  "main": "./index.cjs",
5
5
  "module": "./index.js",
6
6
  "types": "./src/index.d.ts",
@@ -18,11 +18,11 @@
18
18
  "@turnkey/react-native-passkey-stamper": "1.2.7",
19
19
  "@react-native-documents/picker": "^11.0.0",
20
20
  "react-native-fs": ">=2.20.0",
21
- "@dynamic-labs/assert-package-version": "4.75.0",
22
- "@dynamic-labs/client": "4.75.0",
23
- "@dynamic-labs/logger": "4.75.0",
24
- "@dynamic-labs/message-transport": "4.75.0",
25
- "@dynamic-labs/webview-messages": "4.75.0"
21
+ "@dynamic-labs/assert-package-version": "4.76.0",
22
+ "@dynamic-labs/client": "4.76.0",
23
+ "@dynamic-labs/logger": "4.76.0",
24
+ "@dynamic-labs/message-transport": "4.76.0",
25
+ "@dynamic-labs/webview-messages": "4.76.0"
26
26
  },
27
27
  "peerDependencies": {
28
28
  "react": ">=18.0.0 <20.0.0",