reteno-react-native-sdk 1.4.8 → 1.4.9
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 +1 -1
- package/android/src/main/AndroidManifest.xml +9 -0
- package/android/src/main/java/com/retenosdk/RetenoCustomReceiverInAppData.java +74 -0
- package/android/src/main/java/com/retenosdk/RetenoSdkModule.java +96 -2
- package/ios/EventEmitter.swift +1 -1
- package/ios/RetenoSdk.m +6 -0
- package/ios/RetenoSdk.swift +28 -0
- package/lib/commonjs/index.js +67 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/index.js +58 -0
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/index.d.ts +32 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +103 -0
package/android/build.gradle
CHANGED
|
@@ -72,7 +72,7 @@ dependencies {
|
|
|
72
72
|
//noinspection GradleDynamicVersion
|
|
73
73
|
implementation "com.facebook.react:react-native"
|
|
74
74
|
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
|
75
|
-
implementation 'com.reteno:fcm:2.0.
|
|
75
|
+
implementation 'com.reteno:fcm:2.0.4'
|
|
76
76
|
implementation "com.google.firebase:firebase-messaging:23.1.0"
|
|
77
77
|
implementation "com.google.firebase:firebase-messaging-ktx:23.1.0"
|
|
78
78
|
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.2.2'
|
|
@@ -9,6 +9,15 @@
|
|
|
9
9
|
<action android:name="com.reteno.custom-push" />
|
|
10
10
|
</intent-filter>
|
|
11
11
|
</receiver>
|
|
12
|
+
<receiver
|
|
13
|
+
android:name="com.retenosdk.RetenoCustomReceiverInAppData"
|
|
14
|
+
android:enabled="true"
|
|
15
|
+
android:exported="false">
|
|
16
|
+
|
|
17
|
+
<intent-filter>
|
|
18
|
+
<action android:name="com.reteno.custom-inapp-data" />
|
|
19
|
+
</intent-filter>
|
|
20
|
+
</receiver>
|
|
12
21
|
<meta-data
|
|
13
22
|
android:name="com.reteno.Receiver.PushReceived"
|
|
14
23
|
android:value="com.retenosdk.RetenoPushReceiver" />
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
package com.retenosdk;
|
|
2
|
+
|
|
3
|
+
import android.app.Activity;
|
|
4
|
+
import android.content.BroadcastReceiver;
|
|
5
|
+
import android.content.Context;
|
|
6
|
+
import android.content.Intent;
|
|
7
|
+
import android.os.Bundle;
|
|
8
|
+
import android.net.Uri;
|
|
9
|
+
import android.webkit.URLUtil;
|
|
10
|
+
|
|
11
|
+
import com.facebook.react.bridge.ReactContext;
|
|
12
|
+
import com.facebook.react.modules.core.DeviceEventManagerModule;
|
|
13
|
+
import com.facebook.react.bridge.Arguments;
|
|
14
|
+
import com.facebook.react.bridge.WritableMap;
|
|
15
|
+
|
|
16
|
+
public class RetenoCustomReceiverInAppData extends BroadcastReceiver {
|
|
17
|
+
@Override
|
|
18
|
+
public void onReceive(Context context, Intent intent) {
|
|
19
|
+
Bundle extras = intent.getExtras();
|
|
20
|
+
if (extras != null) {
|
|
21
|
+
String url = extras.getString("url");
|
|
22
|
+
|
|
23
|
+
handleCustomData(extras, context);
|
|
24
|
+
|
|
25
|
+
if (url != null && URLUtil.isValidUrl(url)) {
|
|
26
|
+
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
|
|
27
|
+
if (context instanceof Activity) {
|
|
28
|
+
context.startActivity(browserIntent);
|
|
29
|
+
} else {
|
|
30
|
+
browserIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
|
31
|
+
context.startActivity(browserIntent);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
private void handleCustomData(Bundle extras, Context context) {
|
|
38
|
+
WritableMap eventData = Arguments.createMap();
|
|
39
|
+
WritableMap customDataMap = Arguments.createMap();
|
|
40
|
+
if (extras != null) {
|
|
41
|
+
for (String key : extras.keySet()) {
|
|
42
|
+
Object value = extras.get(key);
|
|
43
|
+
if ("inapp_id".equals(key) || "inapp_source".equals(key) || "url".equals(key)) {
|
|
44
|
+
if (value instanceof String) {
|
|
45
|
+
eventData.putString(key, (String) value);
|
|
46
|
+
} else if (value instanceof Integer) {
|
|
47
|
+
eventData.putInt(key, (Integer) value);
|
|
48
|
+
} else if (value instanceof Boolean) {
|
|
49
|
+
eventData.putBoolean(key, (Boolean) value);
|
|
50
|
+
} else if (value instanceof Double) {
|
|
51
|
+
eventData.putDouble(key, (Double) value);
|
|
52
|
+
}
|
|
53
|
+
} else {
|
|
54
|
+
if (value instanceof String) {
|
|
55
|
+
customDataMap.putString(key, (String) value);
|
|
56
|
+
} else if (value instanceof Integer) {
|
|
57
|
+
customDataMap.putInt(key, (Integer) value);
|
|
58
|
+
} else if (value instanceof Boolean) {
|
|
59
|
+
customDataMap.putBoolean(key, (Boolean) value);
|
|
60
|
+
} else if (value instanceof Double) {
|
|
61
|
+
customDataMap.putDouble(key, (Double) value);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
eventData.putMap("customData", customDataMap);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
ReactContext reactContext = ((RetenoReactNativeApplication) context.getApplicationContext())
|
|
70
|
+
.getReactContext();
|
|
71
|
+
reactContext.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)
|
|
72
|
+
.emit("reteno-in-app-custom-data-received", eventData);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
@@ -20,14 +20,19 @@ import com.facebook.react.bridge.WritableNativeMap;
|
|
|
20
20
|
import com.facebook.react.bridge.WritableArray;
|
|
21
21
|
import com.facebook.react.modules.core.DeviceEventManagerModule;
|
|
22
22
|
import com.reteno.core.RetenoApplication;
|
|
23
|
+
import com.reteno.core.data.remote.model.recommendation.get.Recoms;
|
|
23
24
|
import com.reteno.core.domain.model.user.User;
|
|
24
25
|
import com.reteno.core.domain.model.user.UserAttributesAnonymous;
|
|
25
26
|
import com.reteno.core.domain.model.recommendation.get.RecomRequest;
|
|
26
|
-
import com.reteno.core.data.remote.model.recommendation.get.Recoms;
|
|
27
|
-
import com.reteno.core.features.recommendation.GetRecommendationResponseCallback;
|
|
28
27
|
import com.reteno.core.domain.model.recommendation.post.RecomEvent;
|
|
29
28
|
import com.reteno.core.domain.model.recommendation.post.RecomEventType;
|
|
30
29
|
import com.reteno.core.domain.model.recommendation.post.RecomEvents;
|
|
30
|
+
import com.reteno.core.view.iam.callback.InAppData;
|
|
31
|
+
import com.reteno.core.view.iam.callback.InAppCloseData;
|
|
32
|
+
import com.reteno.core.view.iam.callback.InAppErrorData;
|
|
33
|
+
import com.reteno.core.view.iam.callback.InAppLifecycleCallback;
|
|
34
|
+
import com.reteno.core.features.recommendation.GetRecommendationResponseCallback;
|
|
35
|
+
|
|
31
36
|
|
|
32
37
|
import java.util.ArrayList;
|
|
33
38
|
import java.util.List;
|
|
@@ -187,6 +192,18 @@ public class RetenoSdkModule extends ReactContextBaseJavaModule {
|
|
|
187
192
|
}
|
|
188
193
|
}
|
|
189
194
|
|
|
195
|
+
@ReactMethod
|
|
196
|
+
public void pauseInAppMessages(Boolean isPaused, Promise promise) {
|
|
197
|
+
try {
|
|
198
|
+
((RetenoApplication) this.context.getCurrentActivity().getApplication())
|
|
199
|
+
.getRetenoInstance()
|
|
200
|
+
.pauseInAppMessages(isPaused);
|
|
201
|
+
promise.resolve(true);
|
|
202
|
+
} catch (Exception e) {
|
|
203
|
+
promise.reject("Reteno Android SDK pauseInAppMessages Error", e);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
|
|
190
207
|
@ReactMethod
|
|
191
208
|
public void updatePushPermissionStatusAndroid(Promise promise) {
|
|
192
209
|
try {
|
|
@@ -198,6 +215,83 @@ public class RetenoSdkModule extends ReactContextBaseJavaModule {
|
|
|
198
215
|
}
|
|
199
216
|
}
|
|
200
217
|
|
|
218
|
+
private void sendEventToJS(String eventName, WritableMap eventData) {
|
|
219
|
+
ReactContext reactContext = ((RetenoReactNativeApplication) this.context.getApplicationContext())
|
|
220
|
+
.getReactContext();
|
|
221
|
+
reactContext.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)
|
|
222
|
+
.emit(eventName, eventData);
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
private InAppLifecycleCallback inAppLifecycleCallback;
|
|
226
|
+
|
|
227
|
+
@ReactMethod
|
|
228
|
+
public void setInAppLifecycleCallback(Promise promise) {
|
|
229
|
+
try {
|
|
230
|
+
inAppLifecycleCallback = new InAppLifecycleCallback() {
|
|
231
|
+
@Override
|
|
232
|
+
public void beforeDisplay(@NonNull InAppData inAppData) {
|
|
233
|
+
WritableMap eventData = Arguments.createMap();
|
|
234
|
+
eventData.putString("source", inAppData.getSource().toString());
|
|
235
|
+
eventData.putString("id", inAppData.getId());
|
|
236
|
+
sendEventToJS("reteno-before-in-app-display", eventData);
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
@Override
|
|
240
|
+
public void onDisplay(@NonNull InAppData inAppData) {
|
|
241
|
+
WritableMap eventData = Arguments.createMap();
|
|
242
|
+
eventData.putString("source", inAppData.getSource().toString());
|
|
243
|
+
eventData.putString("id", inAppData.getId());
|
|
244
|
+
sendEventToJS("reteno-on-in-app-display", eventData);
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
@Override
|
|
248
|
+
public void beforeClose(@NonNull InAppCloseData closeData) {
|
|
249
|
+
WritableMap eventData = Arguments.createMap();
|
|
250
|
+
eventData.putString("source", closeData.getSource().toString());
|
|
251
|
+
eventData.putString("id", closeData.getId());
|
|
252
|
+
eventData.putString("closeAction", closeData.getCloseAction().toString());
|
|
253
|
+
sendEventToJS("reteno-before-in-app-close", eventData);
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
@Override
|
|
257
|
+
public void afterClose(@NonNull InAppCloseData closeData) {
|
|
258
|
+
WritableMap eventData = Arguments.createMap();
|
|
259
|
+
eventData.putString("source", closeData.getSource().toString());
|
|
260
|
+
eventData.putString("id", closeData.getId());
|
|
261
|
+
eventData.putString("closeAction", closeData.getCloseAction().toString());
|
|
262
|
+
sendEventToJS("reteno-after-in-app-close", eventData);
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
@Override
|
|
266
|
+
public void onError(@NonNull InAppErrorData errorData) {
|
|
267
|
+
WritableMap eventData = Arguments.createMap();
|
|
268
|
+
eventData.putString("source", errorData.getSource().toString());
|
|
269
|
+
eventData.putString("id", errorData.getId());
|
|
270
|
+
eventData.putString("errorMessage", errorData.getErrorMessage());
|
|
271
|
+
sendEventToJS("reteno-on-in-app-error", eventData);
|
|
272
|
+
}
|
|
273
|
+
};
|
|
274
|
+
((RetenoApplication) this.context.getCurrentActivity().getApplication())
|
|
275
|
+
.getRetenoInstance().setInAppLifecycleCallback(inAppLifecycleCallback);
|
|
276
|
+
promise.resolve(true);
|
|
277
|
+
} catch (Exception e) {
|
|
278
|
+
promise.reject("Reteno Android SDK setInAppLifecycleCallback Error", e);
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
@ReactMethod
|
|
283
|
+
public void removeInAppLifecycleCallback(Promise promise) {
|
|
284
|
+
try {
|
|
285
|
+
if (inAppLifecycleCallback != null) {
|
|
286
|
+
((RetenoApplication) this.context.getCurrentActivity().getApplication()).getRetenoInstance().setInAppLifecycleCallback(null);
|
|
287
|
+
inAppLifecycleCallback = null;
|
|
288
|
+
}
|
|
289
|
+
promise.resolve(true);
|
|
290
|
+
} catch (Exception e) {
|
|
291
|
+
promise.reject("Reteno Android SDK removeInAppLifecycleCallback Error", e);
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
|
|
201
295
|
private List<String> convertReadableArrayToStringList(ReadableArray array) {
|
|
202
296
|
List<String> list = new ArrayList<>();
|
|
203
297
|
for (int i = 0; i < array.size(); i++) {
|
package/ios/EventEmitter.swift
CHANGED
|
@@ -19,7 +19,7 @@ class EventEmitter {
|
|
|
19
19
|
|
|
20
20
|
/// All Events which must be support by React Native.
|
|
21
21
|
lazy var allEvents: [String] = {
|
|
22
|
-
var allEventNames: [String] = ["reteno-push-received"]
|
|
22
|
+
var allEventNames: [String] = ["reteno-push-received", "reteno-in-app-custom-data-received", "reteno-before-in-app-display", "reteno-on-in-app-display", "reteno-before-in-app-close", "reteno-after-in-app-close", "reteno-on-in-app-error"]
|
|
23
23
|
|
|
24
24
|
// Append all events here
|
|
25
25
|
|
package/ios/RetenoSdk.m
CHANGED
|
@@ -24,6 +24,12 @@ RCT_EXTERN_METHOD(setAnonymousUserAttributes:(NSDictionary*)payload
|
|
|
24
24
|
withResolver:(RCTPromiseResolveBlock)resolve
|
|
25
25
|
withRejecter:(RCTPromiseRejectBlock)reject)
|
|
26
26
|
|
|
27
|
+
RCT_EXTERN_METHOD(pauseInAppMessages:(BOOL)isPaused
|
|
28
|
+
withResolver:(RCTPromiseResolveBlock)resolve
|
|
29
|
+
withRejecter:(RCTPromiseRejectBlock)reject)
|
|
30
|
+
|
|
31
|
+
RCT_EXTERN_METHOD(setInAppLifecycleCallback)
|
|
32
|
+
|
|
27
33
|
RCT_EXTERN_METHOD(getRecommendations:(NSDictionary*)payload
|
|
28
34
|
withResolver:(RCTPromiseResolveBlock)resolve
|
|
29
35
|
withRejecter:(RCTPromiseRejectBlock)reject)
|
package/ios/RetenoSdk.swift
CHANGED
|
@@ -99,6 +99,34 @@ open class RetenoSdk: RCTEventEmitter {
|
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
101
|
|
|
102
|
+
@objc(pauseInAppMessages:withResolver:withRejecter:)
|
|
103
|
+
func pauseInAppMessages(isPaused: Bool, resolve:RCTPromiseResolveBlock,reject:RCTPromiseRejectBlock) -> Void {
|
|
104
|
+
Reteno.pauseInAppMessages(isPaused: isPaused);
|
|
105
|
+
resolve(true);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
@objc(setInAppLifecycleCallback)
|
|
109
|
+
func setInAppLifecycleCallback() {
|
|
110
|
+
Reteno.addInAppStatusHandler { inAppMessageStatus in
|
|
111
|
+
switch inAppMessageStatus {
|
|
112
|
+
case .inAppShouldBeDisplayed:
|
|
113
|
+
self.sendEvent(withName: "reteno-before-in-app-display", body: nil)
|
|
114
|
+
case .inAppIsDisplayed:
|
|
115
|
+
self.sendEvent(withName: "reteno-on-in-app-display", body: nil)
|
|
116
|
+
case .inAppShouldBeClosed(let action):
|
|
117
|
+
self.sendEvent(withName: "reteno-before-in-app-close", body: ["action": action])
|
|
118
|
+
Reteno.addLinkHandler { linkInfo in
|
|
119
|
+
self.sendEvent(withName: "reteno-in-app-custom-data-received", body: ["customData": linkInfo.customData])
|
|
120
|
+
UIApplication.shared.open(linkInfo.url)
|
|
121
|
+
}
|
|
122
|
+
case .inAppIsClosed(let action):
|
|
123
|
+
self.sendEvent(withName: "reteno-after-in-app-close", body: ["action": action])
|
|
124
|
+
case .inAppReceivedError(let error):
|
|
125
|
+
self.sendEvent(withName: "reteno-on-in-app-error", body: ["error": error])
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
|
|
102
130
|
@objc(getRecommendations:withResolver:withRejecter:)
|
|
103
131
|
func getRecommendations(payload: NSDictionary, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {
|
|
104
132
|
guard let recomVariantId = payload["recomVariantId"] as? String,
|
package/lib/commonjs/index.js
CHANGED
|
@@ -4,15 +4,24 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.CustomEventTypes = void 0;
|
|
7
|
+
exports.addInAppMessageCustomDataHandler = addInAppMessageCustomDataHandler;
|
|
8
|
+
exports.afterInAppCloseHandler = afterInAppCloseHandler;
|
|
9
|
+
exports.beforeInAppCloseHandler = beforeInAppCloseHandler;
|
|
10
|
+
exports.beforeInAppDisplayHandler = beforeInAppDisplayHandler;
|
|
7
11
|
exports.forcePushData = forcePushData;
|
|
8
12
|
exports.getInitialNotification = getInitialNotification;
|
|
9
13
|
exports.getRecommendations = getRecommendations;
|
|
10
14
|
exports.logEvent = logEvent;
|
|
11
15
|
exports.logRecommendationEvent = logRecommendationEvent;
|
|
12
16
|
exports.logScreenView = logScreenView;
|
|
17
|
+
exports.onInAppDisplayHandler = onInAppDisplayHandler;
|
|
18
|
+
exports.onInAppErrorHandler = onInAppErrorHandler;
|
|
19
|
+
exports.pauseInAppMessages = pauseInAppMessages;
|
|
13
20
|
exports.registerForRemoteNotifications = registerForRemoteNotifications;
|
|
21
|
+
exports.removeInAppLifecycleCallback = removeInAppLifecycleCallback;
|
|
14
22
|
exports.setAnonymousUserAttributes = setAnonymousUserAttributes;
|
|
15
23
|
exports.setDeviceToken = setDeviceToken;
|
|
24
|
+
exports.setInAppLifecycleCallback = setInAppLifecycleCallback;
|
|
16
25
|
exports.setOnRetenoPushReceivedListener = setOnRetenoPushReceivedListener;
|
|
17
26
|
exports.setUserAttributes = setUserAttributes;
|
|
18
27
|
exports.updatePushPermissionStatusAndroid = updatePushPermissionStatusAndroid;
|
|
@@ -57,6 +66,60 @@ const eventEmitter = _reactNative.Platform.select({
|
|
|
57
66
|
function setOnRetenoPushReceivedListener(listener) {
|
|
58
67
|
return eventEmitter.addListener('reteno-push-received', listener);
|
|
59
68
|
}
|
|
69
|
+
function setInAppLifecycleCallback() {
|
|
70
|
+
RetenoSdk.setInAppLifecycleCallback();
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Android Only
|
|
75
|
+
*/
|
|
76
|
+
function removeInAppLifecycleCallback() {
|
|
77
|
+
if (_reactNative.Platform.OS === 'android') {
|
|
78
|
+
RetenoSdk.removeInAppLifecycleCallback();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
function beforeInAppDisplayHandler(callback) {
|
|
82
|
+
return eventEmitter.addListener('reteno-before-in-app-display', data => {
|
|
83
|
+
if (callback && typeof callback === 'function') {
|
|
84
|
+
callback(data);
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
function onInAppDisplayHandler(callback) {
|
|
89
|
+
return eventEmitter.addListener('reteno-on-in-app-display', data => {
|
|
90
|
+
if (callback && typeof callback === 'function') {
|
|
91
|
+
callback(data);
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
function beforeInAppCloseHandler(callback) {
|
|
96
|
+
return eventEmitter.addListener('reteno-before-in-app-close', data => {
|
|
97
|
+
if (callback && typeof callback === 'function') {
|
|
98
|
+
callback(data);
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
function afterInAppCloseHandler(callback) {
|
|
103
|
+
return eventEmitter.addListener('reteno-after-in-app-close', data => {
|
|
104
|
+
if (callback && typeof callback === 'function') {
|
|
105
|
+
callback(data);
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
function onInAppErrorHandler(callback) {
|
|
110
|
+
return eventEmitter.addListener('reteno-on-in-app-error', data => {
|
|
111
|
+
if (callback && typeof callback === 'function') {
|
|
112
|
+
callback(data);
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
function addInAppMessageCustomDataHandler(callback) {
|
|
117
|
+
return eventEmitter.addListener('reteno-in-app-custom-data-received', data => {
|
|
118
|
+
if (callback && typeof callback === 'function') {
|
|
119
|
+
callback(data);
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
}
|
|
60
123
|
|
|
61
124
|
/**
|
|
62
125
|
* Log event
|
|
@@ -87,6 +150,10 @@ function registerForRemoteNotifications() {
|
|
|
87
150
|
function setAnonymousUserAttributes(payload) {
|
|
88
151
|
return RetenoSdk.setAnonymousUserAttributes(payload);
|
|
89
152
|
}
|
|
153
|
+
function pauseInAppMessages(isPaused) {
|
|
154
|
+
return RetenoSdk.pauseInAppMessages(isPaused);
|
|
155
|
+
}
|
|
156
|
+
|
|
90
157
|
/**
|
|
91
158
|
*
|
|
92
159
|
* Reteno caches all events (events, device data, user information, user behavior, screen tracking, push statuses, etc) locally into database
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["LINKING_ERROR","Platform","select","ios","default","CustomEventTypes","RetenoSdk","NativeModules","Proxy","get","Error","setDeviceToken","deviceToken","setUserAttributes","payload","externalUserId","length","getInitialNotification","getRecommendations","logRecommendationEvent","eventEmitter","NativeEventEmitter","android","DeviceEventEmitter","setOnRetenoPushReceivedListener","listener","addListener","logEvent","eventName","date","parameters","forcePush","registerForRemoteNotifications","
|
|
1
|
+
{"version":3,"names":["LINKING_ERROR","Platform","select","ios","default","CustomEventTypes","RetenoSdk","NativeModules","Proxy","get","Error","setDeviceToken","deviceToken","setUserAttributes","payload","externalUserId","length","getInitialNotification","getRecommendations","logRecommendationEvent","eventEmitter","NativeEventEmitter","android","DeviceEventEmitter","setOnRetenoPushReceivedListener","listener","addListener","setInAppLifecycleCallback","removeInAppLifecycleCallback","OS","beforeInAppDisplayHandler","callback","data","onInAppDisplayHandler","beforeInAppCloseHandler","afterInAppCloseHandler","onInAppErrorHandler","addInAppMessageCustomDataHandler","logEvent","eventName","date","parameters","forcePush","registerForRemoteNotifications","setAnonymousUserAttributes","pauseInAppMessages","isPaused","forcePushData","Date","toISOString","logScreenView","screenName","screenView","name","value","updatePushPermissionStatusAndroid","Promise","resolve","undefined"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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"}
|
package/lib/module/index.js
CHANGED
|
@@ -38,6 +38,60 @@ const eventEmitter = Platform.select({
|
|
|
38
38
|
export function setOnRetenoPushReceivedListener(listener) {
|
|
39
39
|
return eventEmitter.addListener('reteno-push-received', listener);
|
|
40
40
|
}
|
|
41
|
+
export function setInAppLifecycleCallback() {
|
|
42
|
+
RetenoSdk.setInAppLifecycleCallback();
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Android Only
|
|
47
|
+
*/
|
|
48
|
+
export function removeInAppLifecycleCallback() {
|
|
49
|
+
if (Platform.OS === 'android') {
|
|
50
|
+
RetenoSdk.removeInAppLifecycleCallback();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
export function beforeInAppDisplayHandler(callback) {
|
|
54
|
+
return eventEmitter.addListener('reteno-before-in-app-display', data => {
|
|
55
|
+
if (callback && typeof callback === 'function') {
|
|
56
|
+
callback(data);
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
export function onInAppDisplayHandler(callback) {
|
|
61
|
+
return eventEmitter.addListener('reteno-on-in-app-display', data => {
|
|
62
|
+
if (callback && typeof callback === 'function') {
|
|
63
|
+
callback(data);
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
export function beforeInAppCloseHandler(callback) {
|
|
68
|
+
return eventEmitter.addListener('reteno-before-in-app-close', data => {
|
|
69
|
+
if (callback && typeof callback === 'function') {
|
|
70
|
+
callback(data);
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
export function afterInAppCloseHandler(callback) {
|
|
75
|
+
return eventEmitter.addListener('reteno-after-in-app-close', data => {
|
|
76
|
+
if (callback && typeof callback === 'function') {
|
|
77
|
+
callback(data);
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
export function onInAppErrorHandler(callback) {
|
|
82
|
+
return eventEmitter.addListener('reteno-on-in-app-error', data => {
|
|
83
|
+
if (callback && typeof callback === 'function') {
|
|
84
|
+
callback(data);
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
export function addInAppMessageCustomDataHandler(callback) {
|
|
89
|
+
return eventEmitter.addListener('reteno-in-app-custom-data-received', data => {
|
|
90
|
+
if (callback && typeof callback === 'function') {
|
|
91
|
+
callback(data);
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
}
|
|
41
95
|
|
|
42
96
|
/**
|
|
43
97
|
* Log event
|
|
@@ -68,6 +122,10 @@ export function registerForRemoteNotifications() {
|
|
|
68
122
|
export function setAnonymousUserAttributes(payload) {
|
|
69
123
|
return RetenoSdk.setAnonymousUserAttributes(payload);
|
|
70
124
|
}
|
|
125
|
+
export function pauseInAppMessages(isPaused) {
|
|
126
|
+
return RetenoSdk.pauseInAppMessages(isPaused);
|
|
127
|
+
}
|
|
128
|
+
|
|
71
129
|
/**
|
|
72
130
|
*
|
|
73
131
|
* Reteno caches all events (events, device data, user information, user behavior, screen tracking, push statuses, etc) locally into database
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DeviceEventEmitter","NativeEventEmitter","NativeModules","Platform","LINKING_ERROR","select","ios","default","CustomEventTypes","RetenoSdk","Proxy","get","Error","setDeviceToken","deviceToken","setUserAttributes","payload","externalUserId","length","getInitialNotification","getRecommendations","logRecommendationEvent","eventEmitter","android","setOnRetenoPushReceivedListener","listener","addListener","logEvent","eventName","date","parameters","forcePush","registerForRemoteNotifications","
|
|
1
|
+
{"version":3,"names":["DeviceEventEmitter","NativeEventEmitter","NativeModules","Platform","LINKING_ERROR","select","ios","default","CustomEventTypes","RetenoSdk","Proxy","get","Error","setDeviceToken","deviceToken","setUserAttributes","payload","externalUserId","length","getInitialNotification","getRecommendations","logRecommendationEvent","eventEmitter","android","setOnRetenoPushReceivedListener","listener","addListener","setInAppLifecycleCallback","removeInAppLifecycleCallback","OS","beforeInAppDisplayHandler","callback","data","onInAppDisplayHandler","beforeInAppCloseHandler","afterInAppCloseHandler","onInAppErrorHandler","addInAppMessageCustomDataHandler","logEvent","eventName","date","parameters","forcePush","registerForRemoteNotifications","setAnonymousUserAttributes","pauseInAppMessages","isPaused","forcePushData","Date","toISOString","logScreenView","screenName","screenView","name","value","updatePushPermissionStatusAndroid","Promise","resolve","undefined"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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"}
|
|
@@ -37,6 +37,26 @@ export type CustomEventParameter = {
|
|
|
37
37
|
name: string;
|
|
38
38
|
value?: string;
|
|
39
39
|
};
|
|
40
|
+
export type InAppDisplayData = {
|
|
41
|
+
id?: string;
|
|
42
|
+
source?: 'DISPLAY_RULES' | 'PUSH_NOTIFICATION';
|
|
43
|
+
};
|
|
44
|
+
export type InAppCloseData = {
|
|
45
|
+
id?: string;
|
|
46
|
+
source?: 'DISPLAY_RULES' | 'PUSH_NOTIFICATION';
|
|
47
|
+
closeAction?: 'OPEN_URL' | 'BUTTON' | 'CLOSE_BUTTON';
|
|
48
|
+
};
|
|
49
|
+
export type InAppErrorData = {
|
|
50
|
+
id?: string;
|
|
51
|
+
source?: 'DISPLAY_RULES' | 'PUSH_NOTIFICATION';
|
|
52
|
+
errorMessage?: string;
|
|
53
|
+
};
|
|
54
|
+
export type InAppCustomData = {
|
|
55
|
+
customData?: Record<string, any>;
|
|
56
|
+
inapp_id?: string;
|
|
57
|
+
inapp_source?: 'DISPLAY_RULES' | 'PUSH_NOTIFICATION';
|
|
58
|
+
url?: string;
|
|
59
|
+
};
|
|
40
60
|
export type RecommendationsPayload = {
|
|
41
61
|
recomVariantId: string;
|
|
42
62
|
productIds: string[];
|
|
@@ -61,6 +81,17 @@ export declare function getInitialNotification(): Promise<any>;
|
|
|
61
81
|
export declare function getRecommendations(payload: RecommendationsPayload): Promise<any>;
|
|
62
82
|
export declare function logRecommendationEvent(payload: RecommendationEventPayload): Promise<void>;
|
|
63
83
|
export declare function setOnRetenoPushReceivedListener(listener: (event: any) => void): import("react-native").EmitterSubscription;
|
|
84
|
+
export declare function setInAppLifecycleCallback(): void;
|
|
85
|
+
/**
|
|
86
|
+
* Android Only
|
|
87
|
+
*/
|
|
88
|
+
export declare function removeInAppLifecycleCallback(): void;
|
|
89
|
+
export declare function beforeInAppDisplayHandler(callback: (data: InAppDisplayData) => void): import("react-native").EmitterSubscription;
|
|
90
|
+
export declare function onInAppDisplayHandler(callback: (data: InAppDisplayData) => void): import("react-native").EmitterSubscription;
|
|
91
|
+
export declare function beforeInAppCloseHandler(callback: (data: InAppCloseData) => void): import("react-native").EmitterSubscription;
|
|
92
|
+
export declare function afterInAppCloseHandler(callback: (data: InAppCloseData) => void): import("react-native").EmitterSubscription;
|
|
93
|
+
export declare function onInAppErrorHandler(callback: (data: InAppErrorData) => void): import("react-native").EmitterSubscription;
|
|
94
|
+
export declare function addInAppMessageCustomDataHandler(callback: (data: InAppCustomData) => void): import("react-native").EmitterSubscription;
|
|
64
95
|
/**
|
|
65
96
|
* Log event
|
|
66
97
|
* @param eventName name of the event
|
|
@@ -74,6 +105,7 @@ export declare function logEvent(eventName: string, date: string, parameters: Cu
|
|
|
74
105
|
*/
|
|
75
106
|
export declare function registerForRemoteNotifications(): void;
|
|
76
107
|
export declare function setAnonymousUserAttributes(payload: AnonymousUserAttributes): Promise<void>;
|
|
108
|
+
export declare function pauseInAppMessages(isPaused: boolean): Promise<void>;
|
|
77
109
|
/**
|
|
78
110
|
*
|
|
79
111
|
* Reteno caches all events (events, device data, user information, user behavior, screen tracking, push statuses, etc) locally into database
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAaA,oBAAY,gBAAgB;IAC1B,UAAU,eAAe;CAC1B;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAAC;AAEF,KAAK,KAAK,GAAG;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,MAAM,GAAG,KAAK,EAAE,CAAC;AAEtB,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,IAAI,CACxC,cAAc,EACd,WAAW,GAAG,UAAU,GAAG,cAAc,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,CAC9E,CAAC;AAEF,MAAM,MAAM,IAAI,GAAG;IACjB,cAAc,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;IACvC,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACnC,iBAAiB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACpC,iBAAiB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,eAAe,GAAG,mBAAmB,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,eAAe,GAAG,mBAAmB,CAAC;IAC/C,WAAW,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,cAAc,CAAC;CACtD,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,eAAe,GAAG,mBAAmB,CAAC;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,eAAe,GAAG,mBAAmB,CAAC;IACrD,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,CAAC;IACnC,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnC,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAE9B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAaF,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjE;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,IAAI,CAAC,CAQf;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAAC,GAAG,CAAC,CAErD;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,GAAG,CAAC,CAEd;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,IAAI,CAAC,CAEf;AAQD,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,8CAG/B;AAED,wBAAgB,yBAAyB,SAExC;AAED;;GAEG;AACH,wBAAgB,4BAA4B,SAI3C;AAED,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,8CAO3C;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,8CAO3C;AAED,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,8CAOzC;AAED,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,8CAOzC;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,8CAM3E;AAED,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,8CAU1C;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CACtB,SAAS,EAAE,MAAM,EAEjB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,oBAAoB,EAAE,EAClC,SAAS,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC,IAAI,CAAC,CAOf;AAED;;GAEG;AACH,wBAAgB,8BAA8B,SAI7C;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnE;AAED;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAK7C;AACD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,iBAI/C;AAED;;;;;;;GAOG;AACH,wBAAgB,iCAAiC,IAAI,OAAO,CAAC,IAAI,CAAC,CAKjE"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -62,6 +62,30 @@ export type CustomEventParameter = {
|
|
|
62
62
|
value?: string;
|
|
63
63
|
};
|
|
64
64
|
|
|
65
|
+
export type InAppDisplayData = {
|
|
66
|
+
id?: string;
|
|
67
|
+
source?: 'DISPLAY_RULES' | 'PUSH_NOTIFICATION';
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
export type InAppCloseData = {
|
|
71
|
+
id?: string;
|
|
72
|
+
source?: 'DISPLAY_RULES' | 'PUSH_NOTIFICATION';
|
|
73
|
+
closeAction?: 'OPEN_URL' | 'BUTTON' | 'CLOSE_BUTTON';
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
export type InAppErrorData = {
|
|
77
|
+
id?: string;
|
|
78
|
+
source?: 'DISPLAY_RULES' | 'PUSH_NOTIFICATION';
|
|
79
|
+
errorMessage?: string;
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
export type InAppCustomData = {
|
|
83
|
+
customData?: Record<string, any>;
|
|
84
|
+
inapp_id?: string;
|
|
85
|
+
inapp_source?: 'DISPLAY_RULES' | 'PUSH_NOTIFICATION';
|
|
86
|
+
url?: string;
|
|
87
|
+
};
|
|
88
|
+
|
|
65
89
|
export type RecommendationsPayload = {
|
|
66
90
|
recomVariantId: string;
|
|
67
91
|
productIds: string[];
|
|
@@ -137,6 +161,80 @@ export function setOnRetenoPushReceivedListener(
|
|
|
137
161
|
return eventEmitter.addListener('reteno-push-received', listener);
|
|
138
162
|
}
|
|
139
163
|
|
|
164
|
+
export function setInAppLifecycleCallback() {
|
|
165
|
+
RetenoSdk.setInAppLifecycleCallback();
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
/**
|
|
169
|
+
* Android Only
|
|
170
|
+
*/
|
|
171
|
+
export function removeInAppLifecycleCallback() {
|
|
172
|
+
if (Platform.OS === 'android') {
|
|
173
|
+
RetenoSdk.removeInAppLifecycleCallback();
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
export function beforeInAppDisplayHandler(
|
|
178
|
+
callback: (data: InAppDisplayData) => void
|
|
179
|
+
) {
|
|
180
|
+
return eventEmitter.addListener('reteno-before-in-app-display', (data) => {
|
|
181
|
+
if (callback && typeof callback === 'function') {
|
|
182
|
+
callback(data);
|
|
183
|
+
}
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
export function onInAppDisplayHandler(
|
|
188
|
+
callback: (data: InAppDisplayData) => void
|
|
189
|
+
) {
|
|
190
|
+
return eventEmitter.addListener('reteno-on-in-app-display', (data) => {
|
|
191
|
+
if (callback && typeof callback === 'function') {
|
|
192
|
+
callback(data);
|
|
193
|
+
}
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
export function beforeInAppCloseHandler(
|
|
198
|
+
callback: (data: InAppCloseData) => void
|
|
199
|
+
) {
|
|
200
|
+
return eventEmitter.addListener('reteno-before-in-app-close', (data) => {
|
|
201
|
+
if (callback && typeof callback === 'function') {
|
|
202
|
+
callback(data);
|
|
203
|
+
}
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
export function afterInAppCloseHandler(
|
|
208
|
+
callback: (data: InAppCloseData) => void
|
|
209
|
+
) {
|
|
210
|
+
return eventEmitter.addListener('reteno-after-in-app-close', (data) => {
|
|
211
|
+
if (callback && typeof callback === 'function') {
|
|
212
|
+
callback(data);
|
|
213
|
+
}
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
export function onInAppErrorHandler(callback: (data: InAppErrorData) => void) {
|
|
218
|
+
return eventEmitter.addListener('reteno-on-in-app-error', (data) => {
|
|
219
|
+
if (callback && typeof callback === 'function') {
|
|
220
|
+
callback(data);
|
|
221
|
+
}
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
export function addInAppMessageCustomDataHandler(
|
|
226
|
+
callback: (data: InAppCustomData) => void
|
|
227
|
+
) {
|
|
228
|
+
return eventEmitter.addListener(
|
|
229
|
+
'reteno-in-app-custom-data-received',
|
|
230
|
+
(data) => {
|
|
231
|
+
if (callback && typeof callback === 'function') {
|
|
232
|
+
callback(data);
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
);
|
|
236
|
+
}
|
|
237
|
+
|
|
140
238
|
/**
|
|
141
239
|
* Log event
|
|
142
240
|
* @param eventName name of the event
|
|
@@ -173,6 +271,11 @@ export function setAnonymousUserAttributes(
|
|
|
173
271
|
): Promise<void> {
|
|
174
272
|
return RetenoSdk.setAnonymousUserAttributes(payload);
|
|
175
273
|
}
|
|
274
|
+
|
|
275
|
+
export function pauseInAppMessages(isPaused: boolean): Promise<void> {
|
|
276
|
+
return RetenoSdk.pauseInAppMessages(isPaused);
|
|
277
|
+
}
|
|
278
|
+
|
|
176
279
|
/**
|
|
177
280
|
*
|
|
178
281
|
* Reteno caches all events (events, device data, user information, user behavior, screen tracking, push statuses, etc) locally into database
|