react-native-gleapsdk 15.3.4 → 15.4.0
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 +44 -61
- package/ios/Gleapsdk.m +34 -53
- package/lib/commonjs/index.js +38 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/index.js +38 -0
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/index.d.ts +7 -13
- package/lib/typescript/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/react-native-gleapsdk.podspec +1 -1
- package/src/index.tsx +58 -14
package/android/build.gradle
CHANGED
|
@@ -56,7 +56,7 @@ repositories {
|
|
|
56
56
|
|
|
57
57
|
dependencies {
|
|
58
58
|
implementation "com.facebook.react:react-native:+"
|
|
59
|
-
implementation group: 'io.gleap', name: 'gleap-android-sdk', version: '15.
|
|
59
|
+
implementation group: 'io.gleap', name: 'gleap-android-sdk', version: '15.4.0'
|
|
60
60
|
|
|
61
61
|
if(rootProject && rootProject.ext) {
|
|
62
62
|
if(rootProject.ext.targetSdkVersion == 30 || rootProject.ext.compileSdkVersion == 30) {
|
|
@@ -27,15 +27,18 @@ import java.io.FileOutputStream;
|
|
|
27
27
|
import java.io.OutputStream;
|
|
28
28
|
import java.util.ArrayList;
|
|
29
29
|
import java.util.Base64;
|
|
30
|
+
import java.util.Map;
|
|
31
|
+
import java.util.UUID;
|
|
32
|
+
import java.util.concurrent.ConcurrentHashMap;
|
|
30
33
|
import java.util.regex.Matcher;
|
|
31
34
|
import java.util.regex.Pattern;
|
|
32
35
|
|
|
33
36
|
import io.gleap.APPLICATIONTYPE;
|
|
34
|
-
import io.gleap.GleapAiTool;
|
|
35
|
-
import io.gleap.GleapAiToolParameter;
|
|
36
37
|
import io.gleap.GleapSessionProperties;
|
|
37
38
|
import io.gleap.SurveyType;
|
|
38
39
|
import io.gleap.callbacks.AiToolExecutedCallback;
|
|
40
|
+
import io.gleap.callbacks.GleapAgentToolHandler;
|
|
41
|
+
import io.gleap.callbacks.GleapAgentToolResultCallback;
|
|
39
42
|
import io.gleap.callbacks.GetActivityCallback;
|
|
40
43
|
import io.gleap.Gleap;
|
|
41
44
|
import io.gleap.GleapActivationMethod;
|
|
@@ -61,6 +64,7 @@ public class GleapsdkModule extends ReactContextBaseJavaModule {
|
|
|
61
64
|
public static final String NAME = "Gleapsdk";
|
|
62
65
|
private boolean isSilentBugReport = false;
|
|
63
66
|
private boolean invalidated = false;
|
|
67
|
+
private final Map<String, GleapAgentToolResultCallback> pendingAgentToolExecutions = new ConcurrentHashMap<>();
|
|
64
68
|
|
|
65
69
|
public GleapsdkModule(ReactApplicationContext context) {
|
|
66
70
|
super(context);
|
|
@@ -799,73 +803,52 @@ public class GleapsdkModule extends ReactContextBaseJavaModule {
|
|
|
799
803
|
}
|
|
800
804
|
|
|
801
805
|
/**
|
|
802
|
-
*
|
|
803
|
-
*
|
|
806
|
+
* Registers the handler for a dashboard-defined Frontend tool. Executions
|
|
807
|
+
* round-trip to JS via the agentToolExecution event and sendAgentToolResult.
|
|
808
|
+
* @param name The tool's runtime name as defined on the AI agent.
|
|
804
809
|
*/
|
|
805
810
|
@ReactMethod
|
|
806
|
-
public void
|
|
811
|
+
public void registerAgentTool(String name) {
|
|
807
812
|
try {
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
ArrayList<GleapAiToolParameter> gleapParameters = new ArrayList<>();
|
|
825
|
-
|
|
826
|
-
if (parametersArray != null) {
|
|
827
|
-
// Loop through the parameters array
|
|
828
|
-
for (int j = 0; j < parametersArray.size(); j++) {
|
|
829
|
-
ReadableMap parameter = parametersArray.getMap(j);
|
|
830
|
-
if (parameter == null) continue;
|
|
831
|
-
|
|
832
|
-
String paramName = parameter.getString("name");
|
|
833
|
-
String paramDescription = parameter.getString("description");
|
|
834
|
-
String type = parameter.getString("type");
|
|
835
|
-
boolean required = parameter.getBoolean("required");
|
|
836
|
-
String[] enums = null;
|
|
837
|
-
if (parameter.hasKey("enum") && !parameter.isNull("enum")) {
|
|
838
|
-
ReadableArray enumsArray = parameter.getArray("enum");
|
|
839
|
-
enums = new String[enumsArray.size()];
|
|
840
|
-
for (int k = 0; k < enumsArray.size(); k++) {
|
|
841
|
-
enums[k] = enumsArray.getString(k);
|
|
842
|
-
}
|
|
843
|
-
}
|
|
844
|
-
|
|
845
|
-
// Create a new parameter and add it to the list
|
|
846
|
-
GleapAiToolParameter gleapParameter = new GleapAiToolParameter(
|
|
847
|
-
paramName, paramDescription, type, required, enums);
|
|
848
|
-
gleapParameters.add(gleapParameter);
|
|
813
|
+
Gleap.getInstance().registerAgentTool(name, new GleapAgentToolHandler() {
|
|
814
|
+
@Override
|
|
815
|
+
public void execute(JSONObject params, GleapAgentToolResultCallback callback) {
|
|
816
|
+
try {
|
|
817
|
+
String executionId = UUID.randomUUID().toString();
|
|
818
|
+
pendingAgentToolExecutions.put(executionId, callback);
|
|
819
|
+
|
|
820
|
+
JSONObject eventData = new JSONObject();
|
|
821
|
+
eventData.put("executionId", executionId);
|
|
822
|
+
eventData.put("name", name);
|
|
823
|
+
eventData.put("params", params != null ? params : new JSONObject());
|
|
824
|
+
|
|
825
|
+
getReactApplicationContext().getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)
|
|
826
|
+
.emit("agentToolExecution", eventData.toString());
|
|
827
|
+
} catch (Exception e) {
|
|
828
|
+
callback.onResult("Tool execution failed: " + e.getMessage());
|
|
849
829
|
}
|
|
850
830
|
}
|
|
831
|
+
});
|
|
832
|
+
} catch (Exception e) {
|
|
833
|
+
System.out.println("Error registering agent tool: " + e);
|
|
834
|
+
}
|
|
835
|
+
}
|
|
851
836
|
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
837
|
+
/**
|
|
838
|
+
* Resolves a pending agent tool execution with the handler's result.
|
|
839
|
+
*/
|
|
840
|
+
@ReactMethod
|
|
841
|
+
public void sendAgentToolResult(String executionId, String result) {
|
|
842
|
+
try {
|
|
843
|
+
if (executionId == null) {
|
|
844
|
+
return;
|
|
845
|
+
}
|
|
846
|
+
GleapAgentToolResultCallback callback = pendingAgentToolExecutions.remove(executionId);
|
|
847
|
+
if (callback != null) {
|
|
848
|
+
callback.onResult(result);
|
|
860
849
|
}
|
|
861
|
-
|
|
862
|
-
// Convert the list to an array and set the AI tools
|
|
863
|
-
GleapAiTool[] toolsArray = new GleapAiTool[gleapAiTools.size()];
|
|
864
|
-
toolsArray = gleapAiTools.toArray(toolsArray);
|
|
865
|
-
Gleap.getInstance().setAiTools(toolsArray);
|
|
866
|
-
|
|
867
850
|
} catch (Exception e) {
|
|
868
|
-
System.out.println("Error
|
|
851
|
+
System.out.println("Error sending agent tool result: " + e);
|
|
869
852
|
}
|
|
870
853
|
}
|
|
871
854
|
|
package/ios/Gleapsdk.m
CHANGED
|
@@ -24,6 +24,7 @@ static NSString *const RCTShowDevMenuNotification = @"RCTShowDevMenuNotification
|
|
|
24
24
|
@implementation Gleapsdk
|
|
25
25
|
{
|
|
26
26
|
BOOL _hasListeners;
|
|
27
|
+
NSMutableDictionary<NSString *, GleapAgentToolCompletion> *_pendingAgentToolExecutions;
|
|
27
28
|
}
|
|
28
29
|
|
|
29
30
|
RCT_EXPORT_MODULE()
|
|
@@ -179,7 +180,7 @@ RCT_EXPORT_METHOD(initialize:(NSString *)token)
|
|
|
179
180
|
}
|
|
180
181
|
|
|
181
182
|
- (NSArray<NSString *> *)supportedEvents {
|
|
182
|
-
return @[@"feedbackSent", @"outboundSent", @"toolExecution", @"feedbackSendingFailed", @"notificationCountUpdated", @"initialized", @"configLoaded", @"customActionTriggered", @"feedbackFlowStarted", @"widgetOpened", @"widgetClosed", @"registerPushMessageGroup", @"unregisterPushMessageGroup"];
|
|
183
|
+
return @[@"feedbackSent", @"outboundSent", @"toolExecution", @"agentToolExecution", @"feedbackSendingFailed", @"notificationCountUpdated", @"initialized", @"configLoaded", @"customActionTriggered", @"feedbackFlowStarted", @"widgetOpened", @"widgetClosed", @"registerPushMessageGroup", @"unregisterPushMessageGroup"];
|
|
183
184
|
}
|
|
184
185
|
|
|
185
186
|
RCT_EXPORT_METHOD(sendSilentCrashReport:(NSString *)description andSeverity:(NSString *)severity)
|
|
@@ -636,60 +637,40 @@ RCT_EXPORT_METHOD(clearTicketAttributes) {
|
|
|
636
637
|
});
|
|
637
638
|
}
|
|
638
639
|
|
|
639
|
-
RCT_EXPORT_METHOD(
|
|
640
|
-
dispatch_async(dispatch_get_main_queue(), ^{
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
NSString *executionType = toolDict[@"executionType"];
|
|
650
|
-
NSArray *parametersArray = toolDict[@"parameters"];
|
|
651
|
-
|
|
652
|
-
if (name && toolDescription && response && parametersArray) {
|
|
653
|
-
NSMutableArray *parameters = [[NSMutableArray alloc] init];
|
|
654
|
-
|
|
655
|
-
for (NSDictionary *paramDict in parametersArray) {
|
|
656
|
-
// Safely unwrap parameter dictionary properties
|
|
657
|
-
NSString *paramName = paramDict[@"name"];
|
|
658
|
-
NSString *paramDescription = paramDict[@"description"];
|
|
659
|
-
NSString *type = paramDict[@"type"];
|
|
660
|
-
NSNumber *required = paramDict[@"required"];
|
|
661
|
-
NSArray *enums = paramDict[@"enum"];
|
|
662
|
-
if (enums == nil) {
|
|
663
|
-
enums = [[NSArray alloc] init];
|
|
664
|
-
}
|
|
665
|
-
|
|
666
|
-
// Check for required properties in parameter dictionary
|
|
667
|
-
if (paramName && paramDescription && type && required) {
|
|
668
|
-
GleapAiToolParameter *parameter = [[GleapAiToolParameter alloc]
|
|
669
|
-
initWithName:paramName
|
|
670
|
-
parameterDescription:paramDescription
|
|
671
|
-
type:type
|
|
672
|
-
required:[required boolValue]
|
|
673
|
-
enums:enums];
|
|
674
|
-
|
|
675
|
-
[parameters addObject:parameter];
|
|
676
|
-
}
|
|
677
|
-
}
|
|
678
|
-
|
|
679
|
-
GleapAiTool *aiTool = [[GleapAiTool alloc]
|
|
680
|
-
initWithName:name
|
|
681
|
-
toolDescription:toolDescription
|
|
682
|
-
response:response
|
|
683
|
-
executionType:executionType
|
|
684
|
-
parameters:parameters];
|
|
685
|
-
|
|
686
|
-
[aiTools addObject:aiTool];
|
|
687
|
-
}
|
|
640
|
+
RCT_EXPORT_METHOD(registerAgentTool:(NSString *)name) {
|
|
641
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
642
|
+
[Gleap registerAgentTool: name handler:^(NSDictionary *params, GleapAgentToolCompletion completion) {
|
|
643
|
+
if (!self->_hasListeners) {
|
|
644
|
+
completion(@"Tool execution failed: no listener attached.");
|
|
645
|
+
return;
|
|
646
|
+
}
|
|
647
|
+
|
|
648
|
+
if (self->_pendingAgentToolExecutions == nil) {
|
|
649
|
+
self->_pendingAgentToolExecutions = [[NSMutableDictionary alloc] init];
|
|
688
650
|
}
|
|
689
651
|
|
|
690
|
-
[
|
|
691
|
-
|
|
692
|
-
|
|
652
|
+
NSString *executionId = [[NSUUID UUID] UUIDString];
|
|
653
|
+
[self->_pendingAgentToolExecutions setObject: completion forKey: executionId];
|
|
654
|
+
|
|
655
|
+
[self sendEventWithName:@"agentToolExecution" body:@{
|
|
656
|
+
@"executionId": executionId,
|
|
657
|
+
@"name": name,
|
|
658
|
+
@"params": params ?: @{}
|
|
659
|
+
}];
|
|
660
|
+
}];
|
|
661
|
+
});
|
|
662
|
+
}
|
|
663
|
+
|
|
664
|
+
RCT_EXPORT_METHOD(sendAgentToolResult:(NSString *)executionId result:(NSString *)result) {
|
|
665
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
666
|
+
if (executionId == nil || self->_pendingAgentToolExecutions == nil) {
|
|
667
|
+
return;
|
|
668
|
+
}
|
|
669
|
+
|
|
670
|
+
GleapAgentToolCompletion completion = [self->_pendingAgentToolExecutions objectForKey: executionId];
|
|
671
|
+
if (completion != nil) {
|
|
672
|
+
[self->_pendingAgentToolExecutions removeObjectForKey: executionId];
|
|
673
|
+
completion(result);
|
|
693
674
|
}
|
|
694
675
|
});
|
|
695
676
|
}
|
package/lib/commonjs/index.js
CHANGED
|
@@ -58,6 +58,15 @@ if (GleapSdk && !GleapSdk.touched) {
|
|
|
58
58
|
GleapSdk.registerCustomAction = customActionCallback => {
|
|
59
59
|
GleapSdk.registerListener('customActionTriggered', customActionCallback);
|
|
60
60
|
};
|
|
61
|
+
const registeredAgentTools = {};
|
|
62
|
+
const nativeRegisterAgentTool = GleapSdk.registerAgentTool;
|
|
63
|
+
GleapSdk.registerAgentTool = (name, handler) => {
|
|
64
|
+
if (!name || typeof handler !== 'function') {
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
registeredAgentTools[name] = handler;
|
|
68
|
+
nativeRegisterAgentTool(name);
|
|
69
|
+
};
|
|
61
70
|
const notifyCallback = function (eventType, data) {
|
|
62
71
|
if (callbacks && callbacks[eventType] && callbacks[eventType].length > 0) {
|
|
63
72
|
for (var i = 0; i < callbacks[eventType].length; i++) {
|
|
@@ -88,6 +97,35 @@ if (GleapSdk && !GleapSdk.touched) {
|
|
|
88
97
|
notifyCallback('toolExecution', dataJSON);
|
|
89
98
|
} catch (exp) {}
|
|
90
99
|
});
|
|
100
|
+
gleapEmitter.addListener('agentToolExecution', async data => {
|
|
101
|
+
try {
|
|
102
|
+
const dataJSON = data instanceof Object ? data : JSON.parse(data);
|
|
103
|
+
const {
|
|
104
|
+
executionId,
|
|
105
|
+
name,
|
|
106
|
+
params
|
|
107
|
+
} = dataJSON;
|
|
108
|
+
if (!executionId || !name) {
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
let result;
|
|
112
|
+
const handler = registeredAgentTools[name];
|
|
113
|
+
if (!handler) {
|
|
114
|
+
result = `No handler registered for tool '${name}' in the app. Register one via Gleap.registerAgentTool('${name}', handler).`;
|
|
115
|
+
} else {
|
|
116
|
+
try {
|
|
117
|
+
const handlerResult = await handler(params ?? {});
|
|
118
|
+
result = typeof handlerResult === 'string' ? handlerResult : JSON.stringify(handlerResult ?? '');
|
|
119
|
+
if (!result) {
|
|
120
|
+
result = 'The action completed without returning a result.';
|
|
121
|
+
}
|
|
122
|
+
} catch (error) {
|
|
123
|
+
result = `Tool execution failed: ${(error === null || error === void 0 ? void 0 : error.message) ?? 'unknown error'}`;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
GleapSdk.sendAgentToolResult(executionId, result);
|
|
127
|
+
} catch (exp) {}
|
|
128
|
+
});
|
|
91
129
|
gleapEmitter.addListener('feedbackSent', data => {
|
|
92
130
|
try {
|
|
93
131
|
const dataJSON = data instanceof Object ? data : JSON.parse(data);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_networklogger","_interopRequireDefault","obj","__esModule","default","LINKING_ERROR","Platform","select","ios","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","count","pushMessageGroup","isJsonString","str","e","shareToken","removeAllAttachments","_default","exports"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAsD,SAAAE,uBAAAC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEtD,MAAMG,aAAa,GACjB,gFAAgF,GAChFC,qBAAQ,CAACC,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEJ,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,6CAA6C;
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_networklogger","_interopRequireDefault","obj","__esModule","default","LINKING_ERROR","Platform","select","ios","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","registeredAgentTools","nativeRegisterAgentTool","registerAgentTool","handler","notifyCallback","length","i","gleapEmitter","NativeEventEmitter","addListener","config","configJSON","Object","enableNetworkLogs","exp","dataJSON","executionId","params","result","handlerResult","error","message","sendAgentToolResult","feedbackAction","count","pushMessageGroup","isJsonString","str","e","shareToken","removeAllAttachments","_default","exports"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -51,6 +51,15 @@ if (GleapSdk && !GleapSdk.touched) {
|
|
|
51
51
|
GleapSdk.registerCustomAction = customActionCallback => {
|
|
52
52
|
GleapSdk.registerListener('customActionTriggered', customActionCallback);
|
|
53
53
|
};
|
|
54
|
+
const registeredAgentTools = {};
|
|
55
|
+
const nativeRegisterAgentTool = GleapSdk.registerAgentTool;
|
|
56
|
+
GleapSdk.registerAgentTool = (name, handler) => {
|
|
57
|
+
if (!name || typeof handler !== 'function') {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
registeredAgentTools[name] = handler;
|
|
61
|
+
nativeRegisterAgentTool(name);
|
|
62
|
+
};
|
|
54
63
|
const notifyCallback = function (eventType, data) {
|
|
55
64
|
if (callbacks && callbacks[eventType] && callbacks[eventType].length > 0) {
|
|
56
65
|
for (var i = 0; i < callbacks[eventType].length; i++) {
|
|
@@ -81,6 +90,35 @@ if (GleapSdk && !GleapSdk.touched) {
|
|
|
81
90
|
notifyCallback('toolExecution', dataJSON);
|
|
82
91
|
} catch (exp) {}
|
|
83
92
|
});
|
|
93
|
+
gleapEmitter.addListener('agentToolExecution', async data => {
|
|
94
|
+
try {
|
|
95
|
+
const dataJSON = data instanceof Object ? data : JSON.parse(data);
|
|
96
|
+
const {
|
|
97
|
+
executionId,
|
|
98
|
+
name,
|
|
99
|
+
params
|
|
100
|
+
} = dataJSON;
|
|
101
|
+
if (!executionId || !name) {
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
let result;
|
|
105
|
+
const handler = registeredAgentTools[name];
|
|
106
|
+
if (!handler) {
|
|
107
|
+
result = `No handler registered for tool '${name}' in the app. Register one via Gleap.registerAgentTool('${name}', handler).`;
|
|
108
|
+
} else {
|
|
109
|
+
try {
|
|
110
|
+
const handlerResult = await handler(params ?? {});
|
|
111
|
+
result = typeof handlerResult === 'string' ? handlerResult : JSON.stringify(handlerResult ?? '');
|
|
112
|
+
if (!result) {
|
|
113
|
+
result = 'The action completed without returning a result.';
|
|
114
|
+
}
|
|
115
|
+
} catch (error) {
|
|
116
|
+
result = `Tool execution failed: ${(error === null || error === void 0 ? void 0 : error.message) ?? 'unknown error'}`;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
GleapSdk.sendAgentToolResult(executionId, result);
|
|
120
|
+
} catch (exp) {}
|
|
121
|
+
});
|
|
84
122
|
gleapEmitter.addListener('feedbackSent', data => {
|
|
85
123
|
try {
|
|
86
124
|
const dataJSON = data instanceof Object ? data : JSON.parse(data);
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"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","count","pushMessageGroup","isJsonString","str","e","shareToken","removeAllAttachments"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,SAASA,aAAa,EAAEC,kBAAkB,EAAEC,QAAQ,QAAQ,cAAc;AAC1E,OAAOC,uBAAuB,MAAM,iBAAiB;AAErD,MAAMC,aAAa,GACjB,gFAAgF,GAChFF,QAAQ,CAACG,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,6CAA6C;
|
|
1
|
+
{"version":3,"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","registeredAgentTools","nativeRegisterAgentTool","registerAgentTool","handler","notifyCallback","length","i","gleapEmitter","addListener","config","configJSON","Object","enableNetworkLogs","exp","dataJSON","executionId","params","result","handlerResult","error","message","sendAgentToolResult","feedbackAction","count","pushMessageGroup","isJsonString","str","e","shareToken","removeAllAttachments"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -89,19 +89,13 @@ type GleapSdkType = {
|
|
|
89
89
|
setTicketAttribute(key: string, value: string): void;
|
|
90
90
|
unsetTicketAttribute(key: string): void;
|
|
91
91
|
clearTicketAttributes(): void;
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
description: string;
|
|
100
|
-
type: 'string' | 'number' | 'boolean';
|
|
101
|
-
required: boolean;
|
|
102
|
-
enums?: string[];
|
|
103
|
-
}[];
|
|
104
|
-
}[]): void;
|
|
92
|
+
/**
|
|
93
|
+
* Registers the handler for a Frontend tool defined on your AI agent in the
|
|
94
|
+
* Gleap dashboard. The agent calls the handler with the configured
|
|
95
|
+
* parameters and waits for the returned result (string or object, which
|
|
96
|
+
* gets stringified).
|
|
97
|
+
*/
|
|
98
|
+
registerAgentTool(name: string, handler: (params: Record<string, any>) => any | Promise<any>): void;
|
|
105
99
|
};
|
|
106
100
|
declare const _default: GleapSdkType;
|
|
107
101
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AASA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CACjD,CAAC;AAEF,KAAK,qBAAqB,GAAG,OAAO,GAAG,YAAY,CAAC;AAEpD,KAAK,YAAY,GAAG;IAClB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IACvE,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IACvD,qBAAqB,CACnB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAClC,IAAI,CAAC;IACR,oCAAoC,CAClC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,EACnC,WAAW,EAAE;QACX,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,GACA,IAAI,CAAC;IACR,iBAAiB,CAAC,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IACjD,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,iBAAiB,CAAC,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IACjD,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IAChE,IAAI,IAAI,IAAI,CAAC;IACb,QAAQ,CAAC,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IACxC,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IAClE,cAAc,CAAC,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IAC9C,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IAClE,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IAClE,mBAAmB,CAAC,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IACnD,cAAc,CAAC,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IAC9C,wBAAwB,CAAC,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IAC9E,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IACxE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IACvD,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IAC9D,KAAK,IAAI,IAAI,CAAC;IACd,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAClE,oBAAoB,CAClB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,iBAAiB,EACjC,QAAQ,EAAE,MAAM,GACf,IAAI,CAAC;IACR,aAAa,CAAC,cAAc,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACvD,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IACxC,aAAa,IAAI,IAAI,CAAC;IACtB,WAAW,CAAC,QAAQ,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACvD,uBAAuB,CAAC,mBAAmB,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC7D,0BAA0B,CAAC,uBAAuB,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACpE,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,gBAAgB,CAAC,UAAU,EAAE,GAAG,GAAG,IAAI,CAAC;IACxC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,eAAe,IAAI,IAAI,CAAC;IACxB,4BAA4B,CAAC,yBAAyB,EAAE,OAAO,GAAG,IAAI,CAAC;IACvE,8BAA8B,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3D,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IAC1E,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,qBAAqB,IAAI,IAAI,CAAC;IAC9B,iBAAiB,IAAI,IAAI,CAAC;IAC1B,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC9B,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,aAAa,GAAG,IAAI,CAAC;IACrE,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,eAAe,CACb,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GACrC,IAAI,CAAC;IACR,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;IACxC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;IAC1C,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1D,oBAAoB,IAAI,IAAI,CAAC;IAC7B,mBAAmB,IAAI,IAAI,CAAC;IAC5B,kBAAkB,IAAI,IAAI,CAAC;IAC3B,oBAAoB,CAAC,iBAAiB,EAAE,qBAAqB,EAAE,GAAG,IAAI,CAAC;IACvE,oBAAoB,CAClB,oBAAoB,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAC1E,IAAI,CAAC;IACR,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IAC5B,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrD,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,qBAAqB,IAAI,IAAI,CAAC;IAC9B;;;;;OAKG;IACH,iBAAiB,CACf,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAC3D,IAAI,CAAC;CACT,CAAC;;AA4NF,wBAAwC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-gleapsdk",
|
|
3
|
-
"version": "15.
|
|
3
|
+
"version": "15.4.0",
|
|
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
|
@@ -109,20 +109,15 @@ type GleapSdkType = {
|
|
|
109
109
|
setTicketAttribute(key: string, value: string): void;
|
|
110
110
|
unsetTicketAttribute(key: string): void;
|
|
111
111
|
clearTicketAttributes(): void;
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
type: 'string' | 'number' | 'boolean';
|
|
122
|
-
required: boolean;
|
|
123
|
-
enums?: string[];
|
|
124
|
-
}[];
|
|
125
|
-
}[]
|
|
112
|
+
/**
|
|
113
|
+
* Registers the handler for a Frontend tool defined on your AI agent in the
|
|
114
|
+
* Gleap dashboard. The agent calls the handler with the configured
|
|
115
|
+
* parameters and waits for the returned result (string or object, which
|
|
116
|
+
* gets stringified).
|
|
117
|
+
*/
|
|
118
|
+
registerAgentTool(
|
|
119
|
+
name: string,
|
|
120
|
+
handler: (params: Record<string, any>) => any | Promise<any>
|
|
126
121
|
): void;
|
|
127
122
|
};
|
|
128
123
|
|
|
@@ -190,6 +185,22 @@ if (GleapSdk && !GleapSdk.touched) {
|
|
|
190
185
|
GleapSdk.registerListener('customActionTriggered', customActionCallback);
|
|
191
186
|
};
|
|
192
187
|
|
|
188
|
+
const registeredAgentTools: {
|
|
189
|
+
[name: string]: (params: Record<string, any>) => any;
|
|
190
|
+
} = {};
|
|
191
|
+
const nativeRegisterAgentTool = GleapSdk.registerAgentTool;
|
|
192
|
+
|
|
193
|
+
GleapSdk.registerAgentTool = (
|
|
194
|
+
name: string,
|
|
195
|
+
handler: (params: Record<string, any>) => any
|
|
196
|
+
) => {
|
|
197
|
+
if (!name || typeof handler !== 'function') {
|
|
198
|
+
return;
|
|
199
|
+
}
|
|
200
|
+
registeredAgentTools[name] = handler;
|
|
201
|
+
nativeRegisterAgentTool(name);
|
|
202
|
+
};
|
|
203
|
+
|
|
193
204
|
const notifyCallback = function (eventType: string, data?: any) {
|
|
194
205
|
if (callbacks && callbacks[eventType] && callbacks[eventType].length > 0) {
|
|
195
206
|
for (var i = 0; i < callbacks[eventType].length; i++) {
|
|
@@ -225,6 +236,39 @@ if (GleapSdk && !GleapSdk.touched) {
|
|
|
225
236
|
} catch (exp) {}
|
|
226
237
|
});
|
|
227
238
|
|
|
239
|
+
gleapEmitter.addListener('agentToolExecution', async (data) => {
|
|
240
|
+
try {
|
|
241
|
+
const dataJSON = data instanceof Object ? data : JSON.parse(data);
|
|
242
|
+
const { executionId, name, params } = dataJSON;
|
|
243
|
+
if (!executionId || !name) {
|
|
244
|
+
return;
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
let result;
|
|
248
|
+
const handler = registeredAgentTools[name];
|
|
249
|
+
if (!handler) {
|
|
250
|
+
result = `No handler registered for tool '${name}' in the app. Register one via Gleap.registerAgentTool('${name}', handler).`;
|
|
251
|
+
} else {
|
|
252
|
+
try {
|
|
253
|
+
const handlerResult = await handler(params ?? {});
|
|
254
|
+
result =
|
|
255
|
+
typeof handlerResult === 'string'
|
|
256
|
+
? handlerResult
|
|
257
|
+
: JSON.stringify(handlerResult ?? '');
|
|
258
|
+
if (!result) {
|
|
259
|
+
result = 'The action completed without returning a result.';
|
|
260
|
+
}
|
|
261
|
+
} catch (error: any) {
|
|
262
|
+
result = `Tool execution failed: ${
|
|
263
|
+
error?.message ?? 'unknown error'
|
|
264
|
+
}`;
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
GleapSdk.sendAgentToolResult(executionId, result);
|
|
269
|
+
} catch (exp) {}
|
|
270
|
+
});
|
|
271
|
+
|
|
228
272
|
gleapEmitter.addListener('feedbackSent', (data) => {
|
|
229
273
|
try {
|
|
230
274
|
const dataJSON = data instanceof Object ? data : JSON.parse(data);
|