capacitor-gleap-plugin 17.0.0 → 18.1.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.
@@ -11,8 +11,8 @@ Pod::Spec.new do |s|
11
11
  s.author = package['author']
12
12
  s.source = { :git => package['repository']['url'], :tag => s.version.to_s }
13
13
  s.source_files = 'ios/Plugin/**/*.{swift,h,m,c,cc,mm,cpp}'
14
- s.ios.deployment_target = '14.0'
14
+ s.ios.deployment_target = '15.0'
15
15
  s.dependency 'Capacitor'
16
- s.dependency 'Gleap', '17.0.0'
16
+ s.dependency 'Gleap', '18.1.0'
17
17
  s.swift_version = '5.1'
18
18
  end
package/README.md CHANGED
@@ -1,8 +1,12 @@
1
- # Capacitor Gleap Plugin
1
+ # Gleap Capacitor and Ionic SDK
2
2
 
3
- Gleap SDK for Capacitor is the easiest way to integrate Gleap into your Ionic apps! Achieve better app quality with comprehensive in-app bug reporting & customer feedback for your web-apps and websites. Many thanks to Stephan Nagel (congrapp) for his work on the Gleap capacitor plugin.
3
+ Add AI-native customer support, live chat, in-app bug reporting, a help center and surveys to your Capacitor and Ionic apps with [Gleap](https://www.gleap.ai). Gleap is an Intercom alternative for software teams that connects customer conversations and feedback with product development.
4
4
 
5
- This plugin supports capacitor 7. See the instructions below for earlier capacitor versions.
5
+ This plugin supports Capacitor 7. See the instructions below for earlier Capacitor versions.
6
+
7
+ Thanks to Stephan Nagel (congrapp) for his work on the Gleap Capacitor plugin.
8
+
9
+ [SDK documentation](https://docs.gleap.ai/documentation/ioniccapacitor/README) · [Website](https://www.gleap.ai) · [Plans and pricing](https://www.gleap.ai/pricing)
6
10
 
7
11
  ## Install
8
12
 
@@ -23,11 +27,44 @@ Please install the plugin version from our capacitor-v5 brunch with `npm install
23
27
 
24
28
  Please install the plugin version from our capacitor-v4 brunch with `npm install GleapSDK/Capacitor-SDK#capacitor-v4 --save` if you are using capacitor 4 or earlier.
25
29
 
30
+ ## Data regions
31
+
32
+ Gleap projects live in a data region. The SDK talks to the EU region by default. If your project is hosted in the US region, set the region **before** calling `initialize`:
33
+
34
+ ```typescript
35
+ import { Gleap } from "capacitor-gleap-plugin";
36
+
37
+ await Gleap.setRegion({ region: "us" });
38
+ await Gleap.initialize({ API_KEY: "YOUR_API_KEY" });
39
+ ```
40
+
41
+ `setRegion` sets the API, websocket and realtime hosts at once (supported regions: `"eu"` and `"us"`). The static widget hosts (frame, banner, modal) are global and are not changed by the region.
42
+
43
+ For self-hosted or custom setups you can override single hosts with `setApiUrl({ url })`, `setWSApiUrl({ url })`, `setRealtimeHost({ host })`, `setFrameUrl({ url })`, `setBannerUrl({ url })` and `setModalUrl({ url })`. All of them must be called before `initialize`; a manual setter called after `setRegion` overrides that single host.
44
+
45
+ ## Env data
46
+
47
+ With every ticket the SDK sends env data (device, OS, screen size, locale, URL, …), shown under the **Env data** tab in Gleap. Leave out individual keys or stop collecting env data entirely:
48
+
49
+ ```typescript
50
+ await Gleap.setEnvDataPropsToIgnore({ propsToIgnore: ["deviceName", "batteryLevel"] });
51
+ await Gleap.setDisableEnvData({ disableEnvData: true });
52
+ ```
53
+
54
+ Both can be called at any time and apply to the next ticket. Each `setEnvDataPropsToIgnore` call replaces the previous list, an empty array resets it. `setDisableEnvData({ disableEnvData: false })` turns the collection back on.
55
+
26
56
  ## API
27
57
 
28
58
  <docgen-index>
29
59
 
30
60
  * [`initialize(...)`](#initialize)
61
+ * [`setRegion(...)`](#setregion)
62
+ * [`setApiUrl(...)`](#setapiurl)
63
+ * [`setWSApiUrl(...)`](#setwsapiurl)
64
+ * [`setRealtimeHost(...)`](#setrealtimehost)
65
+ * [`setFrameUrl(...)`](#setframeurl)
66
+ * [`setBannerUrl(...)`](#setbannerurl)
67
+ * [`setModalUrl(...)`](#setmodalurl)
31
68
  * [`identify(...)`](#identify)
32
69
  * [`updateContact(...)`](#updatecontact)
33
70
  * [`clearIdentity()`](#clearidentity)
@@ -39,6 +76,7 @@ Please install the plugin version from our capacitor-v4 brunch with `npm install
39
76
  * [`setTags(...)`](#settags)
40
77
  * [`setNetworkLogsBlacklist(...)`](#setnetworklogsblacklist)
41
78
  * [`setNetworkLogPropsToIgnore(...)`](#setnetworklogpropstoignore)
79
+ * [`setEnvDataPropsToIgnore(...)`](#setenvdatapropstoignore)
42
80
  * [`registerAgentTool(...)`](#registeragenttool)
43
81
  * [`sendAgentToolResult(...)`](#sendagenttoolresult)
44
82
  * [`addListener('agentToolExecution', ...)`](#addlisteneragenttoolexecution-)
@@ -73,6 +111,7 @@ Please install the plugin version from our capacitor-v4 brunch with `npm install
73
111
  * [`startBot(...)`](#startbot)
74
112
  * [`showFeedbackButton(...)`](#showfeedbackbutton)
75
113
  * [`setDisableInAppNotifications(...)`](#setdisableinappnotifications)
114
+ * [`setDisableEnvData(...)`](#setdisableenvdata)
76
115
  * [`setLanguage(...)`](#setlanguage)
77
116
  * [`disableConsoleLogOverwrite()`](#disableconsolelogoverwrite)
78
117
  * [`enableDebugConsoleLog()`](#enabledebugconsolelog)
@@ -104,6 +143,141 @@ Initialize Gleap with an API key
104
143
  --------------------
105
144
 
106
145
 
146
+ ### setRegion(...)
147
+
148
+ ```typescript
149
+ setRegion(options: { region: 'eu' | 'us'; }) => Promise<{ region: string; }>
150
+ ```
151
+
152
+ Set the data region of your Gleap project ("eu" is the default).
153
+ Sets the API, websocket and realtime hosts at once. Must be called before initialize.
154
+ A manual setter (setApiUrl, setWSApiUrl, setRealtimeHost) called afterwards overrides that single host.
155
+
156
+ | Param | Type |
157
+ | ------------- | -------------------------------------- |
158
+ | **`options`** | <code>{ region: 'eu' \| 'us'; }</code> |
159
+
160
+ **Returns:** <code>Promise&lt;{ region: string; }&gt;</code>
161
+
162
+ **Since:** 18.0.0
163
+
164
+ --------------------
165
+
166
+
167
+ ### setApiUrl(...)
168
+
169
+ ```typescript
170
+ setApiUrl(options: { url: string; }) => Promise<{ url: string; }>
171
+ ```
172
+
173
+ Set a custom API url. Must be called before initialize.
174
+
175
+ | Param | Type |
176
+ | ------------- | ----------------------------- |
177
+ | **`options`** | <code>{ url: string; }</code> |
178
+
179
+ **Returns:** <code>Promise&lt;{ url: string; }&gt;</code>
180
+
181
+ **Since:** 18.0.0
182
+
183
+ --------------------
184
+
185
+
186
+ ### setWSApiUrl(...)
187
+
188
+ ```typescript
189
+ setWSApiUrl(options: { url: string; }) => Promise<{ url: string; }>
190
+ ```
191
+
192
+ Set a custom websocket API url. Must be called before initialize.
193
+
194
+ | Param | Type |
195
+ | ------------- | ----------------------------- |
196
+ | **`options`** | <code>{ url: string; }</code> |
197
+
198
+ **Returns:** <code>Promise&lt;{ url: string; }&gt;</code>
199
+
200
+ **Since:** 18.0.0
201
+
202
+ --------------------
203
+
204
+
205
+ ### setRealtimeHost(...)
206
+
207
+ ```typescript
208
+ setRealtimeHost(options: { host: string; }) => Promise<{ host: string; }>
209
+ ```
210
+
211
+ Set a custom realtime host (hostname only, without protocol or path). Must be called before initialize.
212
+
213
+ | Param | Type |
214
+ | ------------- | ------------------------------ |
215
+ | **`options`** | <code>{ host: string; }</code> |
216
+
217
+ **Returns:** <code>Promise&lt;{ host: string; }&gt;</code>
218
+
219
+ **Since:** 18.0.0
220
+
221
+ --------------------
222
+
223
+
224
+ ### setFrameUrl(...)
225
+
226
+ ```typescript
227
+ setFrameUrl(options: { url: string; }) => Promise<{ url: string; }>
228
+ ```
229
+
230
+ Set a custom widget frame url. Must be called before initialize.
231
+
232
+ | Param | Type |
233
+ | ------------- | ----------------------------- |
234
+ | **`options`** | <code>{ url: string; }</code> |
235
+
236
+ **Returns:** <code>Promise&lt;{ url: string; }&gt;</code>
237
+
238
+ **Since:** 18.0.0
239
+
240
+ --------------------
241
+
242
+
243
+ ### setBannerUrl(...)
244
+
245
+ ```typescript
246
+ setBannerUrl(options: { url: string; }) => Promise<{ url: string; }>
247
+ ```
248
+
249
+ Set a custom banner url. Must be called before initialize.
250
+
251
+ | Param | Type |
252
+ | ------------- | ----------------------------- |
253
+ | **`options`** | <code>{ url: string; }</code> |
254
+
255
+ **Returns:** <code>Promise&lt;{ url: string; }&gt;</code>
256
+
257
+ **Since:** 18.0.0
258
+
259
+ --------------------
260
+
261
+
262
+ ### setModalUrl(...)
263
+
264
+ ```typescript
265
+ setModalUrl(options: { url: string; }) => Promise<{ url: string; }>
266
+ ```
267
+
268
+ Set a custom modal url. Must be called before initialize.
269
+
270
+ | Param | Type |
271
+ | ------------- | ----------------------------- |
272
+ | **`options`** | <code>{ url: string; }</code> |
273
+
274
+ **Returns:** <code>Promise&lt;{ url: string; }&gt;</code>
275
+
276
+ **Since:** 18.0.0
277
+
278
+ --------------------
279
+
280
+
107
281
  ### identify(...)
108
282
 
109
283
  ```typescript
@@ -301,6 +475,27 @@ Set network logs props to ignore
301
475
  --------------------
302
476
 
303
477
 
478
+ ### setEnvDataPropsToIgnore(...)
479
+
480
+ ```typescript
481
+ setEnvDataPropsToIgnore(options: { propsToIgnore: string[]; }) => Promise<{ envDataPropsToIgnoreSet: boolean; }>
482
+ ```
483
+
484
+ Set env data props to ignore. The given env data keys (exact and case-sensitive, e.g. "deviceName" or "currentUrl")
485
+ are removed before a ticket or conversation is sent. Each call replaces the previous list, an empty list resets it.
486
+ Can be called before or after initialize.
487
+
488
+ | Param | Type |
489
+ | ------------- | ----------------------------------------- |
490
+ | **`options`** | <code>{ propsToIgnore: string[]; }</code> |
491
+
492
+ **Returns:** <code>Promise&lt;{ envDataPropsToIgnoreSet: boolean; }&gt;</code>
493
+
494
+ **Since:** 18.1.0
495
+
496
+ --------------------
497
+
498
+
304
499
  ### registerAgentTool(...)
305
500
 
306
501
  ```typescript
@@ -922,6 +1117,26 @@ Disable in app notifications.
922
1117
  --------------------
923
1118
 
924
1119
 
1120
+ ### setDisableEnvData(...)
1121
+
1122
+ ```typescript
1123
+ setDisableEnvData(options: { disableEnvData: boolean; }) => Promise<{ envDataDisabled: boolean; }>
1124
+ ```
1125
+
1126
+ Disable env data. While disabled (true), no env data (device, OS, screen size, locale, URL, ...) is collected
1127
+ and tickets are sent without it. Pass false to collect env data again. Can be called before or after initialize.
1128
+
1129
+ | Param | Type |
1130
+ | ------------- | ----------------------------------------- |
1131
+ | **`options`** | <code>{ disableEnvData: boolean; }</code> |
1132
+
1133
+ **Returns:** <code>Promise&lt;{ envDataDisabled: boolean; }&gt;</code>
1134
+
1135
+ **Since:** 18.1.0
1136
+
1137
+ --------------------
1138
+
1139
+
925
1140
  ### setLanguage(...)
926
1141
 
927
1142
  ```typescript
@@ -55,5 +55,5 @@ dependencies {
55
55
  testImplementation "junit:junit:$junitVersion"
56
56
  androidTestImplementation "androidx.test.ext:junit:$androidxJunitVersion"
57
57
  androidTestImplementation "androidx.test.espresso:espresso-core:$androidxEspressoCoreVersion"
58
- implementation group: 'io.gleap', name: 'gleap-android-sdk', version: '17.0.0'
58
+ implementation group: 'io.gleap', name: 'gleap-android-sdk', version: '18.1.0'
59
59
  }
@@ -86,6 +86,119 @@ public class GleapPlugin extends Plugin {
86
86
  call.resolve(ret);
87
87
  }
88
88
 
89
+ // Data region & host overrides. All of them must be called before initialize.
90
+ @PluginMethod
91
+ public void setRegion(PluginCall call) {
92
+ if (!call.getData().has("region")) {
93
+ call.reject("No region provided");
94
+ return;
95
+ }
96
+
97
+ String region = call.getString("region");
98
+ implementation.setRegion(region);
99
+
100
+ // Build Json object and resolve success
101
+ JSObject ret = new JSObject();
102
+ ret.put("region", region);
103
+ call.resolve(ret);
104
+ }
105
+
106
+ @PluginMethod
107
+ public void setApiUrl(PluginCall call) {
108
+ if (!call.getData().has("url")) {
109
+ call.reject("No url provided");
110
+ return;
111
+ }
112
+
113
+ String url = call.getString("url");
114
+ implementation.setApiUrl(url);
115
+
116
+ // Build Json object and resolve success
117
+ JSObject ret = new JSObject();
118
+ ret.put("url", url);
119
+ call.resolve(ret);
120
+ }
121
+
122
+ @PluginMethod
123
+ public void setWSApiUrl(PluginCall call) {
124
+ if (!call.getData().has("url")) {
125
+ call.reject("No url provided");
126
+ return;
127
+ }
128
+
129
+ String url = call.getString("url");
130
+ implementation.setWSApiUrl(url);
131
+
132
+ // Build Json object and resolve success
133
+ JSObject ret = new JSObject();
134
+ ret.put("url", url);
135
+ call.resolve(ret);
136
+ }
137
+
138
+ @PluginMethod
139
+ public void setRealtimeHost(PluginCall call) {
140
+ if (!call.getData().has("host")) {
141
+ call.reject("No host provided");
142
+ return;
143
+ }
144
+
145
+ String host = call.getString("host");
146
+ implementation.setRealtimeHost(host);
147
+
148
+ // Build Json object and resolve success
149
+ JSObject ret = new JSObject();
150
+ ret.put("host", host);
151
+ call.resolve(ret);
152
+ }
153
+
154
+ @PluginMethod
155
+ public void setFrameUrl(PluginCall call) {
156
+ if (!call.getData().has("url")) {
157
+ call.reject("No url provided");
158
+ return;
159
+ }
160
+
161
+ String url = call.getString("url");
162
+ implementation.setFrameUrl(url);
163
+
164
+ // Build Json object and resolve success
165
+ JSObject ret = new JSObject();
166
+ ret.put("url", url);
167
+ call.resolve(ret);
168
+ }
169
+
170
+ @PluginMethod
171
+ public void setBannerUrl(PluginCall call) {
172
+ if (!call.getData().has("url")) {
173
+ call.reject("No url provided");
174
+ return;
175
+ }
176
+
177
+ String url = call.getString("url");
178
+ implementation.setBannerUrl(url);
179
+
180
+ // Build Json object and resolve success
181
+ JSObject ret = new JSObject();
182
+ ret.put("url", url);
183
+ call.resolve(ret);
184
+ }
185
+
186
+ @PluginMethod
187
+ public void setModalUrl(PluginCall call) {
188
+ if (!call.getData().has("url")) {
189
+ call.reject("No url provided");
190
+ return;
191
+ }
192
+
193
+ String url = call.getString("url");
194
+ implementation.setModalUrl(url);
195
+
196
+ // Build Json object and resolve success
197
+ JSObject ret = new JSObject();
198
+ ret.put("url", url);
199
+ call.resolve(ret);
200
+ }
201
+
89
202
  @PluginMethod
90
203
  public void identify(PluginCall call) {
91
204
  // If userId is empty, then pass back error
@@ -400,6 +513,38 @@ public class GleapPlugin extends Plugin {
400
513
  call.resolve(ret);
401
514
  }
402
515
 
516
+ /**
517
+ * Sets env data properties to be removed before a ticket is sent.
518
+ *
519
+ * @since 18.1.0
520
+ */
521
+ @PluginMethod
522
+ public void setEnvDataPropsToIgnore(PluginCall call) {
523
+ // Check if 'propsToIgnore' key is provided, return error if not
524
+ if (!call.getData().has("propsToIgnore")) {
525
+ call.reject("Must provide a propsToIgnore array");
526
+ return;
527
+ }
528
+
529
+ try {
530
+ // Retrieve and set the env data properties to be ignored
531
+ JSArray jsonPropsToIgnore = call.getArray("propsToIgnore");
532
+ String[] propsToIgnore = new String[jsonPropsToIgnore.length()];
533
+ for (int i = 0; i < jsonPropsToIgnore.length(); i++) {
534
+ propsToIgnore[i] = jsonPropsToIgnore.getString(i);
535
+ }
536
+
537
+ implementation.setEnvDataPropsToIgnore(propsToIgnore);
538
+ } catch (Exception ex) {
539
+ // Handle exceptions if necessary
540
+ }
541
+
542
+ // Confirm successful setting of env data properties to ignore
543
+ JSObject ret = new JSObject();
544
+ ret.put("envDataPropsToIgnoreSet", true);
545
+ call.resolve(ret);
546
+ }
547
+
403
548
  @PluginMethod
404
549
  public void attachCustomData(PluginCall call) {
405
550
  // If key is empty, then pass back error
@@ -639,6 +784,18 @@ public class GleapPlugin extends Plugin {
639
784
  call.resolve(ret);
640
785
  }
641
786
 
787
+ @PluginMethod
788
+ public void setDisableEnvData(PluginCall call) {
789
+ boolean disableEnvData = call.getBoolean("disableEnvData", false);
790
+
791
+ implementation.setDisableEnvData(disableEnvData);
792
+
793
+ // Build Json object and resolve success
794
+ JSObject ret = new JSObject();
795
+ ret.put("envDataDisabled", true);
796
+ call.resolve(ret);
797
+ }
798
+
642
799
  @PluginMethod
643
800
  public void showFeedbackButton(PluginCall call) {
644
801
  boolean show = call.getBoolean("show");
package/dist/docs.json CHANGED
@@ -26,6 +26,153 @@
26
26
  "complexTypes": [],
27
27
  "slug": "initialize"
28
28
  },
29
+ {
30
+ "name": "setRegion",
31
+ "signature": "(options: { region: 'eu' | 'us'; }) => Promise<{ region: string; }>",
32
+ "parameters": [
33
+ {
34
+ "name": "options",
35
+ "docs": "",
36
+ "type": "{ region: 'eu' | 'us'; }"
37
+ }
38
+ ],
39
+ "returns": "Promise<{ region: string; }>",
40
+ "tags": [
41
+ {
42
+ "name": "since",
43
+ "text": "18.0.0"
44
+ }
45
+ ],
46
+ "docs": "Set the data region of your Gleap project (\"eu\" is the default).\nSets the API, websocket and realtime hosts at once. Must be called before initialize.\nA manual setter (setApiUrl, setWSApiUrl, setRealtimeHost) called afterwards overrides that single host.",
47
+ "complexTypes": [],
48
+ "slug": "setregion"
49
+ },
50
+ {
51
+ "name": "setApiUrl",
52
+ "signature": "(options: { url: string; }) => Promise<{ url: string; }>",
53
+ "parameters": [
54
+ {
55
+ "name": "options",
56
+ "docs": "",
57
+ "type": "{ url: string; }"
58
+ }
59
+ ],
60
+ "returns": "Promise<{ url: string; }>",
61
+ "tags": [
62
+ {
63
+ "name": "since",
64
+ "text": "18.0.0"
65
+ }
66
+ ],
67
+ "docs": "Set a custom API url. Must be called before initialize.",
68
+ "complexTypes": [],
69
+ "slug": "setapiurl"
70
+ },
71
+ {
72
+ "name": "setWSApiUrl",
73
+ "signature": "(options: { url: string; }) => Promise<{ url: string; }>",
74
+ "parameters": [
75
+ {
76
+ "name": "options",
77
+ "docs": "",
78
+ "type": "{ url: string; }"
79
+ }
80
+ ],
81
+ "returns": "Promise<{ url: string; }>",
82
+ "tags": [
83
+ {
84
+ "name": "since",
85
+ "text": "18.0.0"
86
+ }
87
+ ],
88
+ "docs": "Set a custom websocket API url. Must be called before initialize.",
89
+ "complexTypes": [],
90
+ "slug": "setwsapiurl"
91
+ },
92
+ {
93
+ "name": "setRealtimeHost",
94
+ "signature": "(options: { host: string; }) => Promise<{ host: string; }>",
95
+ "parameters": [
96
+ {
97
+ "name": "options",
98
+ "docs": "",
99
+ "type": "{ host: string; }"
100
+ }
101
+ ],
102
+ "returns": "Promise<{ host: string; }>",
103
+ "tags": [
104
+ {
105
+ "name": "since",
106
+ "text": "18.0.0"
107
+ }
108
+ ],
109
+ "docs": "Set a custom realtime host (hostname only, without protocol or path). Must be called before initialize.",
110
+ "complexTypes": [],
111
+ "slug": "setrealtimehost"
112
+ },
113
+ {
114
+ "name": "setFrameUrl",
115
+ "signature": "(options: { url: string; }) => Promise<{ url: string; }>",
116
+ "parameters": [
117
+ {
118
+ "name": "options",
119
+ "docs": "",
120
+ "type": "{ url: string; }"
121
+ }
122
+ ],
123
+ "returns": "Promise<{ url: string; }>",
124
+ "tags": [
125
+ {
126
+ "name": "since",
127
+ "text": "18.0.0"
128
+ }
129
+ ],
130
+ "docs": "Set a custom widget frame url. Must be called before initialize.",
131
+ "complexTypes": [],
132
+ "slug": "setframeurl"
133
+ },
134
+ {
135
+ "name": "setBannerUrl",
136
+ "signature": "(options: { url: string; }) => Promise<{ url: string; }>",
137
+ "parameters": [
138
+ {
139
+ "name": "options",
140
+ "docs": "",
141
+ "type": "{ url: string; }"
142
+ }
143
+ ],
144
+ "returns": "Promise<{ url: string; }>",
145
+ "tags": [
146
+ {
147
+ "name": "since",
148
+ "text": "18.0.0"
149
+ }
150
+ ],
151
+ "docs": "Set a custom banner url. Must be called before initialize.",
152
+ "complexTypes": [],
153
+ "slug": "setbannerurl"
154
+ },
155
+ {
156
+ "name": "setModalUrl",
157
+ "signature": "(options: { url: string; }) => Promise<{ url: string; }>",
158
+ "parameters": [
159
+ {
160
+ "name": "options",
161
+ "docs": "",
162
+ "type": "{ url: string; }"
163
+ }
164
+ ],
165
+ "returns": "Promise<{ url: string; }>",
166
+ "tags": [
167
+ {
168
+ "name": "since",
169
+ "text": "18.0.0"
170
+ }
171
+ ],
172
+ "docs": "Set a custom modal url. Must be called before initialize.",
173
+ "complexTypes": [],
174
+ "slug": "setmodalurl"
175
+ },
29
176
  {
30
177
  "name": "identify",
31
178
  "signature": "(options: { userId: string; userHash?: string; name?: string; email?: string; phone?: string; companyId?: string; companyName?: string; avatar?: string; sla?: number; plan?: string; value?: number; customData?: Object; }) => Promise<{ identify: boolean; }>",
@@ -243,6 +390,27 @@
243
390
  "complexTypes": [],
244
391
  "slug": "setnetworklogpropstoignore"
245
392
  },
393
+ {
394
+ "name": "setEnvDataPropsToIgnore",
395
+ "signature": "(options: { propsToIgnore: string[]; }) => Promise<{ envDataPropsToIgnoreSet: boolean; }>",
396
+ "parameters": [
397
+ {
398
+ "name": "options",
399
+ "docs": "",
400
+ "type": "{ propsToIgnore: string[]; }"
401
+ }
402
+ ],
403
+ "returns": "Promise<{ envDataPropsToIgnoreSet: boolean; }>",
404
+ "tags": [
405
+ {
406
+ "name": "since",
407
+ "text": "18.1.0"
408
+ }
409
+ ],
410
+ "docs": "Set env data props to ignore. The given env data keys (exact and case-sensitive, e.g. \"deviceName\" or \"currentUrl\")\nare removed before a ticket or conversation is sent. Each call replaces the previous list, an empty list resets it.\nCan be called before or after initialize.",
411
+ "complexTypes": [],
412
+ "slug": "setenvdatapropstoignore"
413
+ },
246
414
  {
247
415
  "name": "registerAgentTool",
248
416
  "signature": "(options: { name: string; }) => Promise<void>",
@@ -933,6 +1101,27 @@
933
1101
  "complexTypes": [],
934
1102
  "slug": "setdisableinappnotifications"
935
1103
  },
1104
+ {
1105
+ "name": "setDisableEnvData",
1106
+ "signature": "(options: { disableEnvData: boolean; }) => Promise<{ envDataDisabled: boolean; }>",
1107
+ "parameters": [
1108
+ {
1109
+ "name": "options",
1110
+ "docs": "",
1111
+ "type": "{ disableEnvData: boolean; }"
1112
+ }
1113
+ ],
1114
+ "returns": "Promise<{ envDataDisabled: boolean; }>",
1115
+ "tags": [
1116
+ {
1117
+ "name": "since",
1118
+ "text": "18.1.0"
1119
+ }
1120
+ ],
1121
+ "docs": "Disable env data. While disabled (true), no env data (device, OS, screen size, locale, URL, ...) is collected\nand tickets are sent without it. Pass false to collect env data again. Can be called before or after initialize.",
1122
+ "complexTypes": [],
1123
+ "slug": "setdisableenvdata"
1124
+ },
936
1125
  {
937
1126
  "name": "setLanguage",
938
1127
  "signature": "(options: { languageCode: string; }) => Promise<{ setLanguage: string; }>",