react-native-shield-fraud-plugin 1.0.9 → 1.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/build.gradle +11 -0
- package/android/src/main/java/com/shieldfraudplugin/ShieldFraudPluginModule.java +17 -0
- package/ios/ShieldFraudPlugin.m +16 -0
- package/lib/commonjs/index.js +24 -8
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/index.js +25 -9
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/index.d.ts +8 -3
- package/lib/typescript/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/react-native-shield-fraud-plugin.podspec +1 -1
- package/src/index.tsx +51 -20
- package/ios/ShieldFraudPlugin.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
- package/ios/ShieldFraudPlugin.xcodeproj/project.xcworkspace/xcuserdata/deepakraj.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/ios/ShieldFraudPlugin.xcodeproj/xcuserdata/deepakraj.xcuserdatad/xcschemes/xcschememanagement.plist +0 -14
package/android/build.gradle
CHANGED
|
@@ -33,6 +33,11 @@ def getExtOrIntegerDefault(name) {
|
|
|
33
33
|
android {
|
|
34
34
|
compileSdkVersion getExtOrIntegerDefault("compileSdkVersion")
|
|
35
35
|
|
|
36
|
+
// Conditional for compatibility with AGP <4.2.
|
|
37
|
+
if (project.android.hasProperty("namespace")) {
|
|
38
|
+
namespace 'com.shieldfraudplugin'
|
|
39
|
+
}
|
|
40
|
+
|
|
36
41
|
defaultConfig {
|
|
37
42
|
minSdkVersion getExtOrIntegerDefault("minSdkVersion")
|
|
38
43
|
targetSdkVersion getExtOrIntegerDefault("targetSdkVersion")
|
|
@@ -69,6 +74,12 @@ rootProject.allprojects {
|
|
|
69
74
|
google()
|
|
70
75
|
maven {
|
|
71
76
|
url "https://cashshield-sdk.s3.amazonaws.com/release/"
|
|
77
|
+
content {
|
|
78
|
+
// Does only include this group
|
|
79
|
+
includeGroup "com.shield.android"
|
|
80
|
+
includeGroup "com.shield.android.module"
|
|
81
|
+
|
|
82
|
+
}
|
|
72
83
|
}
|
|
73
84
|
}
|
|
74
85
|
}
|
|
@@ -21,6 +21,8 @@ import com.shield.android.BlockedDialog;
|
|
|
21
21
|
import com.shield.android.Shield;
|
|
22
22
|
import com.shield.android.ShieldCallback;
|
|
23
23
|
import com.shield.android.ShieldException;
|
|
24
|
+
import com.shield.android.ShieldCrossPlatformParams;
|
|
25
|
+
import com.shield.android.ShieldCrossPlatformHelper;
|
|
24
26
|
|
|
25
27
|
import org.json.JSONObject;
|
|
26
28
|
|
|
@@ -80,6 +82,12 @@ public class ShieldFraudPluginModule extends ReactContextBaseJavaModule implemen
|
|
|
80
82
|
}
|
|
81
83
|
}
|
|
82
84
|
|
|
85
|
+
@ReactMethod
|
|
86
|
+
public void setCrossPlatformParameters(String crossPlatformName, String crossPlatformVersion) {
|
|
87
|
+
ShieldCrossPlatformParams params = new ShieldCrossPlatformParams(crossPlatformName, crossPlatformVersion);
|
|
88
|
+
ShieldCrossPlatformHelper.setCrossPlatformParameters(params);
|
|
89
|
+
}
|
|
90
|
+
|
|
83
91
|
private BlockedDialog getBlockedDialogFromReadableMap(ReadableMap blockedDialog) {
|
|
84
92
|
if (blockedDialog != null) {
|
|
85
93
|
String title = blockedDialog.hasKey("title") ? blockedDialog.getString("title") : null;
|
|
@@ -191,4 +199,13 @@ public class ShieldFraudPluginModule extends ReactContextBaseJavaModule implemen
|
|
|
191
199
|
errorCallback.invoke(errorMessage);
|
|
192
200
|
}
|
|
193
201
|
}
|
|
202
|
+
@ReactMethod
|
|
203
|
+
public void addListener(String eventName) {
|
|
204
|
+
// Code to handle adding listeners
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
@ReactMethod
|
|
208
|
+
public void removeListeners(int count) {
|
|
209
|
+
// Code to handle removing listeners
|
|
210
|
+
}
|
|
194
211
|
}
|
package/ios/ShieldFraudPlugin.m
CHANGED
|
@@ -29,6 +29,14 @@ RCT_EXPORT_METHOD(initShield:(NSString *)siteID secretKey:(NSString *)secretKey
|
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
+
// New method to set cross-platform parameters
|
|
33
|
+
RCT_EXPORT_METHOD(setCrossPlatformParameters:(NSString *)crossPlatformName
|
|
34
|
+
crossPlatformVersion:(NSString *)crossPlatformVersion)
|
|
35
|
+
{
|
|
36
|
+
ShieldCrossPlatformParams *params = [[ShieldCrossPlatformParams alloc] initWithName:crossPlatformName version:crossPlatformVersion];
|
|
37
|
+
[ShieldCrossPlatformHelper setCrossPlatformParameters:params];
|
|
38
|
+
}
|
|
39
|
+
|
|
32
40
|
// get session id from shield sdk
|
|
33
41
|
RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(getSessionId) {
|
|
34
42
|
return [[Shield shared]sessionId];
|
|
@@ -70,6 +78,14 @@ RCT_EXPORT_METHOD(setDeviceResultStateListener)
|
|
|
70
78
|
return @[@"success", @"error", @"device_result_state"];
|
|
71
79
|
}
|
|
72
80
|
|
|
81
|
+
- (void)addListener:(NSString *)eventName {
|
|
82
|
+
[super addListener:eventName];
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
- (void)removeListeners:(double)count {
|
|
86
|
+
[super removeListeners:count];
|
|
87
|
+
}
|
|
88
|
+
|
|
73
89
|
- (void)didErrorWithError:(NSError *)error
|
|
74
90
|
{
|
|
75
91
|
[self sendEventWithName:@"error" body:[error localizedDescription]];
|
package/lib/commonjs/index.js
CHANGED
|
@@ -68,14 +68,27 @@ class ShieldFraud {
|
|
|
68
68
|
// Set default values if environmentInfo is not provided
|
|
69
69
|
const environmentInfo = config.environmentInfo || EnvironmentInfo.EnvironmentProd;
|
|
70
70
|
|
|
71
|
+
// Set cross-platform parameters internally (React Native and version from package.json)
|
|
72
|
+
ShieldFraud.setCrossPlatformParameters();
|
|
73
|
+
|
|
71
74
|
// Call the native method to initialize ShieldFraud with the provided configuration.
|
|
72
75
|
await ShieldFraud.PlatformWrapper.initShield(config.siteID, config.secretKey, isOptimizedListener, config.blockedDialog, logLevel, environmentInfo);
|
|
73
|
-
if (isOptimizedListener
|
|
76
|
+
if (isOptimizedListener) {
|
|
74
77
|
// Set up listeners for success and error events if callbacks are provided.
|
|
75
78
|
ShieldFraud.listeners(callbacks);
|
|
76
79
|
}
|
|
77
80
|
}
|
|
78
81
|
|
|
82
|
+
/**
|
|
83
|
+
* Private method to set cross-platform parameters.
|
|
84
|
+
* The cross-platform name and the version is fetched from package.json.
|
|
85
|
+
*/
|
|
86
|
+
static setCrossPlatformParameters() {
|
|
87
|
+
const crossPlatformName = "react-native-shield-fraud-plugin";
|
|
88
|
+
const crossPlatformVersion = "1.0.11";
|
|
89
|
+
ShieldFraud.PlatformWrapper.setCrossPlatformParameters(crossPlatformName, crossPlatformVersion);
|
|
90
|
+
}
|
|
91
|
+
|
|
79
92
|
/**
|
|
80
93
|
* Sets up event listeners for success and error events.
|
|
81
94
|
*
|
|
@@ -83,14 +96,14 @@ class ShieldFraud {
|
|
|
83
96
|
*/
|
|
84
97
|
static listeners(callbacks) {
|
|
85
98
|
// Listen for success events and invoke the onSuccess callback if provided.
|
|
86
|
-
ShieldFraud.eventEmitter.addListener(
|
|
99
|
+
ShieldFraud.eventEmitter.addListener("success", data => {
|
|
87
100
|
if (callbacks !== null && callbacks !== void 0 && callbacks.onSuccess) {
|
|
88
101
|
callbacks.onSuccess(data);
|
|
89
102
|
}
|
|
90
103
|
});
|
|
91
104
|
|
|
92
105
|
// Listen for error events and invoke the onFailure callback if provided.
|
|
93
|
-
ShieldFraud.eventEmitter.addListener(
|
|
106
|
+
ShieldFraud.eventEmitter.addListener("error", error => {
|
|
94
107
|
if (callbacks !== null && callbacks !== void 0 && callbacks.onFailure) {
|
|
95
108
|
callbacks.onFailure(error);
|
|
96
109
|
}
|
|
@@ -110,7 +123,7 @@ class ShieldFraud {
|
|
|
110
123
|
* Checks whether the ShieldFraud plugin is initialized.
|
|
111
124
|
*
|
|
112
125
|
* @returns A Promise that resolves with a boolean value indicating whether the ShieldFraud plugin is initialized (true) or not (false).
|
|
113
|
-
|
|
126
|
+
*/
|
|
114
127
|
static isShieldInitialized() {
|
|
115
128
|
return ShieldFraud.PlatformWrapper.isShieldInitialized();
|
|
116
129
|
}
|
|
@@ -120,21 +133,24 @@ class ShieldFraud {
|
|
|
120
133
|
*
|
|
121
134
|
* @param callback - A callback function to be invoked with the readiness state.
|
|
122
135
|
* - `isReady` (boolean): A boolean value indicating whether the ShieldFraud SDK is ready.
|
|
123
|
-
|
|
136
|
+
*/
|
|
124
137
|
static async isSDKready(callback) {
|
|
125
138
|
try {
|
|
139
|
+
// Adding a timeout of 100 milliseconds
|
|
140
|
+
await new Promise(resolve => setTimeout(resolve, 100));
|
|
126
141
|
const isInitialized = await this.isShieldInitialized();
|
|
127
142
|
if (!isInitialized) {
|
|
143
|
+
console.log("Shield SDK not initialized:");
|
|
128
144
|
callback(false);
|
|
129
145
|
return;
|
|
130
146
|
}
|
|
131
147
|
const deviceResultListener = event => {
|
|
132
|
-
if (event.status ===
|
|
133
|
-
ShieldFraud.eventEmitter.removeAllListeners(
|
|
148
|
+
if (event.status === "isSDKReady") {
|
|
149
|
+
ShieldFraud.eventEmitter.removeAllListeners("device_result_state");
|
|
134
150
|
callback(true);
|
|
135
151
|
}
|
|
136
152
|
};
|
|
137
|
-
ShieldFraud.eventEmitter.addListener(
|
|
153
|
+
ShieldFraud.eventEmitter.addListener("device_result_state", deviceResultListener);
|
|
138
154
|
ShieldFraud.PlatformWrapper.setDeviceResultStateListener();
|
|
139
155
|
} catch (error) {
|
|
140
156
|
console.error("An error occurred:", error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","LogLevel","exports","EnvironmentInfo","ShieldFraud","PlatformWrapper","NativeModules","ShieldFraudPlugin","eventEmitter","NativeEventEmitter","initShield","config","callbacks","isOptimizedListener","logLevel","LogLevelNone","environmentInfo","EnvironmentProd","siteID","secretKey","blockedDialog","listeners","addListener","data","onSuccess","error","onFailure","getSessionId","isShieldInitialized","isSDKready","callback","isInitialized","deviceResultListener","event","status","removeAllListeners","setDeviceResultStateListener","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","LogLevel","exports","EnvironmentInfo","ShieldFraud","PlatformWrapper","NativeModules","ShieldFraudPlugin","eventEmitter","NativeEventEmitter","initShield","config","callbacks","isOptimizedListener","logLevel","LogLevelNone","environmentInfo","EnvironmentProd","setCrossPlatformParameters","siteID","secretKey","blockedDialog","listeners","crossPlatformName","crossPlatformVersion","addListener","data","onSuccess","error","onFailure","getSessionId","isShieldInitialized","isSDKready","callback","Promise","resolve","setTimeout","isInitialized","console","log","deviceResultListener","event","status","removeAllListeners","setDeviceResultStateListener","sendAttributes","screenName","getLatestDeviceResult","reject","result","_default","default"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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"}
|
package/lib/module/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NativeModules, NativeEventEmitter } from
|
|
1
|
+
import { NativeModules, NativeEventEmitter } from "react-native";
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Enum representing the log levels for ShieldFraud.
|
|
@@ -67,14 +67,27 @@ class ShieldFraud {
|
|
|
67
67
|
// Set default values if environmentInfo is not provided
|
|
68
68
|
const environmentInfo = config.environmentInfo || EnvironmentInfo.EnvironmentProd;
|
|
69
69
|
|
|
70
|
+
// Set cross-platform parameters internally (React Native and version from package.json)
|
|
71
|
+
ShieldFraud.setCrossPlatformParameters();
|
|
72
|
+
|
|
70
73
|
// Call the native method to initialize ShieldFraud with the provided configuration.
|
|
71
74
|
await ShieldFraud.PlatformWrapper.initShield(config.siteID, config.secretKey, isOptimizedListener, config.blockedDialog, logLevel, environmentInfo);
|
|
72
|
-
if (isOptimizedListener
|
|
75
|
+
if (isOptimizedListener) {
|
|
73
76
|
// Set up listeners for success and error events if callbacks are provided.
|
|
74
77
|
ShieldFraud.listeners(callbacks);
|
|
75
78
|
}
|
|
76
79
|
}
|
|
77
80
|
|
|
81
|
+
/**
|
|
82
|
+
* Private method to set cross-platform parameters.
|
|
83
|
+
* The cross-platform name and the version is fetched from package.json.
|
|
84
|
+
*/
|
|
85
|
+
static setCrossPlatformParameters() {
|
|
86
|
+
const crossPlatformName = "react-native-shield-fraud-plugin";
|
|
87
|
+
const crossPlatformVersion = "1.0.11";
|
|
88
|
+
ShieldFraud.PlatformWrapper.setCrossPlatformParameters(crossPlatformName, crossPlatformVersion);
|
|
89
|
+
}
|
|
90
|
+
|
|
78
91
|
/**
|
|
79
92
|
* Sets up event listeners for success and error events.
|
|
80
93
|
*
|
|
@@ -82,14 +95,14 @@ class ShieldFraud {
|
|
|
82
95
|
*/
|
|
83
96
|
static listeners(callbacks) {
|
|
84
97
|
// Listen for success events and invoke the onSuccess callback if provided.
|
|
85
|
-
ShieldFraud.eventEmitter.addListener(
|
|
98
|
+
ShieldFraud.eventEmitter.addListener("success", data => {
|
|
86
99
|
if (callbacks !== null && callbacks !== void 0 && callbacks.onSuccess) {
|
|
87
100
|
callbacks.onSuccess(data);
|
|
88
101
|
}
|
|
89
102
|
});
|
|
90
103
|
|
|
91
104
|
// Listen for error events and invoke the onFailure callback if provided.
|
|
92
|
-
ShieldFraud.eventEmitter.addListener(
|
|
105
|
+
ShieldFraud.eventEmitter.addListener("error", error => {
|
|
93
106
|
if (callbacks !== null && callbacks !== void 0 && callbacks.onFailure) {
|
|
94
107
|
callbacks.onFailure(error);
|
|
95
108
|
}
|
|
@@ -109,7 +122,7 @@ class ShieldFraud {
|
|
|
109
122
|
* Checks whether the ShieldFraud plugin is initialized.
|
|
110
123
|
*
|
|
111
124
|
* @returns A Promise that resolves with a boolean value indicating whether the ShieldFraud plugin is initialized (true) or not (false).
|
|
112
|
-
|
|
125
|
+
*/
|
|
113
126
|
static isShieldInitialized() {
|
|
114
127
|
return ShieldFraud.PlatformWrapper.isShieldInitialized();
|
|
115
128
|
}
|
|
@@ -119,21 +132,24 @@ class ShieldFraud {
|
|
|
119
132
|
*
|
|
120
133
|
* @param callback - A callback function to be invoked with the readiness state.
|
|
121
134
|
* - `isReady` (boolean): A boolean value indicating whether the ShieldFraud SDK is ready.
|
|
122
|
-
|
|
135
|
+
*/
|
|
123
136
|
static async isSDKready(callback) {
|
|
124
137
|
try {
|
|
138
|
+
// Adding a timeout of 100 milliseconds
|
|
139
|
+
await new Promise(resolve => setTimeout(resolve, 100));
|
|
125
140
|
const isInitialized = await this.isShieldInitialized();
|
|
126
141
|
if (!isInitialized) {
|
|
142
|
+
console.log("Shield SDK not initialized:");
|
|
127
143
|
callback(false);
|
|
128
144
|
return;
|
|
129
145
|
}
|
|
130
146
|
const deviceResultListener = event => {
|
|
131
|
-
if (event.status ===
|
|
132
|
-
ShieldFraud.eventEmitter.removeAllListeners(
|
|
147
|
+
if (event.status === "isSDKReady") {
|
|
148
|
+
ShieldFraud.eventEmitter.removeAllListeners("device_result_state");
|
|
133
149
|
callback(true);
|
|
134
150
|
}
|
|
135
151
|
};
|
|
136
|
-
ShieldFraud.eventEmitter.addListener(
|
|
152
|
+
ShieldFraud.eventEmitter.addListener("device_result_state", deviceResultListener);
|
|
137
153
|
ShieldFraud.PlatformWrapper.setDeviceResultStateListener();
|
|
138
154
|
} catch (error) {
|
|
139
155
|
console.error("An error occurred:", error);
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeModules","NativeEventEmitter","LogLevel","EnvironmentInfo","ShieldFraud","PlatformWrapper","ShieldFraudPlugin","eventEmitter","initShield","config","callbacks","isOptimizedListener","logLevel","LogLevelNone","environmentInfo","EnvironmentProd","siteID","secretKey","blockedDialog","listeners","addListener","data","onSuccess","error","onFailure","getSessionId","isShieldInitialized","isSDKready","callback","isInitialized","deviceResultListener","event","status","removeAllListeners","setDeviceResultStateListener","
|
|
1
|
+
{"version":3,"names":["NativeModules","NativeEventEmitter","LogLevel","EnvironmentInfo","ShieldFraud","PlatformWrapper","ShieldFraudPlugin","eventEmitter","initShield","config","callbacks","isOptimizedListener","logLevel","LogLevelNone","environmentInfo","EnvironmentProd","setCrossPlatformParameters","siteID","secretKey","blockedDialog","listeners","crossPlatformName","crossPlatformVersion","addListener","data","onSuccess","error","onFailure","getSessionId","isShieldInitialized","isSDKready","callback","Promise","resolve","setTimeout","isInitialized","console","log","deviceResultListener","event","status","removeAllListeners","setDeviceResultStateListener","sendAttributes","screenName","getLatestDeviceResult","reject","result"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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"}
|
|
@@ -63,6 +63,11 @@ declare class ShieldFraud {
|
|
|
63
63
|
* @param callbacks - (Optional) The callback functions for success and failure events.
|
|
64
64
|
*/
|
|
65
65
|
static initShield(config: Config, callbacks?: ShieldCallback): Promise<void>;
|
|
66
|
+
/**
|
|
67
|
+
* Private method to set cross-platform parameters.
|
|
68
|
+
* The cross-platform name and the version is fetched from package.json.
|
|
69
|
+
*/
|
|
70
|
+
private static setCrossPlatformParameters;
|
|
66
71
|
/**
|
|
67
72
|
* Sets up event listeners for success and error events.
|
|
68
73
|
*
|
|
@@ -79,14 +84,14 @@ declare class ShieldFraud {
|
|
|
79
84
|
* Checks whether the ShieldFraud plugin is initialized.
|
|
80
85
|
*
|
|
81
86
|
* @returns A Promise that resolves with a boolean value indicating whether the ShieldFraud plugin is initialized (true) or not (false).
|
|
82
|
-
|
|
83
|
-
static isShieldInitialized(): Promise<
|
|
87
|
+
*/
|
|
88
|
+
static isShieldInitialized(): Promise<boolean>;
|
|
84
89
|
/**
|
|
85
90
|
* Checks if the ShieldFraud SDK is ready and invokes the provided callback with the readiness state.
|
|
86
91
|
*
|
|
87
92
|
* @param callback - A callback function to be invoked with the readiness state.
|
|
88
93
|
* - `isReady` (boolean): A boolean value indicating whether the ShieldFraud SDK is ready.
|
|
89
|
-
|
|
94
|
+
*/
|
|
90
95
|
static isSDKready(callback: (isReady: boolean) => void): Promise<void>;
|
|
91
96
|
/**
|
|
92
97
|
* Sends attributes to the ShieldFraud plugin for a specific screen.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAEA;;GAEG;AACH,oBAAY,QAAQ;IAClB,aAAa,IAAI;IACjB,YAAY,IAAI;IAChB,YAAY,IAAI;CACjB;AAED;;GAEG;AACH,oBAAY,eAAe;IACzB,eAAe,IAAI;IACnB,cAAc,IAAI;IAClB,eAAe,IAAI;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;KACd,GAAG,IAAI,CAAC;IACT,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED;;GAEG;AACH,KAAK,eAAe,GAAG,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;AAE3C;;GAEG;AACH,KAAK,eAAe,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;AAE5C;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B,CAAC;AAEF;;;;GAIG;AACH,cAAM,WAAW;IACf;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe,CAAmC;IAEjE;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAEA;;GAEG;AACH,oBAAY,QAAQ;IAClB,aAAa,IAAI;IACjB,YAAY,IAAI;IAChB,YAAY,IAAI;CACjB;AAED;;GAEG;AACH,oBAAY,eAAe;IACzB,eAAe,IAAI;IACnB,cAAc,IAAI;IAClB,eAAe,IAAI;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;KACd,GAAG,IAAI,CAAC;IACT,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED;;GAEG;AACH,KAAK,eAAe,GAAG,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;AAE3C;;GAEG;AACH,KAAK,eAAe,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;AAE5C;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B,CAAC;AAEF;;;;GAIG;AACH,cAAM,WAAW;IACf;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe,CAAmC;IAEjE;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY,CAEzB;IAEF;;;;;OAKG;WACiB,UAAU,CAC5B,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,cAAc,GACzB,OAAO,CAAC,IAAI,CAAC;IA6BhB;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAUzC;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS;IAgBxB;;;;OAIG;WACW,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAI7C;;;;OAIG;WACW,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrD;;;;;OAKG;WACiB,UAAU,CAC5B,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GACnC,OAAO,CAAC,IAAI,CAAC;IA+BhB;;;;;OAKG;WACW,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAIpE;;;;OAIG;WACW,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC;CAcvD;AAED,eAAe,WAAW,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-shield-fraud-plugin",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.11",
|
|
4
4
|
"description": "React Native Shield Fraud Plugin helps developers to assess malicious activities performed on mobile devices and return risk intelligence based on user's behaviour. It collects device's fingerprint, social metrics and network information.",
|
|
5
5
|
"main": "lib/commonjs/index",
|
|
6
6
|
"module": "lib/module/index",
|
package/src/index.tsx
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NativeModules, NativeEventEmitter } from
|
|
1
|
+
import { NativeModules, NativeEventEmitter } from "react-native";
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Enum representing the log levels for ShieldFraud.
|
|
@@ -64,7 +64,9 @@ class ShieldFraud {
|
|
|
64
64
|
/**
|
|
65
65
|
* The event emitter for listening to success and error events.
|
|
66
66
|
*/
|
|
67
|
-
private static eventEmitter = new NativeEventEmitter(
|
|
67
|
+
private static eventEmitter = new NativeEventEmitter(
|
|
68
|
+
ShieldFraud.PlatformWrapper
|
|
69
|
+
);
|
|
68
70
|
|
|
69
71
|
/**
|
|
70
72
|
* Initializes the ShieldFraud plugin with the provided configuration.
|
|
@@ -72,14 +74,21 @@ class ShieldFraud {
|
|
|
72
74
|
* @param config - The configuration object containing the required properties.
|
|
73
75
|
* @param callbacks - (Optional) The callback functions for success and failure events.
|
|
74
76
|
*/
|
|
75
|
-
public static async initShield(
|
|
77
|
+
public static async initShield(
|
|
78
|
+
config: Config,
|
|
79
|
+
callbacks?: ShieldCallback
|
|
80
|
+
): Promise<void> {
|
|
76
81
|
const isOptimizedListener = !!callbacks;
|
|
77
82
|
|
|
78
83
|
// Set default values if logLevel is not provided
|
|
79
84
|
const logLevel = config.logLevel || LogLevel.LogLevelNone;
|
|
80
85
|
|
|
81
86
|
// Set default values if environmentInfo is not provided
|
|
82
|
-
const environmentInfo =
|
|
87
|
+
const environmentInfo =
|
|
88
|
+
config.environmentInfo || EnvironmentInfo.EnvironmentProd;
|
|
89
|
+
|
|
90
|
+
// Set cross-platform parameters internally (React Native and version from package.json)
|
|
91
|
+
ShieldFraud.setCrossPlatformParameters();
|
|
83
92
|
|
|
84
93
|
// Call the native method to initialize ShieldFraud with the provided configuration.
|
|
85
94
|
await ShieldFraud.PlatformWrapper.initShield(
|
|
@@ -91,12 +100,26 @@ class ShieldFraud {
|
|
|
91
100
|
environmentInfo
|
|
92
101
|
);
|
|
93
102
|
|
|
94
|
-
if (isOptimizedListener
|
|
103
|
+
if (isOptimizedListener) {
|
|
95
104
|
// Set up listeners for success and error events if callbacks are provided.
|
|
96
105
|
ShieldFraud.listeners(callbacks);
|
|
97
106
|
}
|
|
98
107
|
}
|
|
99
108
|
|
|
109
|
+
/**
|
|
110
|
+
* Private method to set cross-platform parameters.
|
|
111
|
+
* The cross-platform name and the version is fetched from package.json.
|
|
112
|
+
*/
|
|
113
|
+
private static setCrossPlatformParameters(): void {
|
|
114
|
+
const crossPlatformName = "react-native-shield-fraud-plugin";
|
|
115
|
+
const crossPlatformVersion = "1.0.11";
|
|
116
|
+
|
|
117
|
+
ShieldFraud.PlatformWrapper.setCrossPlatformParameters(
|
|
118
|
+
crossPlatformName,
|
|
119
|
+
crossPlatformVersion
|
|
120
|
+
);
|
|
121
|
+
}
|
|
122
|
+
|
|
100
123
|
/**
|
|
101
124
|
* Sets up event listeners for success and error events.
|
|
102
125
|
*
|
|
@@ -104,14 +127,14 @@ class ShieldFraud {
|
|
|
104
127
|
*/
|
|
105
128
|
private static listeners(callbacks?: ShieldCallback): void {
|
|
106
129
|
// Listen for success events and invoke the onSuccess callback if provided.
|
|
107
|
-
ShieldFraud.eventEmitter.addListener(
|
|
130
|
+
ShieldFraud.eventEmitter.addListener("success", (data) => {
|
|
108
131
|
if (callbacks?.onSuccess) {
|
|
109
132
|
callbacks.onSuccess(data);
|
|
110
133
|
}
|
|
111
134
|
});
|
|
112
135
|
|
|
113
136
|
// Listen for error events and invoke the onFailure callback if provided.
|
|
114
|
-
ShieldFraud.eventEmitter.addListener(
|
|
137
|
+
ShieldFraud.eventEmitter.addListener("error", (error) => {
|
|
115
138
|
if (callbacks?.onFailure) {
|
|
116
139
|
callbacks.onFailure(error);
|
|
117
140
|
}
|
|
@@ -131,8 +154,8 @@ class ShieldFraud {
|
|
|
131
154
|
* Checks whether the ShieldFraud plugin is initialized.
|
|
132
155
|
*
|
|
133
156
|
* @returns A Promise that resolves with a boolean value indicating whether the ShieldFraud plugin is initialized (true) or not (false).
|
|
134
|
-
|
|
135
|
-
public static isShieldInitialized(): Promise<
|
|
157
|
+
*/
|
|
158
|
+
public static isShieldInitialized(): Promise<boolean> {
|
|
136
159
|
return ShieldFraud.PlatformWrapper.isShieldInitialized();
|
|
137
160
|
}
|
|
138
161
|
|
|
@@ -141,31 +164,39 @@ class ShieldFraud {
|
|
|
141
164
|
*
|
|
142
165
|
* @param callback - A callback function to be invoked with the readiness state.
|
|
143
166
|
* - `isReady` (boolean): A boolean value indicating whether the ShieldFraud SDK is ready.
|
|
144
|
-
|
|
145
|
-
public static async isSDKready(
|
|
167
|
+
*/
|
|
168
|
+
public static async isSDKready(
|
|
169
|
+
callback: (isReady: boolean) => void
|
|
170
|
+
): Promise<void> {
|
|
146
171
|
try {
|
|
172
|
+
// Adding a timeout of 100 milliseconds
|
|
173
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
174
|
+
|
|
147
175
|
const isInitialized = await this.isShieldInitialized();
|
|
148
|
-
|
|
176
|
+
|
|
149
177
|
if (!isInitialized) {
|
|
178
|
+
console.log("Shield SDK not initialized:");
|
|
150
179
|
callback(false);
|
|
151
180
|
return;
|
|
152
181
|
}
|
|
153
|
-
|
|
182
|
+
|
|
154
183
|
const deviceResultListener = (event: { status: string }) => {
|
|
155
|
-
if (event.status ===
|
|
156
|
-
ShieldFraud.eventEmitter.removeAllListeners(
|
|
184
|
+
if (event.status === "isSDKReady") {
|
|
185
|
+
ShieldFraud.eventEmitter.removeAllListeners("device_result_state");
|
|
157
186
|
callback(true);
|
|
158
187
|
}
|
|
159
188
|
};
|
|
160
|
-
|
|
161
|
-
ShieldFraud.eventEmitter.addListener(
|
|
189
|
+
|
|
190
|
+
ShieldFraud.eventEmitter.addListener(
|
|
191
|
+
"device_result_state",
|
|
192
|
+
deviceResultListener
|
|
193
|
+
);
|
|
162
194
|
ShieldFraud.PlatformWrapper.setDeviceResultStateListener();
|
|
163
195
|
} catch (error) {
|
|
164
|
-
console.error("An error occurred:", error);
|
|
165
|
-
callback(false);
|
|
196
|
+
console.error("An error occurred:", error);
|
|
197
|
+
callback(false);
|
|
166
198
|
}
|
|
167
199
|
}
|
|
168
|
-
|
|
169
200
|
|
|
170
201
|
/**
|
|
171
202
|
* Sends attributes to the ShieldFraud plugin for a specific screen.
|
|
Binary file
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
3
|
-
<plist version="1.0">
|
|
4
|
-
<dict>
|
|
5
|
-
<key>SchemeUserState</key>
|
|
6
|
-
<dict>
|
|
7
|
-
<key>ShieldFraudPlugin.xcscheme_^#shared#^_</key>
|
|
8
|
-
<dict>
|
|
9
|
-
<key>orderHint</key>
|
|
10
|
-
<integer>0</integer>
|
|
11
|
-
</dict>
|
|
12
|
-
</dict>
|
|
13
|
-
</dict>
|
|
14
|
-
</plist>
|