@dreamhorizonorg/pulse-react-native 0.0.2 → 0.0.4

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.
Files changed (102) hide show
  1. package/android/build.gradle +1 -1
  2. package/android/src/main/java/com/pulsereactnativeotel/Pulse.kt +6 -0
  3. package/android/src/main/java/com/pulsereactnativeotel/PulseReactNativeOtelModule.kt +45 -24
  4. package/ios/PulseReactNativeOtel.mm +124 -63
  5. package/lib/module/NativePulseReactNativeOtel.js.map +1 -1
  6. package/lib/module/config.js +79 -19
  7. package/lib/module/config.js.map +1 -1
  8. package/lib/module/errorBoundary.js +4 -1
  9. package/lib/module/errorBoundary.js.map +1 -1
  10. package/lib/module/errorHandler.js +5 -1
  11. package/lib/module/errorHandler.js.map +1 -1
  12. package/lib/module/events.js +2 -2
  13. package/lib/module/events.js.map +1 -1
  14. package/lib/module/index.js +2 -1
  15. package/lib/module/index.js.map +1 -1
  16. package/lib/module/navigation/index.js +21 -3
  17. package/lib/module/navigation/index.js.map +1 -1
  18. package/lib/module/navigation/navigation.interface.js +6 -0
  19. package/lib/module/navigation/navigation.interface.js.map +1 -1
  20. package/lib/module/navigation/screen-interactive.js +4 -0
  21. package/lib/module/navigation/screen-interactive.js.map +1 -1
  22. package/lib/module/navigation/screen-load.js +1 -2
  23. package/lib/module/navigation/screen-load.js.map +1 -1
  24. package/lib/module/navigation/useNavigationTracking.js +4 -3
  25. package/lib/module/navigation/useNavigationTracking.js.map +1 -1
  26. package/lib/module/network-interceptor/header-helper.js +24 -0
  27. package/lib/module/network-interceptor/header-helper.js.map +1 -0
  28. package/lib/module/network-interceptor/initialization.js +31 -2
  29. package/lib/module/network-interceptor/initialization.js.map +1 -1
  30. package/lib/module/network-interceptor/request-tracker-xhr.js +74 -5
  31. package/lib/module/network-interceptor/request-tracker-xhr.js.map +1 -1
  32. package/lib/module/network-interceptor/span-helpers.js +15 -3
  33. package/lib/module/network-interceptor/span-helpers.js.map +1 -1
  34. package/lib/module/pulse.constants.js +11 -6
  35. package/lib/module/pulse.constants.js.map +1 -1
  36. package/lib/module/trace.js +16 -10
  37. package/lib/module/trace.js.map +1 -1
  38. package/lib/module/user.js +4 -3
  39. package/lib/module/user.js.map +1 -1
  40. package/lib/typescript/plugin/src/types.d.ts +6 -0
  41. package/lib/typescript/plugin/src/types.d.ts.map +1 -1
  42. package/lib/typescript/plugin/src/utils.d.ts +2 -0
  43. package/lib/typescript/plugin/src/utils.d.ts.map +1 -1
  44. package/lib/typescript/plugin/src/withAndroidPulse.d.ts.map +1 -1
  45. package/lib/typescript/src/NativePulseReactNativeOtel.d.ts +10 -1
  46. package/lib/typescript/src/NativePulseReactNativeOtel.d.ts.map +1 -1
  47. package/lib/typescript/src/config.d.ts +11 -7
  48. package/lib/typescript/src/config.d.ts.map +1 -1
  49. package/lib/typescript/src/errorBoundary.d.ts.map +1 -1
  50. package/lib/typescript/src/errorHandler.d.ts +1 -0
  51. package/lib/typescript/src/errorHandler.d.ts.map +1 -1
  52. package/lib/typescript/src/events.d.ts.map +1 -1
  53. package/lib/typescript/src/index.d.ts +3 -2
  54. package/lib/typescript/src/index.d.ts.map +1 -1
  55. package/lib/typescript/src/navigation/index.d.ts +2 -0
  56. package/lib/typescript/src/navigation/index.d.ts.map +1 -1
  57. package/lib/typescript/src/navigation/navigation.interface.d.ts +1 -0
  58. package/lib/typescript/src/navigation/navigation.interface.d.ts.map +1 -1
  59. package/lib/typescript/src/navigation/screen-interactive.d.ts.map +1 -1
  60. package/lib/typescript/src/navigation/screen-load.d.ts.map +1 -1
  61. package/lib/typescript/src/navigation/useNavigationTracking.d.ts +1 -1
  62. package/lib/typescript/src/navigation/useNavigationTracking.d.ts.map +1 -1
  63. package/lib/typescript/src/network-interceptor/header-helper.d.ts +15 -0
  64. package/lib/typescript/src/network-interceptor/header-helper.d.ts.map +1 -0
  65. package/lib/typescript/src/network-interceptor/initialization.d.ts +5 -1
  66. package/lib/typescript/src/network-interceptor/initialization.d.ts.map +1 -1
  67. package/lib/typescript/src/network-interceptor/network.interface.d.ts +3 -0
  68. package/lib/typescript/src/network-interceptor/network.interface.d.ts.map +1 -1
  69. package/lib/typescript/src/network-interceptor/request-tracker-xhr.d.ts +5 -1
  70. package/lib/typescript/src/network-interceptor/request-tracker-xhr.d.ts.map +1 -1
  71. package/lib/typescript/src/network-interceptor/span-helpers.d.ts.map +1 -1
  72. package/lib/typescript/src/pulse.constants.d.ts +13 -5
  73. package/lib/typescript/src/pulse.constants.d.ts.map +1 -1
  74. package/lib/typescript/src/pulse.interface.d.ts +1 -1
  75. package/lib/typescript/src/pulse.interface.d.ts.map +1 -1
  76. package/lib/typescript/src/trace.d.ts.map +1 -1
  77. package/lib/typescript/src/user.d.ts.map +1 -1
  78. package/package.json +1 -1
  79. package/plugin/build/types.d.ts +6 -0
  80. package/plugin/build/utils.d.ts +2 -0
  81. package/plugin/build/utils.js +6 -2
  82. package/plugin/build/withAndroidPulse.js +3 -1
  83. package/src/NativePulseReactNativeOtel.ts +11 -1
  84. package/src/config.ts +120 -28
  85. package/src/errorBoundary.tsx +4 -1
  86. package/src/errorHandler.ts +6 -1
  87. package/src/events.ts +6 -2
  88. package/src/index.tsx +3 -2
  89. package/src/navigation/index.ts +49 -7
  90. package/src/navigation/navigation.interface.ts +7 -0
  91. package/src/navigation/screen-interactive.ts +4 -0
  92. package/src/navigation/screen-load.ts +1 -7
  93. package/src/navigation/useNavigationTracking.ts +13 -4
  94. package/src/network-interceptor/header-helper.ts +26 -0
  95. package/src/network-interceptor/initialization.ts +36 -2
  96. package/src/network-interceptor/network.interface.ts +3 -0
  97. package/src/network-interceptor/request-tracker-xhr.ts +106 -5
  98. package/src/network-interceptor/span-helpers.ts +23 -3
  99. package/src/pulse.constants.ts +19 -5
  100. package/src/pulse.interface.ts +1 -1
  101. package/src/trace.ts +17 -10
  102. package/src/user.ts +4 -3
@@ -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,
@@ -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","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":[]}
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":[]}
@@ -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);
@@ -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;IAC1B;EACF;EACAD,oBAAoB,CAACE,SAAS,CAACC,EAAE,CAAC;AACpC;AAEA,OAAO,SAASC,eAAeA,CAACC,IAAY,EAAEC,KAAoB,EAAQ;EACxE,IAAI,CAACL,mBAAmB,CAAC,CAAC,EAAE;IAC1B;EACF;EACAD,oBAAoB,CAACI,eAAe,CAACC,IAAI,EAAEC,KAAK,CAAC;AACnD;AAEA,OAAO,SAASC,iBAAiBA,CAACC,UAA2B,EAAQ;EACnE,IAAI,CAACP,mBAAmB,CAAC,CAAC,EAAE;IAC1B;EACF;EACAD,oBAAoB,CAACO,iBAAiB,CAACC,UAAU,CAAC;AACpD","ignoreList":[]}
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,CA2DT"}
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,CAyD3D,CAAC"}
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"}
@@ -30,7 +30,16 @@ export interface Spec extends TurboModule {
30
30
  /** Set the current React Native screen name to sync active screen name on Android/iOS */
31
31
  setCurrentScreenName(screenName: string): boolean;
32
32
  /** Get all SDK Remote Config features */
33
- getAllFeatures(): Object;
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;
41
+ /** Shut down the Pulse SDK. After this, re-init is not supported. */
42
+ shutdown(): boolean;
34
43
  }
35
44
  declare const _default: Spec;
36
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,MAAM,CAAC;CAC1B;;AAED,wBAA8E"}
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"}
@@ -1,20 +1,24 @@
1
1
  import { type ReactNavigationIntegration, type NavigationIntegrationOptions } from './navigation';
2
2
  import type { PulseFeatureConfig } from './pulse.interface';
3
- export type PulseConfig = {
4
- autoDetectExceptions?: boolean;
5
- autoDetectNavigation?: boolean;
6
- autoDetectNetwork?: boolean;
3
+ export type NetworkHeaderConfig = {
4
+ requestHeaders?: string[];
5
+ responseHeaders?: string[];
7
6
  };
8
- export type PulseStartOptions = {
7
+ export type PulseConfig = {
9
8
  autoDetectExceptions?: boolean;
10
9
  autoDetectNavigation?: boolean;
11
10
  autoDetectNetwork?: boolean;
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
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
- export declare function start(options?: PulseStartOptions): void;
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,EAEL,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EAClC,MAAM,cAAc,CAAC;AAGtB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,MAAM,MAAM,WAAW,GAAG;IACxB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAaF;;;GAGG;AACH,wBAAgB,2BAA2B,IAAI,kBAAkB,CAQhE;AAcD,wBAAgB,KAAK,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAiBvD;AAED,wBAAgB,qCAAqC,CACnD,OAAO,CAAC,EAAE,4BAA4B,GACrC,0BAA0B,CAsB5B"}
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,CAiCjD;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;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
+ {"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":"AAIA,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,iBAAiB,CAAC,kBAAkB,EAAE,OAAO,GAAG,IAAI,CAMnE"}
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":"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
+ {"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,20 +1,21 @@
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';
8
8
  import { ErrorBoundary, withErrorBoundary } from './errorBoundary';
9
9
  import { useNavigationTracking, markContentReady } from './navigation';
10
10
  export type { Span } from './trace';
11
- export type { PulseConfig, PulseStartOptions } from './config';
11
+ export type { PulseConfig } from './config';
12
12
  export type { PulseAttributes, PulseAttributeValue } from './pulse.interface';
13
13
  export type { ReactNavigationIntegration, NavigationRoute, NavigationIntegrationOptions, } from './navigation';
14
14
  export type { ErrorBoundaryProps, FallbackRender } from './errorBoundary';
15
15
  export { SpanStatusCode } from './trace';
16
16
  export declare const Pulse: {
17
17
  start: typeof start;
18
+ shutdown: typeof shutdown;
18
19
  isInitialized: typeof isInitialized;
19
20
  useNavigationTracking: typeof useNavigationTracking;
20
21
  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;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,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC/D,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"}
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,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"}
@@ -2,6 +2,8 @@ import type { RefObject } from 'react';
2
2
  import type { NavigationIntegrationOptions, NavigationRoute } from './navigation.interface';
3
3
  import { markContentReady } from './screen-interactive';
4
4
  export type { NavigationRoute, NavigationIntegrationOptions };
5
+ export { DEFAULT_NAVIGATION_OPTIONS } from './navigation.interface';
6
+ export declare function uninstallNavigationIntegration(): void;
5
7
  export interface ReactNavigationIntegration {
6
8
  registerNavigationContainer: (maybeNavigationContainer: unknown) => () => void;
7
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;AAQhC,OAAO,EAEL,gBAAgB,EAIjB,MAAM,sBAAsB,CAAC;AAW9B,YAAY,EAAE,eAAe,EAAE,4BAA4B,EAAE,CAAC;AAE9D,MAAM,WAAW,0BAA0B;IACzC,2BAA2B,EAAE,CAC3B,wBAAwB,EAAE,OAAO,KAC9B,MAAM,IAAI,CAAC;IAChB,gBAAgB,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED,wBAAgB,gCAAgC,CAC9C,OAAO,CAAC,EAAE,4BAA4B,GACrC,0BAA0B,CAyP5B;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
+ {"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"}
@@ -14,4 +14,5 @@ export interface NavigationIntegrationOptions {
14
14
  screenNavigationTracking?: boolean;
15
15
  screenInteractiveTracking?: boolean;
16
16
  }
17
+ export declare const DEFAULT_NAVIGATION_OPTIONS: Required<NavigationIntegrationOptions>;
17
18
  //# sourceMappingURL=navigation.interface.d.ts.map
@@ -1 +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"}
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"}
@@ -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;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"}
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"}
@@ -1 +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;AAQ5C,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;uCAgBnB,eAAe,kBACd,eAAe,qBACZ,OAAO,KACzB,IAAI;sCA8BkC,eAAe,KAAG,IAAI;EAyBhE"}
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"}
@@ -1,5 +1,5 @@
1
1
  import { type RefObject } from 'react';
2
- import type { NavigationIntegrationOptions } from './navigation.interface';
2
+ import { type NavigationIntegrationOptions } from './navigation.interface';
3
3
  import type { ReactNavigationIntegration } from './index';
4
4
  export declare function useNavigationTracking(navigationRef: RefObject<any>, options?: NavigationIntegrationOptions, createIntegration?: (options?: NavigationIntegrationOptions) => ReactNavigationIntegration): () => void;
5
5
  //# sourceMappingURL=useNavigationTracking.d.ts.map
@@ -1 +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,KAAK,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AAC3E,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,CAuCZ"}
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,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,7 @@
1
- export declare function initializeNetworkInterceptor(): void;
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;
6
+ export declare function uninstallNetworkInterceptor(): void;
3
7
  //# sourceMappingURL=initialization.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"initialization.d.ts","sourceRoot":"","sources":["../../../../src/network-interceptor/initialization.ts"],"names":[],"mappings":"AAIA,wBAAgB,4BAA4B,IAAI,IAAI,CAqBnD;AAED,eAAO,MAAM,+BAA+B,QAAO,OAAwB,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"}
@@ -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;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,SAAS,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;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
+ {"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,4 +1,8 @@
1
1
  import { RequestTracker } from './request-tracker';
2
- declare function createXmlHttpRequestTracker(xhr: typeof XMLHttpRequest): RequestTracker;
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;AAcnD,iBAAS,2BAA2B,CAClC,GAAG,EAAE,OAAO,cAAc,GACzB,cAAc,CAuFhB;AAED,eAAe,2BAA2B,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,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":"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;AAK1D,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,mBAAmB,EACjC,UAAU,EAAE,iBAAiB,GAC5B,eAAe,CA+BjB;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,CAoBN;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,mBAAmB,EACjC,UAAU,EAAE,iBAAiB,EAC7B,OAAO,EAAE,OAAO,GACf,IAAI,CAYN"}
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"}
@@ -10,7 +10,6 @@ export declare enum ATTRIBUTE_KEYS {
10
10
  PULSE_TYPE = "pulse.type",
11
11
  SCREEN_NAME = "screen.name",
12
12
  ROUTE_KEY = "routeKey",
13
- PHASE = "phase",
14
13
  LAST_SCREEN_NAME = "last.screen.name",
15
14
  ROUTE_HAS_BEEN_SEEN = "routeHasBeenSeen",
16
15
  PLATFORM = "platform",
@@ -20,16 +19,25 @@ export declare enum ATTRIBUTE_KEYS {
20
19
  HTTP_URL = "http.url",
21
20
  HTTP_STATUS_CODE = "http.status_code",
22
21
  HTTP_REQUEST_TYPE = "http.request.type",
22
+ HTTP_REQUEST_HEADER = "http.request.header",
23
+ HTTP_RESPONSE_HEADER = "http.response.header",
23
24
  ERROR_MESSAGE = "error.message",
24
25
  ERROR_STACK = "error.stack"
25
26
  }
26
27
  export declare enum PULSE_TYPES {
27
28
  SCREEN_SESSION = "screen_session",
28
29
  SCREEN_LOAD = "screen_load",
29
- SCREEN_INTERACTIVE = "screen_interactive"
30
- }
31
- export declare enum PHASE_VALUES {
32
- START = "start",
30
+ SCREEN_INTERACTIVE = "screen_interactive",
33
31
  NETWORK = "network"
34
32
  }
33
+ export declare const PULSE_FEATURE_NAMES: {
34
+ readonly RN_SCREEN_LOAD: "rn_screen_load";
35
+ readonly SCREEN_SESSION: "screen_session";
36
+ readonly RN_SCREEN_INTERACTIVE: "rn_screen_interactive";
37
+ readonly NETWORK_INSTRUMENTATION: "network_instrumentation";
38
+ readonly CUSTOM_EVENTS: "custom_events";
39
+ readonly JS_CRASH: "js_crash";
40
+ };
41
+ export type PulseFeatureName = (typeof PULSE_FEATURE_NAMES)[keyof typeof PULSE_FEATURE_NAMES];
42
+ export type NavigationFeatureName = typeof PULSE_FEATURE_NAMES.SCREEN_SESSION | typeof PULSE_FEATURE_NAMES.RN_SCREEN_LOAD | typeof PULSE_FEATURE_NAMES.RN_SCREEN_INTERACTIVE;
35
43
  //# sourceMappingURL=pulse.constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pulse.constants.d.ts","sourceRoot":"","sources":["../../../src/pulse.constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,oBAAY,UAAU;IACpB,cAAc,kBAAkB;IAChC,SAAS,cAAc;IACvB,kBAAkB,sBAAsB;CACzC;AAED,oBAAY,cAAc;IACxB,UAAU,eAAe;IACzB,WAAW,gBAAgB;IAC3B,SAAS,aAAa;IACtB,KAAK,UAAU;IACf,gBAAgB,qBAAqB;IACrC,mBAAmB,qBAAqB;IACxC,QAAQ,aAAa;IACrB,sBAAsB,2BAA2B;IACjD,sBAAsB,2BAA2B;IACjD,WAAW,gBAAgB;IAC3B,QAAQ,aAAa;IACrB,gBAAgB,qBAAqB;IACrC,iBAAiB,sBAAsB;IACvC,aAAa,kBAAkB;IAC/B,WAAW,gBAAgB;CAC5B;AAED,oBAAY,WAAW;IACrB,cAAc,mBAAmB;IACjC,WAAW,gBAAgB;IAC3B,kBAAkB,uBAAuB;CAC1C;AAED,oBAAY,YAAY;IACtB,KAAK,UAAU;IACf,OAAO,YAAY;CACpB"}
1
+ {"version":3,"file":"pulse.constants.d.ts","sourceRoot":"","sources":["../../../src/pulse.constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,oBAAY,UAAU;IACpB,cAAc,kBAAkB;IAChC,SAAS,cAAc;IACvB,kBAAkB,sBAAsB;CACzC;AAED,oBAAY,cAAc;IACxB,UAAU,eAAe;IACzB,WAAW,gBAAgB;IAC3B,SAAS,aAAa;IACtB,gBAAgB,qBAAqB;IACrC,mBAAmB,qBAAqB;IACxC,QAAQ,aAAa;IACrB,sBAAsB,2BAA2B;IACjD,sBAAsB,2BAA2B;IACjD,WAAW,gBAAgB;IAC3B,QAAQ,aAAa;IACrB,gBAAgB,qBAAqB;IACrC,iBAAiB,sBAAsB;IACvC,mBAAmB,wBAAwB;IAC3C,oBAAoB,yBAAyB;IAC7C,aAAa,kBAAkB;IAC/B,WAAW,gBAAgB;CAC5B;AAED,oBAAY,WAAW;IACrB,cAAc,mBAAmB;IACjC,WAAW,gBAAgB;IAC3B,kBAAkB,uBAAuB;IACzC,OAAO,YAAY;CACpB;AAED,eAAO,MAAM,mBAAmB;;;;;;;CAOtB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAC1B,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,OAAO,mBAAmB,CAAC,CAAC;AAEjE,MAAM,MAAM,qBAAqB,GAC7B,OAAO,mBAAmB,CAAC,cAAc,GACzC,OAAO,mBAAmB,CAAC,cAAc,GACzC,OAAO,mBAAmB,CAAC,qBAAqB,CAAC"}
@@ -5,5 +5,5 @@
5
5
  */
6
6
  export type PulseAttributeValue = string | number | boolean | string[] | number[] | boolean[];
7
7
  export type PulseAttributes = Record<string, PulseAttributeValue | undefined | null>;
8
- export type PulseFeatureConfig = Record<string, boolean> | null;
8
+ export type PulseFeatureConfig = Record<string, boolean> | null | undefined;
9
9
  //# sourceMappingURL=pulse.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pulse.interface.d.ts","sourceRoot":"","sources":["../../../src/pulse.interface.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,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"pulse.interface.d.ts","sourceRoot":"","sources":["../../../src/pulse.interface.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,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"trace.d.ts","sourceRoot":"","sources":["../../../src/trace.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD;;;;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,CAiCnE;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;AAMD,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAKhD"}
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":"AAEA,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"}
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.2",
3
+ "version": "0.0.4",
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",
@@ -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;
@@ -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;
@@ -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}"${params.length > 0 ? `,\n ${params.join(',\n ')}` : ''}\n ) {\n`;
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`;