react-native-gleapsdk 7.0.0 → 7.0.3
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 +4 -4
- package/android/src/main/java/com/reactnativegleapsdk/GleapsdkModule.java +39 -11
- package/ios/Gleapsdk.m +29 -0
- package/ios/Gleapsdk.xcodeproj/project.xcworkspace/xcuserdata/lukasboehler.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/index.d.ts +4 -1
- package/package.json +1 -1
- package/react-native-gleapsdk.podspec +1 -1
- package/src/index.tsx +4 -1
package/android/build.gradle
CHANGED
|
@@ -3,7 +3,6 @@ buildscript {
|
|
|
3
3
|
repositories {
|
|
4
4
|
google()
|
|
5
5
|
mavenCentral()
|
|
6
|
-
jcenter()
|
|
7
6
|
}
|
|
8
7
|
|
|
9
8
|
dependencies {
|
|
@@ -19,10 +18,10 @@ def safeExtGet(prop, fallback) {
|
|
|
19
18
|
}
|
|
20
19
|
|
|
21
20
|
android {
|
|
22
|
-
compileSdkVersion safeExtGet('Gleapsdk_compileSdkVersion',
|
|
21
|
+
compileSdkVersion safeExtGet('Gleapsdk_compileSdkVersion', 31)
|
|
23
22
|
defaultConfig {
|
|
24
23
|
minSdkVersion safeExtGet('Gleapsdk_minSdkVersion', 16)
|
|
25
|
-
targetSdkVersion safeExtGet('Gleapsdk_targetSdkVersion',
|
|
24
|
+
targetSdkVersion safeExtGet('Gleapsdk_targetSdkVersion', 31)
|
|
26
25
|
versionCode 1
|
|
27
26
|
versionName "1.0"
|
|
28
27
|
|
|
@@ -55,5 +54,6 @@ repositories {
|
|
|
55
54
|
dependencies {
|
|
56
55
|
//noinspection GradleDynamicVersion
|
|
57
56
|
implementation "com.facebook.react:react-native:+"
|
|
58
|
-
implementation group: 'io.gleap', name: 'gleap-android-sdk', version: '7.0.
|
|
57
|
+
implementation group: 'io.gleap', name: 'gleap-android-sdk', version: '7.0.22'
|
|
58
|
+
implementation 'com.google.android.material:material:1.6.1'
|
|
59
59
|
}
|
|
@@ -26,25 +26,25 @@ import java.io.FileOutputStream;
|
|
|
26
26
|
import java.io.OutputStream;
|
|
27
27
|
import java.util.ArrayList;
|
|
28
28
|
import java.util.Base64;
|
|
29
|
-
import java.util.logging.Logger;
|
|
30
29
|
import java.util.regex.Matcher;
|
|
31
30
|
import java.util.regex.Pattern;
|
|
32
31
|
|
|
33
32
|
import io.gleap.APPLICATIONTYPE;
|
|
33
|
+
import io.gleap.GetActivityCallback;
|
|
34
34
|
import io.gleap.Gleap;
|
|
35
35
|
import io.gleap.GleapActivationMethod;
|
|
36
|
+
import io.gleap.GleapLogLevel;
|
|
36
37
|
import io.gleap.GleapUserProperties;
|
|
37
38
|
import io.gleap.PrefillHelper;
|
|
38
39
|
import io.gleap.RequestType;
|
|
39
40
|
import io.gleap.UserSessionController;
|
|
40
|
-
import io.gleap.
|
|
41
|
-
import io.gleap.
|
|
42
|
-
import io.gleap.
|
|
43
|
-
import io.gleap.
|
|
44
|
-
import io.gleap.
|
|
45
|
-
import io.gleap.
|
|
46
|
-
import io.gleap.
|
|
47
|
-
import io.gleap.callbacks.WidgetOpenedCallback;
|
|
41
|
+
import io.gleap.ConfigLoadedCallback;
|
|
42
|
+
import io.gleap.CustomActionCallback;
|
|
43
|
+
import io.gleap.FeedbackFlowStartedCallback;
|
|
44
|
+
import io.gleap.FeedbackSendingFailedCallback;
|
|
45
|
+
import io.gleap.FeedbackSentCallback;
|
|
46
|
+
import io.gleap.WidgetClosedCallback;
|
|
47
|
+
import io.gleap.WidgetOpenedCallback;
|
|
48
48
|
|
|
49
49
|
@ReactModule(name = GleapsdkModule.NAME)
|
|
50
50
|
public class GleapsdkModule extends ReactContextBaseJavaModule implements LifecycleEventListener {
|
|
@@ -112,6 +112,7 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
112
112
|
getReactApplicationContext().getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)
|
|
113
113
|
.emit("configLoaded", jsonObject.toString());
|
|
114
114
|
}
|
|
115
|
+
|
|
115
116
|
}
|
|
116
117
|
});
|
|
117
118
|
|
|
@@ -122,7 +123,7 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
122
123
|
.emit("feedbackSent", message);
|
|
123
124
|
}
|
|
124
125
|
});
|
|
125
|
-
|
|
126
|
+
|
|
126
127
|
Gleap.getInstance().setFeedbackSendingFailedCallback(new FeedbackSendingFailedCallback() {
|
|
127
128
|
@Override
|
|
128
129
|
public void invoke(String message) {
|
|
@@ -700,7 +701,32 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
700
701
|
Gleap.getInstance().setConfigLoadedCallback(configLoadedCallback);
|
|
701
702
|
}
|
|
702
703
|
|
|
703
|
-
|
|
704
|
+
@ReactMethod
|
|
705
|
+
public void disableConsoleLog() {
|
|
706
|
+
Gleap.getInstance().disableConsoleLog();
|
|
707
|
+
}
|
|
708
|
+
|
|
709
|
+
|
|
710
|
+
@ReactMethod
|
|
711
|
+
public void log(String msg) {
|
|
712
|
+
Gleap.getInstance().log(msg);
|
|
713
|
+
}
|
|
714
|
+
|
|
715
|
+
@ReactMethod
|
|
716
|
+
public void logWithLogLevel(String msg, String logLevel) {
|
|
717
|
+
GleapLogLevel ll;
|
|
718
|
+
switch (logLevel) {
|
|
719
|
+
case "WARNING":
|
|
720
|
+
ll = GleapLogLevel.WARNING;
|
|
721
|
+
break;
|
|
722
|
+
case "ERROR":
|
|
723
|
+
ll = GleapLogLevel.ERROR;
|
|
724
|
+
break;
|
|
725
|
+
default:
|
|
726
|
+
ll = GleapLogLevel.INFO;
|
|
727
|
+
}
|
|
728
|
+
Gleap.getInstance().log(msg, ll);
|
|
729
|
+
}
|
|
704
730
|
|
|
705
731
|
private boolean checkAllowedEndings(String fileName) {
|
|
706
732
|
String[] fileType = fileName.split("\\.");
|
|
@@ -777,6 +803,8 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
777
803
|
super.invalidate();
|
|
778
804
|
}
|
|
779
805
|
|
|
806
|
+
|
|
807
|
+
|
|
780
808
|
private Activity getActivitySafe() throws NoUiThreadException {
|
|
781
809
|
Activity activity = getCurrentActivity();
|
|
782
810
|
if (activity == null) {
|
package/ios/Gleapsdk.m
CHANGED
|
@@ -201,6 +201,35 @@ RCT_EXPORT_METHOD(startFeedbackFlow:(NSString *)feedbackFlow andShowBackButton:(
|
|
|
201
201
|
});
|
|
202
202
|
}
|
|
203
203
|
|
|
204
|
+
RCT_EXPORT_METHOD(logWithLogLevel:(NSString *)message andLogLevel:(NSString *)logLevel)
|
|
205
|
+
{
|
|
206
|
+
GleapLogLevel logLevelType = INFO;
|
|
207
|
+
if (logLevel != nil && [logLevel isEqualToString: @"WARNING"]) {
|
|
208
|
+
logLevelType = WARNING;
|
|
209
|
+
}
|
|
210
|
+
if (logLevel != nil && [logLevel isEqualToString: @"ERROR"]) {
|
|
211
|
+
logLevelType = ERROR;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
215
|
+
[Gleap log: message withLogLevel: logLevelType];
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
RCT_EXPORT_METHOD(log:(NSString *)message)
|
|
220
|
+
{
|
|
221
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
222
|
+
[Gleap log: message];
|
|
223
|
+
});
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
RCT_EXPORT_METHOD(disableConsoleLog)
|
|
227
|
+
{
|
|
228
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
229
|
+
[Gleap disableConsoleLog];
|
|
230
|
+
});
|
|
231
|
+
}
|
|
232
|
+
|
|
204
233
|
RCT_EXPORT_METHOD(enableDebugConsoleLog)
|
|
205
234
|
{
|
|
206
235
|
dispatch_async(dispatch_get_main_queue(), ^{
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.tsx"],"names":["LINKING_ERROR","Platform","select","ios","default","GleapSdk","NativeModules","Gleapsdk","Proxy","get","Error","touched","networkLogger","GleapNetworkIntercepter","startNetworkLogging","setUpdatedCallback","requests","getRequests","attachNetworkLog","OS","JSON","stringify","parse","start","stopNetworkLogging","setStopped","callbacks","registerListener","eventType","callback","push","registerCustomAction","customActionCallback","notifyCallback","data","length","i","gleapEmitter","NativeEventEmitter","addListener","config","configJSON","Object","enableNetworkLogs","exp","dataJSON","feedbackAction","isJsonString","str","e","name","removeAllAttachments"],"mappings":"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","sourcesContent":["import { NativeModules, NativeEventEmitter, Platform } from 'react-native';\nimport GleapNetworkIntercepter from './networklogger';\n\nconst LINKING_ERROR =\n `The package 'react-native-gleapsdk' doesn't seem to be linked. Make sure: \\n\\n` +\n Platform.select({ ios: \"- You have run 'pod install'\\n\", default: '' }) +\n '- You rebuilt the app after installing the package\\n' +\n '- You are not using Expo managed workflow\\n';\n\nexport type GleapUserProperty = {\n email?: string;\n name?: string;\n};\n\ntype GleapActivationMethod = 'SHAKE' | 'SCREENSHOT';\n\ntype GleapSdkType = {\n initialize(token: string): void;\n startFeedbackFlow(feedbackFlow: string, showBackButton: boolean): void;\n sendSilentCrashReport(\n description: string,\n severity: 'LOW' | 'MEDIUM' | 'HIGH'\n ): void;\n sendSilentCrashReportWithExcludeData(\n description: string,\n severity: 'LOW' | 'MEDIUM' | 'HIGH',\n excludeData: {\n customData?: Boolean;\n metaData?: Boolean;\n attachments?: Boolean;\n consoleLog?: Boolean;\n networkLogs?: Boolean;\n customEventLog?: Boolean;\n screenshot?: Boolean;\n replays?: Boolean;\n }\n ): void;\n open(): void;\n close(): void;\n isOpened(): boolean;\n identify(userId: string, userProperties: GleapUserProperty): void;\n identifyWithUserHash(\n userId: string,\n userProperties: GleapUserProperty,\n userHash: string\n ): void;\n clearIdentity(): void;\n preFillForm(formData: { [key: string]: string }): void;\n setApiUrl(apiUrl: string): void;\n setFrameUrl(frameUrl: string): void;\n attachCustomData(customData: any): void;\n setCustomData(key: string, value: string): void;\n removeCustomDataForKey(key: string): void;\n clearCustomData(): void;\n registerListener(eventType: string, callback: (data?: any) => void): void;\n setLanguage(language: string): void;\n logEvent(name: string, data: any): void;\n addAttachment(base64file: string, fileName: string): void;\n removeAllAttachments(): void;\n startNetworkLogging(): void;\n stopNetworkLogging(): void;\n enableDebugConsoleLog(): void;\n setActivationMethods(activationMethods: GleapActivationMethod[]): void;\n registerCustomAction(\n customActionCallback: (data: { name: string }) => void\n ): void;\n};\n\nconst GleapSdk = NativeModules.Gleapsdk\n ? NativeModules.Gleapsdk\n : new Proxy(\n {},\n {\n get() {\n throw new Error(LINKING_ERROR);\n },\n }\n );\n\nif (GleapSdk && !GleapSdk.touched) {\n const networkLogger = new GleapNetworkIntercepter();\n\n // Push the network log to the native SDK.\n GleapSdk.startNetworkLogging = () => {\n // Set the callback.\n networkLogger.setUpdatedCallback(() => {\n if (!networkLogger) {\n return;\n }\n\n const requests = networkLogger.getRequests();\n \n if (requests && GleapSdk && typeof GleapSdk.attachNetworkLog !== 'undefined') {\n if (Platform.OS === 'android') {\n GleapSdk.attachNetworkLog(JSON.stringify(requests));\n } else {\n GleapSdk.attachNetworkLog(JSON.parse(JSON.stringify(requests)));\n }\n }\n });\n\n // Start the logger.\n networkLogger.start();\n };\n\n GleapSdk.stopNetworkLogging = () => {\n networkLogger.setStopped(true);\n };\n\n var callbacks: any = {};\n\n GleapSdk.registerListener = (eventType: string, callback: any) => {\n if (!callbacks[eventType]) {\n callbacks[eventType] = [];\n }\n callbacks[eventType].push(callback);\n };\n\n GleapSdk.registerCustomAction = (customActionCallback: any) => {\n GleapSdk.registerListener('customActionTriggered', customActionCallback);\n };\n\n const notifyCallback = function (eventType: string, data?: any) {\n if (callbacks && callbacks[eventType] && callbacks[eventType].length > 0) {\n for (var i = 0; i < callbacks[eventType].length; i++) {\n if (callbacks[eventType][i]) {\n callbacks[eventType][i](data);\n }\n }\n }\n };\n\n const gleapEmitter = new NativeEventEmitter(NativeModules.Gleapsdk);\n\n gleapEmitter.addListener('configLoaded', (config: any) => {\n try {\n const configJSON = config instanceof Object ? config : JSON.parse(config);\n if (configJSON.enableNetworkLogs) {\n GleapSdk.startNetworkLogging();\n }\n notifyCallback('configLoaded', configJSON);\n } catch (exp) { }\n });\n\n gleapEmitter.addListener('feedbackSent', (data) => {\n try {\n const dataJSON = data instanceof Object ? data : JSON.parse(data);\n notifyCallback('feedbackSent', dataJSON);\n } catch (exp) { }\n });\n\n gleapEmitter.addListener('feedbackFlowStarted', (feedbackAction) => {\n notifyCallback('feedbackFlowStarted', feedbackAction);\n });\n\n gleapEmitter.addListener('feedbackSendingFailed', () => {\n notifyCallback('feedbackSendingFailed');\n });\n\n gleapEmitter.addListener('widgetOpened', () => {\n notifyCallback('widgetOpened');\n });\n\n gleapEmitter.addListener('widgetClosed', () => {\n notifyCallback('widgetClosed');\n });\n\n function isJsonString(str: string) {\n try {\n JSON.parse(str);\n } catch (e) {\n return false;\n }\n return true;\n }\n\n gleapEmitter.addListener('customActionTriggered', (data: any) => {\n try {\n if (isJsonString(data)) {\n data = JSON.parse(data);\n }\n const { name } = data;\n if (name) {\n notifyCallback('customActionTriggered', {\n name,\n });\n }\n } catch (exp) { }\n });\n\n GleapSdk.removeAllAttachments();\n GleapSdk.touched = true;\n}\n\nexport default GleapSdk as GleapSdkType;\n"]}
|
|
1
|
+
{"version":3,"sources":["index.tsx"],"names":["LINKING_ERROR","Platform","select","ios","default","GleapSdk","NativeModules","Gleapsdk","Proxy","get","Error","touched","networkLogger","GleapNetworkIntercepter","startNetworkLogging","setUpdatedCallback","requests","getRequests","attachNetworkLog","OS","JSON","stringify","parse","start","stopNetworkLogging","setStopped","callbacks","registerListener","eventType","callback","push","registerCustomAction","customActionCallback","notifyCallback","data","length","i","gleapEmitter","NativeEventEmitter","addListener","config","configJSON","Object","enableNetworkLogs","exp","dataJSON","feedbackAction","isJsonString","str","e","name","removeAllAttachments"],"mappings":"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","sourcesContent":["import { NativeModules, NativeEventEmitter, Platform } from 'react-native';\nimport GleapNetworkIntercepter from './networklogger';\n\nconst LINKING_ERROR =\n `The package 'react-native-gleapsdk' doesn't seem to be linked. Make sure: \\n\\n` +\n Platform.select({ ios: \"- You have run 'pod install'\\n\", default: '' }) +\n '- You rebuilt the app after installing the package\\n' +\n '- You are not using Expo managed workflow\\n';\n\nexport type GleapUserProperty = {\n email?: string;\n name?: string;\n};\n\ntype GleapActivationMethod = 'SHAKE' | 'SCREENSHOT';\n\ntype GleapSdkType = {\n initialize(token: string): void;\n startFeedbackFlow(feedbackFlow: string, showBackButton: boolean): void;\n sendSilentCrashReport(\n description: string,\n severity: 'LOW' | 'MEDIUM' | 'HIGH'\n ): void;\n sendSilentCrashReportWithExcludeData(\n description: string,\n severity: 'LOW' | 'MEDIUM' | 'HIGH',\n excludeData: {\n customData?: Boolean;\n metaData?: Boolean;\n attachments?: Boolean;\n consoleLog?: Boolean;\n networkLogs?: Boolean;\n customEventLog?: Boolean;\n screenshot?: Boolean;\n replays?: Boolean;\n }\n ): void;\n open(): void;\n close(): void;\n isOpened(): boolean;\n identify(userId: string, userProperties: GleapUserProperty): void;\n identifyWithUserHash(\n userId: string,\n userProperties: GleapUserProperty,\n userHash: string\n ): void;\n clearIdentity(): void;\n preFillForm(formData: { [key: string]: string }): void;\n setApiUrl(apiUrl: string): void;\n setFrameUrl(frameUrl: string): void;\n attachCustomData(customData: any): void;\n setCustomData(key: string, value: string): void;\n removeCustomDataForKey(key: string): void;\n clearCustomData(): void;\n registerListener(eventType: string, callback: (data?: any) => void): void;\n setLanguage(language: string): void;\n enableDebugConsoleLog(): void;\n disableConsoleLog(): void;\n log(message: string): void;\n logWithLogLevel(message: string, logLevel: 'INFO' | 'WARNING' | 'ERROR'): void;\n logEvent(name: string, data: any): void;\n addAttachment(base64file: string, fileName: string): void;\n removeAllAttachments(): void;\n startNetworkLogging(): void;\n stopNetworkLogging(): void;\n setActivationMethods(activationMethods: GleapActivationMethod[]): void;\n registerCustomAction(\n customActionCallback: (data: { name: string }) => void\n ): void;\n};\n\nconst GleapSdk = NativeModules.Gleapsdk\n ? NativeModules.Gleapsdk\n : new Proxy(\n {},\n {\n get() {\n throw new Error(LINKING_ERROR);\n },\n }\n );\n\nif (GleapSdk && !GleapSdk.touched) {\n const networkLogger = new GleapNetworkIntercepter();\n\n // Push the network log to the native SDK.\n GleapSdk.startNetworkLogging = () => {\n // Set the callback.\n networkLogger.setUpdatedCallback(() => {\n if (!networkLogger) {\n return;\n }\n\n const requests = networkLogger.getRequests();\n \n if (requests && GleapSdk && typeof GleapSdk.attachNetworkLog !== 'undefined') {\n if (Platform.OS === 'android') {\n GleapSdk.attachNetworkLog(JSON.stringify(requests));\n } else {\n GleapSdk.attachNetworkLog(JSON.parse(JSON.stringify(requests)));\n }\n }\n });\n\n // Start the logger.\n networkLogger.start();\n };\n\n GleapSdk.stopNetworkLogging = () => {\n networkLogger.setStopped(true);\n };\n\n var callbacks: any = {};\n\n GleapSdk.registerListener = (eventType: string, callback: any) => {\n if (!callbacks[eventType]) {\n callbacks[eventType] = [];\n }\n callbacks[eventType].push(callback);\n };\n\n GleapSdk.registerCustomAction = (customActionCallback: any) => {\n GleapSdk.registerListener('customActionTriggered', customActionCallback);\n };\n\n const notifyCallback = function (eventType: string, data?: any) {\n if (callbacks && callbacks[eventType] && callbacks[eventType].length > 0) {\n for (var i = 0; i < callbacks[eventType].length; i++) {\n if (callbacks[eventType][i]) {\n callbacks[eventType][i](data);\n }\n }\n }\n };\n\n const gleapEmitter = new NativeEventEmitter(NativeModules.Gleapsdk);\n\n gleapEmitter.addListener('configLoaded', (config: any) => {\n try {\n const configJSON = config instanceof Object ? config : JSON.parse(config);\n if (configJSON.enableNetworkLogs) {\n GleapSdk.startNetworkLogging();\n }\n notifyCallback('configLoaded', configJSON);\n } catch (exp) { }\n });\n\n gleapEmitter.addListener('feedbackSent', (data) => {\n try {\n const dataJSON = data instanceof Object ? data : JSON.parse(data);\n notifyCallback('feedbackSent', dataJSON);\n } catch (exp) { }\n });\n\n gleapEmitter.addListener('feedbackFlowStarted', (feedbackAction) => {\n notifyCallback('feedbackFlowStarted', feedbackAction);\n });\n\n gleapEmitter.addListener('feedbackSendingFailed', () => {\n notifyCallback('feedbackSendingFailed');\n });\n\n gleapEmitter.addListener('widgetOpened', () => {\n notifyCallback('widgetOpened');\n });\n\n gleapEmitter.addListener('widgetClosed', () => {\n notifyCallback('widgetClosed');\n });\n\n function isJsonString(str: string) {\n try {\n JSON.parse(str);\n } catch (e) {\n return false;\n }\n return true;\n }\n\n gleapEmitter.addListener('customActionTriggered', (data: any) => {\n try {\n if (isJsonString(data)) {\n data = JSON.parse(data);\n }\n const { name } = data;\n if (name) {\n notifyCallback('customActionTriggered', {\n name,\n });\n }\n } catch (exp) { }\n });\n\n GleapSdk.removeAllAttachments();\n GleapSdk.touched = true;\n}\n\nexport default GleapSdk as GleapSdkType;\n"]}
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.tsx"],"names":["NativeModules","NativeEventEmitter","Platform","GleapNetworkIntercepter","LINKING_ERROR","select","ios","default","GleapSdk","Gleapsdk","Proxy","get","Error","touched","networkLogger","startNetworkLogging","setUpdatedCallback","requests","getRequests","attachNetworkLog","OS","JSON","stringify","parse","start","stopNetworkLogging","setStopped","callbacks","registerListener","eventType","callback","push","registerCustomAction","customActionCallback","notifyCallback","data","length","i","gleapEmitter","addListener","config","configJSON","Object","enableNetworkLogs","exp","dataJSON","feedbackAction","isJsonString","str","e","name","removeAllAttachments"],"mappings":"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","sourcesContent":["import { NativeModules, NativeEventEmitter, Platform } from 'react-native';\nimport GleapNetworkIntercepter from './networklogger';\n\nconst LINKING_ERROR =\n `The package 'react-native-gleapsdk' doesn't seem to be linked. Make sure: \\n\\n` +\n Platform.select({ ios: \"- You have run 'pod install'\\n\", default: '' }) +\n '- You rebuilt the app after installing the package\\n' +\n '- You are not using Expo managed workflow\\n';\n\nexport type GleapUserProperty = {\n email?: string;\n name?: string;\n};\n\ntype GleapActivationMethod = 'SHAKE' | 'SCREENSHOT';\n\ntype GleapSdkType = {\n initialize(token: string): void;\n startFeedbackFlow(feedbackFlow: string, showBackButton: boolean): void;\n sendSilentCrashReport(\n description: string,\n severity: 'LOW' | 'MEDIUM' | 'HIGH'\n ): void;\n sendSilentCrashReportWithExcludeData(\n description: string,\n severity: 'LOW' | 'MEDIUM' | 'HIGH',\n excludeData: {\n customData?: Boolean;\n metaData?: Boolean;\n attachments?: Boolean;\n consoleLog?: Boolean;\n networkLogs?: Boolean;\n customEventLog?: Boolean;\n screenshot?: Boolean;\n replays?: Boolean;\n }\n ): void;\n open(): void;\n close(): void;\n isOpened(): boolean;\n identify(userId: string, userProperties: GleapUserProperty): void;\n identifyWithUserHash(\n userId: string,\n userProperties: GleapUserProperty,\n userHash: string\n ): void;\n clearIdentity(): void;\n preFillForm(formData: { [key: string]: string }): void;\n setApiUrl(apiUrl: string): void;\n setFrameUrl(frameUrl: string): void;\n attachCustomData(customData: any): void;\n setCustomData(key: string, value: string): void;\n removeCustomDataForKey(key: string): void;\n clearCustomData(): void;\n registerListener(eventType: string, callback: (data?: any) => void): void;\n setLanguage(language: string): void;\n logEvent(name: string, data: any): void;\n addAttachment(base64file: string, fileName: string): void;\n removeAllAttachments(): void;\n startNetworkLogging(): void;\n stopNetworkLogging(): void;\n enableDebugConsoleLog(): void;\n setActivationMethods(activationMethods: GleapActivationMethod[]): void;\n registerCustomAction(\n customActionCallback: (data: { name: string }) => void\n ): void;\n};\n\nconst GleapSdk = NativeModules.Gleapsdk\n ? NativeModules.Gleapsdk\n : new Proxy(\n {},\n {\n get() {\n throw new Error(LINKING_ERROR);\n },\n }\n );\n\nif (GleapSdk && !GleapSdk.touched) {\n const networkLogger = new GleapNetworkIntercepter();\n\n // Push the network log to the native SDK.\n GleapSdk.startNetworkLogging = () => {\n // Set the callback.\n networkLogger.setUpdatedCallback(() => {\n if (!networkLogger) {\n return;\n }\n\n const requests = networkLogger.getRequests();\n \n if (requests && GleapSdk && typeof GleapSdk.attachNetworkLog !== 'undefined') {\n if (Platform.OS === 'android') {\n GleapSdk.attachNetworkLog(JSON.stringify(requests));\n } else {\n GleapSdk.attachNetworkLog(JSON.parse(JSON.stringify(requests)));\n }\n }\n });\n\n // Start the logger.\n networkLogger.start();\n };\n\n GleapSdk.stopNetworkLogging = () => {\n networkLogger.setStopped(true);\n };\n\n var callbacks: any = {};\n\n GleapSdk.registerListener = (eventType: string, callback: any) => {\n if (!callbacks[eventType]) {\n callbacks[eventType] = [];\n }\n callbacks[eventType].push(callback);\n };\n\n GleapSdk.registerCustomAction = (customActionCallback: any) => {\n GleapSdk.registerListener('customActionTriggered', customActionCallback);\n };\n\n const notifyCallback = function (eventType: string, data?: any) {\n if (callbacks && callbacks[eventType] && callbacks[eventType].length > 0) {\n for (var i = 0; i < callbacks[eventType].length; i++) {\n if (callbacks[eventType][i]) {\n callbacks[eventType][i](data);\n }\n }\n }\n };\n\n const gleapEmitter = new NativeEventEmitter(NativeModules.Gleapsdk);\n\n gleapEmitter.addListener('configLoaded', (config: any) => {\n try {\n const configJSON = config instanceof Object ? config : JSON.parse(config);\n if (configJSON.enableNetworkLogs) {\n GleapSdk.startNetworkLogging();\n }\n notifyCallback('configLoaded', configJSON);\n } catch (exp) { }\n });\n\n gleapEmitter.addListener('feedbackSent', (data) => {\n try {\n const dataJSON = data instanceof Object ? data : JSON.parse(data);\n notifyCallback('feedbackSent', dataJSON);\n } catch (exp) { }\n });\n\n gleapEmitter.addListener('feedbackFlowStarted', (feedbackAction) => {\n notifyCallback('feedbackFlowStarted', feedbackAction);\n });\n\n gleapEmitter.addListener('feedbackSendingFailed', () => {\n notifyCallback('feedbackSendingFailed');\n });\n\n gleapEmitter.addListener('widgetOpened', () => {\n notifyCallback('widgetOpened');\n });\n\n gleapEmitter.addListener('widgetClosed', () => {\n notifyCallback('widgetClosed');\n });\n\n function isJsonString(str: string) {\n try {\n JSON.parse(str);\n } catch (e) {\n return false;\n }\n return true;\n }\n\n gleapEmitter.addListener('customActionTriggered', (data: any) => {\n try {\n if (isJsonString(data)) {\n data = JSON.parse(data);\n }\n const { name } = data;\n if (name) {\n notifyCallback('customActionTriggered', {\n name,\n });\n }\n } catch (exp) { }\n });\n\n GleapSdk.removeAllAttachments();\n GleapSdk.touched = true;\n}\n\nexport default GleapSdk as GleapSdkType;\n"]}
|
|
1
|
+
{"version":3,"sources":["index.tsx"],"names":["NativeModules","NativeEventEmitter","Platform","GleapNetworkIntercepter","LINKING_ERROR","select","ios","default","GleapSdk","Gleapsdk","Proxy","get","Error","touched","networkLogger","startNetworkLogging","setUpdatedCallback","requests","getRequests","attachNetworkLog","OS","JSON","stringify","parse","start","stopNetworkLogging","setStopped","callbacks","registerListener","eventType","callback","push","registerCustomAction","customActionCallback","notifyCallback","data","length","i","gleapEmitter","addListener","config","configJSON","Object","enableNetworkLogs","exp","dataJSON","feedbackAction","isJsonString","str","e","name","removeAllAttachments"],"mappings":"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","sourcesContent":["import { NativeModules, NativeEventEmitter, Platform } from 'react-native';\nimport GleapNetworkIntercepter from './networklogger';\n\nconst LINKING_ERROR =\n `The package 'react-native-gleapsdk' doesn't seem to be linked. Make sure: \\n\\n` +\n Platform.select({ ios: \"- You have run 'pod install'\\n\", default: '' }) +\n '- You rebuilt the app after installing the package\\n' +\n '- You are not using Expo managed workflow\\n';\n\nexport type GleapUserProperty = {\n email?: string;\n name?: string;\n};\n\ntype GleapActivationMethod = 'SHAKE' | 'SCREENSHOT';\n\ntype GleapSdkType = {\n initialize(token: string): void;\n startFeedbackFlow(feedbackFlow: string, showBackButton: boolean): void;\n sendSilentCrashReport(\n description: string,\n severity: 'LOW' | 'MEDIUM' | 'HIGH'\n ): void;\n sendSilentCrashReportWithExcludeData(\n description: string,\n severity: 'LOW' | 'MEDIUM' | 'HIGH',\n excludeData: {\n customData?: Boolean;\n metaData?: Boolean;\n attachments?: Boolean;\n consoleLog?: Boolean;\n networkLogs?: Boolean;\n customEventLog?: Boolean;\n screenshot?: Boolean;\n replays?: Boolean;\n }\n ): void;\n open(): void;\n close(): void;\n isOpened(): boolean;\n identify(userId: string, userProperties: GleapUserProperty): void;\n identifyWithUserHash(\n userId: string,\n userProperties: GleapUserProperty,\n userHash: string\n ): void;\n clearIdentity(): void;\n preFillForm(formData: { [key: string]: string }): void;\n setApiUrl(apiUrl: string): void;\n setFrameUrl(frameUrl: string): void;\n attachCustomData(customData: any): void;\n setCustomData(key: string, value: string): void;\n removeCustomDataForKey(key: string): void;\n clearCustomData(): void;\n registerListener(eventType: string, callback: (data?: any) => void): void;\n setLanguage(language: string): void;\n enableDebugConsoleLog(): void;\n disableConsoleLog(): void;\n log(message: string): void;\n logWithLogLevel(message: string, logLevel: 'INFO' | 'WARNING' | 'ERROR'): void;\n logEvent(name: string, data: any): void;\n addAttachment(base64file: string, fileName: string): void;\n removeAllAttachments(): void;\n startNetworkLogging(): void;\n stopNetworkLogging(): void;\n setActivationMethods(activationMethods: GleapActivationMethod[]): void;\n registerCustomAction(\n customActionCallback: (data: { name: string }) => void\n ): void;\n};\n\nconst GleapSdk = NativeModules.Gleapsdk\n ? NativeModules.Gleapsdk\n : new Proxy(\n {},\n {\n get() {\n throw new Error(LINKING_ERROR);\n },\n }\n );\n\nif (GleapSdk && !GleapSdk.touched) {\n const networkLogger = new GleapNetworkIntercepter();\n\n // Push the network log to the native SDK.\n GleapSdk.startNetworkLogging = () => {\n // Set the callback.\n networkLogger.setUpdatedCallback(() => {\n if (!networkLogger) {\n return;\n }\n\n const requests = networkLogger.getRequests();\n \n if (requests && GleapSdk && typeof GleapSdk.attachNetworkLog !== 'undefined') {\n if (Platform.OS === 'android') {\n GleapSdk.attachNetworkLog(JSON.stringify(requests));\n } else {\n GleapSdk.attachNetworkLog(JSON.parse(JSON.stringify(requests)));\n }\n }\n });\n\n // Start the logger.\n networkLogger.start();\n };\n\n GleapSdk.stopNetworkLogging = () => {\n networkLogger.setStopped(true);\n };\n\n var callbacks: any = {};\n\n GleapSdk.registerListener = (eventType: string, callback: any) => {\n if (!callbacks[eventType]) {\n callbacks[eventType] = [];\n }\n callbacks[eventType].push(callback);\n };\n\n GleapSdk.registerCustomAction = (customActionCallback: any) => {\n GleapSdk.registerListener('customActionTriggered', customActionCallback);\n };\n\n const notifyCallback = function (eventType: string, data?: any) {\n if (callbacks && callbacks[eventType] && callbacks[eventType].length > 0) {\n for (var i = 0; i < callbacks[eventType].length; i++) {\n if (callbacks[eventType][i]) {\n callbacks[eventType][i](data);\n }\n }\n }\n };\n\n const gleapEmitter = new NativeEventEmitter(NativeModules.Gleapsdk);\n\n gleapEmitter.addListener('configLoaded', (config: any) => {\n try {\n const configJSON = config instanceof Object ? config : JSON.parse(config);\n if (configJSON.enableNetworkLogs) {\n GleapSdk.startNetworkLogging();\n }\n notifyCallback('configLoaded', configJSON);\n } catch (exp) { }\n });\n\n gleapEmitter.addListener('feedbackSent', (data) => {\n try {\n const dataJSON = data instanceof Object ? data : JSON.parse(data);\n notifyCallback('feedbackSent', dataJSON);\n } catch (exp) { }\n });\n\n gleapEmitter.addListener('feedbackFlowStarted', (feedbackAction) => {\n notifyCallback('feedbackFlowStarted', feedbackAction);\n });\n\n gleapEmitter.addListener('feedbackSendingFailed', () => {\n notifyCallback('feedbackSendingFailed');\n });\n\n gleapEmitter.addListener('widgetOpened', () => {\n notifyCallback('widgetOpened');\n });\n\n gleapEmitter.addListener('widgetClosed', () => {\n notifyCallback('widgetClosed');\n });\n\n function isJsonString(str: string) {\n try {\n JSON.parse(str);\n } catch (e) {\n return false;\n }\n return true;\n }\n\n gleapEmitter.addListener('customActionTriggered', (data: any) => {\n try {\n if (isJsonString(data)) {\n data = JSON.parse(data);\n }\n const { name } = data;\n if (name) {\n notifyCallback('customActionTriggered', {\n name,\n });\n }\n } catch (exp) { }\n });\n\n GleapSdk.removeAllAttachments();\n GleapSdk.touched = true;\n}\n\nexport default GleapSdk as GleapSdkType;\n"]}
|
|
@@ -34,12 +34,15 @@ declare type GleapSdkType = {
|
|
|
34
34
|
clearCustomData(): void;
|
|
35
35
|
registerListener(eventType: string, callback: (data?: any) => void): void;
|
|
36
36
|
setLanguage(language: string): void;
|
|
37
|
+
enableDebugConsoleLog(): void;
|
|
38
|
+
disableConsoleLog(): void;
|
|
39
|
+
log(message: string): void;
|
|
40
|
+
logWithLogLevel(message: string, logLevel: 'INFO' | 'WARNING' | 'ERROR'): void;
|
|
37
41
|
logEvent(name: string, data: any): void;
|
|
38
42
|
addAttachment(base64file: string, fileName: string): void;
|
|
39
43
|
removeAllAttachments(): void;
|
|
40
44
|
startNetworkLogging(): void;
|
|
41
45
|
stopNetworkLogging(): void;
|
|
42
|
-
enableDebugConsoleLog(): void;
|
|
43
46
|
setActivationMethods(activationMethods: GleapActivationMethod[]): void;
|
|
44
47
|
registerCustomAction(customActionCallback: (data: {
|
|
45
48
|
name: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-gleapsdk",
|
|
3
|
-
"version": "7.0.
|
|
3
|
+
"version": "7.0.3",
|
|
4
4
|
"description": "Know exactly why and how a bug happened. Get reports with screenshots, live action replays and all of the important metadata every time.",
|
|
5
5
|
"main": "lib/commonjs/index",
|
|
6
6
|
"module": "lib/module/index",
|
package/src/index.tsx
CHANGED
|
@@ -54,12 +54,15 @@ type GleapSdkType = {
|
|
|
54
54
|
clearCustomData(): void;
|
|
55
55
|
registerListener(eventType: string, callback: (data?: any) => void): void;
|
|
56
56
|
setLanguage(language: string): void;
|
|
57
|
+
enableDebugConsoleLog(): void;
|
|
58
|
+
disableConsoleLog(): void;
|
|
59
|
+
log(message: string): void;
|
|
60
|
+
logWithLogLevel(message: string, logLevel: 'INFO' | 'WARNING' | 'ERROR'): void;
|
|
57
61
|
logEvent(name: string, data: any): void;
|
|
58
62
|
addAttachment(base64file: string, fileName: string): void;
|
|
59
63
|
removeAllAttachments(): void;
|
|
60
64
|
startNetworkLogging(): void;
|
|
61
65
|
stopNetworkLogging(): void;
|
|
62
|
-
enableDebugConsoleLog(): void;
|
|
63
66
|
setActivationMethods(activationMethods: GleapActivationMethod[]): void;
|
|
64
67
|
registerCustomAction(
|
|
65
68
|
customActionCallback: (data: { name: string }) => void
|