@sentry/react-native 5.31.1 → 5.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/android/src/main/java/io/sentry/react/RNSentryOnDrawReporterManager.java +18 -1
  3. package/dist/js/client.d.ts.map +1 -1
  4. package/dist/js/client.js +2 -2
  5. package/dist/js/client.js.map +1 -1
  6. package/dist/js/index.d.ts +1 -1
  7. package/dist/js/index.d.ts.map +1 -1
  8. package/dist/js/index.js +1 -3
  9. package/dist/js/index.js.map +1 -1
  10. package/dist/js/integrations/default.d.ts.map +1 -1
  11. package/dist/js/integrations/default.js +2 -1
  12. package/dist/js/integrations/default.js.map +1 -1
  13. package/dist/js/options.d.ts +34 -2
  14. package/dist/js/options.d.ts.map +1 -1
  15. package/dist/js/options.js.map +1 -1
  16. package/dist/js/profiling/integration.d.ts.map +1 -1
  17. package/dist/js/profiling/integration.js +6 -3
  18. package/dist/js/profiling/integration.js.map +1 -1
  19. package/dist/js/tools/metroconfig.d.ts +10 -1
  20. package/dist/js/tools/metroconfig.d.ts.map +1 -1
  21. package/dist/js/tools/metroconfig.js +42 -2
  22. package/dist/js/tools/metroconfig.js.map +1 -1
  23. package/dist/js/tracing/index.d.ts +3 -3
  24. package/dist/js/tracing/index.d.ts.map +1 -1
  25. package/dist/js/tracing/index.js +3 -3
  26. package/dist/js/tracing/index.js.map +1 -1
  27. package/dist/js/tracing/reactnativenavigation.d.ts +6 -0
  28. package/dist/js/tracing/reactnativenavigation.d.ts.map +1 -1
  29. package/dist/js/tracing/reactnativenavigation.js +6 -0
  30. package/dist/js/tracing/reactnativenavigation.js.map +1 -1
  31. package/dist/js/tracing/reactnativetracing.d.ts +6 -8
  32. package/dist/js/tracing/reactnativetracing.d.ts.map +1 -1
  33. package/dist/js/tracing/reactnativetracing.js +23 -15
  34. package/dist/js/tracing/reactnativetracing.js.map +1 -1
  35. package/dist/js/tracing/reactnavigation.d.ts +4 -0
  36. package/dist/js/tracing/reactnavigation.d.ts.map +1 -1
  37. package/dist/js/tracing/reactnavigation.js +6 -0
  38. package/dist/js/tracing/reactnavigation.js.map +1 -1
  39. package/dist/js/tracing/reactnavigationv4.d.ts +2 -0
  40. package/dist/js/tracing/reactnavigationv4.d.ts.map +1 -1
  41. package/dist/js/tracing/reactnavigationv4.js +2 -0
  42. package/dist/js/tracing/reactnavigationv4.js.map +1 -1
  43. package/dist/js/tracing/routingInstrumentation.d.ts +8 -2
  44. package/dist/js/tracing/routingInstrumentation.d.ts.map +1 -1
  45. package/dist/js/tracing/routingInstrumentation.js +3 -2
  46. package/dist/js/tracing/routingInstrumentation.js.map +1 -1
  47. package/dist/js/version.d.ts +1 -1
  48. package/dist/js/version.js +1 -1
  49. package/dist/js/version.js.map +1 -1
  50. package/package.json +2 -2
  51. package/ts3.8/dist/js/index.d.ts +1 -1
  52. package/ts3.8/dist/js/options.d.ts +34 -2
  53. package/ts3.8/dist/js/tracing/index.d.ts +3 -3
  54. package/ts3.8/dist/js/tracing/reactnativenavigation.d.ts +6 -0
  55. package/ts3.8/dist/js/tracing/reactnativetracing.d.ts +6 -8
  56. package/ts3.8/dist/js/tracing/reactnavigation.d.ts +4 -0
  57. package/ts3.8/dist/js/tracing/reactnavigationv4.d.ts +2 -0
  58. package/ts3.8/dist/js/tracing/routingInstrumentation.d.ts +8 -2
  59. package/ts3.8/dist/js/version.d.ts +1 -1
@@ -174,14 +174,46 @@ export interface BaseReactNativeOptions {
174
174
  * from the function, no screenshot will be attached.
175
175
  */
176
176
  beforeScreenshot?: (event: Event, hint: EventHint) => boolean;
177
+ /**
178
+ * The sample rate for profiling
179
+ * 1.0 will profile all transactions and 0 will profile none.
180
+ */
181
+ profilesSampleRate?: number;
182
+ /**
183
+ * Track the app start time by adding measurements to the first route transaction. If there is no routing instrumentation
184
+ * an app start transaction will be started.
185
+ *
186
+ * Requires performance monitoring to be enabled.
187
+ *
188
+ * @default true
189
+ */
190
+ enableAppStartTracking?: boolean;
191
+ /**
192
+ * Track the slow and frozen frames in the application. Enabling this options will add
193
+ * slow and frozen frames measurements to all created root spans (transactions).
194
+ *
195
+ * @default true
196
+ */
197
+ enableNativeFramesTracking?: boolean;
198
+ /**
199
+ * Track when and how long the JS event loop stalls for. Adds stalls as measurements to all transactions.
200
+ *
201
+ * @default true
202
+ */
203
+ enableStallTracking?: boolean;
204
+ /**
205
+ * Trace User Interaction events like touch and gestures.
206
+ *
207
+ * @default false
208
+ */
209
+ enableUserInteractionTracing?: boolean;
177
210
  /**
178
211
  * Options which are in beta, or otherwise not guaranteed to be stable.
179
212
  */
180
213
  _experiments?: {
181
214
  [key: string]: unknown;
182
215
  /**
183
- * The sample rate for profiling
184
- * 1.0 will profile all transactions and 0 will profile none.
216
+ * @deprecated Use `profilesSampleRate` in the options root instead.
185
217
  */
186
218
  profilesSampleRate?: number;
187
219
  /**
@@ -1,9 +1,9 @@
1
- export { ReactNativeTracing } from './reactnativetracing';
1
+ export { ReactNativeTracing, reactNativeTracingIntegration } from './reactnativetracing';
2
2
  export type { RoutingInstrumentationInstance } from './routingInstrumentation';
3
3
  export { RoutingInstrumentation } from './routingInstrumentation';
4
- export { ReactNavigationInstrumentation, ReactNavigationV5Instrumentation, } from './reactnavigation';
4
+ export { ReactNavigationInstrumentation, reactNavigationIntegration, ReactNavigationV5Instrumentation, } from './reactnavigation';
5
5
  export { ReactNavigationV4Instrumentation } from './reactnavigationv4';
6
- export { ReactNativeNavigationInstrumentation } from './reactnativenavigation';
6
+ export { ReactNativeNavigationInstrumentation, reactNativeNavigationIntegration } from './reactnativenavigation';
7
7
  export type { ReactNavigationCurrentRoute, ReactNavigationRoute, ReactNavigationTransactionContext } from './types';
8
8
  export { ReactNativeProfiler } from './reactnativeprofiler';
9
9
  export { sentryTraceGesture } from './gesturetracing';
@@ -50,6 +50,12 @@ export interface NavigationDelegate {
50
50
  * - `_onComponentWillAppear` is then called AFTER the state change happens due to a dispatch and sets the route context onto the active transaction.
51
51
  * - If `_onComponentWillAppear` isn't called within `options.routeChangeTimeoutMs` of the dispatch, then the transaction is not sampled and finished.
52
52
  */
53
+ export declare const reactNativeNavigationIntegration: (options: Partial<ReactNativeNavigationOptions> & {
54
+ navigation: NavigationDelegate;
55
+ }) => ReactNativeNavigationInstrumentation;
56
+ /**
57
+ * @deprecated Use `Sentry.reactNativeNavigationIntegration({ navigation })` instead.
58
+ */
53
59
  export declare class ReactNativeNavigationInstrumentation extends InternalRoutingInstrumentation {
54
60
  static instrumentationName: string;
55
61
  readonly name: string;
@@ -5,6 +5,7 @@ import type { RoutingInstrumentationInstance } from '../tracing/routingInstrumen
5
5
  import { NativeFramesInstrumentation } from './nativeframes';
6
6
  import { StallTrackingInstrumentation } from './stalltracking';
7
7
  import type { BeforeNavigate } from './types';
8
+ export declare const reactNativeTracingIntegration: (options?: Partial<ReactNativeTracingOptions>) => ReactNativeTracing;
8
9
  export interface ReactNativeTracingOptions extends RequestInstrumentationOptions {
9
10
  /**
10
11
  * @deprecated Replaced by idleTimeoutMs
@@ -53,27 +54,24 @@ export interface ReactNativeTracingOptions extends RequestInstrumentationOptions
53
54
  */
54
55
  beforeNavigate: BeforeNavigate;
55
56
  /**
56
- * Track the app start time by adding measurements to the first route transaction. If there is no routing instrumentation
57
- * an app start transaction will be started.
58
- *
59
- * Default: true
57
+ * @deprecated Use `Sentry.init({ enableAppStartTracking })` instead.
60
58
  */
61
59
  enableAppStartTracking: boolean;
62
60
  /**
63
- * Track slow/frozen frames from the native layer and adds them as measurements to all transactions.
61
+ * @deprecated Use `Sentry.init({ enableNativeFramesTracking })` instead.
64
62
  */
65
63
  enableNativeFramesTracking: boolean;
66
64
  /**
67
- * Track when and how long the JS event loop stalls for. Adds stalls as measurements to all transactions.
65
+ * @deprecated Use `Sentry.init({ enableStallTracking })` instead.
68
66
  */
69
67
  enableStallTracking: boolean;
70
68
  /**
71
- * Trace User Interaction events like touch and gestures.
69
+ * @deprecated Use `Sentry.init({ enableUserInteractionTracing })` instead.
72
70
  */
73
71
  enableUserInteractionTracing: boolean;
74
72
  }
75
73
  /**
76
- * Tracing integration for React Native.
74
+ * @deprecated Use `Sentry.reactNativeTracingIntegration()` instead.
77
75
  */
78
76
  export declare class ReactNativeTracing implements Integration {
79
77
  /**
@@ -31,6 +31,10 @@ interface ReactNavigationOptions {
31
31
  * - `_onStateChange` is then called AFTER the state change happens due to a dispatch and sets the route context onto the active transaction.
32
32
  * - If `_onStateChange` isn't called within `STATE_CHANGE_TIMEOUT_DURATION` of the dispatch, then the transaction is not sampled and finished.
33
33
  */
34
+ export declare const reactNavigationIntegration: (options?: Partial<ReactNavigationOptions>) => ReactNavigationInstrumentation;
35
+ /**
36
+ * @deprecated Please use `Sentry.reactNavigationIntegration()`
37
+ */
34
38
  export declare class ReactNavigationInstrumentation extends InternalRoutingInstrumentation {
35
39
  static instrumentationName: string;
36
40
  readonly name: string;
@@ -35,6 +35,8 @@ interface ReactNavigationV4Options {
35
35
  /**
36
36
  * Instrumentation for React-Navigation V4.
37
37
  * Register the app container with `registerAppContainer` to use, or see docs for more details.
38
+ *
39
+ * @deprecated Support for `react-navigation@4` and older will be removed in the next major version of the SDK. Please upgrade to `react-navigation@5` or newer.
38
40
  */
39
41
  declare class ReactNavigationV4Instrumentation extends InternalRoutingInstrumentation {
40
42
  static instrumentationName: string;
@@ -3,6 +3,11 @@ import type { Transaction, TransactionContext } from '@sentry/types';
3
3
  import type { BeforeNavigate } from './types';
4
4
  export type TransactionCreator = (context: TransactionContext) => Transaction | undefined;
5
5
  export type OnConfirmRoute = (context: TransactionContext) => void;
6
+ /**
7
+ * @deprecated Use `Integration` from `@sentry/types` and `startIdleTransaction` from `@sentry/core` instead.
8
+ *
9
+ * Or use `startIdleNavigationSpan` from `@sentry/react-native@^6`.
10
+ */
6
11
  export interface RoutingInstrumentationInstance {
7
12
  /**
8
13
  * Name of the routing instrumentation
@@ -27,8 +32,9 @@ export interface RoutingInstrumentationInstance {
27
32
  onRouteWillChange(context: TransactionContext): Transaction | undefined;
28
33
  }
29
34
  /**
30
- * Base Routing Instrumentation. Can be used by users to manually instrument custom routers.
31
- * Pass this to the tracing integration, and call `onRouteWillChange` every time before a route changes.
35
+ * @deprecated Use `Integration` from `@sentry/types` and `startIdleTransaction` from `@sentry/core` instead.
36
+ *
37
+ * Or use `startIdleNavigationSpan` from `@sentry/react-native@^6`.
32
38
  */
33
39
  export declare class RoutingInstrumentation implements RoutingInstrumentationInstance {
34
40
  static instrumentationName: string;
@@ -1,4 +1,4 @@
1
1
  export declare const SDK_PACKAGE_NAME = "npm:@sentry/react-native";
2
2
  export declare const SDK_NAME = "sentry.javascript.react-native";
3
- export declare const SDK_VERSION = "5.31.1";
3
+ export declare const SDK_VERSION = "5.32.0";
4
4
  //# sourceMappingURL=version.d.ts.map