@luciq/react-native 19.3.0 → 19.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/CHANGELOG.md +15 -0
- package/android/native.gradle +1 -1
- package/android/src/main/java/ai/luciq/reactlibrary/RNLuciqReactnativeModule.java +43 -0
- package/android/src/main/java/ai/luciq/reactlibrary/RNLuciqReactnativePackage.java +2 -0
- package/android/src/main/java/ai/luciq/reactlibrary/utils/ReportUtil.java +0 -7
- package/dist/modules/Luciq.d.ts +15 -0
- package/dist/modules/Luciq.js +21 -0
- package/dist/native/NativeLuciq.d.ts +3 -0
- package/ios/RNLuciq/LuciqReactBridge.m +12 -0
- package/ios/native.rb +1 -1
- package/package.json +1 -1
- package/src/modules/Luciq.ts +24 -0
- package/src/native/NativeLuciq.ts +5 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [19.4.0](https://github.com/luciqai/luciq-reactnative-sdk/compare/v19.4.0...19.3.0)
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
- **WebView Monitoring**: Added comprehensive WebView monitoring to capture performance metrics, user interactions, and network requests from WebView components.
|
|
8
|
+
- `Luciq.setWebViewMonitoringEnabled(boolean)` - Enable/disable master WebView monitoring
|
|
9
|
+
- `Luciq.setWebViewUserInteractionsTrackingEnabled(boolean)` - Enable/disable user interaction tracking in WebViews
|
|
10
|
+
- `Luciq.setWebViewNetworkTrackingEnabled(boolean`) - Enable/disable network logging from WebViews
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
|
|
14
|
+
- Bump Luciq iOS SDK to v19.5.1 ([#42](https://github.com/luciqai/luciq-reactnative-sdk/pull/42)). [See release notes](https://github.com/luciqai/Luciq-iOS-sdk/releases/tag/19.5.1).
|
|
15
|
+
|
|
16
|
+
- Bump Luciq Android SDK to v19.4.0 ([#42](https://github.com/luciqai/luciq-reactnative-sdk/pull/42)). [See release notes](https://github.com/luciqai/Luciq-Android-sdk/releases/tag/v19.4.0).
|
|
17
|
+
|
|
3
18
|
## [19.3.0](https://github.com/luciqai/luciq-reactnative-sdk/compare/v19.3.0...19.2.1)
|
|
4
19
|
|
|
5
20
|
### Added
|
package/android/native.gradle
CHANGED
|
@@ -1373,6 +1373,49 @@ public class RNLuciqReactnativeModule extends EventEmitterModule {
|
|
|
1373
1373
|
e.printStackTrace();
|
|
1374
1374
|
}
|
|
1375
1375
|
}
|
|
1376
|
+
|
|
1377
|
+
/**
|
|
1378
|
+
* Enables or disables WebView monitoring.
|
|
1379
|
+
*
|
|
1380
|
+
* @param isEnabled A boolean to enable/disable WebView monitoring.
|
|
1381
|
+
*/
|
|
1382
|
+
@ReactMethod
|
|
1383
|
+
public void setWebViewMonitoringEnabled(final boolean isEnabled) {
|
|
1384
|
+
try {
|
|
1385
|
+
Luciq.setWebViewMonitoringEnabled(isEnabled);
|
|
1386
|
+
} catch (Exception e) {
|
|
1387
|
+
e.printStackTrace();
|
|
1388
|
+
}
|
|
1389
|
+
}
|
|
1390
|
+
|
|
1391
|
+
/**
|
|
1392
|
+
* Enables or disables WebView network tracking.
|
|
1393
|
+
*
|
|
1394
|
+
* @param isEnabled A boolean to enable/disable WebView network tracking.
|
|
1395
|
+
*/
|
|
1396
|
+
@ReactMethod
|
|
1397
|
+
public void setWebViewNetworkTrackingEnabled(final boolean isEnabled) {
|
|
1398
|
+
try {
|
|
1399
|
+
Luciq.setWebViewNetworkTrackingEnabled(isEnabled);
|
|
1400
|
+
} catch (Exception e) {
|
|
1401
|
+
e.printStackTrace();
|
|
1402
|
+
}
|
|
1403
|
+
}
|
|
1404
|
+
|
|
1405
|
+
/**
|
|
1406
|
+
* Enables or disables WebView user interactions tracking.
|
|
1407
|
+
*
|
|
1408
|
+
* @param isEnabled A boolean to enable/disable WebView user interactions tracking.
|
|
1409
|
+
*/
|
|
1410
|
+
@ReactMethod
|
|
1411
|
+
public void setWebViewUserInteractionsTrackingEnabled(final boolean isEnabled) {
|
|
1412
|
+
try {
|
|
1413
|
+
Luciq.setWebViewUserInteractionsTrackingEnabled(isEnabled);
|
|
1414
|
+
} catch (Exception e) {
|
|
1415
|
+
e.printStackTrace();
|
|
1416
|
+
}
|
|
1417
|
+
}
|
|
1418
|
+
|
|
1376
1419
|
/**
|
|
1377
1420
|
* Sets the theme for Luciq using a configuration object.
|
|
1378
1421
|
*
|
|
@@ -20,6 +20,8 @@ public class RNLuciqReactnativePackage implements ReactPackage {
|
|
|
20
20
|
@NonNull
|
|
21
21
|
@Override
|
|
22
22
|
public List<NativeModule> createNativeModules(@NonNull ReactApplicationContext reactContext) {
|
|
23
|
+
RNLuciq.getInstance().setCurrentPlatform();
|
|
24
|
+
|
|
23
25
|
List<NativeModule> modules = new ArrayList<>();
|
|
24
26
|
modules.add(new RNLuciqReactnativeModule(reactContext));
|
|
25
27
|
modules.add(new RNLuciqBugReportingModule(reactContext));
|
|
@@ -6,14 +6,7 @@ import com.facebook.react.bridge.ReadableArray;
|
|
|
6
6
|
import com.facebook.react.bridge.ReadableMap;
|
|
7
7
|
import com.facebook.react.bridge.ReadableMapKeySetIterator;
|
|
8
8
|
import com.facebook.react.bridge.ReadableType;
|
|
9
|
-
import com.facebook.react.bridge.WritableArray;
|
|
10
|
-
import com.facebook.react.bridge.WritableNativeArray;
|
|
11
9
|
import ai.luciq.library.model.Report;
|
|
12
|
-
import ai.luciq.library.model.a;
|
|
13
|
-
|
|
14
|
-
import org.json.JSONException;
|
|
15
|
-
|
|
16
|
-
import java.util.ArrayList;
|
|
17
10
|
|
|
18
11
|
|
|
19
12
|
/**
|
package/dist/modules/Luciq.d.ts
CHANGED
|
@@ -26,6 +26,21 @@ export declare const init: (config: LuciqConfig) => void;
|
|
|
26
26
|
* @param appVariant the current App variant name
|
|
27
27
|
*/
|
|
28
28
|
export declare const setAppVariant: (appVariant: string) => void;
|
|
29
|
+
/**
|
|
30
|
+
* Enables or disables WebView monitoring.
|
|
31
|
+
* @param isEnabled A boolean to enable/disable WebView monitoring.
|
|
32
|
+
*/
|
|
33
|
+
export declare const setWebViewMonitoringEnabled: (isEnabled: boolean) => void;
|
|
34
|
+
/**
|
|
35
|
+
* Enables or disables WebView network tracking.
|
|
36
|
+
* @param isEnabled A boolean to enable/disable WebView network tracking.
|
|
37
|
+
*/
|
|
38
|
+
export declare const setWebViewNetworkTrackingEnabled: (isEnabled: boolean) => void;
|
|
39
|
+
/**
|
|
40
|
+
* Enables or disables WebView user interactions tracking.
|
|
41
|
+
* @param isEnabled A boolean to enable/disable WebView user interactions tracking.
|
|
42
|
+
*/
|
|
43
|
+
export declare const setWebViewUserInteractionsTrackingEnabled: (isEnabled: boolean) => void;
|
|
29
44
|
/**
|
|
30
45
|
* Sets the Code Push version to be sent with each report.
|
|
31
46
|
* @param version the Code Push version.
|
package/dist/modules/Luciq.js
CHANGED
|
@@ -90,6 +90,27 @@ export const init = (config) => {
|
|
|
90
90
|
export const setAppVariant = (appVariant) => {
|
|
91
91
|
NativeLuciq.setAppVariant(appVariant);
|
|
92
92
|
};
|
|
93
|
+
/**
|
|
94
|
+
* Enables or disables WebView monitoring.
|
|
95
|
+
* @param isEnabled A boolean to enable/disable WebView monitoring.
|
|
96
|
+
*/
|
|
97
|
+
export const setWebViewMonitoringEnabled = (isEnabled) => {
|
|
98
|
+
NativeLuciq.setWebViewMonitoringEnabled(isEnabled);
|
|
99
|
+
};
|
|
100
|
+
/**
|
|
101
|
+
* Enables or disables WebView network tracking.
|
|
102
|
+
* @param isEnabled A boolean to enable/disable WebView network tracking.
|
|
103
|
+
*/
|
|
104
|
+
export const setWebViewNetworkTrackingEnabled = (isEnabled) => {
|
|
105
|
+
NativeLuciq.setWebViewNetworkTrackingEnabled(isEnabled);
|
|
106
|
+
};
|
|
107
|
+
/**
|
|
108
|
+
* Enables or disables WebView user interactions tracking.
|
|
109
|
+
* @param isEnabled A boolean to enable/disable WebView user interactions tracking.
|
|
110
|
+
*/
|
|
111
|
+
export const setWebViewUserInteractionsTrackingEnabled = (isEnabled) => {
|
|
112
|
+
NativeLuciq.setWebViewUserInteractionsTrackingEnabled(isEnabled);
|
|
113
|
+
};
|
|
93
114
|
/**
|
|
94
115
|
* Handles app state changes and updates APM network flags if necessary.
|
|
95
116
|
*/
|
|
@@ -77,6 +77,9 @@ export interface LuciqNativeModule extends NativeModule {
|
|
|
77
77
|
getNetworkBodyMaxSize(): Promise<number>;
|
|
78
78
|
setTheme(theme: ThemeConfig): void;
|
|
79
79
|
setFullscreen(isEnabled: boolean): void;
|
|
80
|
+
setWebViewMonitoringEnabled(isEnabled: boolean): void;
|
|
81
|
+
setWebViewNetworkTrackingEnabled(isEnabled: boolean): void;
|
|
82
|
+
setWebViewUserInteractionsTrackingEnabled(isEnabled: boolean): void;
|
|
80
83
|
}
|
|
81
84
|
export declare const NativeLuciq: LuciqNativeModule;
|
|
82
85
|
export declare enum NativeEvents {
|
|
@@ -98,6 +98,18 @@ RCT_EXPORT_METHOD(setTrackUserSteps:(BOOL)isEnabled) {
|
|
|
98
98
|
[Luciq setTrackUserSteps:isEnabled];
|
|
99
99
|
}
|
|
100
100
|
|
|
101
|
+
RCT_EXPORT_METHOD(setWebViewMonitoringEnabled:(BOOL)isEnabled) {
|
|
102
|
+
[Luciq setWebViewMonitoringEnabled:isEnabled];
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
RCT_EXPORT_METHOD(setWebViewNetworkTrackingEnabled:(BOOL)isEnabled) {
|
|
106
|
+
[Luciq setWebViewNetworkTrackingEnabled:isEnabled];
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
RCT_EXPORT_METHOD(setWebViewUserInteractionsTrackingEnabled:(BOOL)isEnabled) {
|
|
110
|
+
[Luciq setWebViewUserInteractionsTrackingEnabled:isEnabled];
|
|
111
|
+
}
|
|
112
|
+
|
|
101
113
|
LCQReport *currentReport = nil;
|
|
102
114
|
RCT_EXPORT_METHOD(setPreSendingHandler:(RCTResponseSenderBlock)callBack) {
|
|
103
115
|
if (callBack != nil) {
|
package/ios/native.rb
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@luciq/react-native",
|
|
3
3
|
"description": "Luciq is the Agentic Observability Platform built for Mobile.",
|
|
4
|
-
"version": "19.
|
|
4
|
+
"version": "19.4.0",
|
|
5
5
|
"author": "Luciq (https://luciq.ai)",
|
|
6
6
|
"repository": "github:luciqai/luciq-reactnative-sdk",
|
|
7
7
|
"homepage": "https://www.luciq.ai/platforms/react-native",
|
package/src/modules/Luciq.ts
CHANGED
|
@@ -130,6 +130,30 @@ export const setAppVariant = (appVariant: string) => {
|
|
|
130
130
|
NativeLuciq.setAppVariant(appVariant);
|
|
131
131
|
};
|
|
132
132
|
|
|
133
|
+
/**
|
|
134
|
+
* Enables or disables WebView monitoring.
|
|
135
|
+
* @param isEnabled A boolean to enable/disable WebView monitoring.
|
|
136
|
+
*/
|
|
137
|
+
export const setWebViewMonitoringEnabled = (isEnabled: boolean) => {
|
|
138
|
+
NativeLuciq.setWebViewMonitoringEnabled(isEnabled);
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* Enables or disables WebView network tracking.
|
|
143
|
+
* @param isEnabled A boolean to enable/disable WebView network tracking.
|
|
144
|
+
*/
|
|
145
|
+
export const setWebViewNetworkTrackingEnabled = (isEnabled: boolean) => {
|
|
146
|
+
NativeLuciq.setWebViewNetworkTrackingEnabled(isEnabled);
|
|
147
|
+
};
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* Enables or disables WebView user interactions tracking.
|
|
151
|
+
* @param isEnabled A boolean to enable/disable WebView user interactions tracking.
|
|
152
|
+
*/
|
|
153
|
+
export const setWebViewUserInteractionsTrackingEnabled = (isEnabled: boolean) => {
|
|
154
|
+
NativeLuciq.setWebViewUserInteractionsTrackingEnabled(isEnabled);
|
|
155
|
+
};
|
|
156
|
+
|
|
133
157
|
/**
|
|
134
158
|
* Handles app state changes and updates APM network flags if necessary.
|
|
135
159
|
*/
|
|
@@ -167,6 +167,11 @@ export interface LuciqNativeModule extends NativeModule {
|
|
|
167
167
|
|
|
168
168
|
setTheme(theme: ThemeConfig): void;
|
|
169
169
|
setFullscreen(isEnabled: boolean): void;
|
|
170
|
+
|
|
171
|
+
// WebView APIs //
|
|
172
|
+
setWebViewMonitoringEnabled(isEnabled: boolean): void;
|
|
173
|
+
setWebViewNetworkTrackingEnabled(isEnabled: boolean): void;
|
|
174
|
+
setWebViewUserInteractionsTrackingEnabled(isEnabled: boolean): void;
|
|
170
175
|
}
|
|
171
176
|
|
|
172
177
|
export const NativeLuciq = NativeModules.Luciq as LuciqNativeModule;
|