banking_dcb_sdk_react_native 2.0.55 → 2.0.92
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/lib/module/helpers/banking_dcb_react_native.js +105 -68
- package/lib/module/helpers/banking_dcb_react_native.js.map +1 -1
- package/lib/module/helpers/utils/preLoadedWebView.js +1 -1
- package/lib/module/helpers/webview.js +226 -3
- package/lib/module/helpers/webview.js.map +1 -1
- package/lib/typescript/src/helpers/banking_dcb_react_native.d.ts +0 -1
- package/lib/typescript/src/helpers/banking_dcb_react_native.d.ts.map +1 -1
- package/lib/typescript/src/helpers/webview.d.ts.map +1 -1
- package/package.json +12 -1
- package/src/helpers/banking_dcb_react_native.tsx +98 -95
- package/src/helpers/utils/preLoadedWebView.tsx +1 -1
- package/src/helpers/webview.tsx +245 -2
|
@@ -3,13 +3,11 @@
|
|
|
3
3
|
import { APICall } from "./network/APICall.js";
|
|
4
4
|
import { DeviceInfoManager } from "./utils/deviceInfoManager.js";
|
|
5
5
|
import { LibraryConstants } from "./utils/LibraryConstants.js";
|
|
6
|
-
import { WebViewCallback } from "./utils/webviewCallback.js";
|
|
7
6
|
import { ServiceNames } from "./ServiceNames.js";
|
|
8
7
|
import { Constants } from "./utils/Constants.js";
|
|
9
8
|
import { SafeAreaView } from 'react-native-safe-area-context';
|
|
10
|
-
import {
|
|
9
|
+
import { StatusBar } from 'react-native';
|
|
11
10
|
import * as base64js from 'base64-js';
|
|
12
|
-
import GetLocation from 'react-native-get-location';
|
|
13
11
|
import { PreloadedWebView } from "./utils/preLoadedWebView.js";
|
|
14
12
|
|
|
15
13
|
// Extend the global type to include base64FromArrayBuffer
|
|
@@ -144,24 +142,30 @@ export class BankingDcbReactNative {
|
|
|
144
142
|
console.log('Device Info:', deviceInfo);
|
|
145
143
|
console.log('App Version:', appVersion);
|
|
146
144
|
}
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
145
|
+
|
|
146
|
+
// const position = await this._getCurrentLocationIfPossible(
|
|
147
|
+
// WebViewCallbackFunction
|
|
148
|
+
// );
|
|
149
|
+
|
|
150
|
+
// if (!position) {
|
|
151
|
+
// if (__DEV__) console.log('SDK:LOG: location fetched is : ', position);
|
|
152
|
+
// return null;
|
|
153
|
+
// }
|
|
154
|
+
|
|
155
|
+
// const latitude = String(position.latitude);
|
|
156
|
+
// const longitude = String(position.longitude);
|
|
157
|
+
// const accuracy = String(position.accuracy);
|
|
158
|
+
|
|
155
159
|
const body = {
|
|
156
160
|
[Constants.MANUFACTURER]: deviceInfo[Constants.MANUFACTURER],
|
|
157
161
|
[Constants.MODEL]: deviceInfo[Constants.MODEL],
|
|
158
162
|
[Constants.DEVICE_UUID]: deviceInfo[Constants.DEVICE_UUID],
|
|
159
163
|
[Constants.OS]: deviceInfo[Constants.OS],
|
|
160
164
|
[Constants.OS_VERSION]: deviceInfo[Constants.OS_VERSION],
|
|
161
|
-
[Constants.APP_VERSION]: appVersion
|
|
162
|
-
[Constants.LATITUDE]: latitude,
|
|
163
|
-
[Constants.LONGITUDE]: longitude,
|
|
164
|
-
[Constants.ACCURACY]: accuracy
|
|
165
|
+
[Constants.APP_VERSION]: appVersion
|
|
166
|
+
// [Constants.LATITUDE]: latitude,
|
|
167
|
+
// [Constants.LONGITUDE]: longitude,
|
|
168
|
+
// [Constants.ACCURACY]: accuracy,
|
|
165
169
|
};
|
|
166
170
|
if (__DEV__) console.log('SDK:LOG: body for device session is : ', body);
|
|
167
171
|
const response = await this._apiCall.callAPI('POST', ServiceNames.DEVICE_SESSION.params({
|
|
@@ -304,58 +308,91 @@ export class BankingDcbReactNative {
|
|
|
304
308
|
};
|
|
305
309
|
}
|
|
306
310
|
}
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
311
|
+
|
|
312
|
+
// private async _getCurrentLocationIfPossible(
|
|
313
|
+
// webViewCallback: WebViewCallbackFunction
|
|
314
|
+
// ): Promise<Location | null> {
|
|
315
|
+
// try {
|
|
316
|
+
// console.log('SDK:LOG: in get current location');
|
|
317
|
+
|
|
318
|
+
// if (Platform.OS === 'android') {
|
|
319
|
+
// const hasFineLocation = await PermissionsAndroid.check(
|
|
320
|
+
// PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION
|
|
321
|
+
// );
|
|
322
|
+
|
|
323
|
+
// let result: string;
|
|
324
|
+
|
|
325
|
+
// if (!hasFineLocation) {
|
|
326
|
+
// result = await PermissionsAndroid.request(
|
|
327
|
+
// PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION
|
|
328
|
+
// );
|
|
329
|
+
// } else {
|
|
330
|
+
// result = PermissionsAndroid.RESULTS.GRANTED;
|
|
331
|
+
// }
|
|
332
|
+
|
|
333
|
+
// console.log('SDK:LOG: ANDROID LOCATION PERMISSION RESULT =>', result);
|
|
334
|
+
|
|
335
|
+
// if (result === PermissionsAndroid.RESULTS.DENIED) {
|
|
336
|
+
// webViewCallback(
|
|
337
|
+
// WebViewCallback.redirect('USER_LOCATION_PERMISSION_DENIED')
|
|
338
|
+
// );
|
|
339
|
+
// return null;
|
|
340
|
+
// }
|
|
341
|
+
|
|
342
|
+
// if (result === PermissionsAndroid.RESULTS.NEVER_ASK_AGAIN) {
|
|
343
|
+
// // ToastAndroid.show(
|
|
344
|
+
// // 'Location permission denied. Please enable it from Settings.',
|
|
345
|
+
// // ToastAndroid.LONG
|
|
346
|
+
// // );
|
|
347
|
+
// webViewCallback(
|
|
348
|
+
// WebViewCallback.redirect('USER_LOCATION_PERMANENTLY_DENIED')
|
|
349
|
+
// );
|
|
350
|
+
// return null;
|
|
351
|
+
// }
|
|
352
|
+
// }
|
|
353
|
+
|
|
354
|
+
// const location = await GetLocation.getCurrentPosition({
|
|
355
|
+
// enableHighAccuracy: true,
|
|
356
|
+
// timeout: 15000,
|
|
357
|
+
// });
|
|
358
|
+
|
|
359
|
+
// if (__DEV__) {
|
|
360
|
+
// console.log('SDK:LOG: 📍 Got position via GetLocation:', {
|
|
361
|
+
// latitude: location.latitude,
|
|
362
|
+
// longitude: location.longitude,
|
|
363
|
+
// accuracy: location.accuracy,
|
|
364
|
+
// time: location.time,
|
|
365
|
+
// });
|
|
366
|
+
// }
|
|
367
|
+
|
|
368
|
+
// return location;
|
|
369
|
+
// } catch (error: any) {
|
|
370
|
+
// console.log('SDK:LOG: CATCH 1 - Error while fetching location:', error);
|
|
371
|
+
// console.log(
|
|
372
|
+
// 'SDK:LOG: Error while fetching location (GetLocation):',
|
|
373
|
+
// error
|
|
374
|
+
// );
|
|
375
|
+
|
|
376
|
+
// const code = error?.code as string | undefined;
|
|
377
|
+
|
|
378
|
+
// if (code === 'UNAUTHORIZED') {
|
|
379
|
+
// webViewCallback(
|
|
380
|
+
// WebViewCallback.redirect('USER_LOCATION_PERMISSION_DENIED')
|
|
381
|
+
// );
|
|
382
|
+
// } else if (code === 'UNAVAILABLE') {
|
|
383
|
+
// webViewCallback(
|
|
384
|
+
// WebViewCallback.redirect('USER_LOCATION_SERVICE_DISABLED')
|
|
385
|
+
// );
|
|
386
|
+
// } else if (code === 'TIMEOUT') {
|
|
387
|
+
// console.log('SDK:LOG: CATCH 2 - Error while fetching location:', error);
|
|
388
|
+
// webViewCallback(WebViewCallback.redirect('USER_LOCATION_FETCH_ERROR'));
|
|
389
|
+
// } else {
|
|
390
|
+
// console.log('SDK:LOG: CATCH 3 - Error while fetching location:', error);
|
|
391
|
+
// webViewCallback(WebViewCallback.redirect('USER_LOCATION_FETCH_ERROR'));
|
|
392
|
+
// }
|
|
393
|
+
|
|
394
|
+
// return null;
|
|
395
|
+
// }
|
|
396
|
+
// }
|
|
360
397
|
}
|
|
361
398
|
//# sourceMappingURL=banking_dcb_react_native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["APICall","DeviceInfoManager","LibraryConstants","WebViewCallback","ServiceNames","Constants","SafeAreaView","PermissionsAndroid","Platform","StatusBar","base64js","GetLocation","PreloadedWebView","Fragment","_Fragment","jsx","_jsx","BankingDcbReactNative","instance","intialized","_apiCall","constructor","getInstance","init","hostName","options","whitelistedDomains","deviceBindingEnabled","console","log","global","base64FromArrayBuffer","arrayBuffer","fromByteArray","Uint8Array","_setup","error","Error","host","deviceBinding","open","module","token","WebViewCallbackFunction","bank","includes","startIndex","indexOf","length","temp","substring","endIndex","_loginAndNavigateToWebView","e","_checkDeviceBinding","url","Promise","resolve","_setupDeviceSession","tokenResponse","LOGIN_URL","__DEV__","callAPI","body","data","code","fetchAndSetTheme","deviceInfo","getDeviceInfo","appVersion","position","_getCurrentLocationIfPossible","latitude","String","longitude","accuracy","MANUFACTURER","MODEL","DEVICE_UUID","OS","OS_VERSION","APP_VERSION","LATITUDE","LONGITUDE","ACCURACY","response","DEVICE_SESSION","params","partner","status","_openWebView","warn","style","flex","children","onCallback","whitelistedUrls","onPageFinished","themeResponse","THEME_URL","theme","rgbValues","split","map","Number","r","g","b","setPrimaryColorFromRGB","setBackgroundColor","primaryColor","setBarStyle","publicapi","method","apiUrl","sdkLogin","loginResp","loginData","isSuccess","deviceResp","device","success","message","err","webViewCallback","hasFineLocation","check","PERMISSIONS","ACCESS_FINE_LOCATION","result","request","RESULTS","GRANTED","DENIED","redirect","NEVER_ASK_AGAIN","location","getCurrentPosition","enableHighAccuracy","timeout","time"],"sourceRoot":"../../../src","sources":["helpers/banking_dcb_react_native.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["APICall","DeviceInfoManager","LibraryConstants","ServiceNames","Constants","SafeAreaView","StatusBar","base64js","PreloadedWebView","Fragment","_Fragment","jsx","_jsx","BankingDcbReactNative","instance","intialized","_apiCall","constructor","getInstance","init","hostName","options","whitelistedDomains","deviceBindingEnabled","console","log","global","base64FromArrayBuffer","arrayBuffer","fromByteArray","Uint8Array","_setup","error","Error","host","deviceBinding","open","module","token","WebViewCallbackFunction","bank","includes","startIndex","indexOf","length","temp","substring","endIndex","_loginAndNavigateToWebView","e","_checkDeviceBinding","url","Promise","resolve","_setupDeviceSession","tokenResponse","LOGIN_URL","__DEV__","callAPI","body","data","code","fetchAndSetTheme","deviceInfo","getDeviceInfo","appVersion","MANUFACTURER","MODEL","DEVICE_UUID","OS","OS_VERSION","APP_VERSION","response","DEVICE_SESSION","params","partner","status","_openWebView","warn","style","flex","children","onCallback","whitelistedUrls","onPageFinished","themeResponse","THEME_URL","theme","rgbValues","split","map","Number","r","g","b","setPrimaryColorFromRGB","setBackgroundColor","primaryColor","setBarStyle","publicapi","method","apiUrl","sdkLogin","loginResp","loginData","isSuccess","deviceResp","device","success","message","err","String"],"sourceRoot":"../../../src","sources":["helpers/banking_dcb_react_native.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,11 +4,12 @@ import { WebView as RNWebView } from 'react-native-webview';
|
|
|
4
4
|
import { BackHandler, Platform, Linking, SafeAreaView, ActivityIndicator, View, ToastAndroid, StatusBar } from 'react-native';
|
|
5
5
|
import { useEffect, useRef, useState } from 'react';
|
|
6
6
|
import { WebViewCallback } from "./utils/webviewCallback.js";
|
|
7
|
-
import { check, PERMISSIONS, request, RESULTS } from 'react-native-permissions';
|
|
7
|
+
import { check, PERMISSIONS, request, RESULTS, openSettings } from 'react-native-permissions';
|
|
8
8
|
import FileViewer from 'react-native-file-viewer';
|
|
9
9
|
import RNFS from 'react-native-fs';
|
|
10
10
|
import CookieManager from '@react-native-cookies/cookies';
|
|
11
11
|
import SendIntentAndroid from 'react-native-send-intent';
|
|
12
|
+
import GetLocation from 'react-native-get-location';
|
|
12
13
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
14
|
const PKG = {
|
|
14
15
|
gmail: 'com.google.android.gm',
|
|
@@ -81,6 +82,7 @@ export const WebView = ({
|
|
|
81
82
|
const [canGoBack, setCanGoBack] = useState(false);
|
|
82
83
|
const canGoBackRef = useRef(false);
|
|
83
84
|
const hasUserClosedRef = useRef(false);
|
|
85
|
+
const locationRequestInProgress = useRef(false); // Prevent duplicate location requests
|
|
84
86
|
|
|
85
87
|
// const [hasRedirected, setHasRedirected] = useState(false);
|
|
86
88
|
const [, setToast] = useState(null);
|
|
@@ -97,6 +99,155 @@ export const WebView = ({
|
|
|
97
99
|
console.log('SDK:LOG: Application not found to open link');
|
|
98
100
|
}
|
|
99
101
|
};
|
|
102
|
+
|
|
103
|
+
// ============================================================================
|
|
104
|
+
// LOCATION PERMISSION IMPLEMENTATION - START
|
|
105
|
+
// ============================================================================
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Sends results back to web by calling window.onNativeActionResult
|
|
109
|
+
*/
|
|
110
|
+
const sendResultToWeb = (action, result) => {
|
|
111
|
+
const jsonResult = JSON.stringify(result);
|
|
112
|
+
console.log(`SDK:LOG: 📤 Sending to web: ${action} = ${jsonResult}`);
|
|
113
|
+
const jsCode = `
|
|
114
|
+
if (window.onNativeActionResult) {
|
|
115
|
+
window.onNativeActionResult('${action}', ${jsonResult});
|
|
116
|
+
console.log('✅ SDK callback executed: ${action}');
|
|
117
|
+
} else {
|
|
118
|
+
console.error('❌ window.onNativeActionResult is not defined!');
|
|
119
|
+
}
|
|
120
|
+
true;
|
|
121
|
+
`;
|
|
122
|
+
webviewRef.current?.injectJavaScript(jsCode);
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Requests location permission and fetches current location
|
|
127
|
+
*/
|
|
128
|
+
const handleRequestLocationPermission = async () => {
|
|
129
|
+
// Prevent duplicate requests
|
|
130
|
+
if (locationRequestInProgress.current) {
|
|
131
|
+
console.log('SDK:LOG: 📍 Location request already in progress, ignoring duplicate');
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
locationRequestInProgress.current = true;
|
|
135
|
+
try {
|
|
136
|
+
console.log('SDK:LOG: 📍 Requesting location permission...');
|
|
137
|
+
const permission = Platform.OS === 'ios' ? PERMISSIONS.IOS.LOCATION_WHEN_IN_USE : PERMISSIONS.ANDROID.ACCESS_FINE_LOCATION;
|
|
138
|
+
const status = await request(permission);
|
|
139
|
+
if (status === RESULTS.GRANTED) {
|
|
140
|
+
console.log('SDK:LOG: ✅ Permission granted, fetching location...');
|
|
141
|
+
try {
|
|
142
|
+
const location = await GetLocation.getCurrentPosition({
|
|
143
|
+
enableHighAccuracy: true,
|
|
144
|
+
timeout: 10000
|
|
145
|
+
});
|
|
146
|
+
console.log(`SDK:LOG: ✅ Location fetched: ${location.latitude}, ${location.longitude}`);
|
|
147
|
+
sendResultToWeb('locationPermission', {
|
|
148
|
+
state: 'granted',
|
|
149
|
+
latitude: location.latitude,
|
|
150
|
+
longitude: location.longitude,
|
|
151
|
+
accuracy: location.accuracy
|
|
152
|
+
});
|
|
153
|
+
} catch (error) {
|
|
154
|
+
console.log(`SDK:LOG: ⚠️ Location fetch failed: ${error.message} (code: ${error.code})`);
|
|
155
|
+
|
|
156
|
+
// Error codes from react-native-get-location:
|
|
157
|
+
// CANCELLED, UNAVAILABLE, TIMEOUT, UNAUTHORIZED
|
|
158
|
+
if (error.code === 'UNAVAILABLE') {
|
|
159
|
+
// Location services disabled
|
|
160
|
+
sendResultToWeb('locationPermission', {
|
|
161
|
+
state: 'location_services_disabled'
|
|
162
|
+
});
|
|
163
|
+
// Notify client app about location services disabled
|
|
164
|
+
onCallback?.(WebViewCallback.redirect('USER_LOCATION_SERVICE_DISABLED'));
|
|
165
|
+
} else if (error.code === 'UNAUTHORIZED') {
|
|
166
|
+
// Permission denied
|
|
167
|
+
sendResultToWeb('locationPermission', {
|
|
168
|
+
state: 'denied'
|
|
169
|
+
});
|
|
170
|
+
onCallback?.(WebViewCallback.redirect('USER_LOCATION_PERMISSION_DENIED'));
|
|
171
|
+
} else {
|
|
172
|
+
// Permission granted but location fetch failed for other reasons (TIMEOUT, CANCELLED)
|
|
173
|
+
// Send granted state so web can try browser API
|
|
174
|
+
sendResultToWeb('locationPermission', {
|
|
175
|
+
state: 'granted'
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
} else if (status === RESULTS.BLOCKED) {
|
|
180
|
+
console.log('SDK:LOG: ❌ Permission permanently denied');
|
|
181
|
+
sendResultToWeb('locationPermission', {
|
|
182
|
+
state: 'permanently_denied'
|
|
183
|
+
});
|
|
184
|
+
// Notify client app about permanently denied permission
|
|
185
|
+
onCallback?.(WebViewCallback.redirect('USER_LOCATION_PERMANENTLY_DENIED'));
|
|
186
|
+
} else {
|
|
187
|
+
console.log('SDK:LOG: ❌ Permission denied');
|
|
188
|
+
sendResultToWeb('locationPermission', {
|
|
189
|
+
state: 'denied'
|
|
190
|
+
});
|
|
191
|
+
// Notify client app about denied permission
|
|
192
|
+
onCallback?.(WebViewCallback.redirect('USER_LOCATION_PERMISSION_DENIED'));
|
|
193
|
+
}
|
|
194
|
+
} catch (error) {
|
|
195
|
+
console.log(`SDK:LOG: ❌ Permission request failed: ${error}`);
|
|
196
|
+
sendResultToWeb('locationPermission', {
|
|
197
|
+
state: 'denied'
|
|
198
|
+
});
|
|
199
|
+
// Notify client app about denied permission
|
|
200
|
+
onCallback?.(WebViewCallback.redirect('USER_LOCATION_FETCH_ERROR'));
|
|
201
|
+
} finally {
|
|
202
|
+
locationRequestInProgress.current = false;
|
|
203
|
+
}
|
|
204
|
+
};
|
|
205
|
+
|
|
206
|
+
/**
|
|
207
|
+
* Opens device settings for app permissions
|
|
208
|
+
*/
|
|
209
|
+
const handleOpenAppSettings = async () => {
|
|
210
|
+
try {
|
|
211
|
+
console.log('SDK:LOG: ⚙️ Opening app settings...');
|
|
212
|
+
await openSettings();
|
|
213
|
+
sendResultToWeb('openAppSettings', {
|
|
214
|
+
success: true
|
|
215
|
+
});
|
|
216
|
+
console.log('SDK:LOG: ✅ App settings opened');
|
|
217
|
+
} catch (error) {
|
|
218
|
+
console.log(`SDK:LOG: ❌ Failed to open app settings: ${error}`);
|
|
219
|
+
sendResultToWeb('openAppSettings', {
|
|
220
|
+
success: false
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
};
|
|
224
|
+
|
|
225
|
+
/**
|
|
226
|
+
* Handles the dispatchEventToApp calls from web
|
|
227
|
+
*/
|
|
228
|
+
const handleDispatchEvent = jsonString => {
|
|
229
|
+
try {
|
|
230
|
+
const data = JSON.parse(jsonString);
|
|
231
|
+
const method = data?.method;
|
|
232
|
+
console.log(`SDK:LOG: 📥 Received dispatch event: ${method}`);
|
|
233
|
+
switch (method) {
|
|
234
|
+
case 'REQUEST_LOCATION_PERMISSION':
|
|
235
|
+
handleRequestLocationPermission();
|
|
236
|
+
break;
|
|
237
|
+
case 'OPEN_APP_SETTINGS':
|
|
238
|
+
handleOpenAppSettings();
|
|
239
|
+
break;
|
|
240
|
+
default:
|
|
241
|
+
console.log(`SDK:LOG: ⚠️ Unknown dispatch method: ${method}`);
|
|
242
|
+
}
|
|
243
|
+
} catch (e) {
|
|
244
|
+
console.log(`SDK:LOG: ❌ Error handling dispatch event: ${e}`);
|
|
245
|
+
}
|
|
246
|
+
};
|
|
247
|
+
|
|
248
|
+
// ============================================================================
|
|
249
|
+
// LOCATION PERMISSION IMPLEMENTATION - END
|
|
250
|
+
// ============================================================================
|
|
100
251
|
const showToast_with_code_message = syntheticEvent => {
|
|
101
252
|
const {
|
|
102
253
|
nativeEvent
|
|
@@ -270,7 +421,7 @@ export const WebView = ({
|
|
|
270
421
|
})
|
|
271
422
|
});
|
|
272
423
|
|
|
273
|
-
// Cookie injection script
|
|
424
|
+
// Cookie injection script with dispatchEventToApp bridge
|
|
274
425
|
const injectedJavaScript = `
|
|
275
426
|
(function() {
|
|
276
427
|
function safePost(msg) {
|
|
@@ -281,6 +432,71 @@ export const WebView = ({
|
|
|
281
432
|
} catch (e) {}
|
|
282
433
|
}
|
|
283
434
|
|
|
435
|
+
// ============================================================================
|
|
436
|
+
// DISPATCH EVENT TO APP BRIDGE - START
|
|
437
|
+
// ============================================================================
|
|
438
|
+
console.log('🌉 [RN] Installing dispatchEventToApp bridge...');
|
|
439
|
+
|
|
440
|
+
// Queue for calls made before bridge is ready
|
|
441
|
+
window.__dispatchEventQueue = window.__dispatchEventQueue || [];
|
|
442
|
+
|
|
443
|
+
function processQueue() {
|
|
444
|
+
while (window.__dispatchEventQueue && window.__dispatchEventQueue.length > 0) {
|
|
445
|
+
var jsonString = window.__dispatchEventQueue.shift();
|
|
446
|
+
try {
|
|
447
|
+
safePost({ type: 'DISPATCH_EVENT_TO_APP', payload: jsonString });
|
|
448
|
+
console.log('🌉 [RN] Processed queued dispatchEventToApp call');
|
|
449
|
+
} catch(e) {
|
|
450
|
+
console.error('🌉 [RN] Error processing queued call:', e);
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
function dispatchToRN(jsonString) {
|
|
456
|
+
console.log('🌉 [RN] dispatchEventToApp called with:', jsonString);
|
|
457
|
+
try {
|
|
458
|
+
if (window.ReactNativeWebView) {
|
|
459
|
+
safePost({ type: 'DISPATCH_EVENT_TO_APP', payload: jsonString });
|
|
460
|
+
console.log('🌉 [RN] Successfully called RN handler');
|
|
461
|
+
} else {
|
|
462
|
+
console.log('🌉 [RN] ReactNativeWebView not ready, queueing call');
|
|
463
|
+
window.__dispatchEventQueue.push(jsonString);
|
|
464
|
+
setTimeout(processQueue, 100);
|
|
465
|
+
}
|
|
466
|
+
} catch(e) {
|
|
467
|
+
console.error('🌉 [RN] dispatchEventToApp error:', e);
|
|
468
|
+
window.__dispatchEventQueue.push(jsonString);
|
|
469
|
+
setTimeout(processQueue, 100);
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
|
|
473
|
+
// Create Android bridge: window.android.dispatchEventToApp
|
|
474
|
+
if (!window.android) {
|
|
475
|
+
window.android = {};
|
|
476
|
+
}
|
|
477
|
+
window.android.dispatchEventToApp = dispatchToRN;
|
|
478
|
+
console.log('🌉 [RN] window.android.dispatchEventToApp installed');
|
|
479
|
+
|
|
480
|
+
// Create iOS bridge: window.webkit.messageHandlers.dispatchEventToApp
|
|
481
|
+
if (!window.webkit) {
|
|
482
|
+
window.webkit = {};
|
|
483
|
+
}
|
|
484
|
+
if (!window.webkit.messageHandlers) {
|
|
485
|
+
window.webkit.messageHandlers = {};
|
|
486
|
+
}
|
|
487
|
+
window.webkit.messageHandlers.dispatchEventToApp = {
|
|
488
|
+
postMessage: dispatchToRN
|
|
489
|
+
};
|
|
490
|
+
console.log('🌉 [RN] window.webkit.messageHandlers.dispatchEventToApp installed');
|
|
491
|
+
|
|
492
|
+
// Process any queued calls
|
|
493
|
+
setTimeout(processQueue, 50);
|
|
494
|
+
|
|
495
|
+
console.log('🌉 [RN] dispatchEventToApp bridge installation complete');
|
|
496
|
+
// ============================================================================
|
|
497
|
+
// DISPATCH EVENT TO APP BRIDGE - END
|
|
498
|
+
// ============================================================================
|
|
499
|
+
|
|
284
500
|
// Preserve any existing window.onerror
|
|
285
501
|
var previousOnError = window.onerror || null;
|
|
286
502
|
window.onerror = function(message, source, lineno, colno, error) {
|
|
@@ -356,7 +572,14 @@ export const WebView = ({
|
|
|
356
572
|
const handleMessage = event => {
|
|
357
573
|
try {
|
|
358
574
|
const data = JSON.parse(event.nativeEvent.data);
|
|
359
|
-
console.log('SDK:LOG: onMessage data =');
|
|
575
|
+
console.log('SDK:LOG: onMessage data =', data?.type);
|
|
576
|
+
|
|
577
|
+
// Handle dispatchEventToApp messages from web
|
|
578
|
+
if (data?.type === 'DISPATCH_EVENT_TO_APP') {
|
|
579
|
+
if (__DEV__) console.log('SDK:LOG: DISPATCH_EVENT_TO_APP received:', data.payload);
|
|
580
|
+
handleDispatchEvent(data.payload);
|
|
581
|
+
return;
|
|
582
|
+
}
|
|
360
583
|
|
|
361
584
|
// 1) history.back() from a "root" page → treat as USER_CLOSED
|
|
362
585
|
if (data?.type === 'HISTORY_BACK_CALLED') {
|
|
@@ -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","canGoBackRef","hasUserClosedRef","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","__DEV__","fromUrl","toFile","headers","background","begin","res","response","downloadFile","promise","statusCode","SHORT","open","showOpenWithDialog","onDismiss","unlink","catch","handleOnShouldStartLoadWithRequest","event","then","ok","status","setBackgroundColor","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","type","href","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","openSettings","FileViewer","RNFS","CookieManager","SendIntentAndroid","GetLocation","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","canGoBackRef","hasUserClosedRef","locationRequestInProgress","setToast","handleExternalUrl","Promise","resolve","setTimeout","show","LONG","sendResultToWeb","action","result","jsonResult","JSON","stringify","jsCode","current","injectJavaScript","handleRequestLocationPermission","permission","IOS","LOCATION_WHEN_IN_USE","ANDROID","ACCESS_FINE_LOCATION","status","GRANTED","location","getCurrentPosition","enableHighAccuracy","timeout","latitude","longitude","state","accuracy","message","code","redirect","BLOCKED","handleOpenAppSettings","success","handleDispatchEvent","jsonString","data","parse","method","showToast_with_code_message","syntheticEvent","nativeEvent","errorCodesToHandle","includes","description","visible","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","__DEV__","fromUrl","toFile","headers","background","begin","res","response","downloadFile","promise","statusCode","SHORT","open","showOpenWithDialog","onDismiss","unlink","catch","handleOnShouldStartLoadWithRequest","event","then","ok","setBackgroundColor","undefined","isWhitelisted","some","white","handleBackButton","goBack","backHandler","addEventListener","remove","Loading","style","flex","justifyContent","alignItems","children","size","injectedJavaScript","requestPermission","DENIED","requestResult","handlePermissionRequest","resources","permissionsToRequest","push","CAMERA","MICROPHONE","RECORD_AUDIO","results","all","granted","every","grant","deny","handleMessage","type","payload","href","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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AAC,QAAA,eACvE3J,IAAA,CAACnB,iBAAiB;MAAC+K,IAAI,EAAC;IAAO,CAAE;EAAC,CAC9B,CACP;;EAED;EACA,MAAMC,kBAAkB,GAAG;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;EAEC,MAAMC,iBAAiB,GAAG,MAAOzG,UAAsB,IAAK;IAC1D,IAAI;MACF,MAAMR,MAAM,GAAG,MAAMxD,KAAK,CAACgE,UAAU,CAAC;MAEtC,IAAIR,MAAM,KAAKrD,OAAO,CAACuK,MAAM,EAAE;QAC7B,MAAMC,aAAa,GAAG,MAAMzK,OAAO,CAAC8D,UAAU,CAAC;QAC/C,OAAO2G,aAAa,KAAKxK,OAAO,CAACmE,OAAO;MAC1C;MAEA,OAAOd,MAAM,KAAKrD,OAAO,CAACmE,OAAO;IACnC,CAAC,CAAC,OAAOpC,KAAK,EAAE;MACdT,OAAO,CAACS,KAAK,CAAC,qCAAqC,EAAEA,KAAK,CAAC;MAC3D,OAAO,KAAK;IACd;EACF,CAAC;EAED,MAAM0I,uBAAuB,GAAG,MAAOxB,KAAU,IAAK;IACpD,MAAM;MAAEyB;IAAU,CAAC,GAAGzB,KAAK,CAACxD,WAAW;IACvC,IAAIsC,OAAO,EAAEzG,OAAO,CAACC,GAAG,CAAC,gCAAgC,EAAEmJ,SAAS,CAAC;IAErE,MAAMC,oBAAkC,GAAG,EAAE;IAE7C,IAAID,SAAS,CAAC/E,QAAQ,CAAC,OAAO,CAAC,EAAE;MAC/BgF,oBAAoB,CAACC,IAAI,CACvB1L,QAAQ,CAAC8B,EAAE,KAAK,KAAK,GACjBlB,WAAW,CAACgE,GAAG,CAAC+G,MAAM,GACtB/K,WAAW,CAACkE,OAAO,CAAC6G,MAC1B,CAAC;IACH;IACA,IAAIH,SAAS,CAAC/E,QAAQ,CAAC,YAAY,CAAC,EAAE;MACpCgF,oBAAoB,CAACC,IAAI,CACvB1L,QAAQ,CAAC8B,EAAE,KAAK,KAAK,GACjBlB,WAAW,CAACgE,GAAG,CAACgH,UAAU,GAC1BhL,WAAW,CAACkE,OAAO,CAAC+G,YAC1B,CAAC;IACH;IACA,IAAIL,SAAS,CAAC/E,QAAQ,CAAC,aAAa,CAAC,EAAE;MACrCgF,oBAAoB,CAACC,IAAI,CACvB1L,QAAQ,CAAC8B,EAAE,KAAK,KAAK,GACjBlB,WAAW,CAACgE,GAAG,CAACC,oBAAoB,GACpCjE,WAAW,CAACkE,OAAO,CAACC,oBAC1B,CAAC;IACH;IAEA,IAAI;MACF,MAAM+G,OAAO,GAAG,MAAMlI,OAAO,CAACmI,GAAG,CAC/BN,oBAAoB,CAACjE,GAAG,CAAE7C,UAAU,IAAKyG,iBAAiB,CAACzG,UAAU,CAAC,CACxE,CAAC;MAED,MAAMqH,OAAO,GAAGF,OAAO,CAACG,KAAK,CAAE9H,MAAM,IAAKA,MAAM,KAAK,IAAI,CAAC;MAC1D,IAAI6H,OAAO,EAAE;QACX;QACAjC,KAAK,CAACxD,WAAW,CAAC2F,KAAK,CAAC,CAAC;MAC3B,CAAC,MAAM;QACL;QACAnC,KAAK,CAACxD,WAAW,CAAC4F,IAAI,CAAC,CAAC;MAC1B;IACF,CAAC,CAAC,OAAOtJ,KAAK,EAAE;MACdT,OAAO,CAACS,KAAK,CAAC,sCAAsC,EAAEA,KAAK,CAAC;MAC5D;MACAkH,KAAK,CAACxD,WAAW,CAAC4F,IAAI,CAAC,CAAC;IAC1B;EACF,CAAC;EAED,MAAMC,aAAa,GAAIrC,KAA0B,IAAK;IACpD,IAAI;MACF,MAAM7D,IAAI,GAAG7B,IAAI,CAAC8B,KAAK,CAAC4D,KAAK,CAACxD,WAAW,CAACL,IAAI,CAAC;MAC/C9D,OAAO,CAACC,GAAG,CAAC,2BAA2B,EAAE6D,IAAI,EAAEmG,IAAI,CAAC;;MAEpD;MACA,IAAInG,IAAI,EAAEmG,IAAI,KAAK,uBAAuB,EAAE;QAC1C,IAAIxD,OAAO,EACTzG,OAAO,CAACC,GAAG,CAAC,0CAA0C,EAAE6D,IAAI,CAACoG,OAAO,CAAC;QACvEtG,mBAAmB,CAACE,IAAI,CAACoG,OAAO,CAAC;QACjC;MACF;;MAEA;MACA,IAAIpG,IAAI,EAAEmG,IAAI,KAAK,qBAAqB,EAAE;QACxC,IAAIxD,OAAO,EAAEzG,OAAO,CAACC,GAAG,CAAC,iCAAiC,EAAE6D,IAAI,CAACqG,IAAI,CAAC;QAEtE,IAAI,CAAChJ,YAAY,CAACiB,OAAO,IAAI,CAAChB,gBAAgB,CAACgB,OAAO,EAAE;UACtDhB,gBAAgB,CAACgB,OAAO,GAAG,IAAI;UAE/B,IAAIqE,OAAO,EACTzG,OAAO,CAACC,GAAG,CACT,mEACF,CAAC;UAEH/B,SAAS,CAAC4J,kBAAkB,CAAC,WAAW,CAAC;UACzCxH,eAAe,CAAC,CAAC;UACjBM,UAAU,GAAGtC,eAAe,CAACkF,QAAQ,CAAC,aAAa,CAAC,CAAC;QACvD;QAEA;MACF;MAEA,IAAIM,IAAI,EAAEmG,IAAI,KAAK,kBAAkB,EAAE;QACrC,IAAIxD,OAAO,EAAEzG,OAAO,CAACC,GAAG,CAAC,6CAA6C,CAAC;QACvEhC,YAAY,CAAC0D,IAAI,CACf,8CAA8C,EAC9C1D,YAAY,CAAC2D,IACf,CAAC;QACD;QACA;QACA;QACA;MACF;IACF,CAAC,CAAC,OAAOpB,CAAC,EAAE;MACVR,OAAO,CAACoK,IAAI,CAAC,wCAAwC,EAAE5J,CAAC,CAAC;IAC3D;EACF,CAAC;EAED,MAAM6J,oBAAoB,GAAInG,cAAmB,IAAK;IACpD,MAAMoG,SAAS,GAAGpG,cAAc,EAAEC,WAAW,EAAEzD,GAAG,IAAIA,GAAG;IAEzDK,cAAc,GAAG,CAAC;EACpB,CAAC;EAED,oBACE7B,IAAA,CAACpB,YAAY;IAAC2K,KAAK,EAAE;MAAEC,IAAI,EAAE,CAAC;MAAE6B,eAAe,EAAE;IAAQ,CAAE;IAAA1B,QAAA,eACzD3J,IAAA,CAACxB,SAAS;MACR8M,GAAG,EAAExJ,UAAW;MAChByJ,MAAM,EAAE;QAAEC,GAAG,EAAEhK;MAAI,CAAE;MACrBiK,mBAAmB,EACjBxB,uBACD;MACDyB,kBAAkB,EAAE,IAAK;MACzBC,kBAAkB,EAAE;QAClBC,MAAM,EAAE,IAAI;QACZC,UAAU,EAAE,IAAI;QAChBC,WAAW,EAAE;MACf,CAAE;MACFC,OAAO,EAAGzK,CAAC,IAAK;QACdyD,2BAA2B,CAACzD,CAAC,CAAC;QAC9BG,OAAO,EAAEsK,OAAO,GAAGzK,CAAQ,CAAC;MAC9B,CAAE;MAAA,GACEG,OAAO;MACXuK,mBAAmB,EAAE,IAAK;MAC1BC,aAAa,EAAEA,CAAA,kBAAMjM,IAAA,CAACsJ,OAAO,IAAE,CAAE;MACjC4C,SAAS,EAAEf,oBAAqB;MAChCgB,eAAe,EAAE,CAAC,GAAG,CAAE;MACvBC,iBAAiB,EAAE,IAAK;MACxBC,iBAAiB,EAAE,IAAK;MACxBC,+BAA+B,EAAE,KAAM;MACvCC,yBAAyB,EAAE,IAAK;MAChCC,4BAA4B,EAAEhE,kCAAmC;MACjEiE,uBAAuB,EAAGC,QAAQ,IAAK;QACrC,IAAInF,OAAO,EAAEzG,OAAO,CAACC,GAAG,CAAC,yBAAyB,EAAE2L,QAAQ,CAAClL,GAAG,CAAC;QACjEQ,YAAY,CAAC0K,QAAQ,CAAC3K,SAAS,CAAC;QAChCE,YAAY,CAACiB,OAAO,GAAGwJ,QAAQ,CAAC3K,SAAS;MAC3C,CAAE;MACF8H,kBAAkB,EAAEA,kBAAmB;MACvC8C,gBAAgB,EAAEjO,QAAQ,CAAC8B,EAAE,KAAK,KAAK,GAAG,QAAQ,GAAG,GAAI;MACzDoM,mCAAmC,EAAElO,QAAQ,CAAC8B,EAAE,KAAK,KAAM;MAC3DqM,oBAAoB,EAAE,IAAK;MAC3BC,yBAAyB,EAAE,KAAM;MACjCC,gBAAgB,EAAC,QAAQ;MACzBC,iBAAiB,EAAE,IAAK;MACxBC,SAAS,EAAEnC;IAAc,CAC1B;EAAC,CACU,CAAC;AAEnB,CAAC","ignoreList":[]}
|
|
@@ -28,6 +28,5 @@ export declare class BankingDcbReactNative {
|
|
|
28
28
|
headers?: Record<string, any>;
|
|
29
29
|
}): Promise<any>;
|
|
30
30
|
sdkLogin(token: string, partner: string): Promise<JSONMap>;
|
|
31
|
-
private _getCurrentLocationIfPossible;
|
|
32
31
|
}
|
|
33
32
|
//# sourceMappingURL=banking_dcb_react_native.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"banking_dcb_react_native.d.ts","sourceRoot":"","sources":["../../../../src/helpers/banking_dcb_react_native.tsx"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAC;AAYjC,YAAY,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAMvE,KAAK,WAAW,GAAG;IACjB,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,oBAAoB,EAAE,OAAO,CAAC;CAC/B,CAAC;AAGF,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,qBAAqB,EAAE,CAAC,CAAC,WAAW,EAAE,WAAW,KAAK,MAAM,CAAC,GAAG,SAAS,CAAC;CAC/E;AACD,KAAK,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAEnC,qBAAa,qBAAqB;IAChC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAsC;IAC7D,OAAO,CAAC,MAAM,CAAC,UAAU,CAAS;IAElC,OAAO,CAAC,QAAQ,CAAiB;IACjC,MAAM,CAAC,eAAe,EAAE,uBAAuB,CAAC;IAChD,OAAO;IAEP,MAAM,CAAC,WAAW,IAAI,qBAAqB;WAO9B,IAAI,CACf,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,WAGR,GACA,OAAO,CAAC,IAAI,CAAC;YA4BF,MAAM;IAad,IAAI,CACR,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,uBAAuB,EAAE,uBAAuB,GAC/C,OAAO,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;YA4BvB,mBAAmB;YAgBnB,0BAA0B;YAoE1B,mBAAmB;IAwE3B,YAAY,CAChB,GAAG,EAAE,MAAM,EACX,uBAAuB,EAAE,uBAAuB,GAC/C,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC;IAoBxB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IA2CjC,SAAS,CACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC/B,GACA,OAAO,CAAC,GAAG,CAAC;IAIF,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"banking_dcb_react_native.d.ts","sourceRoot":"","sources":["../../../../src/helpers/banking_dcb_react_native.tsx"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAC;AAYjC,YAAY,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAMvE,KAAK,WAAW,GAAG;IACjB,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,oBAAoB,EAAE,OAAO,CAAC;CAC/B,CAAC;AAGF,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,qBAAqB,EAAE,CAAC,CAAC,WAAW,EAAE,WAAW,KAAK,MAAM,CAAC,GAAG,SAAS,CAAC;CAC/E;AACD,KAAK,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAEnC,qBAAa,qBAAqB;IAChC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAsC;IAC7D,OAAO,CAAC,MAAM,CAAC,UAAU,CAAS;IAElC,OAAO,CAAC,QAAQ,CAAiB;IACjC,MAAM,CAAC,eAAe,EAAE,uBAAuB,CAAC;IAChD,OAAO;IAEP,MAAM,CAAC,WAAW,IAAI,qBAAqB;WAO9B,IAAI,CACf,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,WAGR,GACA,OAAO,CAAC,IAAI,CAAC;YA4BF,MAAM;IAad,IAAI,CACR,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,uBAAuB,EAAE,uBAAuB,GAC/C,OAAO,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;YA4BvB,mBAAmB;YAgBnB,0BAA0B;YAoE1B,mBAAmB;IAwE3B,YAAY,CAChB,GAAG,EAAE,MAAM,EACX,uBAAuB,EAAE,uBAAuB,GAC/C,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC;IAoBxB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IA2CjC,SAAS,CACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC/B,GACA,OAAO,CAAC,GAAG,CAAC;IAIF,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAsKxE"}
|
|
@@ -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;
|
|
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;AAgBjC,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,4CA2qBpB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "banking_dcb_sdk_react_native",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.92",
|
|
4
4
|
"description": "React Native package for partner integrating with DCB",
|
|
5
5
|
"source": "./src/index.tsx",
|
|
6
6
|
"main": "./lib/module/index.js",
|
|
@@ -66,7 +66,9 @@
|
|
|
66
66
|
"@eslint/eslintrc": "^3.3.0",
|
|
67
67
|
"@eslint/js": "^9.22.0",
|
|
68
68
|
"@evilmartians/lefthook": "^1.5.0",
|
|
69
|
+
"@react-native-async-storage/async-storage": "^3.0.1",
|
|
69
70
|
"@react-native-community/cli": "15.0.1",
|
|
71
|
+
"@react-native-cookies/cookies": "^6.2.1",
|
|
70
72
|
"@react-native/eslint-config": "^0.78.0",
|
|
71
73
|
"@release-it/conventional-changelog": "^9.0.2",
|
|
72
74
|
"@types/jest": "^29.5.5",
|
|
@@ -74,6 +76,7 @@
|
|
|
74
76
|
"@types/uuid": "^10.0.0",
|
|
75
77
|
"@typescript-eslint/eslint-plugin": "^8.31.0",
|
|
76
78
|
"@typescript-eslint/parser": "^8.31.0",
|
|
79
|
+
"base64-js": "^1.5.1",
|
|
77
80
|
"commitlint": "^19.6.1",
|
|
78
81
|
"del-cli": "^5.1.0",
|
|
79
82
|
"jest": "^29.7.0",
|
|
@@ -81,6 +84,14 @@
|
|
|
81
84
|
"react": "19.0.0",
|
|
82
85
|
"react-native": "0.78.2",
|
|
83
86
|
"react-native-builder-bob": "0.39.0",
|
|
87
|
+
"react-native-device-info": "^15.0.2",
|
|
88
|
+
"react-native-file-viewer": "^2.1.5",
|
|
89
|
+
"react-native-fs": "^2.20.0",
|
|
90
|
+
"react-native-get-location": "^6.0.1",
|
|
91
|
+
"react-native-permissions": "^5.5.1",
|
|
92
|
+
"react-native-safe-area-context": "^5.7.0",
|
|
93
|
+
"react-native-send-intent": "^1.3.0",
|
|
94
|
+
"react-native-webview": "^13.16.1",
|
|
84
95
|
"release-it": "^17.10.0",
|
|
85
96
|
"turbo": "^1.10.7",
|
|
86
97
|
"typescript": "^5.2.2"
|
|
@@ -228,18 +228,18 @@ export class BankingDcbReactNative {
|
|
|
228
228
|
console.log('App Version:', appVersion);
|
|
229
229
|
}
|
|
230
230
|
|
|
231
|
-
const position = await this._getCurrentLocationIfPossible(
|
|
232
|
-
|
|
233
|
-
);
|
|
231
|
+
// const position = await this._getCurrentLocationIfPossible(
|
|
232
|
+
// WebViewCallbackFunction
|
|
233
|
+
// );
|
|
234
234
|
|
|
235
|
-
if (!position) {
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
}
|
|
235
|
+
// if (!position) {
|
|
236
|
+
// if (__DEV__) console.log('SDK:LOG: location fetched is : ', position);
|
|
237
|
+
// return null;
|
|
238
|
+
// }
|
|
239
239
|
|
|
240
|
-
const latitude = String(position.latitude);
|
|
241
|
-
const longitude = String(position.longitude);
|
|
242
|
-
const accuracy = String(position.accuracy);
|
|
240
|
+
// const latitude = String(position.latitude);
|
|
241
|
+
// const longitude = String(position.longitude);
|
|
242
|
+
// const accuracy = String(position.accuracy);
|
|
243
243
|
|
|
244
244
|
const body: JSONMap = {
|
|
245
245
|
[Constants.MANUFACTURER]: deviceInfo[Constants.MANUFACTURER],
|
|
@@ -248,9 +248,9 @@ export class BankingDcbReactNative {
|
|
|
248
248
|
[Constants.OS]: deviceInfo[Constants.OS],
|
|
249
249
|
[Constants.OS_VERSION]: deviceInfo[Constants.OS_VERSION],
|
|
250
250
|
[Constants.APP_VERSION]: appVersion,
|
|
251
|
-
[Constants.LATITUDE]: latitude,
|
|
252
|
-
[Constants.LONGITUDE]: longitude,
|
|
253
|
-
[Constants.ACCURACY]: accuracy,
|
|
251
|
+
// [Constants.LATITUDE]: latitude,
|
|
252
|
+
// [Constants.LONGITUDE]: longitude,
|
|
253
|
+
// [Constants.ACCURACY]: accuracy,
|
|
254
254
|
};
|
|
255
255
|
if (__DEV__) console.log('SDK:LOG: body for device session is : ', body);
|
|
256
256
|
const response = await this._apiCall.callAPI(
|
|
@@ -442,86 +442,89 @@ export class BankingDcbReactNative {
|
|
|
442
442
|
}
|
|
443
443
|
}
|
|
444
444
|
|
|
445
|
-
private async _getCurrentLocationIfPossible(
|
|
446
|
-
|
|
447
|
-
): Promise<Location | null> {
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
445
|
+
// private async _getCurrentLocationIfPossible(
|
|
446
|
+
// webViewCallback: WebViewCallbackFunction
|
|
447
|
+
// ): Promise<Location | null> {
|
|
448
|
+
// try {
|
|
449
|
+
// console.log('SDK:LOG: in get current location');
|
|
450
|
+
|
|
451
|
+
// if (Platform.OS === 'android') {
|
|
452
|
+
// const hasFineLocation = await PermissionsAndroid.check(
|
|
453
|
+
// PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION
|
|
454
|
+
// );
|
|
455
|
+
|
|
456
|
+
// let result: string;
|
|
457
|
+
|
|
458
|
+
// if (!hasFineLocation) {
|
|
459
|
+
// result = await PermissionsAndroid.request(
|
|
460
|
+
// PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION
|
|
461
|
+
// );
|
|
462
|
+
// } else {
|
|
463
|
+
// result = PermissionsAndroid.RESULTS.GRANTED;
|
|
464
|
+
// }
|
|
465
|
+
|
|
466
|
+
// console.log('SDK:LOG: ANDROID LOCATION PERMISSION RESULT =>', result);
|
|
467
|
+
|
|
468
|
+
// if (result === PermissionsAndroid.RESULTS.DENIED) {
|
|
469
|
+
// webViewCallback(
|
|
470
|
+
// WebViewCallback.redirect('USER_LOCATION_PERMISSION_DENIED')
|
|
471
|
+
// );
|
|
472
|
+
// return null;
|
|
473
|
+
// }
|
|
474
|
+
|
|
475
|
+
// if (result === PermissionsAndroid.RESULTS.NEVER_ASK_AGAIN) {
|
|
476
|
+
// // ToastAndroid.show(
|
|
477
|
+
// // 'Location permission denied. Please enable it from Settings.',
|
|
478
|
+
// // ToastAndroid.LONG
|
|
479
|
+
// // );
|
|
480
|
+
// webViewCallback(
|
|
481
|
+
// WebViewCallback.redirect('USER_LOCATION_PERMANENTLY_DENIED')
|
|
482
|
+
// );
|
|
483
|
+
// return null;
|
|
484
|
+
// }
|
|
485
|
+
// }
|
|
486
|
+
|
|
487
|
+
// const location = await GetLocation.getCurrentPosition({
|
|
488
|
+
// enableHighAccuracy: true,
|
|
489
|
+
// timeout: 15000,
|
|
490
|
+
// });
|
|
491
|
+
|
|
492
|
+
// if (__DEV__) {
|
|
493
|
+
// console.log('SDK:LOG: 📍 Got position via GetLocation:', {
|
|
494
|
+
// latitude: location.latitude,
|
|
495
|
+
// longitude: location.longitude,
|
|
496
|
+
// accuracy: location.accuracy,
|
|
497
|
+
// time: location.time,
|
|
498
|
+
// });
|
|
499
|
+
// }
|
|
500
|
+
|
|
501
|
+
// return location;
|
|
502
|
+
// } catch (error: any) {
|
|
503
|
+
// console.log('SDK:LOG: CATCH 1 - Error while fetching location:', error);
|
|
504
|
+
// console.log(
|
|
505
|
+
// 'SDK:LOG: Error while fetching location (GetLocation):',
|
|
506
|
+
// error
|
|
507
|
+
// );
|
|
508
|
+
|
|
509
|
+
// const code = error?.code as string | undefined;
|
|
510
|
+
|
|
511
|
+
// if (code === 'UNAUTHORIZED') {
|
|
512
|
+
// webViewCallback(
|
|
513
|
+
// WebViewCallback.redirect('USER_LOCATION_PERMISSION_DENIED')
|
|
514
|
+
// );
|
|
515
|
+
// } else if (code === 'UNAVAILABLE') {
|
|
516
|
+
// webViewCallback(
|
|
517
|
+
// WebViewCallback.redirect('USER_LOCATION_SERVICE_DISABLED')
|
|
518
|
+
// );
|
|
519
|
+
// } else if (code === 'TIMEOUT') {
|
|
520
|
+
// console.log('SDK:LOG: CATCH 2 - Error while fetching location:', error);
|
|
521
|
+
// webViewCallback(WebViewCallback.redirect('USER_LOCATION_FETCH_ERROR'));
|
|
522
|
+
// } else {
|
|
523
|
+
// console.log('SDK:LOG: CATCH 3 - Error while fetching location:', error);
|
|
524
|
+
// webViewCallback(WebViewCallback.redirect('USER_LOCATION_FETCH_ERROR'));
|
|
525
|
+
// }
|
|
526
|
+
|
|
527
|
+
// return null;
|
|
528
|
+
// }
|
|
529
|
+
// }
|
|
527
530
|
}
|
package/src/helpers/webview.tsx
CHANGED
|
@@ -27,6 +27,7 @@ import {
|
|
|
27
27
|
PERMISSIONS,
|
|
28
28
|
request,
|
|
29
29
|
RESULTS,
|
|
30
|
+
openSettings,
|
|
30
31
|
type Permission,
|
|
31
32
|
} from 'react-native-permissions';
|
|
32
33
|
import FileViewer from 'react-native-file-viewer';
|
|
@@ -34,6 +35,7 @@ import RNFS from 'react-native-fs';
|
|
|
34
35
|
import CookieManager from '@react-native-cookies/cookies';
|
|
35
36
|
import { AnalyticsLogger } from './analytics/analytics_logger';
|
|
36
37
|
import SendIntentAndroid from 'react-native-send-intent';
|
|
38
|
+
import GetLocation, { type Location } from 'react-native-get-location';
|
|
37
39
|
|
|
38
40
|
interface ExtendedWebViewProps extends WebViewProps {
|
|
39
41
|
onPermissionRequest?: (event: any) => void;
|
|
@@ -133,6 +135,7 @@ export const WebView = ({
|
|
|
133
135
|
const [canGoBack, setCanGoBack] = useState(false);
|
|
134
136
|
const canGoBackRef = useRef(false);
|
|
135
137
|
const hasUserClosedRef = useRef(false);
|
|
138
|
+
const locationRequestInProgress = useRef(false); // Prevent duplicate location requests
|
|
136
139
|
|
|
137
140
|
// const [hasRedirected, setHasRedirected] = useState(false);
|
|
138
141
|
const [, setToast] = useState<{ visible: boolean; message: string } | null>(
|
|
@@ -154,6 +157,173 @@ export const WebView = ({
|
|
|
154
157
|
console.log('SDK:LOG: Application not found to open link');
|
|
155
158
|
}
|
|
156
159
|
};
|
|
160
|
+
|
|
161
|
+
// ============================================================================
|
|
162
|
+
// LOCATION PERMISSION IMPLEMENTATION - START
|
|
163
|
+
// ============================================================================
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Sends results back to web by calling window.onNativeActionResult
|
|
167
|
+
*/
|
|
168
|
+
const sendResultToWeb = (action: string, result: Record<string, any>) => {
|
|
169
|
+
const jsonResult = JSON.stringify(result);
|
|
170
|
+
console.log(`SDK:LOG: 📤 Sending to web: ${action} = ${jsonResult}`);
|
|
171
|
+
|
|
172
|
+
const jsCode = `
|
|
173
|
+
if (window.onNativeActionResult) {
|
|
174
|
+
window.onNativeActionResult('${action}', ${jsonResult});
|
|
175
|
+
console.log('✅ SDK callback executed: ${action}');
|
|
176
|
+
} else {
|
|
177
|
+
console.error('❌ window.onNativeActionResult is not defined!');
|
|
178
|
+
}
|
|
179
|
+
true;
|
|
180
|
+
`;
|
|
181
|
+
|
|
182
|
+
webviewRef.current?.injectJavaScript(jsCode);
|
|
183
|
+
};
|
|
184
|
+
|
|
185
|
+
/**
|
|
186
|
+
* Requests location permission and fetches current location
|
|
187
|
+
*/
|
|
188
|
+
const handleRequestLocationPermission = async () => {
|
|
189
|
+
// Prevent duplicate requests
|
|
190
|
+
if (locationRequestInProgress.current) {
|
|
191
|
+
console.log(
|
|
192
|
+
'SDK:LOG: 📍 Location request already in progress, ignoring duplicate'
|
|
193
|
+
);
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
196
|
+
locationRequestInProgress.current = true;
|
|
197
|
+
|
|
198
|
+
try {
|
|
199
|
+
console.log('SDK:LOG: 📍 Requesting location permission...');
|
|
200
|
+
|
|
201
|
+
const permission =
|
|
202
|
+
Platform.OS === 'ios'
|
|
203
|
+
? PERMISSIONS.IOS.LOCATION_WHEN_IN_USE
|
|
204
|
+
: PERMISSIONS.ANDROID.ACCESS_FINE_LOCATION;
|
|
205
|
+
|
|
206
|
+
const status = await request(permission);
|
|
207
|
+
|
|
208
|
+
if (status === RESULTS.GRANTED) {
|
|
209
|
+
console.log('SDK:LOG: ✅ Permission granted, fetching location...');
|
|
210
|
+
|
|
211
|
+
try {
|
|
212
|
+
const location: Location = await GetLocation.getCurrentPosition({
|
|
213
|
+
enableHighAccuracy: true,
|
|
214
|
+
timeout: 10000,
|
|
215
|
+
});
|
|
216
|
+
|
|
217
|
+
console.log(
|
|
218
|
+
`SDK:LOG: ✅ Location fetched: ${location.latitude}, ${location.longitude}`
|
|
219
|
+
);
|
|
220
|
+
|
|
221
|
+
sendResultToWeb('locationPermission', {
|
|
222
|
+
state: 'granted',
|
|
223
|
+
latitude: location.latitude,
|
|
224
|
+
longitude: location.longitude,
|
|
225
|
+
accuracy: location.accuracy,
|
|
226
|
+
});
|
|
227
|
+
} catch (error: any) {
|
|
228
|
+
console.log(
|
|
229
|
+
`SDK:LOG: ⚠️ Location fetch failed: ${error.message} (code: ${error.code})`
|
|
230
|
+
);
|
|
231
|
+
|
|
232
|
+
// Error codes from react-native-get-location:
|
|
233
|
+
// CANCELLED, UNAVAILABLE, TIMEOUT, UNAUTHORIZED
|
|
234
|
+
if (error.code === 'UNAVAILABLE') {
|
|
235
|
+
// Location services disabled
|
|
236
|
+
sendResultToWeb('locationPermission', {
|
|
237
|
+
state: 'location_services_disabled',
|
|
238
|
+
});
|
|
239
|
+
// Notify client app about location services disabled
|
|
240
|
+
onCallback?.(
|
|
241
|
+
WebViewCallback.redirect('USER_LOCATION_SERVICE_DISABLED')
|
|
242
|
+
);
|
|
243
|
+
} else if (error.code === 'UNAUTHORIZED') {
|
|
244
|
+
// Permission denied
|
|
245
|
+
sendResultToWeb('locationPermission', { state: 'denied' });
|
|
246
|
+
onCallback?.(
|
|
247
|
+
WebViewCallback.redirect('USER_LOCATION_PERMISSION_DENIED')
|
|
248
|
+
);
|
|
249
|
+
} else {
|
|
250
|
+
// Permission granted but location fetch failed for other reasons (TIMEOUT, CANCELLED)
|
|
251
|
+
// Send granted state so web can try browser API
|
|
252
|
+
sendResultToWeb('locationPermission', {
|
|
253
|
+
state: 'granted',
|
|
254
|
+
});
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
} else if (status === RESULTS.BLOCKED) {
|
|
258
|
+
console.log('SDK:LOG: ❌ Permission permanently denied');
|
|
259
|
+
sendResultToWeb('locationPermission', { state: 'permanently_denied' });
|
|
260
|
+
// Notify client app about permanently denied permission
|
|
261
|
+
onCallback?.(
|
|
262
|
+
WebViewCallback.redirect('USER_LOCATION_PERMANENTLY_DENIED')
|
|
263
|
+
);
|
|
264
|
+
} else {
|
|
265
|
+
console.log('SDK:LOG: ❌ Permission denied');
|
|
266
|
+
sendResultToWeb('locationPermission', { state: 'denied' });
|
|
267
|
+
// Notify client app about denied permission
|
|
268
|
+
onCallback?.(
|
|
269
|
+
WebViewCallback.redirect('USER_LOCATION_PERMISSION_DENIED')
|
|
270
|
+
);
|
|
271
|
+
}
|
|
272
|
+
} catch (error) {
|
|
273
|
+
console.log(`SDK:LOG: ❌ Permission request failed: ${error}`);
|
|
274
|
+
sendResultToWeb('locationPermission', { state: 'denied' });
|
|
275
|
+
// Notify client app about denied permission
|
|
276
|
+
onCallback?.(WebViewCallback.redirect('USER_LOCATION_FETCH_ERROR'));
|
|
277
|
+
} finally {
|
|
278
|
+
locationRequestInProgress.current = false;
|
|
279
|
+
}
|
|
280
|
+
};
|
|
281
|
+
|
|
282
|
+
/**
|
|
283
|
+
* Opens device settings for app permissions
|
|
284
|
+
*/
|
|
285
|
+
const handleOpenAppSettings = async () => {
|
|
286
|
+
try {
|
|
287
|
+
console.log('SDK:LOG: ⚙️ Opening app settings...');
|
|
288
|
+
await openSettings();
|
|
289
|
+
sendResultToWeb('openAppSettings', { success: true });
|
|
290
|
+
console.log('SDK:LOG: ✅ App settings opened');
|
|
291
|
+
} catch (error) {
|
|
292
|
+
console.log(`SDK:LOG: ❌ Failed to open app settings: ${error}`);
|
|
293
|
+
sendResultToWeb('openAppSettings', { success: false });
|
|
294
|
+
}
|
|
295
|
+
};
|
|
296
|
+
|
|
297
|
+
/**
|
|
298
|
+
* Handles the dispatchEventToApp calls from web
|
|
299
|
+
*/
|
|
300
|
+
const handleDispatchEvent = (jsonString: string) => {
|
|
301
|
+
try {
|
|
302
|
+
const data = JSON.parse(jsonString);
|
|
303
|
+
const method = data?.method;
|
|
304
|
+
|
|
305
|
+
console.log(`SDK:LOG: 📥 Received dispatch event: ${method}`);
|
|
306
|
+
|
|
307
|
+
switch (method) {
|
|
308
|
+
case 'REQUEST_LOCATION_PERMISSION':
|
|
309
|
+
handleRequestLocationPermission();
|
|
310
|
+
break;
|
|
311
|
+
|
|
312
|
+
case 'OPEN_APP_SETTINGS':
|
|
313
|
+
handleOpenAppSettings();
|
|
314
|
+
break;
|
|
315
|
+
|
|
316
|
+
default:
|
|
317
|
+
console.log(`SDK:LOG: ⚠️ Unknown dispatch method: ${method}`);
|
|
318
|
+
}
|
|
319
|
+
} catch (e) {
|
|
320
|
+
console.log(`SDK:LOG: ❌ Error handling dispatch event: ${e}`);
|
|
321
|
+
}
|
|
322
|
+
};
|
|
323
|
+
|
|
324
|
+
// ============================================================================
|
|
325
|
+
// LOCATION PERMISSION IMPLEMENTATION - END
|
|
326
|
+
// ============================================================================
|
|
157
327
|
const showToast_with_code_message = (syntheticEvent: any) => {
|
|
158
328
|
const { nativeEvent } = syntheticEvent;
|
|
159
329
|
const errorCodesToHandle = [-2, -6, -8, -10];
|
|
@@ -375,7 +545,7 @@ export const WebView = ({
|
|
|
375
545
|
</View>
|
|
376
546
|
);
|
|
377
547
|
|
|
378
|
-
// Cookie injection script
|
|
548
|
+
// Cookie injection script with dispatchEventToApp bridge
|
|
379
549
|
const injectedJavaScript = `
|
|
380
550
|
(function() {
|
|
381
551
|
function safePost(msg) {
|
|
@@ -386,6 +556,71 @@ export const WebView = ({
|
|
|
386
556
|
} catch (e) {}
|
|
387
557
|
}
|
|
388
558
|
|
|
559
|
+
// ============================================================================
|
|
560
|
+
// DISPATCH EVENT TO APP BRIDGE - START
|
|
561
|
+
// ============================================================================
|
|
562
|
+
console.log('🌉 [RN] Installing dispatchEventToApp bridge...');
|
|
563
|
+
|
|
564
|
+
// Queue for calls made before bridge is ready
|
|
565
|
+
window.__dispatchEventQueue = window.__dispatchEventQueue || [];
|
|
566
|
+
|
|
567
|
+
function processQueue() {
|
|
568
|
+
while (window.__dispatchEventQueue && window.__dispatchEventQueue.length > 0) {
|
|
569
|
+
var jsonString = window.__dispatchEventQueue.shift();
|
|
570
|
+
try {
|
|
571
|
+
safePost({ type: 'DISPATCH_EVENT_TO_APP', payload: jsonString });
|
|
572
|
+
console.log('🌉 [RN] Processed queued dispatchEventToApp call');
|
|
573
|
+
} catch(e) {
|
|
574
|
+
console.error('🌉 [RN] Error processing queued call:', e);
|
|
575
|
+
}
|
|
576
|
+
}
|
|
577
|
+
}
|
|
578
|
+
|
|
579
|
+
function dispatchToRN(jsonString) {
|
|
580
|
+
console.log('🌉 [RN] dispatchEventToApp called with:', jsonString);
|
|
581
|
+
try {
|
|
582
|
+
if (window.ReactNativeWebView) {
|
|
583
|
+
safePost({ type: 'DISPATCH_EVENT_TO_APP', payload: jsonString });
|
|
584
|
+
console.log('🌉 [RN] Successfully called RN handler');
|
|
585
|
+
} else {
|
|
586
|
+
console.log('🌉 [RN] ReactNativeWebView not ready, queueing call');
|
|
587
|
+
window.__dispatchEventQueue.push(jsonString);
|
|
588
|
+
setTimeout(processQueue, 100);
|
|
589
|
+
}
|
|
590
|
+
} catch(e) {
|
|
591
|
+
console.error('🌉 [RN] dispatchEventToApp error:', e);
|
|
592
|
+
window.__dispatchEventQueue.push(jsonString);
|
|
593
|
+
setTimeout(processQueue, 100);
|
|
594
|
+
}
|
|
595
|
+
}
|
|
596
|
+
|
|
597
|
+
// Create Android bridge: window.android.dispatchEventToApp
|
|
598
|
+
if (!window.android) {
|
|
599
|
+
window.android = {};
|
|
600
|
+
}
|
|
601
|
+
window.android.dispatchEventToApp = dispatchToRN;
|
|
602
|
+
console.log('🌉 [RN] window.android.dispatchEventToApp installed');
|
|
603
|
+
|
|
604
|
+
// Create iOS bridge: window.webkit.messageHandlers.dispatchEventToApp
|
|
605
|
+
if (!window.webkit) {
|
|
606
|
+
window.webkit = {};
|
|
607
|
+
}
|
|
608
|
+
if (!window.webkit.messageHandlers) {
|
|
609
|
+
window.webkit.messageHandlers = {};
|
|
610
|
+
}
|
|
611
|
+
window.webkit.messageHandlers.dispatchEventToApp = {
|
|
612
|
+
postMessage: dispatchToRN
|
|
613
|
+
};
|
|
614
|
+
console.log('🌉 [RN] window.webkit.messageHandlers.dispatchEventToApp installed');
|
|
615
|
+
|
|
616
|
+
// Process any queued calls
|
|
617
|
+
setTimeout(processQueue, 50);
|
|
618
|
+
|
|
619
|
+
console.log('🌉 [RN] dispatchEventToApp bridge installation complete');
|
|
620
|
+
// ============================================================================
|
|
621
|
+
// DISPATCH EVENT TO APP BRIDGE - END
|
|
622
|
+
// ============================================================================
|
|
623
|
+
|
|
389
624
|
// Preserve any existing window.onerror
|
|
390
625
|
var previousOnError = window.onerror || null;
|
|
391
626
|
window.onerror = function(message, source, lineno, colno, error) {
|
|
@@ -482,7 +717,15 @@ export const WebView = ({
|
|
|
482
717
|
const handleMessage = (event: WebViewMessageEvent) => {
|
|
483
718
|
try {
|
|
484
719
|
const data = JSON.parse(event.nativeEvent.data);
|
|
485
|
-
console.log('SDK:LOG: onMessage data =');
|
|
720
|
+
console.log('SDK:LOG: onMessage data =', data?.type);
|
|
721
|
+
|
|
722
|
+
// Handle dispatchEventToApp messages from web
|
|
723
|
+
if (data?.type === 'DISPATCH_EVENT_TO_APP') {
|
|
724
|
+
if (__DEV__)
|
|
725
|
+
console.log('SDK:LOG: DISPATCH_EVENT_TO_APP received:', data.payload);
|
|
726
|
+
handleDispatchEvent(data.payload);
|
|
727
|
+
return;
|
|
728
|
+
}
|
|
486
729
|
|
|
487
730
|
// 1) history.back() from a "root" page → treat as USER_CLOSED
|
|
488
731
|
if (data?.type === 'HISTORY_BACK_CALLED') {
|