@rejourneyco/react-native 1.0.7 → 1.0.9

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 (52) hide show
  1. package/README.md +1 -1
  2. package/android/src/main/java/com/rejourney/RejourneyModuleImpl.kt +109 -26
  3. package/android/src/main/java/com/rejourney/engine/DeviceRegistrar.kt +18 -3
  4. package/android/src/main/java/com/rejourney/engine/RejourneyImpl.kt +69 -17
  5. package/android/src/main/java/com/rejourney/recording/AnrSentinel.kt +27 -2
  6. package/android/src/main/java/com/rejourney/recording/InteractionRecorder.kt +30 -0
  7. package/android/src/main/java/com/rejourney/recording/RejourneyNetworkInterceptor.kt +100 -0
  8. package/android/src/main/java/com/rejourney/recording/ReplayOrchestrator.kt +260 -174
  9. package/android/src/main/java/com/rejourney/recording/SegmentDispatcher.kt +246 -34
  10. package/android/src/main/java/com/rejourney/recording/SpecialCases.kt +572 -0
  11. package/android/src/main/java/com/rejourney/recording/StabilityMonitor.kt +3 -0
  12. package/android/src/main/java/com/rejourney/recording/TelemetryPipeline.kt +19 -4
  13. package/android/src/main/java/com/rejourney/recording/ViewHierarchyScanner.kt +8 -0
  14. package/android/src/main/java/com/rejourney/recording/VisualCapture.kt +251 -85
  15. package/android/src/newarch/java/com/rejourney/RejourneyModule.kt +14 -0
  16. package/android/src/oldarch/java/com/rejourney/RejourneyModule.kt +18 -0
  17. package/ios/Engine/DeviceRegistrar.swift +13 -3
  18. package/ios/Engine/RejourneyImpl.swift +202 -133
  19. package/ios/Recording/AnrSentinel.swift +58 -25
  20. package/ios/Recording/InteractionRecorder.swift +29 -0
  21. package/ios/Recording/RejourneyURLProtocol.swift +168 -0
  22. package/ios/Recording/ReplayOrchestrator.swift +241 -147
  23. package/ios/Recording/SegmentDispatcher.swift +155 -13
  24. package/ios/Recording/SpecialCases.swift +614 -0
  25. package/ios/Recording/StabilityMonitor.swift +42 -34
  26. package/ios/Recording/TelemetryPipeline.swift +38 -3
  27. package/ios/Recording/ViewHierarchyScanner.swift +1 -0
  28. package/ios/Recording/VisualCapture.swift +104 -28
  29. package/ios/Rejourney.mm +27 -8
  30. package/ios/Utility/ImageBlur.swift +0 -1
  31. package/lib/commonjs/index.js +32 -20
  32. package/lib/commonjs/sdk/autoTracking.js +162 -11
  33. package/lib/commonjs/sdk/constants.js +2 -2
  34. package/lib/commonjs/sdk/networkInterceptor.js +84 -4
  35. package/lib/commonjs/sdk/utils.js +1 -1
  36. package/lib/module/index.js +32 -20
  37. package/lib/module/sdk/autoTracking.js +162 -11
  38. package/lib/module/sdk/constants.js +2 -2
  39. package/lib/module/sdk/networkInterceptor.js +84 -4
  40. package/lib/module/sdk/utils.js +1 -1
  41. package/lib/typescript/NativeRejourney.d.ts +5 -2
  42. package/lib/typescript/sdk/autoTracking.d.ts +3 -1
  43. package/lib/typescript/sdk/constants.d.ts +2 -2
  44. package/lib/typescript/types/index.d.ts +15 -8
  45. package/package.json +4 -4
  46. package/src/NativeRejourney.ts +8 -5
  47. package/src/index.ts +46 -29
  48. package/src/sdk/autoTracking.ts +176 -11
  49. package/src/sdk/constants.ts +2 -2
  50. package/src/sdk/networkInterceptor.ts +110 -1
  51. package/src/sdk/utils.ts +1 -1
  52. package/src/types/index.ts +16 -9
@@ -23,7 +23,7 @@ export interface RejourneyConfig {
23
23
 
24
24
  /** Enable or disable recording (default: true) */
25
25
  enabled?: boolean;
26
- /** Video capture FPS (default: 2 = capture every 500ms) */
26
+ /** Visual capture FPS (default: 1 = capture every 1000ms) */
27
27
  captureFPS?: number;
28
28
  /** Maximum session duration in milliseconds (default: 30 minutes) */
29
29
  maxSessionDuration?: number;
@@ -102,8 +102,12 @@ export interface RejourneyConfig {
102
102
  * Disable if you want minimal network tracking overhead.
103
103
  */
104
104
  networkCaptureSizes?: boolean;
105
+ /**
106
+ * Automatically intercept console.log/info/warn/error and include them in session recordings.
107
+ * Useful for debugging sessions. Capped at 1,000 logs per session. (default: true)
108
+ */
109
+ trackConsoleLogs?: boolean;
105
110
  }
106
-
107
111
  export type GestureType =
108
112
  | 'tap'
109
113
  | 'double_tap'
@@ -410,8 +414,6 @@ export interface SessionMetadata {
410
414
  geoLocation?: GeoLocation;
411
415
  /** Number of events in session */
412
416
  eventCount: number;
413
- /** Number of video segments */
414
- videoSegmentCount?: number;
415
417
  /** Total storage size in bytes */
416
418
  storageSize: number;
417
419
  /** Session tags */
@@ -436,7 +438,6 @@ export interface SessionSummary {
436
438
  endTime?: number;
437
439
  duration?: number;
438
440
  eventCount: number;
439
- videoSegmentCount?: number;
440
441
  storageSize: number;
441
442
  isComplete: boolean;
442
443
  filePath: string;
@@ -451,8 +452,6 @@ export interface ReplayState {
451
452
  speed: 0.5 | 1 | 2 | 4;
452
453
  /** Session duration */
453
454
  duration: number;
454
- /** Current video segment time position */
455
- currentVideoTime?: number;
456
455
  /** Events at or near current time */
457
456
  activeEvents: SessionEvent[];
458
457
  }
@@ -582,16 +581,24 @@ export interface RejourneyAPI {
582
581
  /** Get storage usage */
583
582
  getStorageUsage(): Promise<{ used: number; max: number }>;
584
583
 
584
+ /**
585
+ * Log customer feedback (e.g. from an in-app survey or NPS widget).
586
+ *
587
+ * @param rating - Numeric rating (e.g. 1 to 5)
588
+ * @param message - Associated feedback text or comment
589
+ */
590
+ logFeedback(rating: number, message: string): void;
591
+
585
592
  /**
586
593
  * Get SDK telemetry metrics for observability
594
+
587
595
  * Returns metrics about SDK health including upload success rates,
588
596
  * retry attempts, circuit breaker events, and memory pressure.
589
597
  */
590
598
  getSDKMetrics(): Promise<SDKMetrics>;
591
599
 
592
600
  /**
593
- * Trigger a debug ANR (Dev only)
594
- * Blocks the main thread for the specified duration
601
+ * Trigger an ANR test by blocking the main thread for the specified duration.
595
602
  */
596
603
  debugTriggerANR(durationMs: number): void;
597
604