banking_dcb_sdk_react_native 1.0.77 → 1.0.773

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.
@@ -61,6 +61,18 @@ export async function openMailAppIntent(app) {
61
61
  }
62
62
  return false;
63
63
  }
64
+ const isUserClosedRedirect = url => {
65
+ if (!url) return false;
66
+ try {
67
+ // Try to parse URL properly
68
+ const u = new URL(url);
69
+ if (!u.pathname.includes('/api/user/redirect')) return false;
70
+ return u.searchParams.get('status') === 'USER_CLOSED';
71
+ } catch {
72
+ // Fallback for relative / malformed URLs
73
+ return url.includes('/api/user/redirect?status=USER_CLOSED');
74
+ }
75
+ };
64
76
  const clearAllCookies = async () => {
65
77
  try {
66
78
  await CookieManager.clearAll(true);
@@ -79,7 +91,9 @@ export const WebView = ({
79
91
  }) => {
80
92
  const webviewRef = useRef(null);
81
93
  const [canGoBack, setCanGoBack] = useState(false);
82
- const [waitingForUserClosedRedirect, setWaitingForUserClosedRedirect] = useState(false);
94
+ const waitingForUserClosedRedirectRef = useRef(false);
95
+ const [, setWaitingForUserClosedRedirect] = useState(false); // just if you want UI, otherwise skip
96
+
83
97
  // const [hasRedirected, setHasRedirected] = useState(false);
84
98
  const [, setToast] = useState(null);
85
99
  const handleExternalUrl = async url => {
@@ -193,18 +207,17 @@ export const WebView = ({
193
207
  url
194
208
  } = event;
195
209
  console.log('SDK:LOG: WEBVIEW URL:', url);
196
- if (url === 'about:blank' || url === 'about:srcdoc') {
210
+ if (!url || url === 'about:blank' || url === 'about:srcdoc') {
197
211
  return true;
198
212
  }
199
- if (waitingForUserClosedRedirect && (url?.includes('/session-expired?status=') || url?.includes('/redirect?status=') || url?.includes('/api/user/redirect'))) {
200
- console.log('SDK:LOG: waitingForUserClosedRedirect overriding url');
201
- const status = getQueryParam(url, 'status');
202
- setWaitingForUserClosedRedirect(false);
203
- console.log('SDK:LOG: Status thrown from webview ', status);
213
+
214
+ // 1. SPECIAL CASE: only USER_CLOSED navigation
215
+ if (isUserClosedRedirect(url)) {
216
+ console.log('SDK:LOG: USER_CLOSED redirect detected via navigation:', url);
204
217
  StatusBar.setBackgroundColor('#7E7E7EFF');
205
218
  clearAllCookies();
206
- onCallback?.(WebViewCallback.redirect(status ?? 'USER_CLOSED'));
207
- return false;
219
+ onCallback?.(WebViewCallback.redirect('USER_CLOSED'));
220
+ return false; // don't actually load that URL in WebView
208
221
  }
209
222
  if (Platform.OS === 'android' && url) {
210
223
  if (url.includes('ms-outlook://')) {
@@ -281,15 +294,74 @@ export const WebView = ({
281
294
  // Cookie injection script
282
295
 
283
296
  const injectedJavaScript = `
297
+ (function() {
298
+ function isUserClosedRedirect(url) {
299
+ if (!url) return false;
300
+ try {
301
+ var u = new URL(url, window.location.origin);
302
+ if (u.pathname.indexOf('/api/user/redirect') === -1) return false;
303
+ return u.searchParams.get('status') === 'USER_CLOSED';
304
+ } catch (e) {
305
+ return url.indexOf('/api/user/redirect?status=USER_CLOSED') !== -1;
306
+ }
307
+ }
308
+
309
+ // Keep your RATE_LIMIT_USER error handler behavior
310
+ var previousOnError = window.onerror || null;
284
311
  window.onerror = function(message, source, lineno, colno, error) {
285
- if (message.includes('RATE_LIMIT_USER')) {
286
- window.ReactNativeWebView.postMessage(JSON.stringify({
287
- type: 'RATE_LIMIT_ERROR'
288
- }));
312
+ try {
313
+ if (String(message || '').indexOf('RATE_LIMIT_USER') !== -1 &&
314
+ window.ReactNativeWebView) {
315
+ window.ReactNativeWebView.postMessage(JSON.stringify({
316
+ type: 'RATE_LIMIT_ERROR'
317
+ }));
318
+ }
319
+ } catch (e) {}
320
+ if (typeof previousOnError === 'function') {
321
+ try { return previousOnError.apply(this, arguments); } catch (e) {}
289
322
  }
290
323
  };
291
- true;
292
- `;
324
+
325
+ // Patch fetch → only USER_CLOSED
326
+ if (window.fetch) {
327
+ var originalFetch = window.fetch;
328
+ window.fetch = function() {
329
+ try {
330
+ var input = arguments[0];
331
+ var url = typeof input === 'string'
332
+ ? input
333
+ : (input && input.url) || '';
334
+ if (isUserClosedRedirect(url) && window.ReactNativeWebView) {
335
+ window.ReactNativeWebView.postMessage(JSON.stringify({
336
+ type: 'API_USER_CLOSED',
337
+ via: 'fetch',
338
+ url: url
339
+ }));
340
+ }
341
+ } catch (e) {}
342
+ return originalFetch.apply(this, arguments);
343
+ };
344
+ }
345
+
346
+ // Patch XHR → only USER_CLOSED
347
+ if (window.XMLHttpRequest) {
348
+ var originalOpen = XMLHttpRequest.prototype.open;
349
+ XMLHttpRequest.prototype.open = function(method, url) {
350
+ try {
351
+ if (isUserClosedRedirect(url) && window.ReactNativeWebView) {
352
+ window.ReactNativeWebView.postMessage(JSON.stringify({
353
+ type: 'API_USER_CLOSED',
354
+ via: 'xhr',
355
+ url: url
356
+ }));
357
+ }
358
+ } catch (e) {}
359
+ return originalOpen.apply(this, arguments);
360
+ };
361
+ }
362
+ })();
363
+ true;
364
+ `;
293
365
  const requestPermission = async permission => {
294
366
  try {
295
367
  const result = await check(permission);
@@ -334,12 +406,30 @@ export const WebView = ({
334
406
  event.nativeEvent.deny();
335
407
  }
336
408
  };
409
+ const setWaitingFlag = value => {
410
+ waitingForUserClosedRedirectRef.current = value;
411
+ setWaitingForUserClosedRedirect(value);
412
+ };
337
413
  const handleMessage = event => {
338
414
  try {
339
415
  const data = JSON.parse(event.nativeEvent.data);
340
416
  if (data?.method === 'CLOSE_CLICKED') {
341
417
  console.log('SDK:LOG: Received CLOSE_CLICKED from web');
342
- setWaitingForUserClosedRedirect(true);
418
+ // optional: just log, or set a flag, up to you
419
+ return;
420
+ }
421
+ if (data?.type === 'API_USER_CLOSED') {
422
+ console.log('SDK:LOG: USER_CLOSED intercepted via', data.via, 'url =', data.url);
423
+ StatusBar.setBackgroundColor('#7E7E7EFF');
424
+ clearAllCookies();
425
+ onCallback?.(WebViewCallback.redirect('USER_CLOSED'));
426
+
427
+ // close the screen here if your host expects that
428
+ // e.g. options?.onClose?.();
429
+ return;
430
+ }
431
+ if (data?.type === 'RATE_LIMIT_ERROR') {
432
+ // your existing RATE_LIMIT handling if any
343
433
  }
344
434
  } catch (e) {
345
435
  console.warn('SDK:LOG: Error parsing WebView message', e);
@@ -381,6 +471,7 @@ export const WebView = ({
381
471
  allowsInlineMediaPlayback: true,
382
472
  onShouldStartLoadWithRequest: handleOnShouldStartLoadWithRequest,
383
473
  onNavigationStateChange: navState => {
474
+ console.log('SDK:LOG: NAV STATE URL:', navState.url);
384
475
  setCanGoBack(navState.canGoBack);
385
476
  },
386
477
  injectedJavaScript: injectedJavaScript,
@@ -1 +1 @@
1
- {"version":3,"names":["WebView","RNWebView","BackHandler","Platform","Linking","SafeAreaView","ActivityIndicator","View","ToastAndroid","StatusBar","useEffect","useRef","useState","WebViewCallback","check","PERMISSIONS","request","RESULTS","FileViewer","RNFS","CookieManager","SendIntentAndroid","jsx","_jsx","PKG","gmail","outlook","yahoo","SCHEME","openMailAppIntent","app","OS","pkg","scheme","wasOpened","openApp","err","console","log","canOpen","canOpenURL","openURL","err2","clearAllCookies","clearAll","e","error","url","options","onCallback","hostName","whitelistedUrls","onPageFinished","webviewRef","canGoBack","setCanGoBack","waitingForUserClosedRedirect","setWaitingForUserClosedRedirect","setToast","handleExternalUrl","Promise","resolve","setTimeout","show","LONG","showToast_with_code_message","syntheticEvent","nativeEvent","errorCodesToHandle","includes","code","message","description","visible","redirect","getQueryParam","param","match","RegExp","decodeURIComponent","downloadAndOpenFile","fileUrl","cookieString","cookies","get","Object","keys","map","key","value","join","timestamp","Date","getTime","urlParts","split","lastPart","length","fileExt","pop","fileName","downloadPath","select","ios","DocumentDirectoryPath","android","DownloadDirectoryPath","Error","fromUrl","toFile","headers","background","begin","res","response","downloadFile","promise","statusCode","SHORT","open","showOpenWithDialog","onDismiss","unlink","catch","handleOnShouldStartLoadWithRequest","event","status","setBackgroundColor","then","ok","undefined","isWhitelisted","some","white","handleBackButton","current","goBack","backHandler","addEventListener","remove","Loading","style","flex","justifyContent","alignItems","children","size","injectedJavaScript","requestPermission","permission","result","DENIED","requestResult","GRANTED","handlePermissionRequest","resources","permissionsToRequest","push","IOS","CAMERA","ANDROID","MICROPHONE","RECORD_AUDIO","LOCATION_WHEN_IN_USE","ACCESS_FINE_LOCATION","results","all","granted","every","grant","deny","handleMessage","data","JSON","parse","method","warn","handleWebViewLoadEnd","loadedUrl","backgroundColor","ref","source","uri","onPermissionRequest","geolocationEnabled","androidPermissions","camera","microphone","geolocation","onError","startInLoadingState","renderLoading","onLoadEnd","originWhitelist","javaScriptEnabled","domStorageEnabled","mediaPlaybackRequiresUserAction","allowsInlineMediaPlayback","onShouldStartLoadWithRequest","onNavigationStateChange","navState","decelerationRate","allowsBackForwardNavigationGestures","sharedCookiesEnabled","setSupportMultipleWindows","mixedContentMode","allowsLinkPreview","onMessage"],"sourceRoot":"../../../src","sources":["helpers/webview.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["WebView","RNWebView","BackHandler","Platform","Linking","SafeAreaView","ActivityIndicator","View","ToastAndroid","StatusBar","useEffect","useRef","useState","WebViewCallback","check","PERMISSIONS","request","RESULTS","FileViewer","RNFS","CookieManager","SendIntentAndroid","jsx","_jsx","PKG","gmail","outlook","yahoo","SCHEME","openMailAppIntent","app","OS","pkg","scheme","wasOpened","openApp","err","console","log","canOpen","canOpenURL","openURL","err2","isUserClosedRedirect","url","u","URL","pathname","includes","searchParams","get","clearAllCookies","clearAll","e","error","options","onCallback","hostName","whitelistedUrls","onPageFinished","webviewRef","canGoBack","setCanGoBack","waitingForUserClosedRedirectRef","setWaitingForUserClosedRedirect","setToast","handleExternalUrl","Promise","resolve","setTimeout","show","LONG","showToast_with_code_message","syntheticEvent","nativeEvent","errorCodesToHandle","code","message","description","visible","redirect","getQueryParam","param","match","RegExp","decodeURIComponent","downloadAndOpenFile","fileUrl","cookieString","cookies","Object","keys","map","key","value","join","timestamp","Date","getTime","urlParts","split","lastPart","length","fileExt","pop","fileName","downloadPath","select","ios","DocumentDirectoryPath","android","DownloadDirectoryPath","Error","fromUrl","toFile","headers","background","begin","res","response","downloadFile","promise","statusCode","SHORT","open","showOpenWithDialog","onDismiss","unlink","catch","handleOnShouldStartLoadWithRequest","event","setBackgroundColor","then","ok","status","undefined","isWhitelisted","some","white","handleBackButton","current","goBack","backHandler","addEventListener","remove","Loading","style","flex","justifyContent","alignItems","children","size","injectedJavaScript","requestPermission","permission","result","DENIED","requestResult","GRANTED","handlePermissionRequest","resources","permissionsToRequest","push","IOS","CAMERA","ANDROID","MICROPHONE","RECORD_AUDIO","LOCATION_WHEN_IN_USE","ACCESS_FINE_LOCATION","results","all","granted","every","grant","deny","setWaitingFlag","handleMessage","data","JSON","parse","method","type","via","warn","handleWebViewLoadEnd","loadedUrl","backgroundColor","ref","source","uri","onPermissionRequest","geolocationEnabled","androidPermissions","camera","microphone","geolocation","onError","startInLoadingState","renderLoading","onLoadEnd","originWhitelist","javaScriptEnabled","domStorageEnabled","mediaPlaybackRequiresUserAction","allowsInlineMediaPlayback","onShouldStartLoadWithRequest","onNavigationStateChange","navState","decelerationRate","allowsBackForwardNavigationGestures","sharedCookiesEnabled","setSupportMultipleWindows","mixedContentMode","allowsLinkPreview","onMessage"],"sourceRoot":"../../../src","sources":["helpers/webview.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"type":"module"}
@@ -1 +1 @@
1
- {"version":3,"file":"webview.d.ts","sourceRoot":"","sources":["../../../../src/helpers/webview.tsx"],"names":[],"mappings":"AAgBA,OAAO,EACL,KAAK,YAAY,EAElB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAC;AAcjC,UAAU,oBAAqB,SAAQ,YAAY;IACjD,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3C,kBAAkB,CAAC,EAAE;QACnB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB,CAAC;CACH;AACD,UAAU,kBAAkB;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACxC,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED,KAAK,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;AAc7C;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAoCtE;AAWD,eAAO,MAAM,OAAO,GAAI,0EAOrB,kBAAkB,4CAgZpB,CAAC"}
1
+ {"version":3,"file":"webview.d.ts","sourceRoot":"","sources":["../../../../src/helpers/webview.tsx"],"names":[],"mappings":"AAgBA,OAAO,EACL,KAAK,YAAY,EAElB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAC;AAcjC,UAAU,oBAAqB,SAAQ,YAAY;IACjD,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3C,kBAAkB,CAAC,EAAE;QACnB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB,CAAC;CACH;AACD,UAAU,kBAAkB;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACxC,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED,KAAK,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;AAc7C;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAoCtE;AAuBD,eAAO,MAAM,OAAO,GAAI,0EAOrB,kBAAkB,4CAsepB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "banking_dcb_sdk_react_native",
3
- "version": "1.0.77",
3
+ "version": "1.0.773",
4
4
  "description": "React Native package for partner integrating with DCB",
5
5
  "source": "./src/index.tsx",
6
6
  "main": "./lib/module/index.js",
@@ -111,6 +111,18 @@ export async function openMailAppIntent(app: MailApp): Promise<boolean> {
111
111
 
112
112
  return false;
113
113
  }
114
+ const isUserClosedRedirect = (url?: string | null): boolean => {
115
+ if (!url) return false;
116
+ try {
117
+ // Try to parse URL properly
118
+ const u = new URL(url);
119
+ if (!u.pathname.includes('/api/user/redirect')) return false;
120
+ return u.searchParams.get('status') === 'USER_CLOSED';
121
+ } catch {
122
+ // Fallback for relative / malformed URLs
123
+ return url.includes('/api/user/redirect?status=USER_CLOSED');
124
+ }
125
+ };
114
126
 
115
127
  const clearAllCookies = async () => {
116
128
  try {
@@ -131,8 +143,9 @@ export const WebView = ({
131
143
  }: WebViewCustomProps) => {
132
144
  const webviewRef = useRef<RNWebView | null>(null);
133
145
  const [canGoBack, setCanGoBack] = useState(false);
134
- const [waitingForUserClosedRedirect, setWaitingForUserClosedRedirect] =
135
- useState(false);
146
+ const waitingForUserClosedRedirectRef = useRef(false);
147
+ const [, setWaitingForUserClosedRedirect] = useState(false); // just if you want UI, otherwise skip
148
+
136
149
  // const [hasRedirected, setHasRedirected] = useState(false);
137
150
  const [, setToast] = useState<{ visible: boolean; message: string } | null>(
138
151
  null
@@ -265,27 +278,25 @@ export const WebView = ({
265
278
  const handleOnShouldStartLoadWithRequest = (event: WebViewNavigation) => {
266
279
  const { url } = event;
267
280
  console.log('SDK:LOG: WEBVIEW URL:', url);
268
- if (url === 'about:blank' || url === 'about:srcdoc') {
281
+
282
+ if (!url || url === 'about:blank' || url === 'about:srcdoc') {
269
283
  return true;
270
284
  }
271
- if (
272
- waitingForUserClosedRedirect &&
273
- (url?.includes('/session-expired?status=') ||
274
- url?.includes('/redirect?status=') ||
275
- url?.includes('/api/user/redirect'))
276
- ) {
277
- console.log('SDK:LOG: waitingForUserClosedRedirect overriding url');
278
- const status = getQueryParam(url, 'status');
279
285
 
280
- setWaitingForUserClosedRedirect(false);
281
-
282
- console.log('SDK:LOG: Status thrown from webview ', status);
286
+ // 1. SPECIAL CASE: only USER_CLOSED navigation
287
+ if (isUserClosedRedirect(url)) {
288
+ console.log(
289
+ 'SDK:LOG: USER_CLOSED redirect detected via navigation:',
290
+ url
291
+ );
283
292
 
284
293
  StatusBar.setBackgroundColor('#7E7E7EFF');
285
294
  clearAllCookies();
286
- onCallback?.(WebViewCallback.redirect(status ?? 'USER_CLOSED'));
287
- return false;
295
+ onCallback?.(WebViewCallback.redirect('USER_CLOSED'));
296
+
297
+ return false; // don't actually load that URL in WebView
288
298
  }
299
+
289
300
  if (Platform.OS === 'android' && url) {
290
301
  if (url.includes('ms-outlook://')) {
291
302
  console.log('SDK:LOG: Intent to open Outlook detected');
@@ -393,15 +404,74 @@ export const WebView = ({
393
404
  // Cookie injection script
394
405
 
395
406
  const injectedJavaScript = `
407
+ (function() {
408
+ function isUserClosedRedirect(url) {
409
+ if (!url) return false;
410
+ try {
411
+ var u = new URL(url, window.location.origin);
412
+ if (u.pathname.indexOf('/api/user/redirect') === -1) return false;
413
+ return u.searchParams.get('status') === 'USER_CLOSED';
414
+ } catch (e) {
415
+ return url.indexOf('/api/user/redirect?status=USER_CLOSED') !== -1;
416
+ }
417
+ }
418
+
419
+ // Keep your RATE_LIMIT_USER error handler behavior
420
+ var previousOnError = window.onerror || null;
396
421
  window.onerror = function(message, source, lineno, colno, error) {
397
- if (message.includes('RATE_LIMIT_USER')) {
398
- window.ReactNativeWebView.postMessage(JSON.stringify({
399
- type: 'RATE_LIMIT_ERROR'
400
- }));
422
+ try {
423
+ if (String(message || '').indexOf('RATE_LIMIT_USER') !== -1 &&
424
+ window.ReactNativeWebView) {
425
+ window.ReactNativeWebView.postMessage(JSON.stringify({
426
+ type: 'RATE_LIMIT_ERROR'
427
+ }));
428
+ }
429
+ } catch (e) {}
430
+ if (typeof previousOnError === 'function') {
431
+ try { return previousOnError.apply(this, arguments); } catch (e) {}
401
432
  }
402
433
  };
403
- true;
404
- `;
434
+
435
+ // Patch fetch → only USER_CLOSED
436
+ if (window.fetch) {
437
+ var originalFetch = window.fetch;
438
+ window.fetch = function() {
439
+ try {
440
+ var input = arguments[0];
441
+ var url = typeof input === 'string'
442
+ ? input
443
+ : (input && input.url) || '';
444
+ if (isUserClosedRedirect(url) && window.ReactNativeWebView) {
445
+ window.ReactNativeWebView.postMessage(JSON.stringify({
446
+ type: 'API_USER_CLOSED',
447
+ via: 'fetch',
448
+ url: url
449
+ }));
450
+ }
451
+ } catch (e) {}
452
+ return originalFetch.apply(this, arguments);
453
+ };
454
+ }
455
+
456
+ // Patch XHR → only USER_CLOSED
457
+ if (window.XMLHttpRequest) {
458
+ var originalOpen = XMLHttpRequest.prototype.open;
459
+ XMLHttpRequest.prototype.open = function(method, url) {
460
+ try {
461
+ if (isUserClosedRedirect(url) && window.ReactNativeWebView) {
462
+ window.ReactNativeWebView.postMessage(JSON.stringify({
463
+ type: 'API_USER_CLOSED',
464
+ via: 'xhr',
465
+ url: url
466
+ }));
467
+ }
468
+ } catch (e) {}
469
+ return originalOpen.apply(this, arguments);
470
+ };
471
+ }
472
+ })();
473
+ true;
474
+ `;
405
475
 
406
476
  const requestPermission = async (permission: Permission) => {
407
477
  try {
@@ -467,19 +537,46 @@ export const WebView = ({
467
537
  }
468
538
  };
469
539
 
540
+ const setWaitingFlag = (value: boolean) => {
541
+ waitingForUserClosedRedirectRef.current = value;
542
+ setWaitingForUserClosedRedirect(value);
543
+ };
544
+
470
545
  const handleMessage = (event: WebViewMessageEvent) => {
471
546
  try {
472
547
  const data = JSON.parse(event.nativeEvent.data);
473
548
 
474
549
  if (data?.method === 'CLOSE_CLICKED') {
475
550
  console.log('SDK:LOG: Received CLOSE_CLICKED from web');
551
+ // optional: just log, or set a flag, up to you
552
+ return;
553
+ }
476
554
 
477
- setWaitingForUserClosedRedirect(true);
555
+ if (data?.type === 'API_USER_CLOSED') {
556
+ console.log(
557
+ 'SDK:LOG: USER_CLOSED intercepted via',
558
+ data.via,
559
+ 'url =',
560
+ data.url
561
+ );
562
+
563
+ StatusBar.setBackgroundColor('#7E7E7EFF');
564
+ clearAllCookies();
565
+ onCallback?.(WebViewCallback.redirect('USER_CLOSED'));
566
+
567
+ // close the screen here if your host expects that
568
+ // e.g. options?.onClose?.();
569
+ return;
570
+ }
571
+
572
+ if (data?.type === 'RATE_LIMIT_ERROR') {
573
+ // your existing RATE_LIMIT handling if any
478
574
  }
479
575
  } catch (e) {
480
576
  console.warn('SDK:LOG: Error parsing WebView message', e);
481
577
  }
482
578
  };
579
+
483
580
  const handleWebViewLoadEnd = (syntheticEvent: any) => {
484
581
  const loadedUrl = syntheticEvent?.nativeEvent?.url || url;
485
582
 
@@ -515,6 +612,7 @@ export const WebView = ({
515
612
  allowsInlineMediaPlayback={true}
516
613
  onShouldStartLoadWithRequest={handleOnShouldStartLoadWithRequest}
517
614
  onNavigationStateChange={(navState) => {
615
+ console.log('SDK:LOG: NAV STATE URL:', navState.url);
518
616
  setCanGoBack(navState.canGoBack);
519
617
  }}
520
618
  injectedJavaScript={injectedJavaScript}