react-native-shield-fraud-plugin 1.0.9 → 1.0.10
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/src/main/java/com/shieldfraudplugin/ShieldFraudPluginModule.java +9 -0
- package/ios/ShieldFraudPlugin.m +8 -0
- package/ios/ShieldFraudPlugin.xcodeproj/project.xcworkspace/xcuserdata/deepakraj.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/lib/commonjs/index.js +11 -8
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/index.js +12 -9
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/index.d.ts +3 -3
- package/lib/typescript/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/index.tsx +34 -20
|
@@ -191,4 +191,13 @@ public class ShieldFraudPluginModule extends ReactContextBaseJavaModule implemen
|
|
|
191
191
|
errorCallback.invoke(errorMessage);
|
|
192
192
|
}
|
|
193
193
|
}
|
|
194
|
+
@ReactMethod
|
|
195
|
+
public void addListener(String eventName) {
|
|
196
|
+
// Code to handle adding listeners
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
@ReactMethod
|
|
200
|
+
public void removeListeners(int count) {
|
|
201
|
+
// Code to handle removing listeners
|
|
202
|
+
}
|
|
194
203
|
}
|
package/ios/ShieldFraudPlugin.m
CHANGED
|
@@ -70,6 +70,14 @@ RCT_EXPORT_METHOD(setDeviceResultStateListener)
|
|
|
70
70
|
return @[@"success", @"error", @"device_result_state"];
|
|
71
71
|
}
|
|
72
72
|
|
|
73
|
+
- (void)addListener:(NSString *)eventName {
|
|
74
|
+
[super addListener:eventName];
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
- (void)removeListeners:(double)count {
|
|
78
|
+
[super removeListeners:count];
|
|
79
|
+
}
|
|
80
|
+
|
|
73
81
|
- (void)didErrorWithError:(NSError *)error
|
|
74
82
|
{
|
|
75
83
|
[self sendEventWithName:@"error" body:[error localizedDescription]];
|
|
Binary file
|
package/lib/commonjs/index.js
CHANGED
|
@@ -70,7 +70,7 @@ class ShieldFraud {
|
|
|
70
70
|
|
|
71
71
|
// Call the native method to initialize ShieldFraud with the provided configuration.
|
|
72
72
|
await ShieldFraud.PlatformWrapper.initShield(config.siteID, config.secretKey, isOptimizedListener, config.blockedDialog, logLevel, environmentInfo);
|
|
73
|
-
if (isOptimizedListener
|
|
73
|
+
if (isOptimizedListener) {
|
|
74
74
|
// Set up listeners for success and error events if callbacks are provided.
|
|
75
75
|
ShieldFraud.listeners(callbacks);
|
|
76
76
|
}
|
|
@@ -83,14 +83,14 @@ class ShieldFraud {
|
|
|
83
83
|
*/
|
|
84
84
|
static listeners(callbacks) {
|
|
85
85
|
// Listen for success events and invoke the onSuccess callback if provided.
|
|
86
|
-
ShieldFraud.eventEmitter.addListener(
|
|
86
|
+
ShieldFraud.eventEmitter.addListener("success", data => {
|
|
87
87
|
if (callbacks !== null && callbacks !== void 0 && callbacks.onSuccess) {
|
|
88
88
|
callbacks.onSuccess(data);
|
|
89
89
|
}
|
|
90
90
|
});
|
|
91
91
|
|
|
92
92
|
// Listen for error events and invoke the onFailure callback if provided.
|
|
93
|
-
ShieldFraud.eventEmitter.addListener(
|
|
93
|
+
ShieldFraud.eventEmitter.addListener("error", error => {
|
|
94
94
|
if (callbacks !== null && callbacks !== void 0 && callbacks.onFailure) {
|
|
95
95
|
callbacks.onFailure(error);
|
|
96
96
|
}
|
|
@@ -110,7 +110,7 @@ class ShieldFraud {
|
|
|
110
110
|
* Checks whether the ShieldFraud plugin is initialized.
|
|
111
111
|
*
|
|
112
112
|
* @returns A Promise that resolves with a boolean value indicating whether the ShieldFraud plugin is initialized (true) or not (false).
|
|
113
|
-
|
|
113
|
+
*/
|
|
114
114
|
static isShieldInitialized() {
|
|
115
115
|
return ShieldFraud.PlatformWrapper.isShieldInitialized();
|
|
116
116
|
}
|
|
@@ -120,21 +120,24 @@ class ShieldFraud {
|
|
|
120
120
|
*
|
|
121
121
|
* @param callback - A callback function to be invoked with the readiness state.
|
|
122
122
|
* - `isReady` (boolean): A boolean value indicating whether the ShieldFraud SDK is ready.
|
|
123
|
-
|
|
123
|
+
*/
|
|
124
124
|
static async isSDKready(callback) {
|
|
125
125
|
try {
|
|
126
|
+
// Adding a timeout of 100 milliseconds
|
|
127
|
+
await new Promise(resolve => setTimeout(resolve, 100));
|
|
126
128
|
const isInitialized = await this.isShieldInitialized();
|
|
127
129
|
if (!isInitialized) {
|
|
130
|
+
console.log("Shield SDK not initialized:");
|
|
128
131
|
callback(false);
|
|
129
132
|
return;
|
|
130
133
|
}
|
|
131
134
|
const deviceResultListener = event => {
|
|
132
|
-
if (event.status ===
|
|
133
|
-
ShieldFraud.eventEmitter.removeAllListeners(
|
|
135
|
+
if (event.status === "isSDKReady") {
|
|
136
|
+
ShieldFraud.eventEmitter.removeAllListeners("device_result_state");
|
|
134
137
|
callback(true);
|
|
135
138
|
}
|
|
136
139
|
};
|
|
137
|
-
ShieldFraud.eventEmitter.addListener(
|
|
140
|
+
ShieldFraud.eventEmitter.addListener("device_result_state", deviceResultListener);
|
|
138
141
|
ShieldFraud.PlatformWrapper.setDeviceResultStateListener();
|
|
139
142
|
} catch (error) {
|
|
140
143
|
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","siteID","secretKey","blockedDialog","listeners","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":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA;AACA;AACA;AAFA,IAGYC,QAAQ,0BAARA,QAAQ;EAARA,QAAQ,CAARA,QAAQ;EAARA,QAAQ,CAARA,QAAQ;EAARA,QAAQ,CAARA,QAAQ;EAAA,OAARA,QAAQ;AAAA;AAMpB;AACA;AACA;AAFAC,OAAA,CAAAD,QAAA,GAAAA,QAAA;AAAA,IAGYE,eAAe,0BAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAM3B;AACA;AACA;AAYA;AACA;AACA;AAGA;AACA;AACA;AAGA;AACA;AACA;AAFAD,OAAA,CAAAC,eAAA,GAAAA,eAAA;AAQA;AACA;AACA;AACA;AACA;AACA,MAAMC,WAAW,CAAC;EAChB;AACF;AACA;EACE,OAAeC,eAAe,GAAGC,0BAAa,CAACC,iBAAiB;;EAEhE;AACF;AACA;EACE,OAAeC,YAAY,GAAG,IAAIC,+BAAkB,CAClDL,WAAW,CAACC,eAAe,CAC5B;;EAED;AACF;AACA;AACA;AACA;AACA;EACE,aAAoBK,UAAUA,CAC5BC,MAAc,EACdC,SAA0B,EACX;IACf,MAAMC,mBAAmB,GAAG,CAAC,CAACD,SAAS;;IAEvC;IACA,MAAME,QAAQ,GAAGH,MAAM,CAACG,QAAQ,IAAIb,QAAQ,CAACc,YAAY;;IAEzD;IACA,MAAMC,eAAe,GACnBL,MAAM,CAACK,eAAe,IAAIb,eAAe,CAACc,eAAe;;IAE3D;IACA,MAAMb,WAAW,CAACC,eAAe,CAACK,UAAU,CAC1CC,MAAM,CAACO,MAAM,EACbP,MAAM,CAACQ,SAAS,EAChBN,mBAAmB,EACnBF,MAAM,CAACS,aAAa,EACpBN,QAAQ,EACRE,eAAe,CAChB;IAED,IAAIH,mBAAmB,EAAE;MACvB;MACAT,WAAW,CAACiB,SAAS,CAACT,SAAS,CAAC;IAClC;EACF;;EAEA;AACF;AACA;AACA;AACA;EACE,OAAeS,SAASA,CAACT,SAA0B,EAAQ;IACzD;IACAR,WAAW,CAACI,YAAY,CAACc,WAAW,CAAC,SAAS,EAAGC,IAAI,IAAK;MACxD,IAAIX,SAAS,aAATA,SAAS,eAATA,SAAS,CAAEY,SAAS,EAAE;QACxBZ,SAAS,CAACY,SAAS,CAACD,IAAI,CAAC;MAC3B;IACF,CAAC,CAAC;;IAEF;IACAnB,WAAW,CAACI,YAAY,CAACc,WAAW,CAAC,OAAO,EAAGG,KAAK,IAAK;MACvD,IAAIb,SAAS,aAATA,SAAS,eAATA,SAAS,CAAEc,SAAS,EAAE;QACxBd,SAAS,CAACc,SAAS,CAACD,KAAK,CAAC;MAC5B;IACF,CAAC,CAAC;EACJ;;EAEA;AACF;AACA;AACA;AACA;EACE,OAAcE,YAAYA,CAAA,EAAoB;IAC5C,OAAOvB,WAAW,CAACC,eAAe,CAACsB,YAAY,EAAE;EACnD;;EAEA;AACF;AACA;AACA;AACA;EACE,OAAcC,mBAAmBA,CAAA,EAAqB;IACpD,OAAOxB,WAAW,CAACC,eAAe,CAACuB,mBAAmB,EAAE;EAC1D;;EAEA;AACF;AACA;AACA;AACA;AACA;EACE,aAAoBC,UAAUA,CAC5BC,QAAoC,EACrB;IACf,IAAI;MACF;MACA,MAAM,IAAIC,OAAO,CAAEC,OAAO,IAAKC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;MAExD,MAAME,aAAa,GAAG,MAAM,IAAI,CAACN,mBAAmB,EAAE;MAEtD,IAAI,CAACM,aAAa,EAAE;QAClBC,OAAO,CAACC,GAAG,CAAC,6BAA6B,CAAC;QAC1CN,QAAQ,CAAC,KAAK,CAAC;QACf;MACF;MAEA,MAAMO,oBAAoB,GAAIC,KAAyB,IAAK;QAC1D,IAAIA,KAAK,CAACC,MAAM,KAAK,YAAY,EAAE;UACjCnC,WAAW,CAACI,YAAY,CAACgC,kBAAkB,CAAC,qBAAqB,CAAC;UAClEV,QAAQ,CAAC,IAAI,CAAC;QAChB;MACF,CAAC;MAED1B,WAAW,CAACI,YAAY,CAACc,WAAW,CAClC,qBAAqB,EACrBe,oBAAoB,CACrB;MACDjC,WAAW,CAACC,eAAe,CAACoC,4BAA4B,EAAE;IAC5D,CAAC,CAAC,OAAOhB,KAAK,EAAE;MACdU,OAAO,CAACV,KAAK,CAAC,oBAAoB,EAAEA,KAAK,CAAC;MAC1CK,QAAQ,CAAC,KAAK,CAAC;IACjB;EACF;;EAEA;AACF;AACA;AACA;AACA;AACA;EACE,OAAcY,cAAcA,CAACC,UAAkB,EAAEpB,IAAY,EAAQ;IACnEnB,WAAW,CAACC,eAAe,CAACqC,cAAc,CAACC,UAAU,EAAEpB,IAAI,CAAC;EAC9D;;EAEA;AACF;AACA;AACA;AACA;EACE,OAAcqB,qBAAqBA,CAAA,EAAoB;IACrD,OAAO,IAAIb,OAAO,CAAC,CAACC,OAAO,EAAEa,MAAM,KAAK;MACtCzC,WAAW,CAACC,eAAe,CAACuC,qBAAqB,CAC9CE,MAAc,IAAK;QAClB;QACAd,OAAO,CAACc,MAAM,CAAC;MACjB,CAAC,EACArB,KAAa,IAAK;QACjB;QACAoB,MAAM,CAACpB,KAAK,CAAC;MACf,CAAC,CACF;IACH,CAAC,CAAC;EACJ;AACF;AAAC,IAAAsB,QAAA,GAEc3C,WAAW;AAAAF,OAAA,CAAA8C,OAAA,GAAAD,QAAA"}
|
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.
|
|
@@ -69,7 +69,7 @@ class ShieldFraud {
|
|
|
69
69
|
|
|
70
70
|
// Call the native method to initialize ShieldFraud with the provided configuration.
|
|
71
71
|
await ShieldFraud.PlatformWrapper.initShield(config.siteID, config.secretKey, isOptimizedListener, config.blockedDialog, logLevel, environmentInfo);
|
|
72
|
-
if (isOptimizedListener
|
|
72
|
+
if (isOptimizedListener) {
|
|
73
73
|
// Set up listeners for success and error events if callbacks are provided.
|
|
74
74
|
ShieldFraud.listeners(callbacks);
|
|
75
75
|
}
|
|
@@ -82,14 +82,14 @@ class ShieldFraud {
|
|
|
82
82
|
*/
|
|
83
83
|
static listeners(callbacks) {
|
|
84
84
|
// Listen for success events and invoke the onSuccess callback if provided.
|
|
85
|
-
ShieldFraud.eventEmitter.addListener(
|
|
85
|
+
ShieldFraud.eventEmitter.addListener("success", data => {
|
|
86
86
|
if (callbacks !== null && callbacks !== void 0 && callbacks.onSuccess) {
|
|
87
87
|
callbacks.onSuccess(data);
|
|
88
88
|
}
|
|
89
89
|
});
|
|
90
90
|
|
|
91
91
|
// Listen for error events and invoke the onFailure callback if provided.
|
|
92
|
-
ShieldFraud.eventEmitter.addListener(
|
|
92
|
+
ShieldFraud.eventEmitter.addListener("error", error => {
|
|
93
93
|
if (callbacks !== null && callbacks !== void 0 && callbacks.onFailure) {
|
|
94
94
|
callbacks.onFailure(error);
|
|
95
95
|
}
|
|
@@ -109,7 +109,7 @@ class ShieldFraud {
|
|
|
109
109
|
* Checks whether the ShieldFraud plugin is initialized.
|
|
110
110
|
*
|
|
111
111
|
* @returns A Promise that resolves with a boolean value indicating whether the ShieldFraud plugin is initialized (true) or not (false).
|
|
112
|
-
|
|
112
|
+
*/
|
|
113
113
|
static isShieldInitialized() {
|
|
114
114
|
return ShieldFraud.PlatformWrapper.isShieldInitialized();
|
|
115
115
|
}
|
|
@@ -119,21 +119,24 @@ class ShieldFraud {
|
|
|
119
119
|
*
|
|
120
120
|
* @param callback - A callback function to be invoked with the readiness state.
|
|
121
121
|
* - `isReady` (boolean): A boolean value indicating whether the ShieldFraud SDK is ready.
|
|
122
|
-
|
|
122
|
+
*/
|
|
123
123
|
static async isSDKready(callback) {
|
|
124
124
|
try {
|
|
125
|
+
// Adding a timeout of 100 milliseconds
|
|
126
|
+
await new Promise(resolve => setTimeout(resolve, 100));
|
|
125
127
|
const isInitialized = await this.isShieldInitialized();
|
|
126
128
|
if (!isInitialized) {
|
|
129
|
+
console.log("Shield SDK not initialized:");
|
|
127
130
|
callback(false);
|
|
128
131
|
return;
|
|
129
132
|
}
|
|
130
133
|
const deviceResultListener = event => {
|
|
131
|
-
if (event.status ===
|
|
132
|
-
ShieldFraud.eventEmitter.removeAllListeners(
|
|
134
|
+
if (event.status === "isSDKReady") {
|
|
135
|
+
ShieldFraud.eventEmitter.removeAllListeners("device_result_state");
|
|
133
136
|
callback(true);
|
|
134
137
|
}
|
|
135
138
|
};
|
|
136
|
-
ShieldFraud.eventEmitter.addListener(
|
|
139
|
+
ShieldFraud.eventEmitter.addListener("device_result_state", deviceResultListener);
|
|
137
140
|
ShieldFraud.PlatformWrapper.setDeviceResultStateListener();
|
|
138
141
|
} catch (error) {
|
|
139
142
|
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","siteID","secretKey","blockedDialog","listeners","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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"}
|
|
@@ -79,14 +79,14 @@ declare class ShieldFraud {
|
|
|
79
79
|
* Checks whether the ShieldFraud plugin is initialized.
|
|
80
80
|
*
|
|
81
81
|
* @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<
|
|
82
|
+
*/
|
|
83
|
+
static isShieldInitialized(): Promise<boolean>;
|
|
84
84
|
/**
|
|
85
85
|
* Checks if the ShieldFraud SDK is ready and invokes the provided callback with the readiness state.
|
|
86
86
|
*
|
|
87
87
|
* @param callback - A callback function to be invoked with the readiness state.
|
|
88
88
|
* - `isReady` (boolean): A boolean value indicating whether the ShieldFraud SDK is ready.
|
|
89
|
-
|
|
89
|
+
*/
|
|
90
90
|
static isSDKready(callback: (isReady: boolean) => void): Promise<void>;
|
|
91
91
|
/**
|
|
92
92
|
* 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;IA0BhB;;;;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.10",
|
|
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,18 @@ 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;
|
|
83
89
|
|
|
84
90
|
// Call the native method to initialize ShieldFraud with the provided configuration.
|
|
85
91
|
await ShieldFraud.PlatformWrapper.initShield(
|
|
@@ -91,7 +97,7 @@ class ShieldFraud {
|
|
|
91
97
|
environmentInfo
|
|
92
98
|
);
|
|
93
99
|
|
|
94
|
-
if (isOptimizedListener
|
|
100
|
+
if (isOptimizedListener) {
|
|
95
101
|
// Set up listeners for success and error events if callbacks are provided.
|
|
96
102
|
ShieldFraud.listeners(callbacks);
|
|
97
103
|
}
|
|
@@ -104,14 +110,14 @@ class ShieldFraud {
|
|
|
104
110
|
*/
|
|
105
111
|
private static listeners(callbacks?: ShieldCallback): void {
|
|
106
112
|
// Listen for success events and invoke the onSuccess callback if provided.
|
|
107
|
-
ShieldFraud.eventEmitter.addListener(
|
|
113
|
+
ShieldFraud.eventEmitter.addListener("success", (data) => {
|
|
108
114
|
if (callbacks?.onSuccess) {
|
|
109
115
|
callbacks.onSuccess(data);
|
|
110
116
|
}
|
|
111
117
|
});
|
|
112
118
|
|
|
113
119
|
// Listen for error events and invoke the onFailure callback if provided.
|
|
114
|
-
ShieldFraud.eventEmitter.addListener(
|
|
120
|
+
ShieldFraud.eventEmitter.addListener("error", (error) => {
|
|
115
121
|
if (callbacks?.onFailure) {
|
|
116
122
|
callbacks.onFailure(error);
|
|
117
123
|
}
|
|
@@ -131,8 +137,8 @@ class ShieldFraud {
|
|
|
131
137
|
* Checks whether the ShieldFraud plugin is initialized.
|
|
132
138
|
*
|
|
133
139
|
* @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<
|
|
140
|
+
*/
|
|
141
|
+
public static isShieldInitialized(): Promise<boolean> {
|
|
136
142
|
return ShieldFraud.PlatformWrapper.isShieldInitialized();
|
|
137
143
|
}
|
|
138
144
|
|
|
@@ -141,31 +147,39 @@ class ShieldFraud {
|
|
|
141
147
|
*
|
|
142
148
|
* @param callback - A callback function to be invoked with the readiness state.
|
|
143
149
|
* - `isReady` (boolean): A boolean value indicating whether the ShieldFraud SDK is ready.
|
|
144
|
-
|
|
145
|
-
public static async isSDKready(
|
|
150
|
+
*/
|
|
151
|
+
public static async isSDKready(
|
|
152
|
+
callback: (isReady: boolean) => void
|
|
153
|
+
): Promise<void> {
|
|
146
154
|
try {
|
|
155
|
+
// Adding a timeout of 100 milliseconds
|
|
156
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
157
|
+
|
|
147
158
|
const isInitialized = await this.isShieldInitialized();
|
|
148
|
-
|
|
159
|
+
|
|
149
160
|
if (!isInitialized) {
|
|
161
|
+
console.log("Shield SDK not initialized:");
|
|
150
162
|
callback(false);
|
|
151
163
|
return;
|
|
152
164
|
}
|
|
153
|
-
|
|
165
|
+
|
|
154
166
|
const deviceResultListener = (event: { status: string }) => {
|
|
155
|
-
if (event.status ===
|
|
156
|
-
ShieldFraud.eventEmitter.removeAllListeners(
|
|
167
|
+
if (event.status === "isSDKReady") {
|
|
168
|
+
ShieldFraud.eventEmitter.removeAllListeners("device_result_state");
|
|
157
169
|
callback(true);
|
|
158
170
|
}
|
|
159
171
|
};
|
|
160
|
-
|
|
161
|
-
ShieldFraud.eventEmitter.addListener(
|
|
172
|
+
|
|
173
|
+
ShieldFraud.eventEmitter.addListener(
|
|
174
|
+
"device_result_state",
|
|
175
|
+
deviceResultListener
|
|
176
|
+
);
|
|
162
177
|
ShieldFraud.PlatformWrapper.setDeviceResultStateListener();
|
|
163
178
|
} catch (error) {
|
|
164
|
-
console.error("An error occurred:", error);
|
|
165
|
-
callback(false);
|
|
179
|
+
console.error("An error occurred:", error);
|
|
180
|
+
callback(false);
|
|
166
181
|
}
|
|
167
182
|
}
|
|
168
|
-
|
|
169
183
|
|
|
170
184
|
/**
|
|
171
185
|
* Sends attributes to the ShieldFraud plugin for a specific screen.
|