@dreamhorizonorg/pulse-react-native 0.0.3 → 0.0.5
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/pulsereactnativeotel/Pulse.kt +4 -0
- package/android/src/main/java/com/pulsereactnativeotel/PulseReactNativeOtelModule.kt +5 -0
- package/ios/PulseReactNativeOtel.mm +124 -63
- package/lib/module/NativePulseReactNativeOtel.js.map +1 -1
- package/lib/module/config.js +50 -4
- package/lib/module/config.js.map +1 -1
- package/lib/module/errorBoundary.js +4 -1
- package/lib/module/errorBoundary.js.map +1 -1
- package/lib/module/errorHandler.js +5 -1
- package/lib/module/errorHandler.js.map +1 -1
- package/lib/module/events.js +2 -2
- package/lib/module/events.js.map +1 -1
- package/lib/module/index.js +2 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/navigation/index.js +11 -0
- package/lib/module/navigation/index.js.map +1 -1
- package/lib/module/navigation/screen-interactive.js +4 -0
- package/lib/module/navigation/screen-interactive.js.map +1 -1
- package/lib/module/network-interceptor/initialization.js +13 -1
- package/lib/module/network-interceptor/initialization.js.map +1 -1
- package/lib/module/network-interceptor/request-tracker-xhr.js +15 -2
- package/lib/module/network-interceptor/request-tracker-xhr.js.map +1 -1
- package/lib/module/trace.js +16 -10
- package/lib/module/trace.js.map +1 -1
- package/lib/module/user.js +4 -3
- package/lib/module/user.js.map +1 -1
- package/lib/typescript/plugin/src/types.d.ts +6 -0
- package/lib/typescript/plugin/src/types.d.ts.map +1 -1
- package/lib/typescript/plugin/src/utils.d.ts +2 -0
- package/lib/typescript/plugin/src/utils.d.ts.map +1 -1
- package/lib/typescript/plugin/src/withAndroidPulse.d.ts.map +1 -1
- package/lib/typescript/src/NativePulseReactNativeOtel.d.ts +2 -0
- package/lib/typescript/src/NativePulseReactNativeOtel.d.ts.map +1 -1
- package/lib/typescript/src/config.d.ts +5 -1
- package/lib/typescript/src/config.d.ts.map +1 -1
- package/lib/typescript/src/errorBoundary.d.ts.map +1 -1
- package/lib/typescript/src/errorHandler.d.ts +1 -0
- package/lib/typescript/src/errorHandler.d.ts.map +1 -1
- package/lib/typescript/src/events.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +3 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/navigation/index.d.ts +1 -0
- package/lib/typescript/src/navigation/index.d.ts.map +1 -1
- package/lib/typescript/src/navigation/screen-interactive.d.ts.map +1 -1
- package/lib/typescript/src/network-interceptor/initialization.d.ts +1 -0
- package/lib/typescript/src/network-interceptor/initialization.d.ts.map +1 -1
- package/lib/typescript/src/network-interceptor/request-tracker-xhr.d.ts +5 -1
- package/lib/typescript/src/network-interceptor/request-tracker-xhr.d.ts.map +1 -1
- package/lib/typescript/src/trace.d.ts.map +1 -1
- package/lib/typescript/src/user.d.ts.map +1 -1
- package/package.json +1 -1
- package/plugin/build/types.d.ts +6 -0
- package/plugin/build/utils.d.ts +2 -0
- package/plugin/build/utils.js +6 -2
- package/plugin/build/withAndroidPulse.js +3 -1
- package/src/NativePulseReactNativeOtel.ts +3 -0
- package/src/config.ts +57 -3
- package/src/errorBoundary.tsx +4 -1
- package/src/errorHandler.ts +6 -1
- package/src/events.ts +6 -2
- package/src/index.tsx +3 -1
- package/src/navigation/index.ts +13 -0
- package/src/navigation/screen-interactive.ts +4 -0
- package/src/network-interceptor/initialization.ts +14 -1
- package/src/network-interceptor/request-tracker-xhr.ts +16 -3
- package/src/trace.ts +17 -10
- package/src/user.ts +4 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Pulse","Platform","SPAN_NAMES","ATTRIBUTE_KEYS","PULSE_TYPES","discardSpan","LOG_TAGS","INITIAL_SCREEN_INTERACTIVE_STATE","screenInteractiveSpan","undefined","currentInteractiveRouteKey","globalMarkContentReady","createScreenInteractiveTracker","enabled","state","navigationContainer","discardScreenInteractive","reason","console","log","SCREEN_INTERACTIVE","spanId","startScreenInteractive","route","key","startSpan","attributes","PULSE_TYPE","SCREEN_NAME","name","ROUTE_KEY","PLATFORM","OS","inheritContext","endScreenInteractive","routeName","end","handleMarkContentReady","warn","currentRoute","getCurrentRoute","error","markContentReady","NAVIGATION","clearGlobalMarkContentReady","markContentReadyFn"],"sourceRoot":"../../../src","sources":["navigation/screen-interactive.ts"],"mappings":";;AAAA,SAASA,KAAK,QAAmB,aAAU;AAC3C,SAASC,QAAQ,QAAQ,cAAc;AACvC,SAASC,UAAU,EAAEC,cAAc,EAAEC,WAAW,QAAQ,uBAAoB;AAC5E,SAASC,WAAW,QAAQ,aAAU;AAKtC,SAASC,QAAQ,QAAQ,YAAS;AAOlC,OAAO,MAAMC,gCAAwD,GAAG;EACtEC,qBAAqB,EAAEC,SAAS;EAChCC,0BAA0B,EAAED;AAC9B,CAAC;AAED,IAAIE,sBAAgD;AAEpD,OAAO,SAASC,8BAA8BA,CAC5CC,OAAgB,EAChBC,KAA6B,EAC7BC,mBAAoD,EACpD;EACA,MAAMC,wBAAwB,GAAIC,MAAc,IAAW;IACzD,IAAIH,KAAK,CAACN,qBAAqB,EAAE;MAC/BU,OAAO,CAACC,GAAG,CACT,GAAGb,QAAQ,CAACc,kBAAkB,uCAAuCH,MAAM,eAAeH,KAAK,CAACJ,0BAA0B,GAC5H,CAAC;MACD,IAAII,KAAK,CAACN,qBAAqB,CAACa,MAAM,EAAE;QACtChB,WAAW,CAACS,KAAK,CAACN,qBAAqB,CAACa,MAAM,CAAC;MACjD;MACAP,KAAK,CAACN,qBAAqB,GAAGC,SAAS;MACvCK,KAAK,CAACJ,0BAA0B,GAAGD,SAAS;IAC9C;EACF,CAAC;EAED,MAAMa,sBAAsB,GAAIC,KAAsB,IAAW;IAC/D,IAAI,CAACV,OAAO,EAAE;MACZ;IACF;IAEA,IACEC,KAAK,CAACN,qBAAqB,IAC3BM,KAAK,CAACJ,0BAA0B,KAAKa,KAAK,CAACC,GAAG,EAC9C;MACA;IACF;IAEA,IAAIV,KAAK,CAACN,qBAAqB,EAAE;MAC/BQ,wBAAwB,CAAC,0CAA0C,CAAC;IACtE;IAEAF,KAAK,CAACN,qBAAqB,
|
|
1
|
+
{"version":3,"names":["Pulse","getIsStarted","Platform","SPAN_NAMES","ATTRIBUTE_KEYS","PULSE_TYPES","discardSpan","LOG_TAGS","INITIAL_SCREEN_INTERACTIVE_STATE","screenInteractiveSpan","undefined","currentInteractiveRouteKey","globalMarkContentReady","createScreenInteractiveTracker","enabled","state","navigationContainer","discardScreenInteractive","reason","console","log","SCREEN_INTERACTIVE","spanId","startScreenInteractive","route","key","startSpan","attributes","PULSE_TYPE","SCREEN_NAME","name","ROUTE_KEY","PLATFORM","OS","inheritContext","endScreenInteractive","routeName","end","handleMarkContentReady","warn","currentRoute","getCurrentRoute","error","markContentReady","NAVIGATION","clearGlobalMarkContentReady","markContentReadyFn"],"sourceRoot":"../../../src","sources":["navigation/screen-interactive.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,6 +4,7 @@ import createXmlHttpRequestTracker from "./request-tracker-xhr.js";
|
|
|
4
4
|
// Re-export header utilities for convenience (they're in a separate file to avoid dependency issues)
|
|
5
5
|
export { normalizeHeaderName, shouldCaptureHeader } from "./header-helper.js";
|
|
6
6
|
let isInitialized = false;
|
|
7
|
+
let uninstallXmlHttpRequestTracker = null;
|
|
7
8
|
let headerConfig = {
|
|
8
9
|
requestHeaders: [],
|
|
9
10
|
responseHeaders: []
|
|
@@ -29,7 +30,8 @@ export function initializeNetworkInterceptor(config) {
|
|
|
29
30
|
// In react-native, we are intercepting XMLHttpRequest only, since axios and fetch both use it internally.
|
|
30
31
|
// See: https://github.com/facebook/react-native/blob/main/packages/react-native/Libraries/Network/fetch.js
|
|
31
32
|
if (typeof XMLHttpRequest !== 'undefined') {
|
|
32
|
-
createXmlHttpRequestTracker(XMLHttpRequest);
|
|
33
|
+
const result = createXmlHttpRequestTracker(XMLHttpRequest);
|
|
34
|
+
uninstallXmlHttpRequestTracker = result.uninstall;
|
|
33
35
|
} else {
|
|
34
36
|
console.warn('[Pulse] XMLHttpRequest is not available');
|
|
35
37
|
}
|
|
@@ -39,4 +41,14 @@ export function initializeNetworkInterceptor(config) {
|
|
|
39
41
|
}
|
|
40
42
|
}
|
|
41
43
|
export const isNetworkInterceptorInitialized = () => isInitialized;
|
|
44
|
+
export function uninstallNetworkInterceptor() {
|
|
45
|
+
if (!isInitialized) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
if (uninstallXmlHttpRequestTracker) {
|
|
49
|
+
uninstallXmlHttpRequestTracker();
|
|
50
|
+
uninstallXmlHttpRequestTracker = null;
|
|
51
|
+
}
|
|
52
|
+
isInitialized = false;
|
|
53
|
+
}
|
|
42
54
|
//# sourceMappingURL=initialization.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createXmlHttpRequestTracker","normalizeHeaderName","shouldCaptureHeader","isInitialized","headerConfig","requestHeaders","responseHeaders","getHeaderConfig","initializeNetworkInterceptor","config","console","warn","log","XMLHttpRequest","error","isNetworkInterceptorInitialized"],"sourceRoot":"../../../src","sources":["network-interceptor/initialization.ts"],"mappings":";;AAAA,OAAOA,2BAA2B,MAAM,0BAAuB;AAE/D;AACA,SAASC,mBAAmB,EAAEC,mBAAmB,QAAQ,oBAAiB;AAE1E,IAAIC,aAAa,GAAG,KAAK;AACzB,IAAIC,YAAiC,GAAG;EACtCC,cAAc,EAAE,EAAE;EAClBC,eAAe,EAAE;AACnB,CAAC;AAED,OAAO,SAASC,eAAeA,CAAA,EAAwB;EACrD,OAAOH,YAAY;AACrB;AAEA,OAAO,SAASI,4BAA4BA,CAC1CC,MAA4B,EACtB;EACN,
|
|
1
|
+
{"version":3,"names":["createXmlHttpRequestTracker","normalizeHeaderName","shouldCaptureHeader","isInitialized","uninstallXmlHttpRequestTracker","headerConfig","requestHeaders","responseHeaders","getHeaderConfig","initializeNetworkInterceptor","config","console","warn","log","XMLHttpRequest","result","uninstall","error","isNetworkInterceptorInitialized","uninstallNetworkInterceptor"],"sourceRoot":"../../../src","sources":["network-interceptor/initialization.ts"],"mappings":";;AAAA,OAAOA,2BAA2B,MAAM,0BAAuB;AAE/D;AACA,SAASC,mBAAmB,EAAEC,mBAAmB,QAAQ,oBAAiB;AAE1E,IAAIC,aAAa,GAAG,KAAK;AACzB,IAAIC,8BAAmD,GAAG,IAAI;AAC9D,IAAIC,YAAiC,GAAG;EACtCC,cAAc,EAAE,EAAE;EAClBC,eAAe,EAAE;AACnB,CAAC;AAED,OAAO,SAASC,eAAeA,CAAA,EAAwB;EACrD,OAAOH,YAAY;AACrB;AAEA,OAAO,SAASI,4BAA4BA,CAC1CC,MAA4B,EACtB;EACN,IAAIP,aAAa,EAAE;IACjBQ,OAAO,CAACC,IAAI,CAAC,iDAAiD,CAAC;IAC/D;EACF;;EAEA;EACA,IAAIF,MAAM,EAAE;IACVL,YAAY,GAAG;MACbC,cAAc,EAAEI,MAAM,CAACJ,cAAc,IAAI,EAAE;MAC3CC,eAAe,EAAEG,MAAM,CAACH,eAAe,IAAI;IAC7C,CAAC;EACH;EAEAI,OAAO,CAACE,GAAG,CAAC,2DAA2D,CAAC;EAExE,IAAI;IACF;IACA;IACA,IAAI,OAAOC,cAAc,KAAK,WAAW,EAAE;MACzC,MAAMC,MAAM,GAAGf,2BAA2B,CAACc,cAAc,CAAC;MAC1DV,8BAA8B,GAAGW,MAAM,CAACC,SAAS;IACnD,CAAC,MAAM;MACLL,OAAO,CAACC,IAAI,CAAC,yCAAyC,CAAC;IACzD;IAEAT,aAAa,GAAG,IAAI;EACtB,CAAC,CAAC,OAAOc,KAAK,EAAE;IACdN,OAAO,CAACM,KAAK,CAAC,mDAAmD,EAAEA,KAAK,CAAC;EAC3E;AACF;AAEA,OAAO,MAAMC,+BAA+B,GAAGA,CAAA,KAAef,aAAa;AAE3E,OAAO,SAASgB,2BAA2BA,CAAA,EAAS;EAClD,IAAI,CAAChB,aAAa,EAAE;IAClB;EACF;EACA,IAAIC,8BAA8B,EAAE;IAClCA,8BAA8B,CAAC,CAAC;IAChCA,8BAA8B,GAAG,IAAI;EACvC;EACAD,aAAa,GAAG,KAAK;AACvB","ignoreList":[]}
|
|
@@ -9,7 +9,10 @@ let isXHRIntercepted = false;
|
|
|
9
9
|
function createXmlHttpRequestTracker(xhr) {
|
|
10
10
|
if (isXHRIntercepted) {
|
|
11
11
|
console.warn('[Pulse] XMLHttpRequest already intercepted');
|
|
12
|
-
return
|
|
12
|
+
return {
|
|
13
|
+
requestTracker: new RequestTracker(),
|
|
14
|
+
uninstall: () => {}
|
|
15
|
+
};
|
|
13
16
|
}
|
|
14
17
|
const requestTracker = new RequestTracker();
|
|
15
18
|
const trackedRequests = new WeakMap();
|
|
@@ -126,7 +129,17 @@ function createXmlHttpRequestTracker(xhr) {
|
|
|
126
129
|
}
|
|
127
130
|
originalSend.call(this, body);
|
|
128
131
|
};
|
|
129
|
-
|
|
132
|
+
const uninstall = () => {
|
|
133
|
+
if (!isXHRIntercepted) return;
|
|
134
|
+
xhr.prototype.open = originalOpen;
|
|
135
|
+
xhr.prototype.setRequestHeader = originalSetRequestHeader;
|
|
136
|
+
xhr.prototype.send = originalSend;
|
|
137
|
+
isXHRIntercepted = false;
|
|
138
|
+
};
|
|
139
|
+
return {
|
|
140
|
+
requestTracker,
|
|
141
|
+
uninstall
|
|
142
|
+
};
|
|
130
143
|
}
|
|
131
144
|
export default createXmlHttpRequestTracker;
|
|
132
145
|
//# sourceMappingURL=request-tracker-xhr.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RequestTracker","getAbsoluteUrl","createNetworkSpan","completeNetworkSpan","getHeaderConfig","shouldCaptureHeader","isXHRIntercepted","createXmlHttpRequestTracker","xhr","console","warn","requestTracker","trackedRequests","WeakMap","trackedSpans","requestHandlers","originalOpen","prototype","open","method","url","rest","set","String","call","requestHeadersMap","originalSetRequestHeader","setRequestHeader","name","value","headerConfig","requestHeadersList","requestHeaders","length","existing","get","originalSend","send","body","requestData","existingHandler","removeEventListener","capturedRequestHeaders","filteredRequestHeaders","Object","fromEntries","entries","filter","undefined","startContext","type","keys","span","onRequestEnd","start","onReadyStateChange","readyState","DONE","activeSpan","responseHeaderConfig","capturedResponseHeaders","responseHeadersList","responseHeaders","allHeaders","getAllResponseHeaders","headerLines","trim","split","line","parts","e","debug","endContext","status","state","delete","addEventListener"],"sourceRoot":"../../../src","sources":["network-interceptor/request-tracker-xhr.ts"],"mappings":";;AAIA,SAASA,cAAc,QAAQ,sBAAmB;AAClD,SAASC,cAAc,QAAQ,eAAY;AAE3C,SAASC,iBAAiB,EAAEC,mBAAmB,QAAQ,mBAAgB;AACvE,SAASC,eAAe,QAAQ,qBAAkB;AAClD,SAASC,mBAAmB,QAAQ,oBAAiB;AASrD,IAAIC,gBAAgB,GAAG,KAAK;
|
|
1
|
+
{"version":3,"names":["RequestTracker","getAbsoluteUrl","createNetworkSpan","completeNetworkSpan","getHeaderConfig","shouldCaptureHeader","isXHRIntercepted","createXmlHttpRequestTracker","xhr","console","warn","requestTracker","uninstall","trackedRequests","WeakMap","trackedSpans","requestHandlers","originalOpen","prototype","open","method","url","rest","set","String","call","requestHeadersMap","originalSetRequestHeader","setRequestHeader","name","value","headerConfig","requestHeadersList","requestHeaders","length","existing","get","originalSend","send","body","requestData","existingHandler","removeEventListener","capturedRequestHeaders","filteredRequestHeaders","Object","fromEntries","entries","filter","undefined","startContext","type","keys","span","onRequestEnd","start","onReadyStateChange","readyState","DONE","activeSpan","responseHeaderConfig","capturedResponseHeaders","responseHeadersList","responseHeaders","allHeaders","getAllResponseHeaders","headerLines","trim","split","line","parts","e","debug","endContext","status","state","delete","addEventListener"],"sourceRoot":"../../../src","sources":["network-interceptor/request-tracker-xhr.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/trace.js
CHANGED
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import PulseReactNativeOtel from "./NativePulseReactNativeOtel.js";
|
|
4
|
+
import { getIsShutdown, getIsStarted } from "./config.js";
|
|
4
5
|
import { isSupportedPlatform } from "./initialization.js";
|
|
5
6
|
import { mergeWithGlobalAttributes } from "./globalAttributes.js";
|
|
6
7
|
import { extractErrorDetails } from "./utility.js";
|
|
8
|
+
const noopSpan = {
|
|
9
|
+
end: _statusCode => {},
|
|
10
|
+
addEvent: (_eventName, _eventAttributes) => {},
|
|
11
|
+
setAttributes: _attributes => {},
|
|
12
|
+
recordException: (_error, _attributes) => {},
|
|
13
|
+
spanId: undefined
|
|
14
|
+
};
|
|
7
15
|
|
|
8
16
|
/**
|
|
9
17
|
* Options for starting a span.
|
|
@@ -18,14 +26,8 @@ export let SpanStatusCode = /*#__PURE__*/function (SpanStatusCode) {
|
|
|
18
26
|
return SpanStatusCode;
|
|
19
27
|
}({});
|
|
20
28
|
export function startSpan(name, options) {
|
|
21
|
-
if (!isSupportedPlatform()) {
|
|
22
|
-
return
|
|
23
|
-
end: _statusCode => {},
|
|
24
|
-
addEvent: (_eventName, _eventAttributes) => {},
|
|
25
|
-
setAttributes: _attributes => {},
|
|
26
|
-
recordException: (_error, _attributes) => {},
|
|
27
|
-
spanId: undefined
|
|
28
|
-
};
|
|
29
|
+
if (!isSupportedPlatform() || !getIsStarted() || getIsShutdown()) {
|
|
30
|
+
return noopSpan;
|
|
29
31
|
}
|
|
30
32
|
const mergedAttributes = mergeWithGlobalAttributes(options?.attributes || {});
|
|
31
33
|
const inheritContext = options?.inheritContext ?? true;
|
|
@@ -47,7 +49,7 @@ export function startSpan(name, options) {
|
|
|
47
49
|
};
|
|
48
50
|
}
|
|
49
51
|
export function trackSpan(name, options, fn) {
|
|
50
|
-
if (!isSupportedPlatform()) {
|
|
52
|
+
if (!isSupportedPlatform() || !getIsStarted() || getIsShutdown()) {
|
|
51
53
|
return fn();
|
|
52
54
|
}
|
|
53
55
|
const mergedAttributes = mergeWithGlobalAttributes(options?.attributes || {});
|
|
@@ -63,21 +65,25 @@ export function trackSpan(name, options, fn) {
|
|
|
63
65
|
return result;
|
|
64
66
|
}
|
|
65
67
|
function endSpan(spanId, statusCode) {
|
|
68
|
+
if (getIsShutdown()) return;
|
|
66
69
|
PulseReactNativeOtel.endSpan(spanId, statusCode);
|
|
67
70
|
}
|
|
68
71
|
export function discardSpan(spanId) {
|
|
69
|
-
if (!isSupportedPlatform()) {
|
|
72
|
+
if (!isSupportedPlatform() || !getIsStarted() || getIsShutdown()) {
|
|
70
73
|
return;
|
|
71
74
|
}
|
|
72
75
|
PulseReactNativeOtel.discardSpan(spanId);
|
|
73
76
|
}
|
|
74
77
|
function addSpanEvent(spanId, name, attributes) {
|
|
78
|
+
if (getIsShutdown()) return;
|
|
75
79
|
PulseReactNativeOtel.addSpanEvent(spanId, name, attributes || undefined);
|
|
76
80
|
}
|
|
77
81
|
function setSpanAttributes(spanId, attributes) {
|
|
82
|
+
if (getIsShutdown()) return;
|
|
78
83
|
PulseReactNativeOtel.setSpanAttributes(spanId, attributes || undefined);
|
|
79
84
|
}
|
|
80
85
|
function recordSpanException(error, attributes) {
|
|
86
|
+
if (getIsShutdown()) return;
|
|
81
87
|
const {
|
|
82
88
|
message,
|
|
83
89
|
stackTrace,
|
package/lib/module/trace.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PulseReactNativeOtel","
|
|
1
|
+
{"version":3,"names":["PulseReactNativeOtel","getIsShutdown","getIsStarted","isSupportedPlatform","mergeWithGlobalAttributes","extractErrorDetails","noopSpan","end","_statusCode","addEvent","_eventName","_eventAttributes","setAttributes","_attributes","recordException","_error","spanId","undefined","SpanStatusCode","startSpan","name","options","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":[]}
|
package/lib/module/user.js
CHANGED
|
@@ -1,21 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import PulseReactNativeOtel from "./NativePulseReactNativeOtel.js";
|
|
4
|
+
import { getIsShutdown } from "./config.js";
|
|
4
5
|
import { isSupportedPlatform } from "./initialization.js";
|
|
5
6
|
export function setUserId(id) {
|
|
6
|
-
if (!isSupportedPlatform()) {
|
|
7
|
+
if (!isSupportedPlatform() || getIsShutdown()) {
|
|
7
8
|
return;
|
|
8
9
|
}
|
|
9
10
|
PulseReactNativeOtel.setUserId(id);
|
|
10
11
|
}
|
|
11
12
|
export function setUserProperty(name, value) {
|
|
12
|
-
if (!isSupportedPlatform()) {
|
|
13
|
+
if (!isSupportedPlatform() || getIsShutdown()) {
|
|
13
14
|
return;
|
|
14
15
|
}
|
|
15
16
|
PulseReactNativeOtel.setUserProperty(name, value);
|
|
16
17
|
}
|
|
17
18
|
export function setUserProperties(properties) {
|
|
18
|
-
if (!isSupportedPlatform()) {
|
|
19
|
+
if (!isSupportedPlatform() || getIsShutdown()) {
|
|
19
20
|
return;
|
|
20
21
|
}
|
|
21
22
|
PulseReactNativeOtel.setUserProperties(properties);
|
package/lib/module/user.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PulseReactNativeOtel","isSupportedPlatform","setUserId","id","setUserProperty","name","value","setUserProperties","properties"],"sourceRoot":"../../src","sources":["user.ts"],"mappings":";;AAAA,OAAOA,oBAAoB,MAAM,iCAA8B;AAC/D,SAASC,mBAAmB,QAAQ,qBAAkB;AAGtD,OAAO,SAASC,SAASA,CAACC,EAAiB,EAAQ;EACjD,IAAI,CAACF,mBAAmB,CAAC,CAAC,EAAE;
|
|
1
|
+
{"version":3,"names":["PulseReactNativeOtel","getIsShutdown","isSupportedPlatform","setUserId","id","setUserProperty","name","value","setUserProperties","properties"],"sourceRoot":"../../src","sources":["user.ts"],"mappings":";;AAAA,OAAOA,oBAAoB,MAAM,iCAA8B;AAC/D,SAASC,aAAa,QAAQ,aAAU;AACxC,SAASC,mBAAmB,QAAQ,qBAAkB;AAGtD,OAAO,SAASC,SAASA,CAACC,EAAiB,EAAQ;EACjD,IAAI,CAACF,mBAAmB,CAAC,CAAC,IAAID,aAAa,CAAC,CAAC,EAAE;IAC7C;EACF;EACAD,oBAAoB,CAACG,SAAS,CAACC,EAAE,CAAC;AACpC;AAEA,OAAO,SAASC,eAAeA,CAACC,IAAY,EAAEC,KAAoB,EAAQ;EACxE,IAAI,CAACL,mBAAmB,CAAC,CAAC,IAAID,aAAa,CAAC,CAAC,EAAE;IAC7C;EACF;EACAD,oBAAoB,CAACK,eAAe,CAACC,IAAI,EAAEC,KAAK,CAAC;AACnD;AAEA,OAAO,SAASC,iBAAiBA,CAACC,UAA2B,EAAQ;EACnE,IAAI,CAACP,mBAAmB,CAAC,CAAC,IAAID,aAAa,CAAC,CAAC,EAAE;IAC7C;EACF;EACAD,oBAAoB,CAACQ,iBAAiB,CAACC,UAAU,CAAC;AACpD","ignoreList":[]}
|
|
@@ -11,7 +11,13 @@ interface IInteractionConfig {
|
|
|
11
11
|
}
|
|
12
12
|
export interface PulsePluginProps {
|
|
13
13
|
endpointBaseUrl: string;
|
|
14
|
+
tenantId: string;
|
|
14
15
|
endpointHeaders?: Record<string, string>;
|
|
16
|
+
/**
|
|
17
|
+
* Optional custom URL for fetching SDK configuration.
|
|
18
|
+
* If not provided, defaults to: {endpointBaseUrl with port 8080}/v1/configs/active/
|
|
19
|
+
*/
|
|
20
|
+
configEndpointUrl?: string;
|
|
15
21
|
globalAttributes?: PulseAttributes;
|
|
16
22
|
instrumentation?: {
|
|
17
23
|
interaction?: IInteractionConfig;
|
|
@@ -1 +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"}
|
|
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,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,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"}
|
|
@@ -3,7 +3,9 @@ export declare const ATTRIBUTES_IMPORT = "import io.opentelemetry.api.common.Att
|
|
|
3
3
|
import type { PulsePluginProps } from './types';
|
|
4
4
|
export declare function buildPulseInitializationCode(options: {
|
|
5
5
|
endpointBaseUrl: string;
|
|
6
|
+
tenantId: string;
|
|
6
7
|
endpointHeaders?: Record<string, string>;
|
|
8
|
+
configEndpointUrl?: string;
|
|
7
9
|
globalAttributes?: PulsePluginProps['globalAttributes'];
|
|
8
10
|
instrumentation?: PulsePluginProps['instrumentation'];
|
|
9
11
|
}): string;
|
|
@@ -1 +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,
|
|
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,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;IACxD,eAAe,CAAC,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;CACvD,GAAG,MAAM,CAmET"}
|
|
@@ -1 +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,
|
|
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,CA6D3D,CAAC"}
|
|
@@ -38,6 +38,8 @@ export interface Spec extends TurboModule {
|
|
|
38
38
|
custom_events: boolean;
|
|
39
39
|
js_crash: boolean;
|
|
40
40
|
} | null;
|
|
41
|
+
/** Shut down the Pulse SDK. After this, re-init is not supported. */
|
|
42
|
+
shutdown(): boolean;
|
|
41
43
|
}
|
|
42
44
|
declare const _default: Spec;
|
|
43
45
|
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,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;
|
|
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;IAET,qEAAqE;IACrE,QAAQ,IAAI,OAAO,CAAC;CACrB;;AAED,wBAA8E"}
|
|
@@ -10,11 +10,15 @@ export type PulseConfig = {
|
|
|
10
10
|
autoDetectNetwork?: boolean;
|
|
11
11
|
networkHeaders?: NetworkHeaderConfig;
|
|
12
12
|
};
|
|
13
|
+
export declare function getIsShutdown(): boolean;
|
|
14
|
+
/** True only after start() has been called at least once. Public APIs (trackEvent, reportException, startSpan, etc.) no-op until then. */
|
|
15
|
+
export declare function getIsStarted(): boolean;
|
|
13
16
|
/**
|
|
14
17
|
* Gets all features from the remote SDK config.
|
|
15
|
-
* @returns Record of feature names to their enabled status, or null if config not available
|
|
18
|
+
* @returns Record of feature names to their enabled status, or null if config not available or start() not called
|
|
16
19
|
*/
|
|
17
20
|
export declare function getFeaturesFromRemoteConfig(): PulseFeatureConfig;
|
|
18
21
|
export declare function start(options?: PulseConfig): void;
|
|
22
|
+
export declare function shutdown(): void;
|
|
19
23
|
export declare function createNavigationIntegrationWithConfig(options?: NavigationIntegrationOptions): ReactNavigationIntegration;
|
|
20
24
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EAClC,MAAM,cAAc,CAAC;AAMtB,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;AAuBF,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED,0IAA0I;AAC1I,wBAAgB,YAAY,IAAI,OAAO,CAEtC;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,IAAI,kBAAkB,CAOhE;AA2CD,wBAAgB,KAAK,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAqCjD;AAED,wBAAgB,QAAQ,IAAI,IAAI,CAU/B;AAED,wBAAgB,qCAAqC,CACnD,OAAO,CAAC,EAAE,4BAA4B,GACrC,0BAA0B,CAkC5B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errorBoundary.d.ts","sourceRoot":"","sources":["../../../src/errorBoundary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"errorBoundary.d.ts","sourceRoot":"","sources":["../../../src/errorBoundary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/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;IAqBnE,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,4 +1,5 @@
|
|
|
1
1
|
import type { PulseAttributes } from './pulse.interface';
|
|
2
2
|
export declare function reportException(error: Error | string, isFatal?: boolean, attributes?: PulseAttributes): void;
|
|
3
|
+
export declare function uninstallErrorHandler(): void;
|
|
3
4
|
export declare function setupErrorHandler(enableErrorHandler: boolean): void;
|
|
4
5
|
//# sourceMappingURL=errorHandler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errorHandler.d.ts","sourceRoot":"","sources":["../../../src/errorHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"errorHandler.d.ts","sourceRoot":"","sources":["../../../src/errorHandler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AA6DzD,wBAAgB,eAAe,CAC7B,KAAK,EAAE,KAAK,GAAG,MAAM,EACrB,OAAO,GAAE,OAAe,EACxB,UAAU,CAAC,EAAE,eAAe,GAC3B,IAAI,CA2BN;AAkED,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C;AAED,wBAAgB,iBAAiB,CAAC,kBAAkB,EAAE,OAAO,GAAG,IAAI,CAMnE"}
|
|
@@ -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":"AAQA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,eAAe,GAAG,IAAI,CAe5E"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { startSpan, trackSpan } from './trace';
|
|
2
2
|
import { reportException } from './errorHandler';
|
|
3
3
|
import { trackEvent } from './events';
|
|
4
|
-
import { start } from './config';
|
|
4
|
+
import { start, shutdown } from './config';
|
|
5
5
|
import { isInitialized } from './initialization';
|
|
6
6
|
import { setGlobalAttribute } from './globalAttributes';
|
|
7
7
|
import { setUserId, setUserProperty, setUserProperties } from './user';
|
|
@@ -9,12 +9,14 @@ import { ErrorBoundary, withErrorBoundary } from './errorBoundary';
|
|
|
9
9
|
import { useNavigationTracking, markContentReady } from './navigation';
|
|
10
10
|
export type { Span } from './trace';
|
|
11
11
|
export type { PulseConfig } from './config';
|
|
12
|
+
export type { NetworkHeaderConfig } from './config';
|
|
12
13
|
export type { PulseAttributes, PulseAttributeValue } from './pulse.interface';
|
|
13
14
|
export type { ReactNavigationIntegration, NavigationRoute, NavigationIntegrationOptions, } from './navigation';
|
|
14
15
|
export type { ErrorBoundaryProps, FallbackRender } from './errorBoundary';
|
|
15
16
|
export { SpanStatusCode } from './trace';
|
|
16
17
|
export declare const Pulse: {
|
|
17
18
|
start: typeof start;
|
|
19
|
+
shutdown: typeof shutdown;
|
|
18
20
|
isInitialized: typeof isInitialized;
|
|
19
21
|
useNavigationTracking: typeof useNavigationTracking;
|
|
20
22
|
markContentReady: typeof markContentReady;
|
|
@@ -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,MAAM,UAAU,CAAC;
|
|
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,QAAQ,EAAE,MAAM,UAAU,CAAC;AAC3C,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,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACpD,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;;;;;;;;;;;;;;;;CAgBjB,CAAC"}
|
|
@@ -3,6 +3,7 @@ import type { NavigationIntegrationOptions, NavigationRoute } from './navigation
|
|
|
3
3
|
import { markContentReady } from './screen-interactive';
|
|
4
4
|
export type { NavigationRoute, NavigationIntegrationOptions };
|
|
5
5
|
export { DEFAULT_NAVIGATION_OPTIONS } from './navigation.interface';
|
|
6
|
+
export declare function uninstallNavigationIntegration(): void;
|
|
6
7
|
export interface ReactNavigationIntegration {
|
|
7
8
|
registerNavigationContainer: (maybeNavigationContainer: unknown) => () => void;
|
|
8
9
|
markContentReady: () => void;
|
|
@@ -1 +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;
|
|
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;AAIpE,wBAAgB,8BAA8B,IAAI,IAAI,CAKrD;AAED,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,CA0Q5B;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"}
|
|
@@ -1 +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;
|
|
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;AAK5C,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,CAWvC;AAED,wBAAgB,2BAA2B,CACzC,kBAAkB,EAAE,MAAM,IAAI,GAC7B,IAAI,CAIN"}
|
|
@@ -3,4 +3,5 @@ export { normalizeHeaderName, shouldCaptureHeader } from './header-helper';
|
|
|
3
3
|
export declare function getHeaderConfig(): NetworkHeaderConfig;
|
|
4
4
|
export declare function initializeNetworkInterceptor(config?: NetworkHeaderConfig): void;
|
|
5
5
|
export declare const isNetworkInterceptorInitialized: () => boolean;
|
|
6
|
+
export declare function uninstallNetworkInterceptor(): void;
|
|
6
7
|
//# sourceMappingURL=initialization.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
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;
|
|
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;AAS3E,wBAAgB,eAAe,IAAI,mBAAmB,CAErD;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,CAAC,EAAE,mBAAmB,GAC3B,IAAI,CA8BN;AAED,eAAO,MAAM,+BAA+B,QAAO,OAAwB,CAAC;AAE5E,wBAAgB,2BAA2B,IAAI,IAAI,CASlD"}
|
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import { RequestTracker } from './request-tracker';
|
|
2
|
-
|
|
2
|
+
export interface XmlHttpRequestTrackerResult {
|
|
3
|
+
requestTracker: RequestTracker;
|
|
4
|
+
uninstall: () => void;
|
|
5
|
+
}
|
|
6
|
+
declare function createXmlHttpRequestTracker(xhr: typeof XMLHttpRequest): XmlHttpRequestTrackerResult;
|
|
3
7
|
export default createXmlHttpRequestTracker;
|
|
4
8
|
//# sourceMappingURL=request-tracker-xhr.d.ts.map
|
|
@@ -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;AAgBnD,iBAAS,2BAA2B,CAClC,GAAG,EAAE,OAAO,cAAc,GACzB,
|
|
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,MAAM,WAAW,2BAA2B;IAC1C,cAAc,EAAE,cAAc,CAAC;IAC/B,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,iBAAS,2BAA2B,CAClC,GAAG,EAAE,OAAO,cAAc,GACzB,2BAA2B,CAqL7B;AAED,eAAe,2BAA2B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace.d.ts","sourceRoot":"","sources":["../../../src/trace.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"trace.d.ts","sourceRoot":"","sources":["../../../src/trace.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAUzD;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,oBAAY,cAAc;IACxB,EAAE,OAAO;IACT,KAAK,UAAU;IACf,KAAK,UAAU;CAChB;AAED,MAAM,MAAM,IAAI,GAAG;IACjB,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IAC3C,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,eAAe,KAAK,IAAI,CAAC;IAC/D,aAAa,EAAE,CAAC,UAAU,CAAC,EAAE,eAAe,KAAK,IAAI,CAAC;IACtD,eAAe,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,eAAe,KAAK,IAAI,CAAC;IAEtE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CA2BnE;AAED,wBAAgB,SAAS,CAAC,CAAC,EACzB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,EACpB,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GACvB,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAuBhB;AAOD,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAKhD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../src/user.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../src/user.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAKjD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAKxE;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI,CAKnE"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dreamhorizonorg/pulse-react-native",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.5",
|
|
4
4
|
"description": "Production-grade observability SDK for React Native applications with OpenTelemetry support. Real-time monitoring, error tracking, performance insights, and distributed tracing.",
|
|
5
5
|
"main": "./lib/module/index.js",
|
|
6
6
|
"types": "./lib/typescript/src/index.d.ts",
|
package/plugin/build/types.d.ts
CHANGED
|
@@ -11,7 +11,13 @@ interface IInteractionConfig {
|
|
|
11
11
|
}
|
|
12
12
|
export interface PulsePluginProps {
|
|
13
13
|
endpointBaseUrl: string;
|
|
14
|
+
tenantId: string;
|
|
14
15
|
endpointHeaders?: Record<string, string>;
|
|
16
|
+
/**
|
|
17
|
+
* Optional custom URL for fetching SDK configuration.
|
|
18
|
+
* If not provided, defaults to: {endpointBaseUrl with port 8080}/v1/configs/active/
|
|
19
|
+
*/
|
|
20
|
+
configEndpointUrl?: string;
|
|
15
21
|
globalAttributes?: PulseAttributes;
|
|
16
22
|
instrumentation?: {
|
|
17
23
|
interaction?: IInteractionConfig;
|
package/plugin/build/utils.d.ts
CHANGED
|
@@ -3,7 +3,9 @@ export declare const ATTRIBUTES_IMPORT = "import io.opentelemetry.api.common.Att
|
|
|
3
3
|
import type { PulsePluginProps } from './types';
|
|
4
4
|
export declare function buildPulseInitializationCode(options: {
|
|
5
5
|
endpointBaseUrl: string;
|
|
6
|
+
tenantId: string;
|
|
6
7
|
endpointHeaders?: Record<string, string>;
|
|
8
|
+
configEndpointUrl?: string;
|
|
7
9
|
globalAttributes?: PulsePluginProps['globalAttributes'];
|
|
8
10
|
instrumentation?: PulsePluginProps['instrumentation'];
|
|
9
11
|
}): string;
|
package/plugin/build/utils.js
CHANGED
|
@@ -59,18 +59,22 @@ function buildGlobalAttributesLambda(attributes) {
|
|
|
59
59
|
return `{\n Attributes.builder().apply {\n${formatted}\n }.build()\n }`;
|
|
60
60
|
}
|
|
61
61
|
function buildPulseInitializationCode(options) {
|
|
62
|
-
const { endpointBaseUrl, endpointHeaders, globalAttributes, instrumentation, } = options;
|
|
62
|
+
const { endpointBaseUrl, tenantId, endpointHeaders, configEndpointUrl, globalAttributes, instrumentation, } = options;
|
|
63
63
|
const params = [];
|
|
64
|
+
params.push(`tenantId = "${tenantId}"`);
|
|
64
65
|
if (endpointHeaders && Object.keys(endpointHeaders).length > 0) {
|
|
65
66
|
params.push(`endpointHeaders = ${buildEndpointHeadersMap(endpointHeaders)}`);
|
|
66
67
|
}
|
|
68
|
+
if (configEndpointUrl) {
|
|
69
|
+
params.push(`configEndpointUrl = "${configEndpointUrl}"`);
|
|
70
|
+
}
|
|
67
71
|
const attributesLambda = globalAttributes
|
|
68
72
|
? buildGlobalAttributesLambda(globalAttributes)
|
|
69
73
|
: null;
|
|
70
74
|
if (attributesLambda && attributesLambda !== 'null') {
|
|
71
75
|
params.push(`globalAttributes = ${attributesLambda}`);
|
|
72
76
|
}
|
|
73
|
-
let code = `\n Pulse.initialize(\n this,\n "${endpointBaseUrl}"
|
|
77
|
+
let code = `\n Pulse.initialize(\n this,\n "${endpointBaseUrl}",\n ${params.join(',\n ')}\n ) {\n`;
|
|
74
78
|
if (instrumentation?.interaction !== undefined) {
|
|
75
79
|
if (instrumentation.interaction.url) {
|
|
76
80
|
code += ` interaction { enabled(${instrumentation.interaction.enabled}); setConfigUrl { "${instrumentation.interaction.url}" } }\n`;
|
|
@@ -7,7 +7,7 @@ const utils_1 = require("./utils");
|
|
|
7
7
|
const withAndroidPulse = (config, props) => {
|
|
8
8
|
return (0, config_plugins_1.withMainApplication)(config, (modConfig) => {
|
|
9
9
|
try {
|
|
10
|
-
const { endpointBaseUrl, endpointHeaders, globalAttributes, instrumentation, } = props;
|
|
10
|
+
const { endpointBaseUrl, tenantId, endpointHeaders, configEndpointUrl, globalAttributes, instrumentation, } = props;
|
|
11
11
|
// 1. Add import statements
|
|
12
12
|
modConfig.modResults.contents = (0, generateCode_1.mergeContents)({
|
|
13
13
|
src: modConfig.modResults.contents,
|
|
@@ -29,7 +29,9 @@ const withAndroidPulse = (config, props) => {
|
|
|
29
29
|
}
|
|
30
30
|
const initCode = (0, utils_1.buildPulseInitializationCode)({
|
|
31
31
|
endpointBaseUrl,
|
|
32
|
+
tenantId,
|
|
32
33
|
endpointHeaders,
|
|
34
|
+
configEndpointUrl,
|
|
33
35
|
globalAttributes,
|
|
34
36
|
instrumentation,
|
|
35
37
|
});
|
|
@@ -68,6 +68,9 @@ export interface Spec extends TurboModule {
|
|
|
68
68
|
custom_events: boolean;
|
|
69
69
|
js_crash: boolean;
|
|
70
70
|
} | null;
|
|
71
|
+
|
|
72
|
+
/** Shut down the Pulse SDK. After this, re-init is not supported. */
|
|
73
|
+
shutdown(): boolean;
|
|
71
74
|
}
|
|
72
75
|
|
|
73
76
|
export default TurboModuleRegistry.getEnforcing<Spec>('PulseReactNativeOtel');
|