@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.
Files changed (68) hide show
  1. package/android/build.gradle +1 -1
  2. package/android/src/main/java/com/pulsereactnativeotel/Pulse.kt +4 -0
  3. package/android/src/main/java/com/pulsereactnativeotel/PulseReactNativeOtelModule.kt +5 -0
  4. package/ios/PulseReactNativeOtel.mm +124 -63
  5. package/lib/module/NativePulseReactNativeOtel.js.map +1 -1
  6. package/lib/module/config.js +50 -4
  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 +11 -0
  17. package/lib/module/navigation/index.js.map +1 -1
  18. package/lib/module/navigation/screen-interactive.js +4 -0
  19. package/lib/module/navigation/screen-interactive.js.map +1 -1
  20. package/lib/module/network-interceptor/initialization.js +13 -1
  21. package/lib/module/network-interceptor/initialization.js.map +1 -1
  22. package/lib/module/network-interceptor/request-tracker-xhr.js +15 -2
  23. package/lib/module/network-interceptor/request-tracker-xhr.js.map +1 -1
  24. package/lib/module/trace.js +16 -10
  25. package/lib/module/trace.js.map +1 -1
  26. package/lib/module/user.js +4 -3
  27. package/lib/module/user.js.map +1 -1
  28. package/lib/typescript/plugin/src/types.d.ts +6 -0
  29. package/lib/typescript/plugin/src/types.d.ts.map +1 -1
  30. package/lib/typescript/plugin/src/utils.d.ts +2 -0
  31. package/lib/typescript/plugin/src/utils.d.ts.map +1 -1
  32. package/lib/typescript/plugin/src/withAndroidPulse.d.ts.map +1 -1
  33. package/lib/typescript/src/NativePulseReactNativeOtel.d.ts +2 -0
  34. package/lib/typescript/src/NativePulseReactNativeOtel.d.ts.map +1 -1
  35. package/lib/typescript/src/config.d.ts +5 -1
  36. package/lib/typescript/src/config.d.ts.map +1 -1
  37. package/lib/typescript/src/errorBoundary.d.ts.map +1 -1
  38. package/lib/typescript/src/errorHandler.d.ts +1 -0
  39. package/lib/typescript/src/errorHandler.d.ts.map +1 -1
  40. package/lib/typescript/src/events.d.ts.map +1 -1
  41. package/lib/typescript/src/index.d.ts +3 -1
  42. package/lib/typescript/src/index.d.ts.map +1 -1
  43. package/lib/typescript/src/navigation/index.d.ts +1 -0
  44. package/lib/typescript/src/navigation/index.d.ts.map +1 -1
  45. package/lib/typescript/src/navigation/screen-interactive.d.ts.map +1 -1
  46. package/lib/typescript/src/network-interceptor/initialization.d.ts +1 -0
  47. package/lib/typescript/src/network-interceptor/initialization.d.ts.map +1 -1
  48. package/lib/typescript/src/network-interceptor/request-tracker-xhr.d.ts +5 -1
  49. package/lib/typescript/src/network-interceptor/request-tracker-xhr.d.ts.map +1 -1
  50. package/lib/typescript/src/trace.d.ts.map +1 -1
  51. package/lib/typescript/src/user.d.ts.map +1 -1
  52. package/package.json +1 -1
  53. package/plugin/build/types.d.ts +6 -0
  54. package/plugin/build/utils.d.ts +2 -0
  55. package/plugin/build/utils.js +6 -2
  56. package/plugin/build/withAndroidPulse.js +3 -1
  57. package/src/NativePulseReactNativeOtel.ts +3 -0
  58. package/src/config.ts +57 -3
  59. package/src/errorBoundary.tsx +4 -1
  60. package/src/errorHandler.ts +6 -1
  61. package/src/events.ts +6 -2
  62. package/src/index.tsx +3 -1
  63. package/src/navigation/index.ts +13 -0
  64. package/src/navigation/screen-interactive.ts +4 -0
  65. package/src/network-interceptor/initialization.ts +14 -1
  66. package/src/network-interceptor/request-tracker-xhr.ts +16 -3
  67. package/src/trace.ts +17 -10
  68. package/src/user.ts +4 -3
@@ -77,7 +77,7 @@ repositories {
77
77
  google()
78
78
  }
79
79
 
80
- def pulse_version = "0.0.3-alpha"
80
+ def pulse_version = "0.0.5-alpha"
81
81
  dependencies {
82
82
  implementation("com.facebook.react:react-android")
83
83
 
@@ -23,11 +23,13 @@ public object Pulse : PulseSDK by PulseSDK.INSTANCE {
23
23
  public override fun initialize(
24
24
  application: Application,
25
25
  endpointBaseUrl: String,
26
+ tenantId: String,
26
27
  endpointHeaders: Map<String, String>,
27
28
  spanEndpointConnectivity: EndpointConnectivity,
28
29
  logEndpointConnectivity: EndpointConnectivity,
29
30
  metricEndpointConnectivity: EndpointConnectivity,
30
31
  customEventConnectivity: EndpointConnectivity,
32
+ configEndpointUrl: String?,
31
33
  resource: (ResourceBuilder.() -> Unit)?,
32
34
  sessionConfig: SessionConfig,
33
35
  globalAttributes: (() -> Attributes)?,
@@ -71,11 +73,13 @@ public object Pulse : PulseSDK by PulseSDK.INSTANCE {
71
73
  PulseSDK.INSTANCE.initialize(
72
74
  application = application,
73
75
  endpointBaseUrl = endpointBaseUrl,
76
+ tenantId = tenantId,
74
77
  endpointHeaders = endpointHeaders,
75
78
  spanEndpointConnectivity = spanEndpointConnectivity,
76
79
  logEndpointConnectivity = logEndpointConnectivity,
77
80
  metricEndpointConnectivity = metricEndpointConnectivity,
78
81
  customEventConnectivity = customEventConnectivity,
82
+ configEndpointUrl = configEndpointUrl,
79
83
  resource = rnResource,
80
84
  sessionConfig = sessionConfig,
81
85
  globalAttributes = globalAttributes,
@@ -89,6 +89,11 @@ internal class PulseReactNativeOtelModule(reactContext: ReactApplicationContext)
89
89
  }
90
90
  }
91
91
 
92
+ override fun shutdown(): Boolean {
93
+ PulseSDK.INSTANCE.shutdown()
94
+ return true
95
+ }
96
+
92
97
  override fun triggerAnr() {
93
98
  Handler(Looper.getMainLooper()).postAtFrontOfQueue {
94
99
  Log.d("[Pulse]", "Now running PostAtFrontQueue: ${Thread.currentThread().name}")
@@ -21,86 +21,147 @@ RCT_EXPORT_MODULE()
21
21
  return self;
22
22
  }
23
23
 
24
- // Check if native SDK is initialized (always false on iOS)
25
- - (NSNumber *)isInitialized
26
- {
27
- return @NO;
28
- }
24
+ #pragma mark - Shared implementation
29
25
 
30
- // Track event (no-op)
31
- - (NSNumber *)trackEvent:(NSString *)event
32
- observedTimeMs:(double)observedTimeMs
33
- properties:(NSDictionary *)properties
34
- {
35
- return @NO;
36
- }
26
+ - (NSNumber *)doIsInitialized { return @NO; }
37
27
 
38
- - (NSString *)startSpan:(NSString *)name
39
- attributes:(NSDictionary *)attributes
40
- inheritContext:(NSNumber *)inheritContext
41
- {
42
- return [NSString stringWithFormat:@"noop-ios-%@", [[NSUUID UUID] UUIDString]];
43
- }
28
+ - (NSNumber *)doTrackEvent:(NSString *)event observedTimeMs:(double)observedTimeMs properties:(NSDictionary *)properties
29
+ { return @NO; }
44
30
 
45
- // End span (no-op)
46
- - (NSNumber *)endSpan:(NSString *)spanId
47
- {
48
- return @NO;
49
- }
31
+ - (NSString *)doStartSpan:(NSString *)name inheritContext:(NSNumber *)inheritContext attributes:(NSDictionary *)attributes
32
+ { return [NSString stringWithFormat:@"noop-ios-%@", [[NSUUID UUID] UUIDString]]; }
50
33
 
51
- // Add span event (no-op)
52
- - (NSNumber *)addSpanEvent:(NSString *)spanId
53
- name:(NSString *)name
54
- attributes:(NSDictionary *)attributes
55
- {
56
- return @NO;
57
- }
34
+ - (NSNumber *)doEndSpan:(NSString *)spanId statusCode:(NSString *)statusCode
35
+ { return @NO; }
58
36
 
59
- // Set span attributes (no-op)
60
- - (NSNumber *)setSpanAttributes:(NSString *)spanId
61
- attributes:(NSDictionary *)attributes
62
- {
63
- return @NO;
64
- }
37
+ - (NSNumber *)doAddSpanEvent:(NSString *)spanId name:(NSString *)name attributes:(NSDictionary *)attributes
38
+ { return @NO; }
65
39
 
66
- // Record span exception (no-op)
67
- - (NSNumber *)recordSpanException:(NSString *)spanId
68
- errorMessage:(NSString *)errorMessage
69
- stackTrace:(NSString *)stackTrace
70
- {
71
- return @NO;
72
- }
40
+ - (NSNumber *)doSetSpanAttributes:(NSString *)spanId attributes:(NSDictionary *)attributes
41
+ { return @NO; }
73
42
 
74
- // Discard span (no-op on iOS)
75
- - (NSNumber *)discardSpan:(NSString *)spanId
76
- {
77
- return @NO;
78
- }
43
+ - (NSNumber *)doRecordSpanException:(NSString *)spanId errorMessage:(NSString *)errorMessage stackTrace:(NSString *)stackTrace
44
+ { return @NO; }
79
45
 
80
- - (nonnull NSNumber *)reportException:(nonnull NSString *)errorMessage observedTimeMs:(double)observedTimeMs stackTrace:(nonnull NSString *)stackTrace isFatal:(BOOL)isFatal errorType:(nonnull NSString *)errorType attributes:(nonnull NSDictionary *)attributes {
81
- return @NO;
82
- }
46
+ - (NSNumber *)doReportException:(NSString *)errorMessage observedTimeMs:(double)observedTimeMs stackTrace:(NSString *)stackTrace isFatal:(BOOL)isFatal errorType:(NSString *)errorType attributes:(NSDictionary *)attributes
47
+ { return @NO; }
83
48
 
49
+ - (NSNumber *)doDiscardSpan:(NSString *)spanId { return @NO; }
84
50
 
85
- - (void)setUserId:(NSString * _Nullable)id {
86
- // No op
87
- }
51
+ - (void)doSetUserId:(NSString *)id { }
88
52
 
53
+ - (void)doSetUserProperties:(NSDictionary *)properties { }
89
54
 
90
- - (void)setUserProperties:(nonnull NSDictionary *)properties {
91
- // No op
92
- }
55
+ - (void)doSetUserProperty:(NSString *)name value:(NSString *)value { }
93
56
 
57
+ - (void)doTriggerAnr { }
94
58
 
95
- - (void)setUserProperty:(nonnull NSString *)name value:(NSString * _Nullable)value {
96
- // No op
97
- }
59
+ - (NSNumber *)doSetCurrentScreenName:(NSString *)screenName { return @NO; }
60
+
61
+ - (NSDictionary *)doGetAllFeatures { return nil; }
62
+
63
+ - (NSNumber *)doShutdown { return @YES; }
64
+
65
+ #pragma mark - New Architecture
66
+
67
+ #if RCT_NEW_ARCH_ENABLED
68
+
69
+ - (NSNumber *)isInitialized { return [self doIsInitialized]; }
70
+
71
+ - (NSNumber *)trackEvent:(NSString *)event observedTimeMs:(double)observedTimeMs properties:(NSDictionary *)properties
72
+ { return [self doTrackEvent:event observedTimeMs:observedTimeMs properties:properties]; }
73
+
74
+ - (NSString *)startSpan:(NSString *)name inheritContext:(NSNumber *)inheritContext attributes:(NSDictionary *)attributes
75
+ { return [self doStartSpan:name inheritContext:inheritContext attributes:attributes]; }
76
+
77
+ - (NSNumber *)endSpan:(NSString *)spanId statusCode:(NSString *)statusCode
78
+ { return [self doEndSpan:spanId statusCode:statusCode]; }
79
+
80
+ - (NSNumber *)addSpanEvent:(NSString *)spanId name:(NSString *)name attributes:(NSDictionary *)attributes
81
+ { return [self doAddSpanEvent:spanId name:name attributes:attributes]; }
98
82
 
83
+ - (NSNumber *)setSpanAttributes:(NSString *)spanId attributes:(NSDictionary *)attributes
84
+ { return [self doSetSpanAttributes:spanId attributes:attributes]; }
99
85
 
100
- - (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
101
- (const facebook::react::ObjCTurboModule::InitParams &)params
86
+ - (NSNumber *)recordSpanException:(NSString *)spanId errorMessage:(NSString *)errorMessage stackTrace:(NSString *)stackTrace
87
+ { return [self doRecordSpanException:spanId errorMessage:errorMessage stackTrace:stackTrace]; }
88
+
89
+ - (NSNumber *)reportException:(NSString *)errorMessage observedTimeMs:(double)observedTimeMs stackTrace:(NSString *)stackTrace isFatal:(BOOL)isFatal errorType:(NSString *)errorType attributes:(NSDictionary *)attributes
90
+ { return [self doReportException:errorMessage observedTimeMs:observedTimeMs stackTrace:stackTrace isFatal:isFatal errorType:errorType attributes:attributes]; }
91
+
92
+ - (NSNumber *)discardSpan:(NSString *)spanId { return [self doDiscardSpan:spanId]; }
93
+
94
+ - (void)setUserId:(NSString *)id { [self doSetUserId:id]; }
95
+
96
+ - (void)setUserProperties:(NSDictionary *)properties { [self doSetUserProperties:properties]; }
97
+
98
+ - (void)setUserProperty:(NSString *)name value:(NSString *)value { [self doSetUserProperty:name value:value]; }
99
+
100
+ - (void)triggerAnr { [self doTriggerAnr]; }
101
+
102
+ - (NSNumber *)setCurrentScreenName:(NSString *)screenName { return [self doSetCurrentScreenName:screenName]; }
103
+
104
+ - (NSDictionary *)getAllFeatures { return [self doGetAllFeatures]; }
105
+
106
+ - (NSNumber *)shutdown { return [self doShutdown]; }
107
+
108
+ - (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:(const facebook::react::ObjCTurboModule::InitParams &)params
102
109
  {
103
- return std::make_shared<facebook::react::NativePulseReactNativeOtelSpecJSI>(params);
110
+ return std::make_shared<facebook::react::NativePulseReactNativeOtelSpecJSI>(params);
104
111
  }
105
112
 
113
+ #pragma mark - Old Architecture
114
+
115
+ #else
116
+
117
+ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(isInitialized)
118
+ { return [self doIsInitialized]; }
119
+
120
+ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(trackEvent:(NSString *)event observedTimeMs:(double)observedTimeMs properties:(NSDictionary *)properties)
121
+ { return [self doTrackEvent:event observedTimeMs:observedTimeMs properties:properties]; }
122
+
123
+ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(startSpan:(NSString *)name inheritContext:(NSNumber *)inheritContext attributes:(NSDictionary *)attributes)
124
+ { return [self doStartSpan:name inheritContext:inheritContext attributes:attributes]; }
125
+
126
+ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(endSpan:(NSString *)spanId statusCode:(NSString *)statusCode)
127
+ { return [self doEndSpan:spanId statusCode:statusCode]; }
128
+
129
+ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(addSpanEvent:(NSString *)spanId name:(NSString *)name attributes:(NSDictionary *)attributes)
130
+ { return [self doAddSpanEvent:spanId name:name attributes:attributes]; }
131
+
132
+ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(setSpanAttributes:(NSString *)spanId attributes:(NSDictionary *)attributes)
133
+ { return [self doSetSpanAttributes:spanId attributes:attributes]; }
134
+
135
+ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(recordSpanException:(NSString *)spanId errorMessage:(NSString *)errorMessage stackTrace:(NSString *)stackTrace)
136
+ { return [self doRecordSpanException:spanId errorMessage:errorMessage stackTrace:stackTrace]; }
137
+
138
+ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(reportException:(NSString *)errorMessage observedTimeMs:(double)observedTimeMs stackTrace:(NSString *)stackTrace isFatal:(BOOL)isFatal errorType:(NSString *)errorType attributes:(NSDictionary *)attributes)
139
+ { return [self doReportException:errorMessage observedTimeMs:observedTimeMs stackTrace:stackTrace isFatal:isFatal errorType:errorType attributes:attributes]; }
140
+
141
+ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(discardSpan:(NSString *)spanId)
142
+ { return [self doDiscardSpan:spanId]; }
143
+
144
+ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(setCurrentScreenName:(NSString *)screenName)
145
+ { return [self doSetCurrentScreenName:screenName]; }
146
+
147
+ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(getAllFeatures)
148
+ { return [self doGetAllFeatures]; }
149
+
150
+ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(shutdown)
151
+ { return [self doShutdown]; }
152
+
153
+ RCT_EXPORT_METHOD(setUserId:(NSString *)id)
154
+ { [self doSetUserId:id]; }
155
+
156
+ RCT_EXPORT_METHOD(setUserProperties:(NSDictionary *)properties)
157
+ { [self doSetUserProperties:properties]; }
158
+
159
+ RCT_EXPORT_METHOD(setUserProperty:(NSString *)name value:(NSString *)value)
160
+ { [self doSetUserProperty:name value:value]; }
161
+
162
+ RCT_EXPORT_METHOD(triggerAnr)
163
+ { [self doTriggerAnr]; }
164
+
165
+ #endif
166
+
106
167
  @end
@@ -1 +1 @@
1
- {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativePulseReactNativeOtel.ts"],"mappings":";;AAAA,SAASA,mBAAmB,QAA0B,cAAc;AAwEpE,eAAeA,mBAAmB,CAACC,YAAY,CAAO,sBAAsB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativePulseReactNativeOtel.ts"],"mappings":";;AAAA,SAASA,mBAAmB,QAA0B,cAAc;AA2EpE,eAAeA,mBAAmB,CAACC,YAAY,CAAO,sBAAsB,CAAC","ignoreList":[]}
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
 
3
- import { setupErrorHandler } from "./errorHandler.js";
3
+ import { setupErrorHandler, uninstallErrorHandler } from "./errorHandler.js";
4
4
  import { isSupportedPlatform } from "./initialization.js";
5
- import { createReactNavigationIntegration } from "./navigation/index.js";
6
- import { initializeNetworkInterceptor } from "./network-interceptor/initialization.js";
5
+ import { createReactNavigationIntegration, uninstallNavigationIntegration } from "./navigation/index.js";
6
+ import { initializeNetworkInterceptor, uninstallNetworkInterceptor } from "./network-interceptor/initialization.js";
7
7
  import PulseReactNativeOtel from "./NativePulseReactNativeOtel.js";
8
8
  import { PULSE_FEATURE_NAMES } from "./pulse.constants.js";
9
9
  const defaultConfig = {
@@ -19,12 +19,26 @@ let currentConfig = {
19
19
  ...defaultConfig
20
20
  };
21
21
 
22
+ /** After shutdown, start() and initialize are no-ops; re-initialization is not supported. */
23
+ let isShutdown = false;
24
+
25
+ /** True only after start() has been called at least once. Integrations (e.g. navigation) are no-ops until then. */
26
+ let isStarted = false;
27
+
22
28
  // Cache for features from remote SDK config
23
29
  let cachedFeatures;
30
+ export function getIsShutdown() {
31
+ return isShutdown;
32
+ }
33
+
34
+ /** True only after start() has been called at least once. Public APIs (trackEvent, reportException, startSpan, etc.) no-op until then. */
35
+ export function getIsStarted() {
36
+ return isStarted;
37
+ }
24
38
 
25
39
  /**
26
40
  * Gets all features from the remote SDK config.
27
- * @returns Record of feature names to their enabled status, or null if config not available
41
+ * @returns Record of feature names to their enabled status, or null if config not available or start() not called
28
42
  */
29
43
  export function getFeaturesFromRemoteConfig() {
30
44
  if (cachedFeatures !== undefined) {
@@ -59,6 +73,15 @@ function resolveNavigationState(features, optionValue) {
59
73
  }
60
74
  export function start(options) {
61
75
  if (!isSupportedPlatform()) return;
76
+ if (isShutdown) {
77
+ console.log('[Pulse] SDK has been shut down. Pulse.start() is a no-op; re-initialization is not supported.');
78
+ return;
79
+ }
80
+ if (isStarted) {
81
+ console.log('[Pulse] SDK already started.');
82
+ return;
83
+ }
84
+ isStarted = true;
62
85
  const features = getFeaturesFromRemoteConfig();
63
86
  const config = {
64
87
  autoDetectExceptions: resolveFeatureState(features, PULSE_FEATURE_NAMES.JS_CRASH, options?.autoDetectExceptions ?? defaultConfig.autoDetectExceptions),
@@ -71,6 +94,17 @@ export function start(options) {
71
94
  };
72
95
  configure(config);
73
96
  }
97
+ export function shutdown() {
98
+ if (isShutdown) {
99
+ console.warn('[Pulse] SDK already shut down.');
100
+ return;
101
+ }
102
+ uninstallErrorHandler();
103
+ uninstallNetworkInterceptor();
104
+ uninstallNavigationIntegration();
105
+ PulseReactNativeOtel.shutdown();
106
+ isShutdown = true;
107
+ }
74
108
  export function createNavigationIntegrationWithConfig(options) {
75
109
  if (!isSupportedPlatform()) {
76
110
  return {
@@ -78,6 +112,18 @@ export function createNavigationIntegrationWithConfig(options) {
78
112
  markContentReady: () => {}
79
113
  };
80
114
  }
115
+ if (!isStarted) {
116
+ return {
117
+ registerNavigationContainer: _ => () => {},
118
+ markContentReady: () => {}
119
+ };
120
+ }
121
+ if (isShutdown) {
122
+ return {
123
+ registerNavigationContainer: _ => () => {},
124
+ markContentReady: () => {}
125
+ };
126
+ }
81
127
  if (!currentConfig.autoDetectNavigation) {
82
128
  console.warn('[Pulse Navigation] auto-detection disabled via Pulse.start; createNavigationIntegration() returning no-op.');
83
129
  const noop = {
@@ -1 +1 @@
1
- {"version":3,"names":["setupErrorHandler","isSupportedPlatform","createReactNavigationIntegration","initializeNetworkInterceptor","PulseReactNativeOtel","PULSE_FEATURE_NAMES","defaultConfig","autoDetectExceptions","autoDetectNavigation","autoDetectNetwork","networkHeaders","requestHeaders","responseHeaders","currentConfig","cachedFeatures","getFeaturesFromRemoteConfig","undefined","getAllFeatures","configure","config","resolveFeatureState","features","featureName","optionValue","resolveNavigationState","hasAny","SCREEN_SESSION","RN_SCREEN_LOAD","RN_SCREEN_INTERACTIVE","start","options","JS_CRASH","NETWORK_INSTRUMENTATION","createNavigationIntegrationWithConfig","registerNavigationContainer","_","markContentReady","console","warn","noop"],"sourceRoot":"../../src","sources":["config.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["setupErrorHandler","uninstallErrorHandler","isSupportedPlatform","createReactNavigationIntegration","uninstallNavigationIntegration","initializeNetworkInterceptor","uninstallNetworkInterceptor","PulseReactNativeOtel","PULSE_FEATURE_NAMES","defaultConfig","autoDetectExceptions","autoDetectNavigation","autoDetectNetwork","networkHeaders","requestHeaders","responseHeaders","currentConfig","isShutdown","isStarted","cachedFeatures","getIsShutdown","getIsStarted","getFeaturesFromRemoteConfig","undefined","getAllFeatures","configure","config","resolveFeatureState","features","featureName","optionValue","resolveNavigationState","hasAny","SCREEN_SESSION","RN_SCREEN_LOAD","RN_SCREEN_INTERACTIVE","start","options","console","log","JS_CRASH","NETWORK_INSTRUMENTATION","shutdown","warn","createNavigationIntegrationWithConfig","registerNavigationContainer","_","markContentReady","noop"],"sourceRoot":"../../src","sources":["config.ts"],"mappings":"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","ignoreList":[]}
@@ -2,6 +2,7 @@
2
2
 
3
3
  import * as React from 'react';
4
4
  import { Pulse } from "./index.js";
5
+ import { getIsShutdown } from "./config.js";
5
6
  import { jsx as _jsx } from "react/jsx-runtime";
6
7
  export const UNKNOWN_COMPONENT = 'unknown';
7
8
  const COMPONENT_STACK_UNAVAILABLE = '<component stack unavailable>';
@@ -20,7 +21,9 @@ export class ErrorBoundary extends React.Component {
20
21
  // Error is handled if a fallback is provided, otherwise it's unhandled (fatal)
21
22
  const handled = !!this.props.fallback;
22
23
  const errorToReport = error instanceof Error ? error : new Error(String(error));
23
- Pulse.reportException(errorToReport, !handled);
24
+ if (!getIsShutdown()) {
25
+ Pulse.reportException(errorToReport, !handled);
26
+ }
24
27
  if (onError) {
25
28
  onError(error, componentStack);
26
29
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","Pulse","jsx","_jsx","UNKNOWN_COMPONENT","COMPONENT_STACK_UNAVAILABLE","INITIAL_STATE","componentStack","error","ErrorBoundary","Component","state","componentDidCatch","errorInfo","onError","props","handled","fallback","errorToReport","Error","String","reportException","setState","render","children","element","createElement","isValidElement","withErrorBoundary","WrappedComponent","errorBoundaryOptions","componentDisplayName","displayName","name","Wrapped","memo"],"sourceRoot":"../../src","sources":["errorBoundary.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,KAAK,QAAQ,YAAS;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEhC,OAAO,MAAMC,iBAAiB,GAAG,SAAS;AAC1C,MAAMC,2BAA2B,GAAG,+BAA+B;AAuBnE,MAAMC,aAAiC,GAAG;EACxCC,cAAc,EAAE,IAAI;EACpBC,KAAK,EAAE;AACT,CAAC;AAED,OAAO,MAAMC,aAAa,SAAST,KAAK,CAACU,SAAS,CAGhD;EACOC,KAAK,GAAuBL,aAAa;EAEzCM,iBAAiBA,CAACJ,KAAc,EAAEK,SAA0B,EAAQ;IACzE,MAAMN,cAAc,GAClBM,SAAS,CAACN,cAAc,IAAIF,2BAA2B;IACzD,MAAM;MAAES;IAAQ,CAAC,GAAG,IAAI,CAACC,KAAK;;IAE9B;IACA,MAAMC,OAAO,GAAG,CAAC,CAAC,IAAI,CAACD,KAAK,CAACE,QAAQ;IAErC,MAAMC,aAAa,GACjBV,KAAK,YAAYW,KAAK,GAAGX,KAAK,GAAG,IAAIW,KAAK,CAACC,MAAM,CAACZ,KAAK,CAAC,CAAC;IAC3DP,KAAK,CAACoB,eAAe,CAACH,aAAa,EAAE,CAACF,OAAO,CAAC;IAE9C,IAAIF,OAAO,EAAE;MACXA,OAAO,CAACN,KAAK,EAAED,cAAc,CAAC;IAChC;IAEA,IAAI,CAACe,QAAQ,CAAC;MAAEd,KAAK;MAAED;IAAe,CAAC,CAAC;EAC1C;EAEOgB,MAAMA,CAAA,EAAoB;IAC/B,MAAM;MAAEN,QAAQ;MAAEO;IAAS,CAAC,GAAG,IAAI,CAACT,KAAK;IACzC,MAAMJ,KAAK,GAAG,IAAI,CAACA,KAAK;IAExB,IAAIA,KAAK,CAACJ,cAAc,KAAK,IAAI,EAAE;MACjC,OAAO,OAAOiB,QAAQ,KAAK,UAAU,GAAGA,QAAQ,CAAC,CAAC,GAAGA,QAAQ;IAC/D;IAEA,MAAMC,OAAO,GACX,OAAOR,QAAQ,KAAK,UAAU,gBAC1BjB,KAAK,CAAC0B,aAAa,CAACT,QAAQ,EAAE;MAC5BT,KAAK,EAAEG,KAAK,CAACH,KAAK;MAClBD,cAAc,EAAEI,KAAK,CAACJ;IACxB,CAAC,CAAC,GACFU,QAAQ;IAEd,iBAAIjB,KAAK,CAAC2B,cAAc,CAACF,OAAO,CAAC,EAAE;MACjC,OAAOA,OAAO;IAChB;IAEA,OAAO,IAAI;EACb;AACF;AAEA,OAAO,SAASG,iBAAiBA,CAC/BC,gBAAwC,EACxCC,oBAAwC,EAC3B;EACb,MAAMC,oBAAoB,GACxBF,gBAAgB,CAACG,WAAW,IAAIH,gBAAgB,CAACI,IAAI,IAAI7B,iBAAiB;EAE5E,MAAM8B,OAAO,gBAAGlC,KAAK,CAACmC,IAAI,CAAEpB,KAAQ,iBAClCZ,IAAA,CAACM,aAAa;IAAA,GAAKqB,oBAAoB;IAAAN,QAAA,eACrCrB,IAAA,CAAC0B,gBAAgB;MAAA,GAAKd;IAAK,CAAG;EAAC,CAClB,CAChB,CAA2B;EAE5BmB,OAAO,CAACF,WAAW,GAAG,iBAAiBD,oBAAoB,GAAG;EAE9D,OAAOG,OAAO;AAChB","ignoreList":[]}
1
+ {"version":3,"names":["React","Pulse","getIsShutdown","jsx","_jsx","UNKNOWN_COMPONENT","COMPONENT_STACK_UNAVAILABLE","INITIAL_STATE","componentStack","error","ErrorBoundary","Component","state","componentDidCatch","errorInfo","onError","props","handled","fallback","errorToReport","Error","String","reportException","setState","render","children","element","createElement","isValidElement","withErrorBoundary","WrappedComponent","errorBoundaryOptions","componentDisplayName","displayName","name","Wrapped","memo"],"sourceRoot":"../../src","sources":["errorBoundary.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,KAAK,QAAQ,YAAS;AAC/B,SAASC,aAAa,QAAQ,aAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEzC,OAAO,MAAMC,iBAAiB,GAAG,SAAS;AAC1C,MAAMC,2BAA2B,GAAG,+BAA+B;AAuBnE,MAAMC,aAAiC,GAAG;EACxCC,cAAc,EAAE,IAAI;EACpBC,KAAK,EAAE;AACT,CAAC;AAED,OAAO,MAAMC,aAAa,SAASV,KAAK,CAACW,SAAS,CAGhD;EACOC,KAAK,GAAuBL,aAAa;EAEzCM,iBAAiBA,CAACJ,KAAc,EAAEK,SAA0B,EAAQ;IACzE,MAAMN,cAAc,GAClBM,SAAS,CAACN,cAAc,IAAIF,2BAA2B;IACzD,MAAM;MAAES;IAAQ,CAAC,GAAG,IAAI,CAACC,KAAK;;IAE9B;IACA,MAAMC,OAAO,GAAG,CAAC,CAAC,IAAI,CAACD,KAAK,CAACE,QAAQ;IAErC,MAAMC,aAAa,GACjBV,KAAK,YAAYW,KAAK,GAAGX,KAAK,GAAG,IAAIW,KAAK,CAACC,MAAM,CAACZ,KAAK,CAAC,CAAC;IAC3D,IAAI,CAACP,aAAa,CAAC,CAAC,EAAE;MACpBD,KAAK,CAACqB,eAAe,CAACH,aAAa,EAAE,CAACF,OAAO,CAAC;IAChD;IAEA,IAAIF,OAAO,EAAE;MACXA,OAAO,CAACN,KAAK,EAAED,cAAc,CAAC;IAChC;IAEA,IAAI,CAACe,QAAQ,CAAC;MAAEd,KAAK;MAAED;IAAe,CAAC,CAAC;EAC1C;EAEOgB,MAAMA,CAAA,EAAoB;IAC/B,MAAM;MAAEN,QAAQ;MAAEO;IAAS,CAAC,GAAG,IAAI,CAACT,KAAK;IACzC,MAAMJ,KAAK,GAAG,IAAI,CAACA,KAAK;IAExB,IAAIA,KAAK,CAACJ,cAAc,KAAK,IAAI,EAAE;MACjC,OAAO,OAAOiB,QAAQ,KAAK,UAAU,GAAGA,QAAQ,CAAC,CAAC,GAAGA,QAAQ;IAC/D;IAEA,MAAMC,OAAO,GACX,OAAOR,QAAQ,KAAK,UAAU,gBAC1BlB,KAAK,CAAC2B,aAAa,CAACT,QAAQ,EAAE;MAC5BT,KAAK,EAAEG,KAAK,CAACH,KAAK;MAClBD,cAAc,EAAEI,KAAK,CAACJ;IACxB,CAAC,CAAC,GACFU,QAAQ;IAEd,iBAAIlB,KAAK,CAAC4B,cAAc,CAACF,OAAO,CAAC,EAAE;MACjC,OAAOA,OAAO;IAChB;IAEA,OAAO,IAAI;EACb;AACF;AAEA,OAAO,SAASG,iBAAiBA,CAC/BC,gBAAwC,EACxCC,oBAAwC,EAC3B;EACb,MAAMC,oBAAoB,GACxBF,gBAAgB,CAACG,WAAW,IAAIH,gBAAgB,CAACI,IAAI,IAAI7B,iBAAiB;EAE5E,MAAM8B,OAAO,gBAAGnC,KAAK,CAACoC,IAAI,CAAEpB,KAAQ,iBAClCZ,IAAA,CAACM,aAAa;IAAA,GAAKqB,oBAAoB;IAAAN,QAAA,eACrCrB,IAAA,CAAC0B,gBAAgB;MAAA,GAAKd;IAAK,CAAG;EAAC,CAClB,CAChB,CAA2B;EAE5BmB,OAAO,CAACF,WAAW,GAAG,iBAAiBD,oBAAoB,GAAG;EAE9D,OAAOG,OAAO;AAChB","ignoreList":[]}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import PulseReactNativeOtel from "./NativePulseReactNativeOtel.js";
4
+ import { getIsShutdown, getIsStarted } from "./config.js";
4
5
  import { mergeWithGlobalAttributes } from "./globalAttributes.js";
5
6
  import { isSupportedPlatform } from "./initialization.js";
6
7
  import { extractErrorDetails } from "./utility.js";
@@ -45,7 +46,7 @@ function handleGlobalError(error, isFatal) {
45
46
  }
46
47
  }
47
48
  export function reportException(error, isFatal = false, attributes) {
48
- if (!isSupportedPlatform()) {
49
+ if (!isSupportedPlatform() || !getIsStarted() || getIsShutdown()) {
49
50
  return;
50
51
  }
51
52
  let errorMessage;
@@ -102,6 +103,9 @@ function disableErrorHandler() {
102
103
  previousErrorHandler = null;
103
104
  handlingFatal = false;
104
105
  }
106
+ export function uninstallErrorHandler() {
107
+ disableErrorHandler();
108
+ }
105
109
  export function setupErrorHandler(enableErrorHandler) {
106
110
  if (enableErrorHandler) {
107
111
  initializeErrorHandler();
@@ -1 +1 @@
1
- {"version":3,"names":["PulseReactNativeOtel","mergeWithGlobalAttributes","isSupportedPlatform","extractErrorDetails","previousErrorHandler","isInitialized","handlingFatal","reportToOpenTelemetry","errorMessage","stackTrace","isFatal","errorType","attributes","observedTimeMs","Date","now","mergedAttributes","reportException","handleGlobalError","error","shouldHandleFatal","trackEvent","message","console","setTimeout","handlerError","details","initializeErrorHandler","warn","ErrorUtils","currentHandler","getGlobalHandler","log","setGlobalHandler","disableErrorHandler","setupErrorHandler","enableErrorHandler"],"sourceRoot":"../../src","sources":["errorHandler.ts"],"mappings":";;AAAA,OAAOA,oBAAoB,MAAM,iCAA8B;AAC/D,SAASC,yBAAyB,QAAQ,uBAAoB;AAC9D,SAASC,mBAAmB,QAAQ,qBAAkB;AACtD,SAASC,mBAAmB,QAAQ,cAAW;AAG/C,IAAIC,oBAAwE,GAC1E,IAAI;AAEN,IAAIC,aAAa,GAAG,KAAK;AACzB,IAAIC,aAAa,GAAG,KAAK;AAEzB,SAASC,qBAAqBA,CAC5BC,YAAoB,EACpBC,UAAkB,EAClBC,OAAgB,EAChBC,SAAiB,EACjBC,UAA4B,EACtB;EACN,MAAMC,cAAc,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;EACjC,MAAMC,gBAAgB,GAAGf,yBAAyB,CAACW,UAAU,IAAI,CAAC,CAAC,CAAC;EACpEZ,oBAAoB,CAACiB,eAAe,CAClCT,YAAY,EACZK,cAAc,EACdJ,UAAU,EACVC,OAAO,EACPC,SAAS,EACTK,gBACF,CAAC;AACH;AAEA,SAASE,iBAAiBA,CAACC,KAAY,EAAET,OAAiB,EAAQ;EAChE,MAAMU,iBAAiB,GAAG,CAAC,CAACV,OAAO;EACnC,IAAIU,iBAAiB,EAAE;IACrB,IAAId,aAAa,EAAE;MACjBN,oBAAoB,CAACqB,UAAU,CAC7B,gDAAgD,EAChDP,IAAI,CAACC,GAAG,CAAC,CAAC,EACV;QACEO,OAAO,EAAEH,KAAK,CAACG;MACjB,CACF,CAAC;MACD;IACF;IACAhB,aAAa,GAAG,IAAI;EACtB;EAEA,MAAM;IAAEgB,OAAO;IAAEb,UAAU;IAAEE;EAAU,CAAC,GAAGR,mBAAmB,CAACgB,KAAK,CAAC;EACrEZ,qBAAqB,CAACe,OAAO,EAAEb,UAAU,EAAEC,OAAO,IAAI,KAAK,EAAEC,SAAS,CAAC;EACvEY,OAAO,CAACJ,KAAK,CAAC,kBAAkB,EAAE,QAAQ,EAAET,OAAO,EAAE,QAAQ,EAAES,KAAK,CAAC;EACrE,IAAIf,oBAAoB,IAAI,OAAOA,oBAAoB,KAAK,UAAU,EAAE;IACtE,IAAI;MACF,IAAIM,OAAO,EAAE;QACXc,UAAU,CAAC,MAAM;UACfpB,oBAAoB,CAAEe,KAAK,EAAET,OAAO,CAAC;QACvC,CAAC,EAAE,GAAG,CAAC;MACT,CAAC,MAAM;QACLN,oBAAoB,CAACe,KAAK,EAAET,OAAO,CAAC;MACtC;IACF,CAAC,CAAC,OAAOe,YAAY,EAAE;MACrBF,OAAO,CAACJ,KAAK,CAAC,0CAA0C,EAAEM,YAAY,CAAC;IACzE;EACF;AACF;AAEA,OAAO,SAASR,eAAeA,CAC7BE,KAAqB,EACrBT,OAAgB,GAAG,KAAK,EACxBE,UAA4B,EACtB;EACN,IAAI,CAACV,mBAAmB,CAAC,CAAC,EAAE;IAC1B;EACF;EAEA,IAAIM,YAAoB;EACxB,IAAIC,UAAkB;EACtB,IAAIE,SAAiB;EAErB,IAAI,OAAOQ,KAAK,KAAK,QAAQ,EAAE;IAC7BX,YAAY,GAAGW,KAAK;IACpBV,UAAU,GAAG,EAAE;IACfE,SAAS,GAAG,EAAE;EAChB,CAAC,MAAM;IACL,MAAMe,OAAO,GAAGvB,mBAAmB,CAACgB,KAAK,CAAC;IAC1CX,YAAY,GAAGkB,OAAO,CAACJ,OAAO;IAC9Bb,UAAU,GAAGiB,OAAO,CAACjB,UAAU;IAC/BE,SAAS,GAAGe,OAAO,CAACf,SAAS;EAC/B;EAEAJ,qBAAqB,CACnBC,YAAY,EACZC,UAAU,EACVC,OAAO,EACPC,SAAS,EACTC,UACF,CAAC;AACH;AAEA,SAASe,sBAAsBA,CAAA,EAAS;EACtC,IAAItB,aAAa,EAAE;IACjBkB,OAAO,CAACK,IAAI,CAAC,yDAAyD,CAAC;IACvE;EACF;EACAtB,aAAa,GAAG,KAAK;EAErB,IAAI,CAACuB,UAAU,EAAE;IACfN,OAAO,CAACK,IAAI,CACV,2EACF,CAAC;IACD5B,oBAAoB,CAACqB,UAAU,CAC7B,4DAA4D,EAC5DP,IAAI,CAACC,GAAG,CAAC,CACX,CAAC;IACD;EACF;EAEA,MAAMe,cAAc,GAAGD,UAAU,CAACE,gBAAgB,GAAG,CAAC;EAEtD,IAAID,cAAc,EAAE;IAClB1B,oBAAoB,GAAG0B,cAAc;IACrCP,OAAO,CAACS,GAAG,CACT,8FACF,CAAC;EACH,CAAC,MAAM;IACLT,OAAO,CAACS,GAAG,CACT,yEACF,CAAC;EACH;EAEAH,UAAU,CAACI,gBAAgB,CAACf,iBAAiB,CAAC;EAE9Cb,aAAa,GAAG,IAAI;EACpBC,aAAa,GAAG,KAAK;EAErBiB,OAAO,CAACS,GAAG,CAAC,mDAAmD,CAAC;AAClE;AAEA,SAASE,mBAAmBA,CAAA,EAAS;EACnC,IAAI,CAAC7B,aAAa,EAAE;IAClBkB,OAAO,CAACK,IAAI,CACV,+DACF,CAAC;IACD;EACF;EAEA,IAAIxB,oBAAoB,EAAE;IACxByB,UAAU,CAACI,gBAAgB,CAAC7B,oBAAoB,CAAC;IACjDmB,OAAO,CAACS,GAAG,CACT,+DACF,CAAC;EACH,CAAC,MAAM;IACLH,UAAU,CAACI,gBAAgB,CAAC,IAAW,CAAC;IACxCV,OAAO,CAACS,GAAG,CACT,sEACF,CAAC;EACH;EAEA3B,aAAa,GAAG,KAAK;EACrBD,oBAAoB,GAAG,IAAI;EAC3BE,aAAa,GAAG,KAAK;AACvB;AAEA,OAAO,SAAS6B,iBAAiBA,CAACC,kBAA2B,EAAQ;EACnE,IAAIA,kBAAkB,EAAE;IACtBT,sBAAsB,CAAC,CAAC;EAC1B,CAAC,MAAM;IACLO,mBAAmB,CAAC,CAAC;EACvB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["PulseReactNativeOtel","getIsShutdown","getIsStarted","mergeWithGlobalAttributes","isSupportedPlatform","extractErrorDetails","previousErrorHandler","isInitialized","handlingFatal","reportToOpenTelemetry","errorMessage","stackTrace","isFatal","errorType","attributes","observedTimeMs","Date","now","mergedAttributes","reportException","handleGlobalError","error","shouldHandleFatal","trackEvent","message","console","setTimeout","handlerError","details","initializeErrorHandler","warn","ErrorUtils","currentHandler","getGlobalHandler","log","setGlobalHandler","disableErrorHandler","uninstallErrorHandler","setupErrorHandler","enableErrorHandler"],"sourceRoot":"../../src","sources":["errorHandler.ts"],"mappings":"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","ignoreList":[]}
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
 
3
3
  import PulseReactNativeOtel from "./NativePulseReactNativeOtel.js";
4
- import { getFeaturesFromRemoteConfig } from "./config.js";
4
+ import { getFeaturesFromRemoteConfig, getIsShutdown, getIsStarted } from "./config.js";
5
5
  import { mergeWithGlobalAttributes } from "./globalAttributes.js";
6
6
  import { isSupportedPlatform } from "./initialization.js";
7
7
  export function trackEvent(event, attributes) {
8
- if (!isSupportedPlatform()) {
8
+ if (!isSupportedPlatform() || !getIsStarted() || getIsShutdown()) {
9
9
  return;
10
10
  }
11
11
  const features = getFeaturesFromRemoteConfig();
@@ -1 +1 @@
1
- {"version":3,"names":["PulseReactNativeOtel","getFeaturesFromRemoteConfig","mergeWithGlobalAttributes","isSupportedPlatform","trackEvent","event","attributes","features","customEventsEnabled","custom_events","observedTimeMs","Date","now","mergedAttributes"],"sourceRoot":"../../src","sources":["events.ts"],"mappings":";;AAAA,OAAOA,oBAAoB,MAAM,iCAA8B;AAC/D,SAASC,2BAA2B,QAAQ,aAAU;AACtD,SAASC,yBAAyB,QAAQ,uBAAoB;AAC9D,SAASC,mBAAmB,QAAQ,qBAAkB;AAGtD,OAAO,SAASC,UAAUA,CAACC,KAAa,EAAEC,UAA4B,EAAQ;EAC5E,IAAI,CAACH,mBAAmB,CAAC,CAAC,EAAE;IAC1B;EACF;EACA,MAAMI,QAAQ,GAAGN,2BAA2B,CAAC,CAAC;EAC9C,MAAMO,mBAAmB,GAAGD,QAAQ,EAAEE,aAAa,IAAI,IAAI;EAE3D,IAAI,CAACD,mBAAmB,EAAE;IACxB;EACF;EAEA,MAAME,cAAc,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;EACjC,MAAMC,gBAAgB,GAAGX,yBAAyB,CAACI,UAAU,IAAI,CAAC,CAAC,CAAC;EAEpEN,oBAAoB,CAACI,UAAU,CAACC,KAAK,EAAEK,cAAc,EAAEG,gBAAgB,CAAC;AAC1E","ignoreList":[]}
1
+ {"version":3,"names":["PulseReactNativeOtel","getFeaturesFromRemoteConfig","getIsShutdown","getIsStarted","mergeWithGlobalAttributes","isSupportedPlatform","trackEvent","event","attributes","features","customEventsEnabled","custom_events","observedTimeMs","Date","now","mergedAttributes"],"sourceRoot":"../../src","sources":["events.ts"],"mappings":";;AAAA,OAAOA,oBAAoB,MAAM,iCAA8B;AAC/D,SACEC,2BAA2B,EAC3BC,aAAa,EACbC,YAAY,QACP,aAAU;AACjB,SAASC,yBAAyB,QAAQ,uBAAoB;AAC9D,SAASC,mBAAmB,QAAQ,qBAAkB;AAGtD,OAAO,SAASC,UAAUA,CAACC,KAAa,EAAEC,UAA4B,EAAQ;EAC5E,IAAI,CAACH,mBAAmB,CAAC,CAAC,IAAI,CAACF,YAAY,CAAC,CAAC,IAAID,aAAa,CAAC,CAAC,EAAE;IAChE;EACF;EACA,MAAMO,QAAQ,GAAGR,2BAA2B,CAAC,CAAC;EAC9C,MAAMS,mBAAmB,GAAGD,QAAQ,EAAEE,aAAa,IAAI,IAAI;EAE3D,IAAI,CAACD,mBAAmB,EAAE;IACxB;EACF;EAEA,MAAME,cAAc,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;EACjC,MAAMC,gBAAgB,GAAGX,yBAAyB,CAACI,UAAU,IAAI,CAAC,CAAC,CAAC;EAEpER,oBAAoB,CAACM,UAAU,CAACC,KAAK,EAAEK,cAAc,EAAEG,gBAAgB,CAAC;AAC1E","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  import { startSpan, trackSpan } from "./trace.js";
4
4
  import { reportException } from "./errorHandler.js";
5
5
  import { trackEvent } from "./events.js";
6
- import { start } from "./config.js";
6
+ import { start, shutdown } from "./config.js";
7
7
  import { isInitialized } from "./initialization.js";
8
8
  import { setGlobalAttribute } from "./globalAttributes.js";
9
9
  import { setUserId, setUserProperty, setUserProperties } from "./user.js";
@@ -12,6 +12,7 @@ import { useNavigationTracking, markContentReady } from "./navigation/index.js";
12
12
  export { SpanStatusCode } from "./trace.js";
13
13
  export const Pulse = {
14
14
  start,
15
+ shutdown,
15
16
  isInitialized,
16
17
  useNavigationTracking,
17
18
  markContentReady,
@@ -1 +1 @@
1
- {"version":3,"names":["startSpan","trackSpan","reportException","trackEvent","start","isInitialized","setGlobalAttribute","setUserId","setUserProperty","setUserProperties","ErrorBoundary","withErrorBoundary","useNavigationTracking","markContentReady","SpanStatusCode","Pulse"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,SAAS,QAAQ,YAAS;AAC9C,SAASC,eAAe,QAAQ,mBAAgB;AAChD,SAASC,UAAU,QAAQ,aAAU;AACrC,SAASC,KAAK,QAAQ,aAAU;AAChC,SAASC,aAAa,QAAQ,qBAAkB;AAChD,SAASC,kBAAkB,QAAQ,uBAAoB;AACvD,SAASC,SAAS,EAAEC,eAAe,EAAEC,iBAAiB,QAAQ,WAAQ;AACtE,SAASC,aAAa,EAAEC,iBAAiB,QAAQ,oBAAiB;AAClE,SAASC,qBAAqB,EAAEC,gBAAgB,QAAQ,uBAAc;AAatE,SAASC,cAAc,QAAQ,YAAS;AACxC,OAAO,MAAMC,KAAK,GAAG;EACnBX,KAAK;EACLC,aAAa;EACbO,qBAAqB;EACrBC,gBAAgB;EAChBV,UAAU;EACVD,eAAe;EACfD,SAAS;EACTD,SAAS;EACTM,kBAAkB;EAClBC,SAAS;EACTC,eAAe;EACfC,iBAAiB;EACjBC,aAAa;EACbC;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["startSpan","trackSpan","reportException","trackEvent","start","shutdown","isInitialized","setGlobalAttribute","setUserId","setUserProperty","setUserProperties","ErrorBoundary","withErrorBoundary","useNavigationTracking","markContentReady","SpanStatusCode","Pulse"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,SAAS,QAAQ,YAAS;AAC9C,SAASC,eAAe,QAAQ,mBAAgB;AAChD,SAASC,UAAU,QAAQ,aAAU;AACrC,SAASC,KAAK,EAAEC,QAAQ,QAAQ,aAAU;AAC1C,SAASC,aAAa,QAAQ,qBAAkB;AAChD,SAASC,kBAAkB,QAAQ,uBAAoB;AACvD,SAASC,SAAS,EAAEC,eAAe,EAAEC,iBAAiB,QAAQ,WAAQ;AACtE,SAASC,aAAa,EAAEC,iBAAiB,QAAQ,oBAAiB;AAClE,SAASC,qBAAqB,EAAEC,gBAAgB,QAAQ,uBAAc;AActE,SAASC,cAAc,QAAQ,YAAS;AACxC,OAAO,MAAMC,KAAK,GAAG;EACnBZ,KAAK;EACLC,QAAQ;EACRC,aAAa;EACbO,qBAAqB;EACrBC,gBAAgB;EAChBX,UAAU;EACVD,eAAe;EACfD,SAAS;EACTD,SAAS;EACTO,kBAAkB;EAClBC,SAAS;EACTC,eAAe;EACfC,iBAAiB;EACjBC,aAAa;EACbC;AACF,CAAC","ignoreList":[]}
@@ -13,6 +13,13 @@ import PulseReactNativeOtel from "../NativePulseReactNativeOtel.js";
13
13
  import { getFeaturesFromRemoteConfig } from "../config.js";
14
14
  import { PULSE_FEATURE_NAMES } from "../pulse.constants.js";
15
15
  export { DEFAULT_NAVIGATION_OPTIONS } from "./navigation.interface.js";
16
+ let currentNavigationUnregister = null;
17
+ export function uninstallNavigationIntegration() {
18
+ if (currentNavigationUnregister) {
19
+ currentNavigationUnregister();
20
+ currentNavigationUnregister = null;
21
+ }
22
+ }
16
23
  function resolveNavigationFeatureState(features, featureName, optionValue) {
17
24
  if (features !== undefined && features !== null) return features[featureName] ?? optionValue;
18
25
  return optionValue;
@@ -138,6 +145,9 @@ export function createReactNavigationIntegration(options) {
138
145
  }
139
146
  navigationContainer = undefined;
140
147
  isInitialized = false;
148
+ if (currentNavigationUnregister === unmountCleanup) {
149
+ currentNavigationUnregister = null;
150
+ }
141
151
  clearGlobalMarkContentReady(updatedInteractiveTracker.markContentReady);
142
152
  }
143
153
  };
@@ -158,6 +168,7 @@ export function createReactNavigationIntegration(options) {
158
168
  }
159
169
  appStateSubscription = AppState.addEventListener('change', handleAppStateChange);
160
170
  isInitialized = true;
171
+ currentNavigationUnregister = unmountCleanup;
161
172
  return unmountCleanup;
162
173
  } catch (error) {
163
174
  console.error(`${LOG_TAGS.NAVIGATION} Error registering container:`, error);
@@ -1 +1 @@
1
- {"version":3,"names":["AppState","DEFAULT_NAVIGATION_OPTIONS","pushRecentRouteKey","LOG_TAGS","discardSpan","createScreenLoadTracker","INITIAL_SCREEN_LOAD_STATE","createScreenInteractiveTracker","markContentReady","clearGlobalMarkContentReady","INITIAL_SCREEN_INTERACTIVE_STATE","createScreenSessionTracker","INITIAL_SCREEN_SESSION_STATE","useNavigationTracking","useNavigationTrackingBase","isSupportedPlatform","PulseReactNativeOtel","getFeaturesFromRemoteConfig","PULSE_FEATURE_NAMES","resolveNavigationFeatureState","features","featureName","optionValue","undefined","createReactNavigationIntegration","options","screenSessionTracking","SCREEN_SESSION","screenNavigationTracking","RN_SCREEN_LOAD","screenInteractiveTracking","RN_SCREEN_INTERACTIVE","navigationContainer","recentRouteKeys","isInitialized","appStateSubscription","screenLoadState","screenInteractiveState","screenSessionState","screenInteractiveTracker","screenLoadTracker","key","screenSessionTracker","setCurrentScreenName","screenName","onNavigationDispatch","discardScreenInteractive","screenSessionSpan","currentRoute","getCurrentRoute","endScreenSession","name","startNavigationSpan","error","console","warn","NAVIGATION","navigationSpan","spanId","onStateChange","handleStateChange","appState","currentState","shouldStartSession","startScreenSession","startScreenInteractive","handleAppStateChange","nextAppState","registerNavigationContainer","maybeNavigationContainer","container","current","updatedInteractiveTracker","addListener","unmountCleanup","endNavigationSpan","remove","latestRoute","addEventListener","navigationRef","createNavigationIntegrationWithConfig","require"],"sourceRoot":"../../../src","sources":["navigation/index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["AppState","DEFAULT_NAVIGATION_OPTIONS","pushRecentRouteKey","LOG_TAGS","discardSpan","createScreenLoadTracker","INITIAL_SCREEN_LOAD_STATE","createScreenInteractiveTracker","markContentReady","clearGlobalMarkContentReady","INITIAL_SCREEN_INTERACTIVE_STATE","createScreenSessionTracker","INITIAL_SCREEN_SESSION_STATE","useNavigationTracking","useNavigationTrackingBase","isSupportedPlatform","PulseReactNativeOtel","getFeaturesFromRemoteConfig","PULSE_FEATURE_NAMES","currentNavigationUnregister","uninstallNavigationIntegration","resolveNavigationFeatureState","features","featureName","optionValue","undefined","createReactNavigationIntegration","options","screenSessionTracking","SCREEN_SESSION","screenNavigationTracking","RN_SCREEN_LOAD","screenInteractiveTracking","RN_SCREEN_INTERACTIVE","navigationContainer","recentRouteKeys","isInitialized","appStateSubscription","screenLoadState","screenInteractiveState","screenSessionState","screenInteractiveTracker","screenLoadTracker","key","screenSessionTracker","setCurrentScreenName","screenName","onNavigationDispatch","discardScreenInteractive","screenSessionSpan","currentRoute","getCurrentRoute","endScreenSession","name","startNavigationSpan","error","console","warn","NAVIGATION","navigationSpan","spanId","onStateChange","handleStateChange","appState","currentState","shouldStartSession","startScreenSession","startScreenInteractive","handleAppStateChange","nextAppState","registerNavigationContainer","maybeNavigationContainer","container","current","updatedInteractiveTracker","addListener","unmountCleanup","endNavigationSpan","remove","latestRoute","addEventListener","navigationRef","createNavigationIntegrationWithConfig","require"],"sourceRoot":"../../../src","sources":["navigation/index.ts"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import { Pulse } from "../index.js";
4
+ import { getIsStarted } from "../config.js";
4
5
  import { Platform } from 'react-native';
5
6
  import { SPAN_NAMES, ATTRIBUTE_KEYS, PULSE_TYPES } from "../pulse.constants.js";
6
7
  import { discardSpan } from "../trace.js";
@@ -87,6 +88,9 @@ export function createScreenInteractiveTracker(enabled, state, navigationContain
87
88
  };
88
89
  }
89
90
  export function markContentReady() {
91
+ if (!getIsStarted()) {
92
+ return;
93
+ }
90
94
  if (globalMarkContentReady) {
91
95
  globalMarkContentReady();
92
96
  } else {