@dreamhorizonorg/pulse-react-native 0.0.1 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/PulseReactNativeOtel.podspec +1 -1
- package/README.md +34 -879
- package/android/build.gradle +10 -15
- package/android/proguard-rules.pro +3 -99
- package/android/src/main/java/com/pulsereactnativeotel/Pulse.kt +89 -0
- package/android/src/main/java/com/pulsereactnativeotel/PulseOtelConstants.kt +1 -1
- package/android/src/main/java/com/pulsereactnativeotel/PulseReactNativeOtelLogger.kt +3 -1
- package/android/src/main/java/com/pulsereactnativeotel/PulseReactNativeOtelModule.kt +69 -3
- package/android/src/main/java/com/pulsereactnativeotel/PulseReactNativeOtelPackage.kt +1 -1
- package/android/src/main/java/com/pulsereactnativeotel/PulseReactNativeOtelTracer.kt +24 -8
- package/android/src/main/java/com/pulsereactnativeotel/ReactNativeScreenAttributesLogRecordProcessor.kt +21 -0
- package/android/src/main/java/com/pulsereactnativeotel/ReactNativeScreenAttributesSpanProcessor.kt +30 -0
- package/android/src/main/java/com/pulsereactnativeotel/ReactNativeScreenNameTracker.kt +17 -0
- package/app.plugin.js +1 -0
- package/ios/PulseReactNativeOtel.mm +7 -1
- package/lib/module/NativePulseReactNativeOtel.js.map +1 -1
- package/lib/module/config.js +57 -19
- package/lib/module/config.js.map +1 -1
- package/lib/module/errorBoundary.js.map +1 -1
- package/lib/module/events.js +6 -0
- package/lib/module/events.js.map +1 -1
- package/lib/module/index.js +4 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/navigation/index.js +179 -0
- package/lib/module/navigation/index.js.map +1 -0
- package/lib/module/navigation/navigation.interface.js +8 -0
- package/lib/module/navigation/navigation.interface.js.map +1 -0
- package/lib/module/navigation/screen-interactive.js +101 -0
- package/lib/module/navigation/screen-interactive.js.map +1 -0
- package/lib/module/navigation/screen-load.js +67 -0
- package/lib/module/navigation/screen-load.js.map +1 -0
- package/lib/module/navigation/screen-session.js +60 -0
- package/lib/module/navigation/screen-session.js.map +1 -0
- package/lib/module/navigation/useNavigationTracking.js +34 -0
- package/lib/module/navigation/useNavigationTracking.js.map +1 -0
- package/lib/module/navigation/utils.js +17 -0
- package/lib/module/navigation/utils.js.map +1 -0
- package/lib/module/network-interceptor/graphql-helper.js +92 -0
- package/lib/module/network-interceptor/graphql-helper.js.map +1 -0
- package/lib/module/network-interceptor/header-helper.js +24 -0
- package/lib/module/network-interceptor/header-helper.js.map +1 -0
- package/lib/module/network-interceptor/initialization.js +18 -1
- package/lib/module/network-interceptor/initialization.js.map +1 -1
- package/lib/module/network-interceptor/request-tracker-xhr.js +61 -4
- package/lib/module/network-interceptor/request-tracker-xhr.js.map +1 -1
- package/lib/module/network-interceptor/span-helpers.js +36 -16
- package/lib/module/network-interceptor/span-helpers.js.map +1 -1
- package/lib/module/network-interceptor/url-helper.js +58 -2
- package/lib/module/network-interceptor/url-helper.js.map +1 -1
- package/lib/module/pulse.constants.js +47 -0
- package/lib/module/pulse.constants.js.map +1 -0
- package/lib/module/trace.js +17 -2
- package/lib/module/trace.js.map +1 -1
- package/lib/typescript/plugin/src/index.d.ts +5 -0
- package/lib/typescript/plugin/src/index.d.ts.map +1 -0
- package/lib/typescript/plugin/src/types.d.ts +27 -0
- package/lib/typescript/plugin/src/types.d.ts.map +1 -0
- package/lib/typescript/plugin/src/utils.d.ts +10 -0
- package/lib/typescript/plugin/src/utils.d.ts.map +1 -0
- package/lib/typescript/plugin/src/withAndroidPulse.d.ts +4 -0
- package/lib/typescript/plugin/src/withAndroidPulse.d.ts.map +1 -0
- package/lib/typescript/src/NativePulseReactNativeOtel.d.ts +15 -2
- package/lib/typescript/src/NativePulseReactNativeOtel.d.ts.map +1 -1
- package/lib/typescript/src/config.d.ts +14 -8
- package/lib/typescript/src/config.d.ts.map +1 -1
- package/lib/typescript/src/errorBoundary.d.ts.map +1 -1
- package/lib/typescript/src/events.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +6 -4
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/navigation/index.d.ts +13 -0
- package/lib/typescript/src/navigation/index.d.ts.map +1 -0
- package/lib/typescript/src/navigation/navigation.interface.d.ts +18 -0
- package/lib/typescript/src/navigation/navigation.interface.d.ts.map +1 -0
- package/lib/typescript/src/navigation/screen-interactive.d.ts +16 -0
- package/lib/typescript/src/navigation/screen-interactive.d.ts.map +1 -0
- package/lib/typescript/src/navigation/screen-load.d.ts +13 -0
- package/lib/typescript/src/navigation/screen-load.d.ts.map +1 -0
- package/lib/typescript/src/navigation/screen-session.d.ts +15 -0
- package/lib/typescript/src/navigation/screen-session.d.ts.map +1 -0
- package/lib/typescript/src/navigation/useNavigationTracking.d.ts +5 -0
- package/lib/typescript/src/navigation/useNavigationTracking.d.ts.map +1 -0
- package/lib/typescript/src/navigation/utils.d.ts +8 -0
- package/lib/typescript/src/navigation/utils.d.ts.map +1 -0
- package/lib/typescript/src/network-interceptor/graphql-helper.d.ts +8 -0
- package/lib/typescript/src/network-interceptor/graphql-helper.d.ts.map +1 -0
- package/lib/typescript/src/network-interceptor/header-helper.d.ts +15 -0
- package/lib/typescript/src/network-interceptor/header-helper.d.ts.map +1 -0
- package/lib/typescript/src/network-interceptor/initialization.d.ts +4 -1
- package/lib/typescript/src/network-interceptor/initialization.d.ts.map +1 -1
- package/lib/typescript/src/network-interceptor/network.interface.d.ts +3 -0
- package/lib/typescript/src/network-interceptor/network.interface.d.ts.map +1 -1
- package/lib/typescript/src/network-interceptor/request-tracker-xhr.d.ts.map +1 -1
- package/lib/typescript/src/network-interceptor/span-helpers.d.ts +1 -1
- package/lib/typescript/src/network-interceptor/span-helpers.d.ts.map +1 -1
- package/lib/typescript/src/network-interceptor/url-helper.d.ts +9 -0
- package/lib/typescript/src/network-interceptor/url-helper.d.ts.map +1 -1
- package/lib/typescript/src/pulse.constants.d.ts +43 -0
- package/lib/typescript/src/pulse.constants.d.ts.map +1 -0
- package/lib/typescript/src/pulse.interface.d.ts +2 -1
- package/lib/typescript/src/pulse.interface.d.ts.map +1 -1
- package/lib/typescript/src/trace.d.ts +7 -0
- package/lib/typescript/src/trace.d.ts.map +1 -1
- package/package.json +29 -9
- package/plugin/build/index.d.ts +4 -0
- package/plugin/build/index.js +10 -0
- package/plugin/build/types.d.ts +26 -0
- package/plugin/build/types.js +2 -0
- package/plugin/build/utils.d.ts +9 -0
- package/plugin/build/utils.js +102 -0
- package/plugin/build/withAndroidPulse.d.ts +3 -0
- package/plugin/build/withAndroidPulse.js +53 -0
- package/scripts/pulse-cli.js +82 -0
- package/scripts/uploadService.js +122 -0
- package/scripts/utils.js +125 -0
- package/src/NativePulseReactNativeOtel.ts +18 -2
- package/src/config.ts +94 -23
- package/src/errorBoundary.tsx +11 -5
- package/src/events.ts +7 -0
- package/src/global.d.ts +0 -1
- package/src/index.tsx +7 -4
- package/src/navigation/index.ts +335 -0
- package/src/navigation/navigation.interface.ts +26 -0
- package/src/navigation/screen-interactive.ts +149 -0
- package/src/navigation/screen-load.ts +97 -0
- package/src/navigation/screen-session.ts +87 -0
- package/src/navigation/useNavigationTracking.ts +59 -0
- package/src/navigation/utils.ts +19 -0
- package/src/network-interceptor/graphql-helper.ts +110 -0
- package/src/network-interceptor/header-helper.ts +26 -0
- package/src/network-interceptor/initialization.ts +22 -1
- package/src/network-interceptor/network.interface.ts +3 -0
- package/src/network-interceptor/request-tracker-xhr.ts +93 -3
- package/src/network-interceptor/span-helpers.ts +47 -18
- package/src/network-interceptor/url-helper.ts +67 -1
- package/src/pulse.constants.ts +52 -0
- package/src/pulse.interface.ts +6 -1
- package/src/trace.ts +25 -2
- package/LICENSE +0 -20
- package/lib/module/network-interceptor/request-tracker-fetch.js +0 -72
- package/lib/module/network-interceptor/request-tracker-fetch.js.map +0 -1
- package/lib/module/reactNavigation.js +0 -100
- package/lib/module/reactNavigation.js.map +0 -1
- package/lib/typescript/src/network-interceptor/request-tracker-fetch.d.ts +0 -7
- package/lib/typescript/src/network-interceptor/request-tracker-fetch.d.ts.map +0 -1
- package/lib/typescript/src/reactNavigation.d.ts +0 -10
- package/lib/typescript/src/reactNavigation.d.ts.map +0 -1
- package/src/network-interceptor/request-tracker-fetch.ts +0 -96
- package/src/reactNavigation.tsx +0 -146
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["safeMatch","text","regex","groupIndex","match","
|
|
1
|
+
{"version":3,"names":["SearchParams","params","Map","constructor","search","queryString","startsWith","slice","pairs","split","pair","equalIndex","indexOf","key","decodeURIComponent","set","substring","value","e","console","warn","get","name","has","keys","Array","from","values","safeMatch","text","regex","groupIndex","match","parseUrl","url","trim","length","protocol","protocolWithColon","hostname","port","host","pathMatch","pathname","searchContent","hashContent","hash","searchParams","href","extractHttpAttributes","parsed","attributes","replace","portNum","parseInt","isNaN"],"sourceRoot":"../../../src","sources":["network-interceptor/url-helper.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Constants for Pulse React Native OpenTelemetry integration
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
export let SPAN_NAMES = /*#__PURE__*/function (SPAN_NAMES) {
|
|
8
|
+
SPAN_NAMES["SCREEN_SESSION"] = "ScreenSession";
|
|
9
|
+
SPAN_NAMES["NAVIGATED"] = "Navigated";
|
|
10
|
+
SPAN_NAMES["SCREEN_INTERACTIVE"] = "ScreenInteractive";
|
|
11
|
+
return SPAN_NAMES;
|
|
12
|
+
}({});
|
|
13
|
+
export let ATTRIBUTE_KEYS = /*#__PURE__*/function (ATTRIBUTE_KEYS) {
|
|
14
|
+
ATTRIBUTE_KEYS["PULSE_TYPE"] = "pulse.type";
|
|
15
|
+
ATTRIBUTE_KEYS["SCREEN_NAME"] = "screen.name";
|
|
16
|
+
ATTRIBUTE_KEYS["ROUTE_KEY"] = "routeKey";
|
|
17
|
+
ATTRIBUTE_KEYS["LAST_SCREEN_NAME"] = "last.screen.name";
|
|
18
|
+
ATTRIBUTE_KEYS["ROUTE_HAS_BEEN_SEEN"] = "routeHasBeenSeen";
|
|
19
|
+
ATTRIBUTE_KEYS["PLATFORM"] = "platform";
|
|
20
|
+
ATTRIBUTE_KEYS["GRAPHQL_OPERATION_NAME"] = "graphql.operation.name";
|
|
21
|
+
ATTRIBUTE_KEYS["GRAPHQL_OPERATION_TYPE"] = "graphql.operation.type";
|
|
22
|
+
ATTRIBUTE_KEYS["HTTP_METHOD"] = "http.method";
|
|
23
|
+
ATTRIBUTE_KEYS["HTTP_URL"] = "http.url";
|
|
24
|
+
ATTRIBUTE_KEYS["HTTP_STATUS_CODE"] = "http.status_code";
|
|
25
|
+
ATTRIBUTE_KEYS["HTTP_REQUEST_TYPE"] = "http.request.type";
|
|
26
|
+
ATTRIBUTE_KEYS["HTTP_REQUEST_HEADER"] = "http.request.header";
|
|
27
|
+
ATTRIBUTE_KEYS["HTTP_RESPONSE_HEADER"] = "http.response.header";
|
|
28
|
+
ATTRIBUTE_KEYS["ERROR_MESSAGE"] = "error.message";
|
|
29
|
+
ATTRIBUTE_KEYS["ERROR_STACK"] = "error.stack";
|
|
30
|
+
return ATTRIBUTE_KEYS;
|
|
31
|
+
}({});
|
|
32
|
+
export let PULSE_TYPES = /*#__PURE__*/function (PULSE_TYPES) {
|
|
33
|
+
PULSE_TYPES["SCREEN_SESSION"] = "screen_session";
|
|
34
|
+
PULSE_TYPES["SCREEN_LOAD"] = "screen_load";
|
|
35
|
+
PULSE_TYPES["SCREEN_INTERACTIVE"] = "screen_interactive";
|
|
36
|
+
PULSE_TYPES["NETWORK"] = "network";
|
|
37
|
+
return PULSE_TYPES;
|
|
38
|
+
}({});
|
|
39
|
+
export const PULSE_FEATURE_NAMES = {
|
|
40
|
+
RN_SCREEN_LOAD: 'rn_screen_load',
|
|
41
|
+
SCREEN_SESSION: 'screen_session',
|
|
42
|
+
RN_SCREEN_INTERACTIVE: 'rn_screen_interactive',
|
|
43
|
+
NETWORK_INSTRUMENTATION: 'network_instrumentation',
|
|
44
|
+
CUSTOM_EVENTS: 'custom_events',
|
|
45
|
+
JS_CRASH: 'js_crash'
|
|
46
|
+
};
|
|
47
|
+
//# sourceMappingURL=pulse.constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["SPAN_NAMES","ATTRIBUTE_KEYS","PULSE_TYPES","PULSE_FEATURE_NAMES","RN_SCREEN_LOAD","SCREEN_SESSION","RN_SCREEN_INTERACTIVE","NETWORK_INSTRUMENTATION","CUSTOM_EVENTS","JS_CRASH"],"sourceRoot":"../../src","sources":["pulse.constants.ts"],"mappings":";;AAAA;AACA;AACA;;AAEA,WAAYA,UAAU,0BAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;AAMtB,WAAYC,cAAc,0BAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA;AAmB1B,WAAYC,WAAW,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;AAOvB,OAAO,MAAMC,mBAAmB,GAAG;EACjCC,cAAc,EAAE,gBAAgB;EAChCC,cAAc,EAAE,gBAAgB;EAChCC,qBAAqB,EAAE,uBAAuB;EAC9CC,uBAAuB,EAAE,yBAAyB;EAClDC,aAAa,EAAE,eAAe;EAC9BC,QAAQ,EAAE;AACZ,CAAU","ignoreList":[]}
|
package/lib/module/trace.js
CHANGED
|
@@ -4,6 +4,13 @@ import PulseReactNativeOtel from "./NativePulseReactNativeOtel.js";
|
|
|
4
4
|
import { isSupportedPlatform } from "./initialization.js";
|
|
5
5
|
import { mergeWithGlobalAttributes } from "./globalAttributes.js";
|
|
6
6
|
import { extractErrorDetails } from "./utility.js";
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Options for starting a span.
|
|
10
|
+
* @param attributes - Attributes to set on the span.
|
|
11
|
+
* @param inheritContext - Controls whether or not the new span will be parented in the existing (current) context. If false, a new context is created.
|
|
12
|
+
*/
|
|
13
|
+
|
|
7
14
|
export let SpanStatusCode = /*#__PURE__*/function (SpanStatusCode) {
|
|
8
15
|
SpanStatusCode["OK"] = "OK";
|
|
9
16
|
SpanStatusCode["ERROR"] = "ERROR";
|
|
@@ -21,7 +28,8 @@ export function startSpan(name, options) {
|
|
|
21
28
|
};
|
|
22
29
|
}
|
|
23
30
|
const mergedAttributes = mergeWithGlobalAttributes(options?.attributes || {});
|
|
24
|
-
const
|
|
31
|
+
const inheritContext = options?.inheritContext ?? true;
|
|
32
|
+
const spanId = PulseReactNativeOtel.startSpan(name, inheritContext, mergedAttributes);
|
|
25
33
|
return {
|
|
26
34
|
end: statusCode => {
|
|
27
35
|
return endSpan(spanId, statusCode);
|
|
@@ -43,7 +51,8 @@ export function trackSpan(name, options, fn) {
|
|
|
43
51
|
return fn();
|
|
44
52
|
}
|
|
45
53
|
const mergedAttributes = mergeWithGlobalAttributes(options?.attributes || {});
|
|
46
|
-
const
|
|
54
|
+
const inheritContext = options?.inheritContext ?? true;
|
|
55
|
+
const spanId = PulseReactNativeOtel.startSpan(name, inheritContext, mergedAttributes);
|
|
47
56
|
const result = fn();
|
|
48
57
|
if (result && typeof result.then === 'function') {
|
|
49
58
|
return result.finally(() => {
|
|
@@ -56,6 +65,12 @@ export function trackSpan(name, options, fn) {
|
|
|
56
65
|
function endSpan(spanId, statusCode) {
|
|
57
66
|
PulseReactNativeOtel.endSpan(spanId, statusCode);
|
|
58
67
|
}
|
|
68
|
+
export function discardSpan(spanId) {
|
|
69
|
+
if (!isSupportedPlatform()) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
PulseReactNativeOtel.discardSpan(spanId);
|
|
73
|
+
}
|
|
59
74
|
function addSpanEvent(spanId, name, attributes) {
|
|
60
75
|
PulseReactNativeOtel.addSpanEvent(spanId, name, attributes || undefined);
|
|
61
76
|
}
|
package/lib/module/trace.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PulseReactNativeOtel","isSupportedPlatform","mergeWithGlobalAttributes","extractErrorDetails","SpanStatusCode","startSpan","name","options","end","_statusCode","addEvent","_eventName","_eventAttributes","setAttributes","_attributes","recordException","_error","spanId","undefined","mergedAttributes","attributes","statusCode","endSpan","eventName","eventAttributes","addSpanEvent","spanAttributes","setSpanAttributes","error","recordSpanException","trackSpan","fn","result","then","finally","UNSET","message","stackTrace","errorType","observedTimeMs","Date","now","reportException"],"sourceRoot":"../../src","sources":["trace.ts"],"mappings":";;AAAA,OAAOA,oBAAoB,MAAM,iCAA8B;AAC/D,SAASC,mBAAmB,QAAQ,qBAAkB;AACtD,SAASC,yBAAyB,QAAQ,uBAAoB;AAC9D,SAASC,mBAAmB,QAAQ,cAAW
|
|
1
|
+
{"version":3,"names":["PulseReactNativeOtel","isSupportedPlatform","mergeWithGlobalAttributes","extractErrorDetails","SpanStatusCode","startSpan","name","options","end","_statusCode","addEvent","_eventName","_eventAttributes","setAttributes","_attributes","recordException","_error","spanId","undefined","mergedAttributes","attributes","inheritContext","statusCode","endSpan","eventName","eventAttributes","addSpanEvent","spanAttributes","setSpanAttributes","error","recordSpanException","trackSpan","fn","result","then","finally","UNSET","discardSpan","message","stackTrace","errorType","observedTimeMs","Date","now","reportException"],"sourceRoot":"../../src","sources":["trace.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../plugin/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAE9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;;AAchD,wBAA2E"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenTelemetry attribute value types.
|
|
3
|
+
* Based on OpenTelemetry JavaScript SDK attribute types.
|
|
4
|
+
* @see https://github.com/open-telemetry/opentelemetry-js/blob/main/api/src/common/Attributes.ts
|
|
5
|
+
*/
|
|
6
|
+
export type PulseAttributeValue = string | number | boolean | string[] | number[] | boolean[];
|
|
7
|
+
export type PulseAttributes = Record<string, PulseAttributeValue | undefined | null>;
|
|
8
|
+
interface IInteractionConfig {
|
|
9
|
+
enabled: boolean;
|
|
10
|
+
url?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface PulsePluginProps {
|
|
13
|
+
endpointBaseUrl: string;
|
|
14
|
+
endpointHeaders?: Record<string, string>;
|
|
15
|
+
globalAttributes?: PulseAttributes;
|
|
16
|
+
instrumentation?: {
|
|
17
|
+
interaction?: IInteractionConfig;
|
|
18
|
+
activity?: boolean;
|
|
19
|
+
network?: boolean;
|
|
20
|
+
anr?: boolean;
|
|
21
|
+
crash?: boolean;
|
|
22
|
+
slowRendering?: boolean;
|
|
23
|
+
fragment?: boolean;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../plugin/src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAC3B,MAAM,GACN,MAAM,GACN,OAAO,GACP,MAAM,EAAE,GACR,MAAM,EAAE,GACR,OAAO,EAAE,CAAC;AAEd,MAAM,MAAM,eAAe,GAAG,MAAM,CAClC,MAAM,EACN,mBAAmB,GAAG,SAAS,GAAG,IAAI,CACvC,CAAC;AAEF,UAAU,kBAAkB;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,gBAAgB,CAAC,EAAE,eAAe,CAAC;IACnC,eAAe,CAAC,EAAE;QAChB,WAAW,CAAC,EAAE,kBAAkB,CAAC;QACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,GAAG,CAAC,EAAE,OAAO,CAAC;QACd,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;CACH"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const PULSE_IMPORT = "import com.pulsereactnativeotel.Pulse\n";
|
|
2
|
+
export declare const ATTRIBUTES_IMPORT = "import io.opentelemetry.api.common.Attributes\nimport io.opentelemetry.api.common.AttributeKey\n";
|
|
3
|
+
import type { PulsePluginProps } from './types';
|
|
4
|
+
export declare function buildPulseInitializationCode(options: {
|
|
5
|
+
endpointBaseUrl: string;
|
|
6
|
+
endpointHeaders?: Record<string, string>;
|
|
7
|
+
globalAttributes?: PulsePluginProps['globalAttributes'];
|
|
8
|
+
instrumentation?: PulsePluginProps['instrumentation'];
|
|
9
|
+
}): string;
|
|
10
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../plugin/src/utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,4CAA4C,CAAC;AAEtE,eAAO,MAAM,iBAAiB,qGACsE,CAAC;AAErG,OAAO,KAAK,EAAE,gBAAgB,EAAmB,MAAM,SAAS,CAAC;AA6DjE,wBAAgB,4BAA4B,CAAC,OAAO,EAAE;IACpD,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;IACxD,eAAe,CAAC,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;CACvD,GAAG,MAAM,CA2DT"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"withAndroidPulse.d.ts","sourceRoot":"","sources":["../../../../plugin/src/withAndroidPulse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AASzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD,eAAO,MAAM,gBAAgB,EAAE,YAAY,CAAC,gBAAgB,CAyD3D,CAAC"}
|
|
@@ -7,8 +7,8 @@ export interface Spec extends TurboModule {
|
|
|
7
7
|
/** Report a JS exception (message + stack, with fatal flag). */
|
|
8
8
|
/** This function was made synchronous to attach current span context to the error event. Since span is created synchronously on mqt_js thread.*/
|
|
9
9
|
reportException(errorMessage: string, observedTimeMs: number, stackTrace: string, isFatal: boolean, errorType: string, attributes?: Object): boolean;
|
|
10
|
-
/** Start an active span; returns spanId
|
|
11
|
-
startSpan(name: string, attributes?: Object): string;
|
|
10
|
+
/** Start an active span; returns spanId. */
|
|
11
|
+
startSpan(name: string, inheritContext: boolean, attributes?: Object): string;
|
|
12
12
|
/** End a span with optional status code. */
|
|
13
13
|
endSpan(spanId: string, statusCode?: string): boolean;
|
|
14
14
|
/** Add an event to a span. */
|
|
@@ -17,6 +17,8 @@ export interface Spec extends TurboModule {
|
|
|
17
17
|
setSpanAttributes(spanId: string, attributes?: Object): boolean;
|
|
18
18
|
/** Record an exception on a span. */
|
|
19
19
|
recordSpanException(spanId: string, errorMessage: string, stackTrace?: string): boolean;
|
|
20
|
+
/** Discard a span without sending it to backend. */
|
|
21
|
+
discardSpan(spanId: string): boolean;
|
|
20
22
|
/** Set user id for the session. Setting null will reset the id */
|
|
21
23
|
setUserId(id: string | null): void;
|
|
22
24
|
/** Set a single user property for this session */
|
|
@@ -25,6 +27,17 @@ export interface Spec extends TurboModule {
|
|
|
25
27
|
setUserProperties(properties: Object): void;
|
|
26
28
|
/** Trigger ANR test (freezes main thread for 6 seconds) */
|
|
27
29
|
triggerAnr(): void;
|
|
30
|
+
/** Set the current React Native screen name to sync active screen name on Android/iOS */
|
|
31
|
+
setCurrentScreenName(screenName: string): boolean;
|
|
32
|
+
/** Get all SDK Remote Config features */
|
|
33
|
+
getAllFeatures(): {
|
|
34
|
+
rn_screen_load: boolean;
|
|
35
|
+
screen_session: boolean;
|
|
36
|
+
rn_screen_interactive: boolean;
|
|
37
|
+
network_instrumentation: boolean;
|
|
38
|
+
custom_events: boolean;
|
|
39
|
+
js_crash: boolean;
|
|
40
|
+
} | null;
|
|
28
41
|
}
|
|
29
42
|
declare const _default: Spec;
|
|
30
43
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativePulseReactNativeOtel.d.ts","sourceRoot":"","sources":["../../../src/NativePulseReactNativeOtel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAErE,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,yCAAyC;IACzC,aAAa,IAAI,OAAO,CAAC;IAEzB,4CAA4C;IAC5C,UAAU,CACR,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,EACtB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC;IAEX,gEAAgE;IAChE,iJAAiJ;IACjJ,eAAe,CACb,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC;IAEX,
|
|
1
|
+
{"version":3,"file":"NativePulseReactNativeOtel.d.ts","sourceRoot":"","sources":["../../../src/NativePulseReactNativeOtel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAErE,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,yCAAyC;IACzC,aAAa,IAAI,OAAO,CAAC;IAEzB,4CAA4C;IAC5C,UAAU,CACR,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,EACtB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC;IAEX,gEAAgE;IAChE,iJAAiJ;IACjJ,eAAe,CACb,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC;IAEX,4CAA4C;IAC5C,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE9E,4CAA4C;IAC5C,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAEtD,8BAA8B;IAC9B,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAEzE,sCAAsC;IACtC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAEhE,qCAAqC;IACrC,mBAAmB,CACjB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC;IAEX,oDAAoD;IACpD,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IAErC,kEAAkE;IAClE,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;IAEnC,kDAAkD;IAClD,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;IAE1D,oDAAoD;IACpD,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5C,2DAA2D;IAC3D,UAAU,IAAI,IAAI,CAAC;IAEnB,yFAAyF;IACzF,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;IAElD,yCAAyC;IACzC,cAAc,IAAI;QAChB,cAAc,EAAE,OAAO,CAAC;QACxB,cAAc,EAAE,OAAO,CAAC;QACxB,qBAAqB,EAAE,OAAO,CAAC;QAC/B,uBAAuB,EAAE,OAAO,CAAC;QACjC,aAAa,EAAE,OAAO,CAAC;QACvB,QAAQ,EAAE,OAAO,CAAC;KACnB,GAAG,IAAI,CAAC;CACV;;AAED,wBAA8E"}
|
|
@@ -1,14 +1,20 @@
|
|
|
1
|
-
import { type ReactNavigationIntegration } from './
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { type ReactNavigationIntegration, type NavigationIntegrationOptions } from './navigation';
|
|
2
|
+
import type { PulseFeatureConfig } from './pulse.interface';
|
|
3
|
+
export type NetworkHeaderConfig = {
|
|
4
|
+
requestHeaders?: string[];
|
|
5
|
+
responseHeaders?: string[];
|
|
6
6
|
};
|
|
7
|
-
export type
|
|
7
|
+
export type PulseConfig = {
|
|
8
8
|
autoDetectExceptions?: boolean;
|
|
9
9
|
autoDetectNavigation?: boolean;
|
|
10
10
|
autoDetectNetwork?: boolean;
|
|
11
|
+
networkHeaders?: NetworkHeaderConfig;
|
|
11
12
|
};
|
|
12
|
-
|
|
13
|
-
|
|
13
|
+
/**
|
|
14
|
+
* Gets all features from the remote SDK config.
|
|
15
|
+
* @returns Record of feature names to their enabled status, or null if config not available
|
|
16
|
+
*/
|
|
17
|
+
export declare function getFeaturesFromRemoteConfig(): PulseFeatureConfig;
|
|
18
|
+
export declare function start(options?: PulseConfig): void;
|
|
19
|
+
export declare function createNavigationIntegrationWithConfig(options?: NavigationIntegrationOptions): ReactNavigationIntegration;
|
|
14
20
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,0BAA0B,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EAClC,MAAM,cAAc,CAAC;AAGtB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG5D,MAAM,MAAM,mBAAmB,GAAG;IAChC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC,CAAC;AAiBF;;;GAGG;AACH,wBAAgB,2BAA2B,IAAI,kBAAkB,CAOhE;AA2CD,wBAAgB,KAAK,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CA0BjD;AAED,wBAAgB,qCAAqC,CACnD,OAAO,CAAC,EAAE,4BAA4B,GACrC,0BAA0B,CAsB5B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errorBoundary.d.ts","sourceRoot":"","sources":["../../../src/errorBoundary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,eAAO,MAAM,iBAAiB,YAAY,CAAC;AAG3C,MAAM,MAAM,cAAc,GAAG,CAAC,SAAS,EAAE;IACvC,KAAK,EAAE,OAAO,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;CACxB,KAAK,KAAK,CAAC,YAAY,CAAC;AAEzB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;IACrD,QAAQ,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,cAAc,GAAG,SAAS,CAAC;IAC3D,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CAC1E,CAAC;AAEF,KAAK,kBAAkB,GACnB;IACE,cAAc,EAAE,IAAI,CAAC;IACrB,KAAK,EAAE,IAAI,CAAC;CACb,GACD;IACE,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;AAON,qBAAa,aAAc,SAAQ,KAAK,CAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"errorBoundary.d.ts","sourceRoot":"","sources":["../../../src/errorBoundary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,eAAO,MAAM,iBAAiB,YAAY,CAAC;AAG3C,MAAM,MAAM,cAAc,GAAG,CAAC,SAAS,EAAE;IACvC,KAAK,EAAE,OAAO,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;CACxB,KAAK,KAAK,CAAC,YAAY,CAAC;AAEzB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;IACrD,QAAQ,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,cAAc,GAAG,SAAS,CAAC;IAC3D,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CAC1E,CAAC;AAEF,KAAK,kBAAkB,GACnB;IACE,cAAc,EAAE,IAAI,CAAC;IACrB,KAAK,EAAE,IAAI,CAAC;CACb,GACD;IACE,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;AAON,qBAAa,aAAc,SAAQ,KAAK,CAAC,SAAS,CAChD,kBAAkB,EAClB,kBAAkB,CACnB;IACQ,KAAK,EAAE,kBAAkB,CAAiB;IAE1C,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,GAAG,IAAI;IAmBnE,MAAM,IAAI,KAAK,CAAC,SAAS;CAsBjC;AAED,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7D,gBAAgB,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,EACxC,oBAAoB,EAAE,kBAAkB,GACvC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAab"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/events.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/events.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,eAAe,GAAG,IAAI,CAe5E"}
|
|
@@ -1,21 +1,23 @@
|
|
|
1
1
|
import { startSpan, trackSpan } from './trace';
|
|
2
2
|
import { reportException } from './errorHandler';
|
|
3
3
|
import { trackEvent } from './events';
|
|
4
|
-
import { start
|
|
4
|
+
import { start } from './config';
|
|
5
5
|
import { isInitialized } from './initialization';
|
|
6
6
|
import { setGlobalAttribute } from './globalAttributes';
|
|
7
7
|
import { setUserId, setUserProperty, setUserProperties } from './user';
|
|
8
8
|
import { ErrorBoundary, withErrorBoundary } from './errorBoundary';
|
|
9
|
+
import { useNavigationTracking, markContentReady } from './navigation';
|
|
9
10
|
export type { Span } from './trace';
|
|
10
|
-
export type { PulseConfig
|
|
11
|
+
export type { PulseConfig } from './config';
|
|
11
12
|
export type { PulseAttributes, PulseAttributeValue } from './pulse.interface';
|
|
12
|
-
export type { ReactNavigationIntegration, NavigationRoute, } from './
|
|
13
|
+
export type { ReactNavigationIntegration, NavigationRoute, NavigationIntegrationOptions, } from './navigation';
|
|
13
14
|
export type { ErrorBoundaryProps, FallbackRender } from './errorBoundary';
|
|
14
15
|
export { SpanStatusCode } from './trace';
|
|
15
16
|
export declare const Pulse: {
|
|
16
17
|
start: typeof start;
|
|
17
18
|
isInitialized: typeof isInitialized;
|
|
18
|
-
|
|
19
|
+
useNavigationTracking: typeof useNavigationTracking;
|
|
20
|
+
markContentReady: typeof markContentReady;
|
|
19
21
|
trackEvent: typeof trackEvent;
|
|
20
22
|
reportException: typeof reportException;
|
|
21
23
|
trackSpan: typeof trackSpan;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEvE,YAAY,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AACpC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC9E,YAAY,EACV,0BAA0B,EAC1B,eAAe,EACf,4BAA4B,GAC7B,MAAM,cAAc,CAAC;AAEtB,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE1E,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;CAejB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { RefObject } from 'react';
|
|
2
|
+
import type { NavigationIntegrationOptions, NavigationRoute } from './navigation.interface';
|
|
3
|
+
import { markContentReady } from './screen-interactive';
|
|
4
|
+
export type { NavigationRoute, NavigationIntegrationOptions };
|
|
5
|
+
export { DEFAULT_NAVIGATION_OPTIONS } from './navigation.interface';
|
|
6
|
+
export interface ReactNavigationIntegration {
|
|
7
|
+
registerNavigationContainer: (maybeNavigationContainer: unknown) => () => void;
|
|
8
|
+
markContentReady: () => void;
|
|
9
|
+
}
|
|
10
|
+
export declare function createReactNavigationIntegration(options?: NavigationIntegrationOptions): ReactNavigationIntegration;
|
|
11
|
+
export { markContentReady };
|
|
12
|
+
export declare function useNavigationTracking(navigationRef: RefObject<any>, options?: NavigationIntegrationOptions): () => void;
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/navigation/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAEV,4BAA4B,EAC5B,eAAe,EAChB,MAAM,wBAAwB,CAAC;AAShC,OAAO,EAEL,gBAAgB,EAIjB,MAAM,sBAAsB,CAAC;AAe9B,YAAY,EAAE,eAAe,EAAE,4BAA4B,EAAE,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAEpE,MAAM,WAAW,0BAA0B;IACzC,2BAA2B,EAAE,CAC3B,wBAAwB,EAAE,OAAO,KAC9B,MAAM,IAAI,CAAC;IAChB,gBAAgB,EAAE,MAAM,IAAI,CAAC;CAC9B;AAYD,wBAAgB,gCAAgC,CAC9C,OAAO,CAAC,EAAE,4BAA4B,GACrC,0BAA0B,CAsQ5B;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,SAAS,CAAC,GAAG,CAAC,EAC7B,OAAO,CAAC,EAAE,4BAA4B,GACrC,MAAM,IAAI,CAOZ"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface NavigationRoute {
|
|
2
|
+
name: string;
|
|
3
|
+
key: string;
|
|
4
|
+
params?: Record<string, any>;
|
|
5
|
+
}
|
|
6
|
+
export interface NavigationContainer {
|
|
7
|
+
addListener: (type: string, listener: (event?: unknown) => void) => {
|
|
8
|
+
remove: () => void;
|
|
9
|
+
} | void;
|
|
10
|
+
getCurrentRoute: () => NavigationRoute | undefined;
|
|
11
|
+
}
|
|
12
|
+
export interface NavigationIntegrationOptions {
|
|
13
|
+
screenSessionTracking?: boolean;
|
|
14
|
+
screenNavigationTracking?: boolean;
|
|
15
|
+
screenInteractiveTracking?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export declare const DEFAULT_NAVIGATION_OPTIONS: Required<NavigationIntegrationOptions>;
|
|
18
|
+
//# sourceMappingURL=navigation.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.interface.d.ts","sourceRoot":"","sources":["../../../../src/navigation/navigation.interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,CACX,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,KAChC;QAAE,MAAM,EAAE,MAAM,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IACnC,eAAe,EAAE,MAAM,eAAe,GAAG,SAAS,CAAC;CACpD;AAED,MAAM,WAAW,4BAA4B;IAC3C,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,4BAA4B,CAK3E,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type Span } from '../index';
|
|
2
|
+
import type { NavigationRoute, NavigationContainer } from './navigation.interface';
|
|
3
|
+
export interface ScreenInteractiveState {
|
|
4
|
+
screenInteractiveSpan: Span | undefined;
|
|
5
|
+
currentInteractiveRouteKey: string | undefined;
|
|
6
|
+
}
|
|
7
|
+
export declare const INITIAL_SCREEN_INTERACTIVE_STATE: ScreenInteractiveState;
|
|
8
|
+
export declare function createScreenInteractiveTracker(enabled: boolean, state: ScreenInteractiveState, navigationContainer: NavigationContainer | undefined): {
|
|
9
|
+
startScreenInteractive: (route: NavigationRoute) => void;
|
|
10
|
+
endScreenInteractive: (routeName?: string) => void;
|
|
11
|
+
discardScreenInteractive: (reason: string) => void;
|
|
12
|
+
markContentReady: () => void;
|
|
13
|
+
};
|
|
14
|
+
export declare function markContentReady(): void;
|
|
15
|
+
export declare function clearGlobalMarkContentReady(markContentReadyFn: () => void): void;
|
|
16
|
+
//# sourceMappingURL=screen-interactive.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screen-interactive.d.ts","sourceRoot":"","sources":["../../../../src/navigation/screen-interactive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,IAAI,EAAE,MAAM,UAAU,CAAC;AAI5C,OAAO,KAAK,EACV,eAAe,EACf,mBAAmB,EACpB,MAAM,wBAAwB,CAAC;AAGhC,MAAM,WAAW,sBAAsB;IACrC,qBAAqB,EAAE,IAAI,GAAG,SAAS,CAAC;IACxC,0BAA0B,EAAE,MAAM,GAAG,SAAS,CAAC;CAChD;AAED,eAAO,MAAM,gCAAgC,EAAE,sBAG9C,CAAC;AAIF,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,sBAAsB,EAC7B,mBAAmB,EAAE,mBAAmB,GAAG,SAAS;oCAeb,eAAe,KAAG,IAAI;uCAgCnB,MAAM,KAAG,IAAI;uCA7Cb,MAAM,KAAG,IAAI;4BAwDpB,IAAI;EA+CxC;AAED,wBAAgB,gBAAgB,IAAI,IAAI,CAQvC;AAED,wBAAgB,2BAA2B,CACzC,kBAAkB,EAAE,MAAM,IAAI,GAC7B,IAAI,CAIN"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type Span } from '../index';
|
|
2
|
+
import type { NavigationRoute } from './navigation.interface';
|
|
3
|
+
export interface ScreenLoadState {
|
|
4
|
+
navigationSpan: Span | undefined;
|
|
5
|
+
latestRoute: NavigationRoute | undefined;
|
|
6
|
+
}
|
|
7
|
+
export declare const INITIAL_SCREEN_LOAD_STATE: ScreenLoadState;
|
|
8
|
+
export declare function createScreenLoadTracker(enabled: boolean, state: ScreenLoadState, getRecentRouteKeys: () => string[], pushRecentRouteKey: (key: string) => void, onLoadEnd?: (route: NavigationRoute) => void): {
|
|
9
|
+
startNavigationSpan: () => void;
|
|
10
|
+
endNavigationSpan: (currentRoute?: NavigationRoute, previousRoute?: NavigationRoute, routeHasBeenSeen?: boolean) => void;
|
|
11
|
+
handleStateChange: (currentRoute: NavigationRoute) => void;
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=screen-load.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screen-load.d.ts","sourceRoot":"","sources":["../../../../src/navigation/screen-load.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,IAAI,EAAE,MAAM,UAAU,CAAC;AAG5C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,IAAI,GAAG,SAAS,CAAC;IACjC,WAAW,EAAE,eAAe,GAAG,SAAS,CAAC;CAC1C;AAED,eAAO,MAAM,yBAAyB,EAAE,eAGvC,CAAC;AAEF,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,eAAe,EACtB,kBAAkB,EAAE,MAAM,MAAM,EAAE,EAClC,kBAAkB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,EACzC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI;+BAEZ,IAAI;uCAenB,eAAe,kBACd,eAAe,qBACZ,OAAO,KACzB,IAAI;sCA8BkC,eAAe,KAAG,IAAI;EAyBhE"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type Span } from '../index';
|
|
2
|
+
import { type AppStateStatus } from 'react-native';
|
|
3
|
+
import type { NavigationRoute, NavigationContainer } from './navigation.interface';
|
|
4
|
+
export interface ScreenSessionState {
|
|
5
|
+
screenSessionSpan: Span | undefined;
|
|
6
|
+
currentScreenKey: string | undefined;
|
|
7
|
+
}
|
|
8
|
+
export declare const INITIAL_SCREEN_SESSION_STATE: ScreenSessionState;
|
|
9
|
+
export declare function createScreenSessionTracker(enabled: boolean, state: ScreenSessionState): {
|
|
10
|
+
startScreenSession: (route: NavigationRoute) => void;
|
|
11
|
+
endScreenSession: (routeName?: string) => void;
|
|
12
|
+
handleAppStateChange: (nextAppState: AppStateStatus, navigationContainer: NavigationContainer | undefined) => void;
|
|
13
|
+
shouldStartSession: (currentRoute: NavigationRoute, appState: AppStateStatus) => boolean;
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=screen-session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screen-session.d.ts","sourceRoot":"","sources":["../../../../src/navigation/screen-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,IAAI,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,KAAK,cAAc,EAAY,MAAM,cAAc,CAAC;AAE7D,OAAO,KAAK,EACV,eAAe,EACf,mBAAmB,EACpB,MAAM,wBAAwB,CAAC;AAGhC,MAAM,WAAW,kBAAkB;IACjC,iBAAiB,EAAE,IAAI,GAAG,SAAS,CAAC;IACpC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;CACtC;AAED,eAAO,MAAM,4BAA4B,EAAE,kBAG1C,CAAC;AAEF,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,kBAAkB;gCAEU,eAAe,KAAG,IAAI;mCAanB,MAAM,KAAG,IAAI;yCAYnC,cAAc,uBACP,mBAAmB,GAAG,SAAS,KACnD,IAAI;uCAmBS,eAAe,YACnB,cAAc,KACvB,OAAO;EAeX"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type RefObject } from 'react';
|
|
2
|
+
import { type NavigationIntegrationOptions } from './navigation.interface';
|
|
3
|
+
import type { ReactNavigationIntegration } from './index';
|
|
4
|
+
export declare function useNavigationTracking(navigationRef: RefObject<any>, options?: NavigationIntegrationOptions, createIntegration?: (options?: NavigationIntegrationOptions) => ReactNavigationIntegration): () => void;
|
|
5
|
+
//# sourceMappingURL=useNavigationTracking.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useNavigationTracking.d.ts","sourceRoot":"","sources":["../../../../src/navigation/useNavigationTracking.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2C,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAChF,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAE1D,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,SAAS,CAAC,GAAG,CAAC,EAC7B,OAAO,CAAC,EAAE,4BAA4B,EACtC,iBAAiB,CAAC,EAAE,CAClB,OAAO,CAAC,EAAE,4BAA4B,KACnC,0BAA0B,GAC9B,MAAM,IAAI,CA6CZ"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const LOG_TAGS: {
|
|
2
|
+
readonly NAVIGATION: "[Pulse Navigation]";
|
|
3
|
+
readonly SCREEN_LOAD: "[Pulse Screen Load]";
|
|
4
|
+
readonly SCREEN_SESSION: "[Pulse Screen Session]";
|
|
5
|
+
readonly SCREEN_INTERACTIVE: "[Pulse Screen Interactive]";
|
|
6
|
+
};
|
|
7
|
+
export declare function pushRecentRouteKey(recentRouteKeys: string[], key: string): string[];
|
|
8
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/navigation/utils.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ;;;;;CAKX,CAAC;AAEX,wBAAgB,kBAAkB,CAChC,eAAe,EAAE,MAAM,EAAE,EACzB,GAAG,EAAE,MAAM,GACV,MAAM,EAAE,CAMV"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { PulseAttributes } from '../pulse.interface';
|
|
2
|
+
export interface GraphQLOperationData {
|
|
3
|
+
operationName?: string;
|
|
4
|
+
operationType?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function isGraphQLRequest(url: string): boolean;
|
|
7
|
+
export declare function updateAttributesWithGraphQLData(url: string, body?: Document | XMLHttpRequestBodyInit | null): PulseAttributes;
|
|
8
|
+
//# sourceMappingURL=graphql-helper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphql-helper.d.ts","sourceRoot":"","sources":["../../../../src/network-interceptor/graphql-helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAI1D,MAAM,WAAW,oBAAoB;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAKrD;AAqED,wBAAgB,+BAA+B,CAC7C,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,QAAQ,GAAG,sBAAsB,GAAG,IAAI,GAC9C,eAAe,CAuBjB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Normalizes header name according to OpenTelemetry HTTP semantic conventions:
|
|
3
|
+
* - Lowercase
|
|
4
|
+
* - Dashes replaced by underscores
|
|
5
|
+
* - Reference: https://opentelemetry.io/docs/specs/semconv/registry/attributes/http/
|
|
6
|
+
* @example
|
|
7
|
+
* normalizeHeaderName('Content-Type') => 'content_type'
|
|
8
|
+
* normalizeHeaderName('X-Request-ID') => 'x_request_id'
|
|
9
|
+
*/
|
|
10
|
+
export declare function normalizeHeaderName(headerName: string): string;
|
|
11
|
+
/**
|
|
12
|
+
* Checks if a header should be captured based on configuration.
|
|
13
|
+
*/
|
|
14
|
+
export declare function shouldCaptureHeader(headerName: string, headerList: string[]): boolean;
|
|
15
|
+
//# sourceMappingURL=header-helper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"header-helper.d.ts","sourceRoot":"","sources":["../../../../src/network-interceptor/header-helper.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAAE,GACnB,OAAO,CAMT"}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
import type { NetworkHeaderConfig } from '../config';
|
|
2
|
+
export { normalizeHeaderName, shouldCaptureHeader } from './header-helper';
|
|
3
|
+
export declare function getHeaderConfig(): NetworkHeaderConfig;
|
|
4
|
+
export declare function initializeNetworkInterceptor(config?: NetworkHeaderConfig): void;
|
|
2
5
|
export declare const isNetworkInterceptorInitialized: () => boolean;
|
|
3
6
|
//# sourceMappingURL=initialization.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initialization.d.ts","sourceRoot":"","sources":["../../../../src/network-interceptor/initialization.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"initialization.d.ts","sourceRoot":"","sources":["../../../../src/network-interceptor/initialization.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAErD,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAQ3E,wBAAgB,eAAe,IAAI,mBAAmB,CAErD;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,CAAC,EAAE,mBAAmB,GAC3B,IAAI,CA6BN;AAED,eAAO,MAAM,+BAA+B,QAAO,OAAwB,CAAC"}
|
|
@@ -3,15 +3,18 @@ export interface RequestStartContext {
|
|
|
3
3
|
method: string;
|
|
4
4
|
type: 'fetch' | 'xmlhttprequest';
|
|
5
5
|
baseUrl?: string;
|
|
6
|
+
requestHeaders?: Record<string, string>;
|
|
6
7
|
}
|
|
7
8
|
export interface RequestEndContextSuccess {
|
|
8
9
|
status: number;
|
|
9
10
|
state: 'success';
|
|
11
|
+
responseHeaders?: Record<string, string>;
|
|
10
12
|
}
|
|
11
13
|
export interface RequestEndContextError {
|
|
12
14
|
state: 'error';
|
|
13
15
|
status?: number;
|
|
14
16
|
error?: Error;
|
|
17
|
+
responseHeaders?: Record<string, string>;
|
|
15
18
|
}
|
|
16
19
|
export type RequestEndContext = RequestEndContextSuccess | RequestEndContextError;
|
|
17
20
|
export type RequestStartCallback = (context: RequestStartContext) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network.interface.d.ts","sourceRoot":"","sources":["../../../../src/network-interceptor/network.interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,OAAO,GAAG,gBAAgB,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"network.interface.d.ts","sourceRoot":"","sources":["../../../../src/network-interceptor/network.interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,OAAO,GAAG,gBAAgB,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,SAAS,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1C;AAED,MAAM,MAAM,iBAAiB,GACzB,wBAAwB,GACxB,sBAAsB,CAAC;AAE3B,MAAM,MAAM,oBAAoB,GAAG,CACjC,OAAO,EAAE,mBAAmB,KACzB;IAAE,YAAY,CAAC,EAAE,kBAAkB,CAAA;CAAE,GAAG,SAAS,CAAC;AAEvD,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;AAEtE,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,OAAO,GAAG,gBAAgB,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC;IAC3B,KAAK,CAAC,EAAE,KAAK,CAAC;CACf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-tracker-xhr.d.ts","sourceRoot":"","sources":["../../../../src/network-interceptor/request-tracker-xhr.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"request-tracker-xhr.d.ts","sourceRoot":"","sources":["../../../../src/network-interceptor/request-tracker-xhr.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAgBnD,iBAAS,2BAA2B,CAClC,GAAG,EAAE,OAAO,cAAc,GACzB,cAAc,CA6KhB;AAED,eAAe,2BAA2B,CAAC"}
|
|
@@ -2,6 +2,6 @@ import type { RequestStartContext, RequestEndContext } from './network.interface
|
|
|
2
2
|
import type { Span } from '../index';
|
|
3
3
|
import type { PulseAttributes } from '../pulse.interface';
|
|
4
4
|
export declare function setNetworkSpanAttributes(span: Span, startContext: RequestStartContext, endContext: RequestEndContext): PulseAttributes;
|
|
5
|
-
export declare function createNetworkSpan(startContext: RequestStartContext, interceptorType: 'fetch' | 'xmlhttprequest'): Span;
|
|
5
|
+
export declare function createNetworkSpan(startContext: RequestStartContext, interceptorType: 'fetch' | 'xmlhttprequest', body?: Document | XMLHttpRequestBodyInit | null): Span;
|
|
6
6
|
export declare function completeNetworkSpan(span: Span, startContext: RequestStartContext, endContext: RequestEndContext, isError: boolean): void;
|
|
7
7
|
//# sourceMappingURL=span-helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"span-helpers.d.ts","sourceRoot":"","sources":["../../../../src/network-interceptor/span-helpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"span-helpers.d.ts","sourceRoot":"","sources":["../../../../src/network-interceptor/span-helpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAM1D,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,mBAAmB,EACjC,UAAU,EAAE,iBAAiB,GAC5B,eAAe,CAmDjB;AAED,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,mBAAmB,EACjC,eAAe,EAAE,OAAO,GAAG,gBAAgB,EAC3C,IAAI,CAAC,EAAE,QAAQ,GAAG,sBAAsB,GAAG,IAAI,GAC9C,IAAI,CAmBN;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,mBAAmB,EACjC,UAAU,EAAE,iBAAiB,EAC7B,OAAO,EAAE,OAAO,GACf,IAAI,CAYN"}
|