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.
@@ -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', 29)
21
+ compileSdkVersion safeExtGet('Gleapsdk_compileSdkVersion', 31)
23
22
  defaultConfig {
24
23
  minSdkVersion safeExtGet('Gleapsdk_minSdkVersion', 16)
25
- targetSdkVersion safeExtGet('Gleapsdk_targetSdkVersion', 29)
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.10'
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.callbacks.ConfigLoadedCallback;
41
- import io.gleap.callbacks.CustomActionCallback;
42
- import io.gleap.callbacks.FeedbackFlowStartedCallback;
43
- import io.gleap.callbacks.FeedbackSendingFailedCallback;
44
- import io.gleap.callbacks.FeedbackSentCallback;
45
- import io.gleap.callbacks.GetActivityCallback;
46
- import io.gleap.callbacks.WidgetClosedCallback;
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(), ^{
@@ -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":";;;;;;;AAAA;;AACA;;;;AAEA,MAAMA,aAAa,GAChB,gFAAD,GACAC,sBAASC,MAAT,CAAgB;AAAEC,EAAAA,GAAG,EAAE,gCAAP;AAAyCC,EAAAA,OAAO,EAAE;AAAlD,CAAhB,CADA,GAEA,sDAFA,GAGA,6CAJF;AAoEA,MAAMC,QAAQ,GAAGC,2BAAcC,QAAd,GACbD,2BAAcC,QADD,GAEb,IAAIC,KAAJ,CACA,EADA,EAEA;AACEC,EAAAA,GAAG,GAAG;AACJ,UAAM,IAAIC,KAAJ,CAAUV,aAAV,CAAN;AACD;;AAHH,CAFA,CAFJ;;AAWA,IAAIK,QAAQ,IAAI,CAACA,QAAQ,CAACM,OAA1B,EAAmC;AACjC,QAAMC,aAAa,GAAG,IAAIC,sBAAJ,EAAtB,CADiC,CAGjC;;AACAR,EAAAA,QAAQ,CAACS,mBAAT,GAA+B,MAAM;AACnC;AACAF,IAAAA,aAAa,CAACG,kBAAd,CAAiC,MAAM;AACrC,UAAI,CAACH,aAAL,EAAoB;AAClB;AACD;;AAED,YAAMI,QAAQ,GAAGJ,aAAa,CAACK,WAAd,EAAjB;;AAEA,UAAID,QAAQ,IAAIX,QAAZ,IAAwB,OAAOA,QAAQ,CAACa,gBAAhB,KAAqC,WAAjE,EAA8E;AAC5E,YAAIjB,sBAASkB,EAAT,KAAgB,SAApB,EAA+B;AAC7Bd,UAAAA,QAAQ,CAACa,gBAAT,CAA0BE,IAAI,CAACC,SAAL,CAAeL,QAAf,CAA1B;AACD,SAFD,MAEO;AACLX,UAAAA,QAAQ,CAACa,gBAAT,CAA0BE,IAAI,CAACE,KAAL,CAAWF,IAAI,CAACC,SAAL,CAAeL,QAAf,CAAX,CAA1B;AACD;AACF;AACF,KAdD,EAFmC,CAkBnC;;AACAJ,IAAAA,aAAa,CAACW,KAAd;AACD,GApBD;;AAsBAlB,EAAAA,QAAQ,CAACmB,kBAAT,GAA8B,MAAM;AAClCZ,IAAAA,aAAa,CAACa,UAAd,CAAyB,IAAzB;AACD,GAFD;;AAIA,MAAIC,SAAc,GAAG,EAArB;;AAEArB,EAAAA,QAAQ,CAACsB,gBAAT,GAA4B,CAACC,SAAD,EAAoBC,QAApB,KAAsC;AAChE,QAAI,CAACH,SAAS,CAACE,SAAD,CAAd,EAA2B;AACzBF,MAAAA,SAAS,CAACE,SAAD,CAAT,GAAuB,EAAvB;AACD;;AACDF,IAAAA,SAAS,CAACE,SAAD,CAAT,CAAqBE,IAArB,CAA0BD,QAA1B;AACD,GALD;;AAOAxB,EAAAA,QAAQ,CAAC0B,oBAAT,GAAiCC,oBAAD,IAA+B;AAC7D3B,IAAAA,QAAQ,CAACsB,gBAAT,CAA0B,uBAA1B,EAAmDK,oBAAnD;AACD,GAFD;;AAIA,QAAMC,cAAc,GAAG,UAAUL,SAAV,EAA6BM,IAA7B,EAAyC;AAC9D,QAAIR,SAAS,IAAIA,SAAS,CAACE,SAAD,CAAtB,IAAqCF,SAAS,CAACE,SAAD,CAAT,CAAqBO,MAArB,GAA8B,CAAvE,EAA0E;AACxE,WAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGV,SAAS,CAACE,SAAD,CAAT,CAAqBO,MAAzC,EAAiDC,CAAC,EAAlD,EAAsD;AACpD,YAAIV,SAAS,CAACE,SAAD,CAAT,CAAqBQ,CAArB,CAAJ,EAA6B;AAC3BV,UAAAA,SAAS,CAACE,SAAD,CAAT,CAAqBQ,CAArB,EAAwBF,IAAxB;AACD;AACF;AACF;AACF,GARD;;AAUA,QAAMG,YAAY,GAAG,IAAIC,+BAAJ,CAAuBhC,2BAAcC,QAArC,CAArB;AAEA8B,EAAAA,YAAY,CAACE,WAAb,CAAyB,cAAzB,EAA0CC,MAAD,IAAiB;AACxD,QAAI;AACF,YAAMC,UAAU,GAAGD,MAAM,YAAYE,MAAlB,GAA2BF,MAA3B,GAAoCpB,IAAI,CAACE,KAAL,CAAWkB,MAAX,CAAvD;;AACA,UAAIC,UAAU,CAACE,iBAAf,EAAkC;AAChCtC,QAAAA,QAAQ,CAACS,mBAAT;AACD;;AACDmB,MAAAA,cAAc,CAAC,cAAD,EAAiBQ,UAAjB,CAAd;AACD,KAND,CAME,OAAOG,GAAP,EAAY,CAAG;AAClB,GARD;AAUAP,EAAAA,YAAY,CAACE,WAAb,CAAyB,cAAzB,EAA0CL,IAAD,IAAU;AACjD,QAAI;AACF,YAAMW,QAAQ,GAAGX,IAAI,YAAYQ,MAAhB,GAAyBR,IAAzB,GAAgCd,IAAI,CAACE,KAAL,CAAWY,IAAX,CAAjD;AACAD,MAAAA,cAAc,CAAC,cAAD,EAAiBY,QAAjB,CAAd;AACD,KAHD,CAGE,OAAOD,GAAP,EAAY,CAAG;AAClB,GALD;AAOAP,EAAAA,YAAY,CAACE,WAAb,CAAyB,qBAAzB,EAAiDO,cAAD,IAAoB;AAClEb,IAAAA,cAAc,CAAC,qBAAD,EAAwBa,cAAxB,CAAd;AACD,GAFD;AAIAT,EAAAA,YAAY,CAACE,WAAb,CAAyB,uBAAzB,EAAkD,MAAM;AACtDN,IAAAA,cAAc,CAAC,uBAAD,CAAd;AACD,GAFD;AAIAI,EAAAA,YAAY,CAACE,WAAb,CAAyB,cAAzB,EAAyC,MAAM;AAC7CN,IAAAA,cAAc,CAAC,cAAD,CAAd;AACD,GAFD;AAIAI,EAAAA,YAAY,CAACE,WAAb,CAAyB,cAAzB,EAAyC,MAAM;AAC7CN,IAAAA,cAAc,CAAC,cAAD,CAAd;AACD,GAFD;;AAIA,WAASc,YAAT,CAAsBC,GAAtB,EAAmC;AACjC,QAAI;AACF5B,MAAAA,IAAI,CAACE,KAAL,CAAW0B,GAAX;AACD,KAFD,CAEE,OAAOC,CAAP,EAAU;AACV,aAAO,KAAP;AACD;;AACD,WAAO,IAAP;AACD;;AAEDZ,EAAAA,YAAY,CAACE,WAAb,CAAyB,uBAAzB,EAAmDL,IAAD,IAAe;AAC/D,QAAI;AACF,UAAIa,YAAY,CAACb,IAAD,CAAhB,EAAwB;AACtBA,QAAAA,IAAI,GAAGd,IAAI,CAACE,KAAL,CAAWY,IAAX,CAAP;AACD;;AACD,YAAM;AAAEgB,QAAAA;AAAF,UAAWhB,IAAjB;;AACA,UAAIgB,IAAJ,EAAU;AACRjB,QAAAA,cAAc,CAAC,uBAAD,EAA0B;AACtCiB,UAAAA;AADsC,SAA1B,CAAd;AAGD;AACF,KAVD,CAUE,OAAON,GAAP,EAAY,CAAG;AAClB,GAZD;AAcAvC,EAAAA,QAAQ,CAAC8C,oBAAT;AACA9C,EAAAA,QAAQ,CAACM,OAAT,GAAmB,IAAnB;AACD;;eAEcN,Q","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"]}
@@ -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.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",
@@ -16,5 +16,5 @@ Pod::Spec.new do |s|
16
16
  s.source_files = "ios/**/*.{h,m,mm}"
17
17
 
18
18
  s.dependency "React-Core"
19
- s.dependency "Gleap", "7.0.2"
19
+ s.dependency "Gleap", "7.0.4"
20
20
  end
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