react-native-gleapsdk 8.4.0 → 8.4.1
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/java/com/reactnativegleapsdk/GleapsdkModule.java +48 -14
- package/ios/Gleapsdk.m +16 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/index.d.ts +4 -0
- package/package.json +1 -1
- package/react-native-gleapsdk.podspec +1 -1
- package/src/index.tsx +2 -0
package/android/build.gradle
CHANGED
|
@@ -53,7 +53,7 @@ repositories {
|
|
|
53
53
|
|
|
54
54
|
dependencies {
|
|
55
55
|
implementation "com.facebook.react:react-native:+"
|
|
56
|
-
implementation group: 'io.gleap', name: 'gleap-android-sdk', version: '8.4.
|
|
56
|
+
implementation group: 'io.gleap', name: 'gleap-android-sdk', version: '8.4.3'
|
|
57
57
|
|
|
58
58
|
if(rootProject && rootProject.ext) {
|
|
59
59
|
if(rootProject.ext.targetSdkVersion == 30 || rootProject.ext.compileSdkVersion == 30) {
|
|
@@ -29,7 +29,6 @@ import java.io.FileOutputStream;
|
|
|
29
29
|
import java.io.OutputStream;
|
|
30
30
|
import java.util.ArrayList;
|
|
31
31
|
import java.util.Base64;
|
|
32
|
-
import java.util.LinkedList;
|
|
33
32
|
import java.util.regex.Matcher;
|
|
34
33
|
import java.util.regex.Pattern;
|
|
35
34
|
|
|
@@ -67,6 +66,12 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
67
66
|
}
|
|
68
67
|
});
|
|
69
68
|
|
|
69
|
+
try {
|
|
70
|
+
JSONObject body = new JSONObject();
|
|
71
|
+
body.put("page", "MainActivity");
|
|
72
|
+
Gleap.getInstance().trackEvent("pageView", body);
|
|
73
|
+
} catch (Exception ex) {
|
|
74
|
+
}
|
|
70
75
|
}
|
|
71
76
|
|
|
72
77
|
|
|
@@ -274,7 +279,8 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
274
279
|
public void run() {
|
|
275
280
|
try {
|
|
276
281
|
promise.resolve(Gleap.getInstance().isUserIdentified());
|
|
277
|
-
} catch (Exception ex) {
|
|
282
|
+
} catch (Exception ex) {
|
|
283
|
+
}
|
|
278
284
|
}
|
|
279
285
|
});
|
|
280
286
|
} catch (NoUiThreadException e) {
|
|
@@ -308,7 +314,8 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
308
314
|
} else {
|
|
309
315
|
promise.resolve(null);
|
|
310
316
|
}
|
|
311
|
-
}catch (Exception ex) {
|
|
317
|
+
} catch (Exception ex) {
|
|
318
|
+
}
|
|
312
319
|
}
|
|
313
320
|
});
|
|
314
321
|
} catch (NoUiThreadException e) {
|
|
@@ -325,7 +332,8 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
325
332
|
public void run() {
|
|
326
333
|
try {
|
|
327
334
|
Gleap.getInstance().close();
|
|
328
|
-
}catch (Exception ex) {
|
|
335
|
+
} catch (Exception ex) {
|
|
336
|
+
}
|
|
329
337
|
}
|
|
330
338
|
});
|
|
331
339
|
} catch (NoUiThreadException e) {
|
|
@@ -524,9 +532,12 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
524
532
|
if (jsonObject.has("phone")) {
|
|
525
533
|
gleapUserSession.setPhoneNumber(jsonObject.getString("phone"));
|
|
526
534
|
}
|
|
527
|
-
if(jsonObject.has("value")) {
|
|
535
|
+
if (jsonObject.has("value")) {
|
|
528
536
|
gleapUserSession.setValue(jsonObject.getDouble("value"));
|
|
529
537
|
}
|
|
538
|
+
if (jsonObject.has("customData")) {
|
|
539
|
+
gleapUserSession.setCustomData(jsonObject.getJSONObject("customData"));
|
|
540
|
+
}
|
|
530
541
|
} catch (JSONException e) {
|
|
531
542
|
e.printStackTrace();
|
|
532
543
|
}
|
|
@@ -542,6 +553,26 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
542
553
|
}
|
|
543
554
|
}
|
|
544
555
|
|
|
556
|
+
@ReactMethod
|
|
557
|
+
public void trackPage(String pageName) {
|
|
558
|
+
try {
|
|
559
|
+
getActivitySafe().runOnUiThread(
|
|
560
|
+
new Runnable() {
|
|
561
|
+
@Override
|
|
562
|
+
public void run() {
|
|
563
|
+
try {
|
|
564
|
+
JSONObject body = new JSONObject();
|
|
565
|
+
body.put("page", "MainActivity" + Math.random() * 100);
|
|
566
|
+
Gleap.getInstance().trackEvent("pageView", body);
|
|
567
|
+
} catch (Exception ignore) {
|
|
568
|
+
}
|
|
569
|
+
}
|
|
570
|
+
});
|
|
571
|
+
} catch (NoUiThreadException e) {
|
|
572
|
+
System.err.println(e.getMessage());
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
|
|
545
576
|
@ReactMethod
|
|
546
577
|
public void identifyWithUserHash(String userid, ReadableMap data, String hash) {
|
|
547
578
|
try {
|
|
@@ -562,12 +593,16 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
562
593
|
if (jsonObject.has("phone")) {
|
|
563
594
|
gleapUserSession.setPhoneNumber(jsonObject.getString("phone"));
|
|
564
595
|
}
|
|
565
|
-
if(jsonObject.has("value")) {
|
|
596
|
+
if (jsonObject.has("value")) {
|
|
566
597
|
gleapUserSession.setValue(jsonObject.getDouble("value"));
|
|
567
598
|
}
|
|
599
|
+
if (jsonObject.has("customData")) {
|
|
600
|
+
gleapUserSession.setCustomData(jsonObject.getJSONObject("customData"));
|
|
601
|
+
}
|
|
568
602
|
} catch (JSONException e) {
|
|
569
603
|
e.printStackTrace();
|
|
570
604
|
}
|
|
605
|
+
|
|
571
606
|
gleapUserSession.setHash(hash);
|
|
572
607
|
if (Gleap.getInstance() == null) {
|
|
573
608
|
return;
|
|
@@ -688,7 +723,7 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
688
723
|
internalActivationMethods.add(GleapActivationMethod.SCREENSHOT);
|
|
689
724
|
}
|
|
690
725
|
}
|
|
691
|
-
if(Gleap.getInstance() != null) {
|
|
726
|
+
if (Gleap.getInstance() != null) {
|
|
692
727
|
Gleap.getInstance().setActivationMethods(
|
|
693
728
|
internalActivationMethods.toArray(new GleapActivationMethod[internalActivationMethods.size()]));
|
|
694
729
|
}
|
|
@@ -843,7 +878,7 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
843
878
|
}
|
|
844
879
|
|
|
845
880
|
|
|
846
|
-
|
|
881
|
+
@ReactMethod
|
|
847
882
|
public void log(String msg) {
|
|
848
883
|
Gleap.getInstance().log(msg);
|
|
849
884
|
}
|
|
@@ -881,7 +916,7 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
881
916
|
|
|
882
917
|
|
|
883
918
|
@ReactMethod
|
|
884
|
-
public void openNewsArticle(String articleId, Boolean showBackButton){
|
|
919
|
+
public void openNewsArticle(String articleId, Boolean showBackButton) {
|
|
885
920
|
try {
|
|
886
921
|
getActivitySafe().runOnUiThread(
|
|
887
922
|
new Runnable() {
|
|
@@ -895,7 +930,7 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
895
930
|
}
|
|
896
931
|
|
|
897
932
|
@ReactMethod
|
|
898
|
-
public void openFeatureRequests(Boolean showBackButton){
|
|
933
|
+
public void openFeatureRequests(Boolean showBackButton) {
|
|
899
934
|
try {
|
|
900
935
|
getActivitySafe().runOnUiThread(
|
|
901
936
|
new Runnable() {
|
|
@@ -923,7 +958,7 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
923
958
|
}
|
|
924
959
|
|
|
925
960
|
@ReactMethod
|
|
926
|
-
public void openHelpCenterCollection(String collectionId, Boolean showBackButton){
|
|
961
|
+
public void openHelpCenterCollection(String collectionId, Boolean showBackButton) {
|
|
927
962
|
try {
|
|
928
963
|
getActivitySafe().runOnUiThread(
|
|
929
964
|
new Runnable() {
|
|
@@ -937,7 +972,7 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
937
972
|
}
|
|
938
973
|
|
|
939
974
|
@ReactMethod
|
|
940
|
-
public void openHelpCenterArticle(String articleId, Boolean showBackButton){
|
|
975
|
+
public void openHelpCenterArticle(String articleId, Boolean showBackButton) {
|
|
941
976
|
try {
|
|
942
977
|
getActivitySafe().runOnUiThread(
|
|
943
978
|
new Runnable() {
|
|
@@ -951,7 +986,7 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
951
986
|
}
|
|
952
987
|
|
|
953
988
|
@ReactMethod
|
|
954
|
-
public void searchHelpCenter(String term, Boolean showBackButton){
|
|
989
|
+
public void searchHelpCenter(String term, Boolean showBackButton) {
|
|
955
990
|
try {
|
|
956
991
|
getActivitySafe().runOnUiThread(
|
|
957
992
|
new Runnable() {
|
|
@@ -1040,7 +1075,6 @@ public class GleapsdkModule extends ReactContextBaseJavaModule implements Lifecy
|
|
|
1040
1075
|
}
|
|
1041
1076
|
|
|
1042
1077
|
|
|
1043
|
-
|
|
1044
1078
|
private Activity getActivitySafe() throws NoUiThreadException {
|
|
1045
1079
|
Activity activity = getCurrentActivity();
|
|
1046
1080
|
if (activity == null) {
|
package/ios/Gleapsdk.m
CHANGED
|
@@ -353,6 +353,9 @@ RCT_EXPORT_METHOD(identifyWithUserHash:(NSString *)userId withUserProperties: (N
|
|
|
353
353
|
if (userProperties != nil && [userProperties objectForKey: @"value"] != nil) {
|
|
354
354
|
userProperty.value = [userProperties objectForKey: @"value"];
|
|
355
355
|
}
|
|
356
|
+
if (userProperties != nil && [userProperties objectForKey: @"customData"] != nil) {
|
|
357
|
+
userProperty.customData = [userProperties objectForKey: @"customData"];
|
|
358
|
+
}
|
|
356
359
|
[Gleap identifyUserWith: userId andData: userProperty andUserHash: userHash];
|
|
357
360
|
});
|
|
358
361
|
}
|
|
@@ -372,7 +375,10 @@ RCT_EXPORT_METHOD(identify:(NSString *)userId withUserProperties: (NSDictionary
|
|
|
372
375
|
}
|
|
373
376
|
if (userProperties != nil && [userProperties objectForKey: @"value"] != nil) {
|
|
374
377
|
userProperty.value = [userProperties objectForKey: @"value"];
|
|
375
|
-
}
|
|
378
|
+
}
|
|
379
|
+
if (userProperties != nil && [userProperties objectForKey: @"customData"] != nil) {
|
|
380
|
+
userProperty.customData = [userProperties objectForKey: @"customData"];
|
|
381
|
+
}
|
|
376
382
|
[Gleap identifyUserWith: userId andData: userProperty];
|
|
377
383
|
});
|
|
378
384
|
}
|
|
@@ -433,6 +439,15 @@ RCT_EXPORT_METHOD(showFeedbackButton: (BOOL)show)
|
|
|
433
439
|
});
|
|
434
440
|
}
|
|
435
441
|
|
|
442
|
+
RCT_EXPORT_METHOD(trackPage:(NSString *)pageName)
|
|
443
|
+
{
|
|
444
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
445
|
+
[Gleap trackEvent: @"pageView" withData: @{
|
|
446
|
+
@"page": pageName
|
|
447
|
+
}];
|
|
448
|
+
});
|
|
449
|
+
}
|
|
450
|
+
|
|
436
451
|
RCT_EXPORT_METHOD(trackEvent:(NSString *)name andData:(NSDictionary *)data)
|
|
437
452
|
{
|
|
438
453
|
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","logEvent","name","data","console","log","trackEvent","callbacks","registerListener","eventType","callback","push","registerCustomAction","customActionCallback","notifyCallback","length","i","gleapEmitter","NativeEventEmitter","addListener","config","configJSON","Object","enableNetworkLogs","exp","dataJSON","feedbackAction","isJsonString","str","e","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 phone?: string;\n value?: number;\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 openNews(showBackButton: boolean): void;\n openNewsArticle(articleId: string, showBackButton: boolean): void;\n openFeatureRequests(showBackButton: boolean): void;\n openHelpCenter(showBackButton: boolean): void;\n openHelpCenterCollection(collectionId: string, showBackButton: boolean): void;\n openHelpCenterArticle(articleId: string, showBackButton: boolean): void;\n searchHelpCenter(term: string, showBackButton: boolean): 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 showFeedbackButton(show: boolean): 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(\n message: string,\n logLevel: 'INFO' | 'WARNING' | 'ERROR'\n ): void;\n logEvent(name: string, data: any): void;\n trackEvent(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 getIdentity(): Promise<any>;\n isUserIdentified(): Promise<boolean>;\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 (\n requests &&\n GleapSdk &&\n typeof GleapSdk.attachNetworkLog !== 'undefined'\n ) {\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 // eslint-disable-next-line @typescript-eslint/no-unused-vars\n GleapSdk.logEvent = (name: string, data: any) => {\n console.log('logEvent is deprecated. Use trackEvent instead.');\n GleapSdk.trackEvent(name, data);\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","logEvent","name","data","console","log","trackEvent","callbacks","registerListener","eventType","callback","push","registerCustomAction","customActionCallback","notifyCallback","length","i","gleapEmitter","NativeEventEmitter","addListener","config","configJSON","Object","enableNetworkLogs","exp","dataJSON","feedbackAction","isJsonString","str","e","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 phone?: string;\n value?: number;\n customData?: { [key: string]: string | number };\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 openNews(showBackButton: boolean): void;\n openNewsArticle(articleId: string, showBackButton: boolean): void;\n openFeatureRequests(showBackButton: boolean): void;\n openHelpCenter(showBackButton: boolean): void;\n openHelpCenterCollection(collectionId: string, showBackButton: boolean): void;\n openHelpCenterArticle(articleId: string, showBackButton: boolean): void;\n searchHelpCenter(term: string, showBackButton: boolean): 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 showFeedbackButton(show: boolean): 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 trackPage(pageName: String): void;\n log(message: string): void;\n logWithLogLevel(\n message: string,\n logLevel: 'INFO' | 'WARNING' | 'ERROR'\n ): void;\n logEvent(name: string, data: any): void;\n trackEvent(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 getIdentity(): Promise<any>;\n isUserIdentified(): Promise<boolean>;\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 (\n requests &&\n GleapSdk &&\n typeof GleapSdk.attachNetworkLog !== 'undefined'\n ) {\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 // eslint-disable-next-line @typescript-eslint/no-unused-vars\n GleapSdk.logEvent = (name: string, data: any) => {\n console.log('logEvent is deprecated. Use trackEvent instead.');\n GleapSdk.trackEvent(name, data);\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","logEvent","name","data","console","log","trackEvent","callbacks","registerListener","eventType","callback","push","registerCustomAction","customActionCallback","notifyCallback","length","i","gleapEmitter","addListener","config","configJSON","Object","enableNetworkLogs","exp","dataJSON","feedbackAction","isJsonString","str","e","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 phone?: string;\n value?: number;\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 openNews(showBackButton: boolean): void;\n openNewsArticle(articleId: string, showBackButton: boolean): void;\n openFeatureRequests(showBackButton: boolean): void;\n openHelpCenter(showBackButton: boolean): void;\n openHelpCenterCollection(collectionId: string, showBackButton: boolean): void;\n openHelpCenterArticle(articleId: string, showBackButton: boolean): void;\n searchHelpCenter(term: string, showBackButton: boolean): 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 showFeedbackButton(show: boolean): 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(\n message: string,\n logLevel: 'INFO' | 'WARNING' | 'ERROR'\n ): void;\n logEvent(name: string, data: any): void;\n trackEvent(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 getIdentity(): Promise<any>;\n isUserIdentified(): Promise<boolean>;\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 (\n requests &&\n GleapSdk &&\n typeof GleapSdk.attachNetworkLog !== 'undefined'\n ) {\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 // eslint-disable-next-line @typescript-eslint/no-unused-vars\n GleapSdk.logEvent = (name: string, data: any) => {\n console.log('logEvent is deprecated. Use trackEvent instead.');\n GleapSdk.trackEvent(name, data);\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","logEvent","name","data","console","log","trackEvent","callbacks","registerListener","eventType","callback","push","registerCustomAction","customActionCallback","notifyCallback","length","i","gleapEmitter","addListener","config","configJSON","Object","enableNetworkLogs","exp","dataJSON","feedbackAction","isJsonString","str","e","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 phone?: string;\n value?: number;\n customData?: { [key: string]: string | number };\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 openNews(showBackButton: boolean): void;\n openNewsArticle(articleId: string, showBackButton: boolean): void;\n openFeatureRequests(showBackButton: boolean): void;\n openHelpCenter(showBackButton: boolean): void;\n openHelpCenterCollection(collectionId: string, showBackButton: boolean): void;\n openHelpCenterArticle(articleId: string, showBackButton: boolean): void;\n searchHelpCenter(term: string, showBackButton: boolean): 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 showFeedbackButton(show: boolean): 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 trackPage(pageName: String): void;\n log(message: string): void;\n logWithLogLevel(\n message: string,\n logLevel: 'INFO' | 'WARNING' | 'ERROR'\n ): void;\n logEvent(name: string, data: any): void;\n trackEvent(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 getIdentity(): Promise<any>;\n isUserIdentified(): Promise<boolean>;\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 (\n requests &&\n GleapSdk &&\n typeof GleapSdk.attachNetworkLog !== 'undefined'\n ) {\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 // eslint-disable-next-line @typescript-eslint/no-unused-vars\n GleapSdk.logEvent = (name: string, data: any) => {\n console.log('logEvent is deprecated. Use trackEvent instead.');\n GleapSdk.trackEvent(name, data);\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"]}
|
|
@@ -3,6 +3,9 @@ export declare type GleapUserProperty = {
|
|
|
3
3
|
name?: string;
|
|
4
4
|
phone?: string;
|
|
5
5
|
value?: number;
|
|
6
|
+
customData?: {
|
|
7
|
+
[key: string]: string | number;
|
|
8
|
+
};
|
|
6
9
|
};
|
|
7
10
|
declare type GleapActivationMethod = 'SHAKE' | 'SCREENSHOT';
|
|
8
11
|
declare type GleapSdkType = {
|
|
@@ -46,6 +49,7 @@ declare type GleapSdkType = {
|
|
|
46
49
|
setLanguage(language: string): void;
|
|
47
50
|
enableDebugConsoleLog(): void;
|
|
48
51
|
disableConsoleLog(): void;
|
|
52
|
+
trackPage(pageName: String): void;
|
|
49
53
|
log(message: string): void;
|
|
50
54
|
logWithLogLevel(message: string, logLevel: 'INFO' | 'WARNING' | 'ERROR'): void;
|
|
51
55
|
logEvent(name: string, data: any): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-gleapsdk",
|
|
3
|
-
"version": "8.4.
|
|
3
|
+
"version": "8.4.1",
|
|
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
|
@@ -12,6 +12,7 @@ export type GleapUserProperty = {
|
|
|
12
12
|
name?: string;
|
|
13
13
|
phone?: string;
|
|
14
14
|
value?: number;
|
|
15
|
+
customData?: { [key: string]: string | number };
|
|
15
16
|
};
|
|
16
17
|
|
|
17
18
|
type GleapActivationMethod = 'SHAKE' | 'SCREENSHOT';
|
|
@@ -66,6 +67,7 @@ type GleapSdkType = {
|
|
|
66
67
|
setLanguage(language: string): void;
|
|
67
68
|
enableDebugConsoleLog(): void;
|
|
68
69
|
disableConsoleLog(): void;
|
|
70
|
+
trackPage(pageName: String): void;
|
|
69
71
|
log(message: string): void;
|
|
70
72
|
logWithLogLevel(
|
|
71
73
|
message: string,
|