@scalebun/react-native 1.0.2 → 1.0.3

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 (1622) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +65 -65
  3. package/android/build.gradle +86 -86
  4. package/android/consumer-rules.pro +28 -28
  5. package/android/src/main/AndroidManifest.xml +14 -14
  6. package/android/src/main/java/com/scalebun/core/crash/CrashStorage.kt +41 -41
  7. package/android/src/main/java/com/scalebun/core/crash/NativeCrashHandler.kt +79 -79
  8. package/android/src/main/java/com/scalebun/core/performance/ANRWatchdog.kt +100 -100
  9. package/android/src/main/java/com/scalebun/core/performance/AppStartCollector.kt +132 -132
  10. package/android/src/main/java/com/scalebun/core/performance/FrameMetricsCollector.kt +230 -230
  11. package/android/src/main/java/com/scalebun/core/performance/PerformanceCore.kt +165 -165
  12. package/android/src/main/java/com/scalebun/profiler/ProfilerModule.kt +398 -398
  13. package/android/src/main/java/com/scalebun/profiler/ProfilerPackage.kt +24 -24
  14. package/android/src/main/java/com/scalebun/profiler/collectors/CpuCollector.kt +161 -161
  15. package/android/src/main/java/com/scalebun/profiler/collectors/IncidentDetector.kt +223 -223
  16. package/android/src/main/java/com/scalebun/profiler/collectors/MemoryCollector.kt +157 -157
  17. package/android/src/main/java/com/scalebun/profiler/collectors/RenderCollector.kt +194 -194
  18. package/android/src/main/java/com/scalebun/profiler/collectors/SamplerScheduler.kt +218 -218
  19. package/android/src/main/java/com/scalebun/profiler/collectors/ThreadCollector.kt +142 -142
  20. package/android/src/main/java/com/scalebun/replaysdk/ReplaySdkModule.kt +966 -966
  21. package/android/src/main/java/com/scalebun/replaysdk/ReplaySdkPackage.kt +24 -24
  22. package/android/src/main/java/com/scalebun/replaysdk/capture/CaptureReason.kt +47 -47
  23. package/android/src/main/java/com/scalebun/replaysdk/capture/FrameCaptureManager.kt +508 -508
  24. package/android/src/main/java/com/scalebun/replaysdk/capture/FrameCaptureScheduler.kt +187 -187
  25. package/android/src/main/java/com/scalebun/replaysdk/capture/UiStabilityDetector.kt +214 -214
  26. package/android/src/main/java/com/scalebun/replaysdk/core/ReplayConfig.kt +144 -144
  27. package/android/src/main/java/com/scalebun/replaysdk/core/ReplayLogger.kt +31 -31
  28. package/android/src/main/java/com/scalebun/replaysdk/core/SessionIdGenerator.kt +15 -15
  29. package/android/src/main/java/com/scalebun/replaysdk/models/ReplayModels.kt +88 -88
  30. package/android/src/main/java/com/scalebun/replaysdk/outbox/NativeOutbox.kt +541 -541
  31. package/android/src/main/java/com/scalebun/replaysdk/outbox/OutboxUploader.kt +407 -407
  32. package/android/src/main/java/com/scalebun/replaysdk/privacy/PrivacyMaskProcessor.kt +126 -126
  33. package/android/src/main/java/com/scalebun/replaysdk/session/SessionManager.kt +281 -281
  34. package/android/src/main/java/com/scalebun/replaysdk/storage/ReplayStorage.kt +136 -136
  35. package/android/src/main/java/com/scalebun/replaysdk/timeline/TimelineCollector.kt +28 -28
  36. package/android/src/main/java/com/scalebun/replaysdk/tracking/InteractionTracker.kt +419 -419
  37. package/android/src/main/java/com/scalebun/replaysdk/tracking/ScreenTracker.kt +20 -20
  38. package/android/src/main/java/com/scalebun/replaysdk/transport/ReplayTransport.kt +99 -99
  39. package/android/src/main/java/com/scalebun/replaysdk/voice/VoiceRecorder.kt +121 -121
  40. package/android/src/main/java/com/scalebun/replaysdk/voice/VoiceTranscriber.kt +104 -104
  41. package/android/src/main/java/com/scalebun/rn/ScaleBunPackage.kt +113 -113
  42. package/android/src/main/java/com/scalebun/rn/crash/ScaleBunCrashModule.kt +100 -100
  43. package/android/src/main/java/com/scalebun/rn/crash/ScaleBunCrashPackage.kt +22 -22
  44. package/android/src/main/java/com/scalebun/rn/engage/ScaleBunEngageModule.kt +579 -579
  45. package/android/src/main/java/com/scalebun/rn/engage/ScaleBunEngagePackage.kt +22 -22
  46. package/android/src/main/java/com/scalebun/rn/engage/ScaleBunNotificationPresenter.kt +110 -110
  47. package/android/src/main/java/com/scalebun/rn/ota/BundleDownloader.kt +170 -0
  48. package/android/src/main/java/com/scalebun/rn/ota/ScaleBunOtaModule.kt +284 -136
  49. package/android/src/main/java/com/scalebun/rn/ota/SlotManager.kt +311 -285
  50. package/android/src/main/java/com/scalebun/rn/performance/PerformanceModule.kt +206 -206
  51. package/android/src/main/java/com/scalebun/rn/referrer/ScaleBunInstallReferrerModule.kt +77 -77
  52. package/android/src/main/java/com/scalebun/rn/storage/ScaleBunStorageModule.kt +68 -68
  53. package/android/src/main/java/com/scalebun/storage/KvFileStore.kt +174 -174
  54. package/android/src/newarch/java/com/scalebun/profiler/ProfilerSpec.kt +12 -12
  55. package/android/src/newarch/java/com/scalebun/replaysdk/ReplaySdkSpec.kt +12 -12
  56. package/android/src/newarch/java/com/scalebun/rn/crash/ScaleBunCrashSpec.kt +15 -15
  57. package/android/src/newarch/java/com/scalebun/rn/ota/ScaleBunOtaSpec.kt +16 -16
  58. package/android/src/newarch/java/com/scalebun/rn/performance/PerformanceSpec.kt +12 -12
  59. package/android/src/newarch/java/com/scalebun/rn/referrer/ScaleBunInstallReferrerSpec.kt +14 -14
  60. package/android/src/newarch/java/com/scalebun/rn/storage/ScaleBunStorageSpec.kt +16 -16
  61. package/android/src/oldarch/java/com/scalebun/profiler/ProfilerSpec.kt +34 -34
  62. package/android/src/oldarch/java/com/scalebun/replaysdk/ReplaySdkSpec.kt +76 -76
  63. package/android/src/oldarch/java/com/scalebun/rn/crash/ScaleBunCrashSpec.kt +21 -21
  64. package/android/src/oldarch/java/com/scalebun/rn/ota/ScaleBunOtaSpec.kt +31 -25
  65. package/android/src/oldarch/java/com/scalebun/rn/performance/PerformanceSpec.kt +27 -27
  66. package/android/src/oldarch/java/com/scalebun/rn/referrer/ScaleBunInstallReferrerSpec.kt +18 -18
  67. package/android/src/oldarch/java/com/scalebun/rn/storage/ScaleBunStorageSpec.kt +26 -26
  68. package/bin/lib/iosCodemod.js +266 -266
  69. package/bin/scalebun.js +640 -640
  70. package/ios/Capture/InteractionTracker.swift +191 -191
  71. package/ios/Capture/PrivacyMaskProcessor.swift +158 -158
  72. package/ios/Capture/ScreenshotCaptureManager.swift +315 -315
  73. package/ios/Capture/WindowResolver.swift +63 -63
  74. package/ios/Core/ReplayConfig.swift +100 -100
  75. package/ios/Core/ReplayLogger.swift +22 -22
  76. package/ios/Core/SessionIdGenerator.swift +18 -18
  77. package/ios/Crash/ScaleBunCrashBridge.mm +63 -63
  78. package/ios/Crash/ScaleBunCrashHandler.swift +67 -67
  79. package/ios/Crash/ScaleBunCrashModule.swift +69 -69
  80. package/ios/Crash/ScaleBunCrashSignalBridge.h +18 -18
  81. package/ios/Crash/ScaleBunCrashSignalBridge.m +131 -131
  82. package/ios/Crash/ScaleBunCrashStorage.swift +46 -46
  83. package/ios/Engage/ScaleBunEngageBridge.m +32 -32
  84. package/ios/Engage/ScaleBunEngageModule.swift +250 -250
  85. package/ios/Engage/ScaleBunPushNotificationCenter.swift +185 -185
  86. package/ios/Ota/BundleDownloader.swift +182 -0
  87. package/ios/Ota/OtaSlotManager.swift +290 -264
  88. package/ios/Ota/ScaleBunOtaBridge.mm +77 -68
  89. package/ios/Ota/ScaleBunOtaEventsModule.swift +61 -0
  90. package/ios/Ota/ScaleBunOtaModule.swift +176 -123
  91. package/ios/Outbox/NativeOutbox.swift +598 -598
  92. package/ios/Outbox/OutboxUploader.swift +431 -431
  93. package/ios/Performance/ScaleBunPerformanceBridge.m +32 -32
  94. package/ios/Performance/ScaleBunPerformanceModule.swift +290 -290
  95. package/ios/PrivacyInfo.xcprivacy +97 -97
  96. package/ios/Profiler/ScaleBunProfilerBridge.m +55 -55
  97. package/ios/Profiler/ScaleBunProfilerModule.swift +972 -972
  98. package/ios/ReplaySdk-Bridging-Header.h +2 -2
  99. package/ios/ReplaySdk.swift +608 -608
  100. package/ios/ReplaySdkBridge.m +94 -94
  101. package/ios/Session/SessionManager.swift +203 -203
  102. package/ios/Skan/ScaleBunSkanBridge.m +14 -14
  103. package/ios/Skan/ScaleBunSkanModule.swift +61 -61
  104. package/ios/Storage/ReplayStorage.swift +61 -61
  105. package/ios/Storage/ScaleBunKvFileStore.swift +125 -125
  106. package/ios/Storage/ScaleBunStorageBridge.mm +72 -72
  107. package/ios/Storage/ScaleBunStorageModule.swift +57 -57
  108. package/ios/Transport/ReplayTransport.swift +70 -70
  109. package/ios/VoiceRecorder.swift +145 -145
  110. package/lib/commonjs/analytics/EventTracker.js +34 -34
  111. package/lib/commonjs/analytics/EventTracker.js.map +1 -1
  112. package/lib/commonjs/analytics/automaticEvents.js +7 -7
  113. package/lib/commonjs/analytics/automaticEvents.js.map +1 -1
  114. package/lib/commonjs/analytics/batching.js +24 -24
  115. package/lib/commonjs/analytics/batching.js.map +1 -1
  116. package/lib/commonjs/analytics/eventLane.js +13 -13
  117. package/lib/commonjs/analytics/eventLane.js.map +1 -1
  118. package/lib/commonjs/bootstrap/FeatureRegistry.js +17 -17
  119. package/lib/commonjs/bootstrap/FeatureRegistry.js.map +1 -1
  120. package/lib/commonjs/bootstrap/SDKBootstrapper.js +64 -42
  121. package/lib/commonjs/bootstrap/SDKBootstrapper.js.map +1 -1
  122. package/lib/commonjs/bucketing/fnv1a32.js +10 -10
  123. package/lib/commonjs/bucketing/fnv1a32.js.map +1 -1
  124. package/lib/commonjs/compat/codepush.js +6 -6
  125. package/lib/commonjs/compat/codepush.js.map +1 -1
  126. package/lib/commonjs/config/ConfigManager.js +20 -20
  127. package/lib/commonjs/config/ConfigManager.js.map +1 -1
  128. package/lib/commonjs/config/configTypes.js.map +1 -1
  129. package/lib/commonjs/core/architecture.js +23 -23
  130. package/lib/commonjs/core/architecture.js.map +1 -1
  131. package/lib/commonjs/core/clock/now.js +2 -2
  132. package/lib/commonjs/core/clock/now.js.map +1 -1
  133. package/lib/commonjs/core/config/defaults.js.map +1 -1
  134. package/lib/commonjs/core/config/schema.js +102 -102
  135. package/lib/commonjs/core/config/schema.js.map +1 -1
  136. package/lib/commonjs/core/constants/endpoints.js +7 -7
  137. package/lib/commonjs/core/constants/endpoints.js.map +1 -1
  138. package/lib/commonjs/core/constants/timings.js +5 -5
  139. package/lib/commonjs/core/constants/timings.js.map +1 -1
  140. package/lib/commonjs/core/constants/version.js +4 -4
  141. package/lib/commonjs/core/constants/version.js.map +1 -1
  142. package/lib/commonjs/core/context/app.js.map +1 -1
  143. package/lib/commonjs/core/context/device.js.map +1 -1
  144. package/lib/commonjs/core/context/session.js.map +1 -1
  145. package/lib/commonjs/core/context/user.js.map +1 -1
  146. package/lib/commonjs/core/contracts/IFeature.js.map +1 -1
  147. package/lib/commonjs/core/di/container.js.map +1 -1
  148. package/lib/commonjs/core/encoding/base64.js +9 -9
  149. package/lib/commonjs/core/encoding/base64.js.map +1 -1
  150. package/lib/commonjs/core/id/deviceId.js +4 -4
  151. package/lib/commonjs/core/id/deviceId.js.map +1 -1
  152. package/lib/commonjs/core/id/sessionId.js.map +1 -1
  153. package/lib/commonjs/core/lifecycle/appLifecycle.js.map +1 -1
  154. package/lib/commonjs/core/lifecycle/crashSafe.js +3 -3
  155. package/lib/commonjs/core/lifecycle/crashSafe.js.map +1 -1
  156. package/lib/commonjs/core/logger/errorClassification.js +30 -30
  157. package/lib/commonjs/core/logger/errorClassification.js.map +1 -1
  158. package/lib/commonjs/core/logger/internalLogger.js.map +1 -1
  159. package/lib/commonjs/core/logger/levels.js.map +1 -1
  160. package/lib/commonjs/crypto/hmacSha256.js +6 -6
  161. package/lib/commonjs/crypto/hmacSha256.js.map +1 -1
  162. package/lib/commonjs/debug/bootstrap.js +26 -26
  163. package/lib/commonjs/debug/bootstrap.js.map +1 -1
  164. package/lib/commonjs/debug/commands.js +10 -10
  165. package/lib/commonjs/debug/commands.js.map +1 -1
  166. package/lib/commonjs/debug/configBuilder.js +6 -6
  167. package/lib/commonjs/debug/configBuilder.js.map +1 -1
  168. package/lib/commonjs/debug/exportBridge.js +17 -17
  169. package/lib/commonjs/debug/exportBridge.js.map +1 -1
  170. package/lib/commonjs/debug/hostResolver.js +10 -10
  171. package/lib/commonjs/debug/hostResolver.js.map +1 -1
  172. package/lib/commonjs/debug/index.js.map +1 -1
  173. package/lib/commonjs/debug/metrics.js.map +1 -1
  174. package/lib/commonjs/debug/perf.js +11 -11
  175. package/lib/commonjs/debug/perf.js.map +1 -1
  176. package/lib/commonjs/debug/perfWiring.js +10 -10
  177. package/lib/commonjs/debug/perfWiring.js.map +1 -1
  178. package/lib/commonjs/debug/protocol.js.map +1 -1
  179. package/lib/commonjs/debug/redaction.js +26 -26
  180. package/lib/commonjs/debug/redaction.js.map +1 -1
  181. package/lib/commonjs/debug/replayWiring.js +11 -11
  182. package/lib/commonjs/debug/replayWiring.js.map +1 -1
  183. package/lib/commonjs/debug/screenTracking.js +7 -7
  184. package/lib/commonjs/debug/screenTracking.js.map +1 -1
  185. package/lib/commonjs/debug/sessionWiring.js +8 -8
  186. package/lib/commonjs/debug/sessionWiring.js.map +1 -1
  187. package/lib/commonjs/debug/stream.js +26 -26
  188. package/lib/commonjs/debug/stream.js.map +1 -1
  189. package/lib/commonjs/debug/transport.js +24 -24
  190. package/lib/commonjs/debug/transport.js.map +1 -1
  191. package/lib/commonjs/features/bugreport/index.js.map +1 -1
  192. package/lib/commonjs/features/crash/CrashFeature.js +27 -9
  193. package/lib/commonjs/features/crash/CrashFeature.js.map +1 -1
  194. package/lib/commonjs/features/crash/CrashReporter.js +28 -28
  195. package/lib/commonjs/features/crash/CrashReporter.js.map +1 -1
  196. package/lib/commonjs/features/crash/NativeCrashFeature.js +7 -7
  197. package/lib/commonjs/features/crash/NativeCrashFeature.js.map +1 -1
  198. package/lib/commonjs/features/crash/capture.js.map +1 -1
  199. package/lib/commonjs/features/crash/globalHandler.js +11 -11
  200. package/lib/commonjs/features/crash/globalHandler.js.map +1 -1
  201. package/lib/commonjs/features/crash/index.js.map +1 -1
  202. package/lib/commonjs/features/crash/nativeCrashBridge.js +19 -19
  203. package/lib/commonjs/features/crash/nativeCrashBridge.js.map +1 -1
  204. package/lib/commonjs/features/crash/rejectionHandler.js +123 -0
  205. package/lib/commonjs/features/crash/rejectionHandler.js.map +1 -0
  206. package/lib/commonjs/features/engage/EngageAnchor.js +3 -3
  207. package/lib/commonjs/features/engage/EngageAnchor.js.map +1 -1
  208. package/lib/commonjs/features/engage/EngageArchetypeRenderers.js +19 -19
  209. package/lib/commonjs/features/engage/EngageArchetypeRenderers.js.map +1 -1
  210. package/lib/commonjs/features/engage/EngageInAppView.js +35 -35
  211. package/lib/commonjs/features/engage/EngageInAppView.js.map +1 -1
  212. package/lib/commonjs/features/engage/EngageInlinePlacement.js +7 -7
  213. package/lib/commonjs/features/engage/EngageInlinePlacement.js.map +1 -1
  214. package/lib/commonjs/features/engage/EngagePromptProvider.js +88 -86
  215. package/lib/commonjs/features/engage/EngagePromptProvider.js.map +1 -1
  216. package/lib/commonjs/features/engage/EngagePromptView.js +18 -18
  217. package/lib/commonjs/features/engage/EngagePromptView.js.map +1 -1
  218. package/lib/commonjs/features/engage/EngageTransport.js +79 -79
  219. package/lib/commonjs/features/engage/EngageTransport.js.map +1 -1
  220. package/lib/commonjs/features/engage/EngageVariantContent.js +10 -10
  221. package/lib/commonjs/features/engage/EngageVariantContent.js.map +1 -1
  222. package/lib/commonjs/features/engage/__test-support__/reactNativeStub.js +7 -7
  223. package/lib/commonjs/features/engage/__test-support__/reactNativeStub.js.map +1 -1
  224. package/lib/commonjs/features/engage/attachmentCapture.js +12 -12
  225. package/lib/commonjs/features/engage/attachmentCapture.js.map +1 -1
  226. package/lib/commonjs/features/engage/captureVoiceAttachment.js +20 -20
  227. package/lib/commonjs/features/engage/captureVoiceAttachment.js.map +1 -1
  228. package/lib/commonjs/features/engage/engageCoachmarkTour.js +4 -4
  229. package/lib/commonjs/features/engage/engageCoachmarkTour.js.map +1 -1
  230. package/lib/commonjs/features/engage/engageGameLogic.js.map +1 -1
  231. package/lib/commonjs/features/engage/engageMediaSizing.js +15 -15
  232. package/lib/commonjs/features/engage/engageMediaSizing.js.map +1 -1
  233. package/lib/commonjs/features/engage/engageMultiStepSheet.js +6 -6
  234. package/lib/commonjs/features/engage/engageMultiStepSheet.js.map +1 -1
  235. package/lib/commonjs/features/engage/engageOutcome.js +6 -6
  236. package/lib/commonjs/features/engage/engageOutcome.js.map +1 -1
  237. package/lib/commonjs/features/engage/engagePushTokenBridge.js +20 -20
  238. package/lib/commonjs/features/engage/engagePushTokenBridge.js.map +1 -1
  239. package/lib/commonjs/features/engage/engageShakeBridge.js +16 -16
  240. package/lib/commonjs/features/engage/engageShakeBridge.js.map +1 -1
  241. package/lib/commonjs/features/engage/engageSignals.js.map +1 -1
  242. package/lib/commonjs/features/engage/engageStoreReviewBridge.js +19 -19
  243. package/lib/commonjs/features/engage/engageStoreReviewBridge.js.map +1 -1
  244. package/lib/commonjs/features/engage/engageTestSeenStore.js +29 -29
  245. package/lib/commonjs/features/engage/engageTestSeenStore.js.map +1 -1
  246. package/lib/commonjs/features/engage/engageThrottle.js +117 -86
  247. package/lib/commonjs/features/engage/engageThrottle.js.map +1 -1
  248. package/lib/commonjs/features/engage/engageTriggerEngine.js +7 -7
  249. package/lib/commonjs/features/engage/engageTriggerEngine.js.map +1 -1
  250. package/lib/commonjs/features/engage/engageTypes.js +33 -33
  251. package/lib/commonjs/features/engage/engageTypes.js.map +1 -1
  252. package/lib/commonjs/features/engage/engageVariantResolver.js +13 -13
  253. package/lib/commonjs/features/engage/engageVariantResolver.js.map +1 -1
  254. package/lib/commonjs/features/engage/engageWindowInsets.js +10 -10
  255. package/lib/commonjs/features/engage/engageWindowInsets.js.map +1 -1
  256. package/lib/commonjs/features/engage/gestureTriggerDetector.js.map +1 -1
  257. package/lib/commonjs/features/engage/transcription/TranscriptionProvider.js +16 -16
  258. package/lib/commonjs/features/engage/transcription/TranscriptionProvider.js.map +1 -1
  259. package/lib/commonjs/features/install-referrer/installReferrer.js +26 -26
  260. package/lib/commonjs/features/install-referrer/installReferrer.js.map +1 -1
  261. package/lib/commonjs/features/journey/ScaleBunDebugRoot.js +28 -28
  262. package/lib/commonjs/features/journey/ScaleBunDebugRoot.js.map +1 -1
  263. package/lib/commonjs/features/journey/ScaleBunFlatList.js +15 -15
  264. package/lib/commonjs/features/journey/ScaleBunFlatList.js.map +1 -1
  265. package/lib/commonjs/features/journey/ScaleBunImpression.js +22 -22
  266. package/lib/commonjs/features/journey/ScaleBunImpression.js.map +1 -1
  267. package/lib/commonjs/features/journey/ScaleBunScrollView.js +20 -20
  268. package/lib/commonjs/features/journey/ScaleBunScrollView.js.map +1 -1
  269. package/lib/commonjs/features/journey/ScaleBunSectionList.js +15 -15
  270. package/lib/commonjs/features/journey/ScaleBunSectionList.js.map +1 -1
  271. package/lib/commonjs/features/journey/calibrationContext.js +12 -12
  272. package/lib/commonjs/features/journey/calibrationContext.js.map +1 -1
  273. package/lib/commonjs/features/journey/gestureBuffer.js +9 -9
  274. package/lib/commonjs/features/journey/gestureBuffer.js.map +1 -1
  275. package/lib/commonjs/features/journey/gestureDetector.js +10 -10
  276. package/lib/commonjs/features/journey/gestureDetector.js.map +1 -1
  277. package/lib/commonjs/features/journey/impression.js +18 -18
  278. package/lib/commonjs/features/journey/impression.js.map +1 -1
  279. package/lib/commonjs/features/journey/journeyManager.js +6 -6
  280. package/lib/commonjs/features/journey/journeyManager.js.map +1 -1
  281. package/lib/commonjs/features/journey/journeyTypes.js +5 -5
  282. package/lib/commonjs/features/journey/journeyTypes.js.map +1 -1
  283. package/lib/commonjs/features/journey/navDetector.js +7 -7
  284. package/lib/commonjs/features/journey/navDetector.js.map +1 -1
  285. package/lib/commonjs/features/journey/screenshotHelper.js +7 -7
  286. package/lib/commonjs/features/journey/screenshotHelper.js.map +1 -1
  287. package/lib/commonjs/features/journey/targetRegistry.js +17 -17
  288. package/lib/commonjs/features/journey/targetRegistry.js.map +1 -1
  289. package/lib/commonjs/features/journey/touchTarget.js +29 -29
  290. package/lib/commonjs/features/journey/touchTarget.js.map +1 -1
  291. package/lib/commonjs/features/navigation/AutoScreenDetector.js +114 -71
  292. package/lib/commonjs/features/navigation/AutoScreenDetector.js.map +1 -1
  293. package/lib/commonjs/features/network/NetworkFeature.js +23 -23
  294. package/lib/commonjs/features/network/NetworkFeature.js.map +1 -1
  295. package/lib/commonjs/features/network/index.js +5 -5
  296. package/lib/commonjs/features/network/index.js.map +1 -1
  297. package/lib/commonjs/features/ota/OtaEventEmitter.js +21 -21
  298. package/lib/commonjs/features/ota/OtaEventEmitter.js.map +1 -1
  299. package/lib/commonjs/features/ota/OtaOrchestrator.js +535 -40
  300. package/lib/commonjs/features/ota/OtaOrchestrator.js.map +1 -1
  301. package/lib/commonjs/features/ota/OtaTypes.js.map +1 -1
  302. package/lib/commonjs/features/ota/environment.js +172 -0
  303. package/lib/commonjs/features/ota/environment.js.map +1 -0
  304. package/lib/commonjs/features/ota/retry.js +96 -0
  305. package/lib/commonjs/features/ota/retry.js.map +1 -0
  306. package/lib/commonjs/features/ota/signature.js +115 -0
  307. package/lib/commonjs/features/ota/signature.js.map +1 -0
  308. package/lib/commonjs/features/ota/useOtaUpdate.js +15 -15
  309. package/lib/commonjs/features/ota/useOtaUpdate.js.map +1 -1
  310. package/lib/commonjs/features/performance/PerformanceFeature.js +26 -26
  311. package/lib/commonjs/features/performance/PerformanceFeature.js.map +1 -1
  312. package/lib/commonjs/features/performance/collectors/AppLaunchCollector.js +13 -13
  313. package/lib/commonjs/features/performance/collectors/AppLaunchCollector.js.map +1 -1
  314. package/lib/commonjs/features/performance/collectors/AutoScreenLoadCollector.js +32 -32
  315. package/lib/commonjs/features/performance/collectors/AutoScreenLoadCollector.js.map +1 -1
  316. package/lib/commonjs/features/performance/collectors/CustomTraceCollector.js +13 -13
  317. package/lib/commonjs/features/performance/collectors/CustomTraceCollector.js.map +1 -1
  318. package/lib/commonjs/features/performance/collectors/FrameMetricsCollector.js +11 -11
  319. package/lib/commonjs/features/performance/collectors/FrameMetricsCollector.js.map +1 -1
  320. package/lib/commonjs/features/performance/collectors/JsStallCollector.js +12 -12
  321. package/lib/commonjs/features/performance/collectors/JsStallCollector.js.map +1 -1
  322. package/lib/commonjs/features/performance/collectors/NetworkPerfCollector.js +10 -10
  323. package/lib/commonjs/features/performance/collectors/NetworkPerfCollector.js.map +1 -1
  324. package/lib/commonjs/features/performance/collectors/ScreenLoadCollector.js +11 -11
  325. package/lib/commonjs/features/performance/collectors/ScreenLoadCollector.js.map +1 -1
  326. package/lib/commonjs/features/performance/collectors/UiHangCollector.js +5 -5
  327. package/lib/commonjs/features/performance/collectors/UiHangCollector.js.map +1 -1
  328. package/lib/commonjs/features/performance/config.js +11 -11
  329. package/lib/commonjs/features/performance/config.js.map +1 -1
  330. package/lib/commonjs/features/performance/getNativePerformanceModule.js +11 -11
  331. package/lib/commonjs/features/performance/getNativePerformanceModule.js.map +1 -1
  332. package/lib/commonjs/features/performance/index.js.map +1 -1
  333. package/lib/commonjs/features/performance/metrics/MetricsEngine.js +13 -13
  334. package/lib/commonjs/features/performance/metrics/MetricsEngine.js.map +1 -1
  335. package/lib/commonjs/features/performance/models.js +8 -8
  336. package/lib/commonjs/features/performance/models.js.map +1 -1
  337. package/lib/commonjs/features/performance/transport/PerformanceTransport.js +6 -6
  338. package/lib/commonjs/features/performance/transport/PerformanceTransport.js.map +1 -1
  339. package/lib/commonjs/features/profiler/ProfilerFeature.js +53 -53
  340. package/lib/commonjs/features/profiler/ProfilerFeature.js.map +1 -1
  341. package/lib/commonjs/features/profiler/config.js +15 -15
  342. package/lib/commonjs/features/profiler/config.js.map +1 -1
  343. package/lib/commonjs/features/profiler/contracts.js +22 -22
  344. package/lib/commonjs/features/profiler/contracts.js.map +1 -1
  345. package/lib/commonjs/features/profiler/index.js.map +1 -1
  346. package/lib/commonjs/features/profiler/models.js +44 -44
  347. package/lib/commonjs/features/profiler/models.js.map +1 -1
  348. package/lib/commonjs/features/profiler/transport/ProfilerTransport.js +9 -9
  349. package/lib/commonjs/features/profiler/transport/ProfilerTransport.js.map +1 -1
  350. package/lib/commonjs/features/replay/bridge/adapters/bridgeAdapter.js +17 -17
  351. package/lib/commonjs/features/replay/bridge/adapters/bridgeAdapter.js.map +1 -1
  352. package/lib/commonjs/features/replay/bridge/eventEmitter.js +8 -8
  353. package/lib/commonjs/features/replay/bridge/eventEmitter.js.map +1 -1
  354. package/lib/commonjs/features/replay/bridge/nativeModule.js +20 -20
  355. package/lib/commonjs/features/replay/bridge/nativeModule.js.map +1 -1
  356. package/lib/commonjs/features/replay/core/clock/clock.js +6 -6
  357. package/lib/commonjs/features/replay/core/clock/clock.js.map +1 -1
  358. package/lib/commonjs/features/replay/core/config/defaults.js +2 -2
  359. package/lib/commonjs/features/replay/core/config/defaults.js.map +1 -1
  360. package/lib/commonjs/features/replay/core/config/validator.js +5 -5
  361. package/lib/commonjs/features/replay/core/config/validator.js.map +1 -1
  362. package/lib/commonjs/features/replay/core/env/environmentDetector.js +10 -10
  363. package/lib/commonjs/features/replay/core/env/environmentDetector.js.map +1 -1
  364. package/lib/commonjs/features/replay/core/errors/safeCall.js +4 -4
  365. package/lib/commonjs/features/replay/core/errors/safeCall.js.map +1 -1
  366. package/lib/commonjs/features/replay/core/ids/sessionId.js +5 -5
  367. package/lib/commonjs/features/replay/core/ids/sessionId.js.map +1 -1
  368. package/lib/commonjs/features/replay/core/logger/logger.js +5 -5
  369. package/lib/commonjs/features/replay/core/logger/logger.js.map +1 -1
  370. package/lib/commonjs/features/replay/core/privacy/privacyTypes.js +4 -4
  371. package/lib/commonjs/features/replay/core/privacy/privacyTypes.js.map +1 -1
  372. package/lib/commonjs/features/replay/core/queue/boundedQueue.js +5 -5
  373. package/lib/commonjs/features/replay/core/queue/boundedQueue.js.map +1 -1
  374. package/lib/commonjs/features/replay/integrations/alert/alertInstrumentation.js +59 -59
  375. package/lib/commonjs/features/replay/integrations/alert/alertInstrumentation.js.map +1 -1
  376. package/lib/commonjs/features/replay/integrations/logs/consoleIntegration.js +19 -19
  377. package/lib/commonjs/features/replay/integrations/logs/consoleIntegration.js.map +1 -1
  378. package/lib/commonjs/features/replay/integrations/network/networkAdapter.js +30 -30
  379. package/lib/commonjs/features/replay/integrations/network/networkAdapter.js.map +1 -1
  380. package/lib/commonjs/features/replay/integrations/react-navigation/navigationIntegration.js +19 -19
  381. package/lib/commonjs/features/replay/integrations/react-navigation/navigationIntegration.js.map +1 -1
  382. package/lib/commonjs/features/replay/integrations/touch/ReplayRoot.js +16 -16
  383. package/lib/commonjs/features/replay/integrations/touch/ReplayRoot.js.map +1 -1
  384. package/lib/commonjs/features/replay/pipeline/batching/batchManager.js +5 -5
  385. package/lib/commonjs/features/replay/pipeline/batching/batchManager.js.map +1 -1
  386. package/lib/commonjs/features/replay/pipeline/envelope/envelopeBuilder.js +5 -5
  387. package/lib/commonjs/features/replay/pipeline/envelope/envelopeBuilder.js.map +1 -1
  388. package/lib/commonjs/features/replay/pipeline/retry/retryPolicy.js +4 -4
  389. package/lib/commonjs/features/replay/pipeline/retry/retryPolicy.js.map +1 -1
  390. package/lib/commonjs/features/replay/pipeline/transport/transportTypes.js +7 -7
  391. package/lib/commonjs/features/replay/pipeline/transport/transportTypes.js.map +1 -1
  392. package/lib/commonjs/features/replay/public/api.js +21 -21
  393. package/lib/commonjs/features/replay/public/api.js.map +1 -1
  394. package/lib/commonjs/features/replay/public/enums.js +5 -5
  395. package/lib/commonjs/features/replay/public/enums.js.map +1 -1
  396. package/lib/commonjs/features/replay/public/types.js.map +1 -1
  397. package/lib/commonjs/features/replay/replay/breadcrumbs/breadcrumbCollector.js +5 -5
  398. package/lib/commonjs/features/replay/replay/breadcrumbs/breadcrumbCollector.js.map +1 -1
  399. package/lib/commonjs/features/replay/replay/frames/frameModels.js +4 -4
  400. package/lib/commonjs/features/replay/replay/frames/frameModels.js.map +1 -1
  401. package/lib/commonjs/features/replay/replay/session/sessionOrchestrator.js +10 -10
  402. package/lib/commonjs/features/replay/replay/session/sessionOrchestrator.js.map +1 -1
  403. package/lib/commonjs/features/replay/replay/timeline/timelineModels.js +4 -4
  404. package/lib/commonjs/features/replay/replay/timeline/timelineModels.js.map +1 -1
  405. package/lib/commonjs/features/replay/transport/BackendReplayTransport.js +13 -13
  406. package/lib/commonjs/features/replay/transport/BackendReplayTransport.js.map +1 -1
  407. package/lib/commonjs/features/replay/transport/CompositeReplayTransport.js +8 -8
  408. package/lib/commonjs/features/replay/transport/CompositeReplayTransport.js.map +1 -1
  409. package/lib/commonjs/features/replay/transport/DesktopReplayTransport.js +14 -14
  410. package/lib/commonjs/features/replay/transport/DesktopReplayTransport.js.map +1 -1
  411. package/lib/commonjs/features/replay/transport/ReplayTransport.js.map +1 -1
  412. package/lib/commonjs/features/session/BackendSessionAdapter.js +358 -153
  413. package/lib/commonjs/features/session/BackendSessionAdapter.js.map +1 -1
  414. package/lib/commonjs/features/session/DesktopSessionTransport.js +14 -14
  415. package/lib/commonjs/features/session/DesktopSessionTransport.js.map +1 -1
  416. package/lib/commonjs/features/session/JourneyEventPipeline.js +19 -19
  417. package/lib/commonjs/features/session/JourneyEventPipeline.js.map +1 -1
  418. package/lib/commonjs/features/session/ReplayCaptureManager.js +123 -123
  419. package/lib/commonjs/features/session/ReplayCaptureManager.js.map +1 -1
  420. package/lib/commonjs/features/session/ScrollTracker.js +17 -17
  421. package/lib/commonjs/features/session/ScrollTracker.js.map +1 -1
  422. package/lib/commonjs/features/session/SessionManager.js +143 -143
  423. package/lib/commonjs/features/session/SessionManager.js.map +1 -1
  424. package/lib/commonjs/features/session/SyncDecisionEngine.js +23 -23
  425. package/lib/commonjs/features/session/SyncDecisionEngine.js.map +1 -1
  426. package/lib/commonjs/features/session/index.js.map +1 -1
  427. package/lib/commonjs/features/session/nativeCapture.js +5 -5
  428. package/lib/commonjs/features/session/nativeCapture.js.map +1 -1
  429. package/lib/commonjs/features/session/outboxFrameCapture.js +15 -15
  430. package/lib/commonjs/features/session/outboxFrameCapture.js.map +1 -1
  431. package/lib/commonjs/features/session/sessionTypes.js +44 -44
  432. package/lib/commonjs/features/session/sessionTypes.js.map +1 -1
  433. package/lib/commonjs/features/skan/skanBridge.js +11 -11
  434. package/lib/commonjs/features/skan/skanBridge.js.map +1 -1
  435. package/lib/commonjs/features/skan/skanConversionManager.js +23 -23
  436. package/lib/commonjs/features/skan/skanConversionManager.js.map +1 -1
  437. package/lib/commonjs/index.js +7 -0
  438. package/lib/commonjs/index.js.map +1 -1
  439. package/lib/commonjs/integrations/fetch/fetchInterceptor.js +21 -21
  440. package/lib/commonjs/integrations/fetch/fetchInterceptor.js.map +1 -1
  441. package/lib/commonjs/integrations/navigation/screenTracker.js.map +1 -1
  442. package/lib/commonjs/integrations/network/bodyCapture.js +69 -69
  443. package/lib/commonjs/integrations/network/bodyCapture.js.map +1 -1
  444. package/lib/commonjs/integrations/xhr/xhrInterceptor.js +24 -24
  445. package/lib/commonjs/integrations/xhr/xhrInterceptor.js.map +1 -1
  446. package/lib/commonjs/metro/index.js +37 -37
  447. package/lib/commonjs/metro/index.js.map +1 -1
  448. package/lib/commonjs/metro/optionalDependencyStub.js.map +1 -1
  449. package/lib/commonjs/metro/optionalModules.js +16 -16
  450. package/lib/commonjs/metro/optionalModules.js.map +1 -1
  451. package/lib/commonjs/pipeline/dispatcher/dispatcher.js.map +1 -1
  452. package/lib/commonjs/pipeline/envelope/envelope.js.map +1 -1
  453. package/lib/commonjs/pipeline/envelope/serializer.js.map +1 -1
  454. package/lib/commonjs/pipeline/processors/dedupe.js.map +1 -1
  455. package/lib/commonjs/pipeline/processors/enrich.js.map +1 -1
  456. package/lib/commonjs/pipeline/processors/sampling.js.map +1 -1
  457. package/lib/commonjs/pipeline/processors/sanitize.js.map +1 -1
  458. package/lib/commonjs/pipeline/queue/flushQueue.js +4 -4
  459. package/lib/commonjs/pipeline/queue/flushQueue.js.map +1 -1
  460. package/lib/commonjs/pipeline/queue/memoryQueue.js.map +1 -1
  461. package/lib/commonjs/pipeline/queue/persistentQueue.js +80 -80
  462. package/lib/commonjs/pipeline/queue/persistentQueue.js.map +1 -1
  463. package/lib/commonjs/pipeline/queue/queuePolicy.js.map +1 -1
  464. package/lib/commonjs/pipeline/scheduler/flushScheduler.js.map +1 -1
  465. package/lib/commonjs/pipeline/scheduler/retryPolicy.js +2 -2
  466. package/lib/commonjs/pipeline/scheduler/retryPolicy.js.map +1 -1
  467. package/lib/commonjs/public/ScaleBunErrorBoundary.js +79 -0
  468. package/lib/commonjs/public/ScaleBunErrorBoundary.js.map +1 -0
  469. package/lib/commonjs/public/ScaleBunFacade.js +274 -274
  470. package/lib/commonjs/public/ScaleBunFacade.js.map +1 -1
  471. package/lib/commonjs/public/ScaleBunProvider.js +3 -3
  472. package/lib/commonjs/public/ScaleBunProvider.js.map +1 -1
  473. package/lib/commonjs/public/typedTracker.js +36 -36
  474. package/lib/commonjs/public/typedTracker.js.map +1 -1
  475. package/lib/commonjs/public/types.js.map +1 -1
  476. package/lib/commonjs/push/PushManager.js +21 -21
  477. package/lib/commonjs/push/PushManager.js.map +1 -1
  478. package/lib/commonjs/push/adapters/ManualAdapter.js +14 -14
  479. package/lib/commonjs/push/adapters/ManualAdapter.js.map +1 -1
  480. package/lib/commonjs/push/adapters/NativeBridgeAdapter.js +17 -17
  481. package/lib/commonjs/push/adapters/NativeBridgeAdapter.js.map +1 -1
  482. package/lib/commonjs/push/adapters/NoopAdapter.js +5 -5
  483. package/lib/commonjs/push/adapters/NoopAdapter.js.map +1 -1
  484. package/lib/commonjs/push/adapters/RNFirebaseMessagingAdapter.js +17 -17
  485. package/lib/commonjs/push/adapters/RNFirebaseMessagingAdapter.js.map +1 -1
  486. package/lib/commonjs/push/adapters/loadMessaging.js +12 -12
  487. package/lib/commonjs/push/adapters/loadMessaging.js.map +1 -1
  488. package/lib/commonjs/push/adapters/loadNotifee.js +12 -12
  489. package/lib/commonjs/push/adapters/loadNotifee.js.map +1 -1
  490. package/lib/commonjs/push/adapters/selectAdapter.js +14 -14
  491. package/lib/commonjs/push/adapters/selectAdapter.js.map +1 -1
  492. package/lib/commonjs/push/detect/capabilities.js +19 -19
  493. package/lib/commonjs/push/detect/capabilities.js.map +1 -1
  494. package/lib/commonjs/push/index.js.map +1 -1
  495. package/lib/commonjs/push/native/nativeNotifications.js +32 -32
  496. package/lib/commonjs/push/native/nativeNotifications.js.map +1 -1
  497. package/lib/commonjs/push/types.js.map +1 -1
  498. package/lib/commonjs/specs/NativeReplaySdk.js +18 -18
  499. package/lib/commonjs/specs/NativeReplaySdk.js.map +1 -1
  500. package/lib/commonjs/specs/NativeScaleBunCrash.js +19 -19
  501. package/lib/commonjs/specs/NativeScaleBunCrash.js.map +1 -1
  502. package/lib/commonjs/specs/NativeScaleBunInstallReferrer.js +14 -14
  503. package/lib/commonjs/specs/NativeScaleBunInstallReferrer.js.map +1 -1
  504. package/lib/commonjs/specs/NativeScaleBunOta.js +21 -21
  505. package/lib/commonjs/specs/NativeScaleBunOta.js.map +1 -1
  506. package/lib/commonjs/specs/NativeScaleBunPerformance.js +15 -15
  507. package/lib/commonjs/specs/NativeScaleBunPerformance.js.map +1 -1
  508. package/lib/commonjs/specs/NativeScaleBunProfiler.js +16 -16
  509. package/lib/commonjs/specs/NativeScaleBunProfiler.js.map +1 -1
  510. package/lib/commonjs/specs/NativeScaleBunStorage.js +29 -29
  511. package/lib/commonjs/specs/NativeScaleBunStorage.js.map +1 -1
  512. package/lib/commonjs/storage/StorageBackend.js +83 -83
  513. package/lib/commonjs/storage/StorageBackend.js.map +1 -1
  514. package/lib/commonjs/storage/db/sqlite.js.map +1 -1
  515. package/lib/commonjs/storage/files/fileStore.js.map +1 -1
  516. package/lib/commonjs/transport/auth/sdkSession.js.map +1 -1
  517. package/lib/commonjs/transport/backoff/exponentialJitter.js +2 -2
  518. package/lib/commonjs/transport/backoff/exponentialJitter.js.map +1 -1
  519. package/lib/commonjs/transport/http/endpoints.js.map +1 -1
  520. package/lib/commonjs/transport/http/httpClient.js +3 -3
  521. package/lib/commonjs/transport/http/httpClient.js.map +1 -1
  522. package/lib/commonjs/transport/rateLimit/retryAfter.js.map +1 -1
  523. package/lib/commonjs/transport/signing/requestSigner.js.map +1 -1
  524. package/lib/commonjs/vendor/protocol/index.js +74 -74
  525. package/lib/commonjs/vendor/protocol/index.js.map +1 -1
  526. package/lib/commonjs/vendor/protocol/internal/validation.js +23 -23
  527. package/lib/commonjs/vendor/protocol/internal/validation.js.map +1 -1
  528. package/lib/commonjs/vendor/sdk-contracts/bridge.js.map +1 -1
  529. package/lib/commonjs/vendor/sdk-contracts/config.js.map +1 -1
  530. package/lib/commonjs/vendor/sdk-contracts/events.js.map +1 -1
  531. package/lib/commonjs/vendor/sdk-contracts/features.js.map +1 -1
  532. package/lib/commonjs/vendor/sdk-contracts/index.js.map +1 -1
  533. package/lib/commonjs/vendor/sdk-contracts/platform.js.map +1 -1
  534. package/lib/commonjs/vendor/sdk-contracts/session-boundary.js.map +1 -1
  535. package/lib/commonjs/vendor/sdk-contracts/session.js.map +1 -1
  536. package/lib/commonjs/vendor/vendor.manifest +10 -10
  537. package/lib/module/analytics/EventTracker.js +34 -34
  538. package/lib/module/analytics/EventTracker.js.map +1 -1
  539. package/lib/module/analytics/automaticEvents.js +7 -7
  540. package/lib/module/analytics/automaticEvents.js.map +1 -1
  541. package/lib/module/analytics/batching.js +24 -24
  542. package/lib/module/analytics/batching.js.map +1 -1
  543. package/lib/module/analytics/eventLane.js +13 -13
  544. package/lib/module/analytics/eventLane.js.map +1 -1
  545. package/lib/module/bootstrap/FeatureRegistry.js +17 -17
  546. package/lib/module/bootstrap/FeatureRegistry.js.map +1 -1
  547. package/lib/module/bootstrap/SDKBootstrapper.js +64 -42
  548. package/lib/module/bootstrap/SDKBootstrapper.js.map +1 -1
  549. package/lib/module/bucketing/fnv1a32.js +10 -10
  550. package/lib/module/bucketing/fnv1a32.js.map +1 -1
  551. package/lib/module/compat/codepush.js +6 -6
  552. package/lib/module/compat/codepush.js.map +1 -1
  553. package/lib/module/config/ConfigManager.js +20 -20
  554. package/lib/module/config/ConfigManager.js.map +1 -1
  555. package/lib/module/config/configTypes.js.map +1 -1
  556. package/lib/module/core/architecture.js +23 -23
  557. package/lib/module/core/architecture.js.map +1 -1
  558. package/lib/module/core/clock/now.js +2 -2
  559. package/lib/module/core/clock/now.js.map +1 -1
  560. package/lib/module/core/config/defaults.js.map +1 -1
  561. package/lib/module/core/config/schema.js +102 -102
  562. package/lib/module/core/config/schema.js.map +1 -1
  563. package/lib/module/core/constants/endpoints.js +7 -7
  564. package/lib/module/core/constants/endpoints.js.map +1 -1
  565. package/lib/module/core/constants/timings.js +5 -5
  566. package/lib/module/core/constants/timings.js.map +1 -1
  567. package/lib/module/core/constants/version.js +4 -4
  568. package/lib/module/core/constants/version.js.map +1 -1
  569. package/lib/module/core/context/app.js.map +1 -1
  570. package/lib/module/core/context/device.js.map +1 -1
  571. package/lib/module/core/context/session.js.map +1 -1
  572. package/lib/module/core/context/user.js.map +1 -1
  573. package/lib/module/core/contracts/IFeature.js.map +1 -1
  574. package/lib/module/core/di/container.js.map +1 -1
  575. package/lib/module/core/encoding/base64.js +9 -9
  576. package/lib/module/core/encoding/base64.js.map +1 -1
  577. package/lib/module/core/id/deviceId.js +4 -4
  578. package/lib/module/core/id/deviceId.js.map +1 -1
  579. package/lib/module/core/id/sessionId.js.map +1 -1
  580. package/lib/module/core/lifecycle/appLifecycle.js.map +1 -1
  581. package/lib/module/core/lifecycle/crashSafe.js +3 -3
  582. package/lib/module/core/lifecycle/crashSafe.js.map +1 -1
  583. package/lib/module/core/logger/errorClassification.js +30 -30
  584. package/lib/module/core/logger/errorClassification.js.map +1 -1
  585. package/lib/module/core/logger/internalLogger.js.map +1 -1
  586. package/lib/module/core/logger/levels.js.map +1 -1
  587. package/lib/module/crypto/hmacSha256.js +6 -6
  588. package/lib/module/crypto/hmacSha256.js.map +1 -1
  589. package/lib/module/debug/bootstrap.js +26 -26
  590. package/lib/module/debug/bootstrap.js.map +1 -1
  591. package/lib/module/debug/commands.js +10 -10
  592. package/lib/module/debug/commands.js.map +1 -1
  593. package/lib/module/debug/configBuilder.js +6 -6
  594. package/lib/module/debug/configBuilder.js.map +1 -1
  595. package/lib/module/debug/exportBridge.js +17 -17
  596. package/lib/module/debug/exportBridge.js.map +1 -1
  597. package/lib/module/debug/hostResolver.js +10 -10
  598. package/lib/module/debug/hostResolver.js.map +1 -1
  599. package/lib/module/debug/index.js +5 -5
  600. package/lib/module/debug/index.js.map +1 -1
  601. package/lib/module/debug/metrics.js.map +1 -1
  602. package/lib/module/debug/perf.js +11 -11
  603. package/lib/module/debug/perf.js.map +1 -1
  604. package/lib/module/debug/perfWiring.js +10 -10
  605. package/lib/module/debug/perfWiring.js.map +1 -1
  606. package/lib/module/debug/protocol.js +11 -11
  607. package/lib/module/debug/protocol.js.map +1 -1
  608. package/lib/module/debug/redaction.js +26 -26
  609. package/lib/module/debug/redaction.js.map +1 -1
  610. package/lib/module/debug/replayWiring.js +11 -11
  611. package/lib/module/debug/replayWiring.js.map +1 -1
  612. package/lib/module/debug/screenTracking.js +7 -7
  613. package/lib/module/debug/screenTracking.js.map +1 -1
  614. package/lib/module/debug/sessionWiring.js +8 -8
  615. package/lib/module/debug/sessionWiring.js.map +1 -1
  616. package/lib/module/debug/stream.js +26 -26
  617. package/lib/module/debug/stream.js.map +1 -1
  618. package/lib/module/debug/transport.js +24 -24
  619. package/lib/module/debug/transport.js.map +1 -1
  620. package/lib/module/features/bugreport/index.js.map +1 -1
  621. package/lib/module/features/crash/CrashFeature.js +27 -9
  622. package/lib/module/features/crash/CrashFeature.js.map +1 -1
  623. package/lib/module/features/crash/CrashReporter.js +28 -28
  624. package/lib/module/features/crash/CrashReporter.js.map +1 -1
  625. package/lib/module/features/crash/NativeCrashFeature.js +7 -7
  626. package/lib/module/features/crash/NativeCrashFeature.js.map +1 -1
  627. package/lib/module/features/crash/capture.js.map +1 -1
  628. package/lib/module/features/crash/globalHandler.js +11 -11
  629. package/lib/module/features/crash/globalHandler.js.map +1 -1
  630. package/lib/module/features/crash/index.js.map +1 -1
  631. package/lib/module/features/crash/nativeCrashBridge.js +19 -19
  632. package/lib/module/features/crash/nativeCrashBridge.js.map +1 -1
  633. package/lib/module/features/crash/rejectionHandler.js +116 -0
  634. package/lib/module/features/crash/rejectionHandler.js.map +1 -0
  635. package/lib/module/features/engage/EngageAnchor.js +3 -3
  636. package/lib/module/features/engage/EngageAnchor.js.map +1 -1
  637. package/lib/module/features/engage/EngageArchetypeRenderers.js +19 -19
  638. package/lib/module/features/engage/EngageArchetypeRenderers.js.map +1 -1
  639. package/lib/module/features/engage/EngageInAppView.js +35 -35
  640. package/lib/module/features/engage/EngageInAppView.js.map +1 -1
  641. package/lib/module/features/engage/EngageInlinePlacement.js +7 -7
  642. package/lib/module/features/engage/EngageInlinePlacement.js.map +1 -1
  643. package/lib/module/features/engage/EngagePromptProvider.js +88 -86
  644. package/lib/module/features/engage/EngagePromptProvider.js.map +1 -1
  645. package/lib/module/features/engage/EngagePromptView.js +18 -18
  646. package/lib/module/features/engage/EngagePromptView.js.map +1 -1
  647. package/lib/module/features/engage/EngageTransport.js +79 -79
  648. package/lib/module/features/engage/EngageTransport.js.map +1 -1
  649. package/lib/module/features/engage/EngageVariantContent.js +10 -10
  650. package/lib/module/features/engage/EngageVariantContent.js.map +1 -1
  651. package/lib/module/features/engage/__test-support__/reactNativeStub.js +7 -7
  652. package/lib/module/features/engage/__test-support__/reactNativeStub.js.map +1 -1
  653. package/lib/module/features/engage/attachmentCapture.js +12 -12
  654. package/lib/module/features/engage/attachmentCapture.js.map +1 -1
  655. package/lib/module/features/engage/captureVoiceAttachment.js +20 -20
  656. package/lib/module/features/engage/captureVoiceAttachment.js.map +1 -1
  657. package/lib/module/features/engage/engageCoachmarkTour.js +4 -4
  658. package/lib/module/features/engage/engageCoachmarkTour.js.map +1 -1
  659. package/lib/module/features/engage/engageGameLogic.js.map +1 -1
  660. package/lib/module/features/engage/engageMediaSizing.js +15 -15
  661. package/lib/module/features/engage/engageMediaSizing.js.map +1 -1
  662. package/lib/module/features/engage/engageMultiStepSheet.js +6 -6
  663. package/lib/module/features/engage/engageMultiStepSheet.js.map +1 -1
  664. package/lib/module/features/engage/engageOutcome.js +6 -6
  665. package/lib/module/features/engage/engageOutcome.js.map +1 -1
  666. package/lib/module/features/engage/engagePushTokenBridge.js +20 -20
  667. package/lib/module/features/engage/engagePushTokenBridge.js.map +1 -1
  668. package/lib/module/features/engage/engageShakeBridge.js +16 -16
  669. package/lib/module/features/engage/engageShakeBridge.js.map +1 -1
  670. package/lib/module/features/engage/engageSignals.js.map +1 -1
  671. package/lib/module/features/engage/engageStoreReviewBridge.js +19 -19
  672. package/lib/module/features/engage/engageStoreReviewBridge.js.map +1 -1
  673. package/lib/module/features/engage/engageTestSeenStore.js +29 -29
  674. package/lib/module/features/engage/engageTestSeenStore.js.map +1 -1
  675. package/lib/module/features/engage/engageThrottle.js +117 -86
  676. package/lib/module/features/engage/engageThrottle.js.map +1 -1
  677. package/lib/module/features/engage/engageTriggerEngine.js +7 -7
  678. package/lib/module/features/engage/engageTriggerEngine.js.map +1 -1
  679. package/lib/module/features/engage/engageTypes.js +33 -33
  680. package/lib/module/features/engage/engageTypes.js.map +1 -1
  681. package/lib/module/features/engage/engageVariantResolver.js +13 -13
  682. package/lib/module/features/engage/engageVariantResolver.js.map +1 -1
  683. package/lib/module/features/engage/engageWindowInsets.js +10 -10
  684. package/lib/module/features/engage/engageWindowInsets.js.map +1 -1
  685. package/lib/module/features/engage/gestureTriggerDetector.js.map +1 -1
  686. package/lib/module/features/engage/transcription/TranscriptionProvider.js +16 -16
  687. package/lib/module/features/engage/transcription/TranscriptionProvider.js.map +1 -1
  688. package/lib/module/features/install-referrer/installReferrer.js +26 -26
  689. package/lib/module/features/install-referrer/installReferrer.js.map +1 -1
  690. package/lib/module/features/journey/ScaleBunDebugRoot.js +28 -28
  691. package/lib/module/features/journey/ScaleBunDebugRoot.js.map +1 -1
  692. package/lib/module/features/journey/ScaleBunFlatList.js +15 -15
  693. package/lib/module/features/journey/ScaleBunFlatList.js.map +1 -1
  694. package/lib/module/features/journey/ScaleBunImpression.js +22 -22
  695. package/lib/module/features/journey/ScaleBunImpression.js.map +1 -1
  696. package/lib/module/features/journey/ScaleBunScrollView.js +20 -20
  697. package/lib/module/features/journey/ScaleBunScrollView.js.map +1 -1
  698. package/lib/module/features/journey/ScaleBunSectionList.js +15 -15
  699. package/lib/module/features/journey/ScaleBunSectionList.js.map +1 -1
  700. package/lib/module/features/journey/calibrationContext.js +12 -12
  701. package/lib/module/features/journey/calibrationContext.js.map +1 -1
  702. package/lib/module/features/journey/gestureBuffer.js +9 -9
  703. package/lib/module/features/journey/gestureBuffer.js.map +1 -1
  704. package/lib/module/features/journey/gestureDetector.js +10 -10
  705. package/lib/module/features/journey/gestureDetector.js.map +1 -1
  706. package/lib/module/features/journey/impression.js +18 -18
  707. package/lib/module/features/journey/impression.js.map +1 -1
  708. package/lib/module/features/journey/journeyManager.js +6 -6
  709. package/lib/module/features/journey/journeyManager.js.map +1 -1
  710. package/lib/module/features/journey/journeyTypes.js +5 -5
  711. package/lib/module/features/journey/journeyTypes.js.map +1 -1
  712. package/lib/module/features/journey/navDetector.js +7 -7
  713. package/lib/module/features/journey/navDetector.js.map +1 -1
  714. package/lib/module/features/journey/screenshotHelper.js +7 -7
  715. package/lib/module/features/journey/screenshotHelper.js.map +1 -1
  716. package/lib/module/features/journey/targetRegistry.js +17 -17
  717. package/lib/module/features/journey/targetRegistry.js.map +1 -1
  718. package/lib/module/features/journey/touchTarget.js +29 -29
  719. package/lib/module/features/journey/touchTarget.js.map +1 -1
  720. package/lib/module/features/navigation/AutoScreenDetector.js +114 -71
  721. package/lib/module/features/navigation/AutoScreenDetector.js.map +1 -1
  722. package/lib/module/features/network/NetworkFeature.js +23 -23
  723. package/lib/module/features/network/NetworkFeature.js.map +1 -1
  724. package/lib/module/features/network/index.js +5 -5
  725. package/lib/module/features/network/index.js.map +1 -1
  726. package/lib/module/features/ota/OtaEventEmitter.js +21 -21
  727. package/lib/module/features/ota/OtaEventEmitter.js.map +1 -1
  728. package/lib/module/features/ota/OtaOrchestrator.js +536 -41
  729. package/lib/module/features/ota/OtaOrchestrator.js.map +1 -1
  730. package/lib/module/features/ota/OtaTypes.js.map +1 -1
  731. package/lib/module/features/ota/environment.js +165 -0
  732. package/lib/module/features/ota/environment.js.map +1 -0
  733. package/lib/module/features/ota/retry.js +87 -0
  734. package/lib/module/features/ota/retry.js.map +1 -0
  735. package/lib/module/features/ota/signature.js +109 -0
  736. package/lib/module/features/ota/signature.js.map +1 -0
  737. package/lib/module/features/ota/useOtaUpdate.js +15 -15
  738. package/lib/module/features/ota/useOtaUpdate.js.map +1 -1
  739. package/lib/module/features/performance/PerformanceFeature.js +26 -26
  740. package/lib/module/features/performance/PerformanceFeature.js.map +1 -1
  741. package/lib/module/features/performance/collectors/AppLaunchCollector.js +13 -13
  742. package/lib/module/features/performance/collectors/AppLaunchCollector.js.map +1 -1
  743. package/lib/module/features/performance/collectors/AutoScreenLoadCollector.js +32 -32
  744. package/lib/module/features/performance/collectors/AutoScreenLoadCollector.js.map +1 -1
  745. package/lib/module/features/performance/collectors/CustomTraceCollector.js +13 -13
  746. package/lib/module/features/performance/collectors/CustomTraceCollector.js.map +1 -1
  747. package/lib/module/features/performance/collectors/FrameMetricsCollector.js +11 -11
  748. package/lib/module/features/performance/collectors/FrameMetricsCollector.js.map +1 -1
  749. package/lib/module/features/performance/collectors/JsStallCollector.js +12 -12
  750. package/lib/module/features/performance/collectors/JsStallCollector.js.map +1 -1
  751. package/lib/module/features/performance/collectors/NetworkPerfCollector.js +10 -10
  752. package/lib/module/features/performance/collectors/NetworkPerfCollector.js.map +1 -1
  753. package/lib/module/features/performance/collectors/ScreenLoadCollector.js +11 -11
  754. package/lib/module/features/performance/collectors/ScreenLoadCollector.js.map +1 -1
  755. package/lib/module/features/performance/collectors/UiHangCollector.js +5 -5
  756. package/lib/module/features/performance/collectors/UiHangCollector.js.map +1 -1
  757. package/lib/module/features/performance/config.js +11 -11
  758. package/lib/module/features/performance/config.js.map +1 -1
  759. package/lib/module/features/performance/getNativePerformanceModule.js +11 -11
  760. package/lib/module/features/performance/getNativePerformanceModule.js.map +1 -1
  761. package/lib/module/features/performance/index.js +2 -2
  762. package/lib/module/features/performance/index.js.map +1 -1
  763. package/lib/module/features/performance/metrics/MetricsEngine.js +13 -13
  764. package/lib/module/features/performance/metrics/MetricsEngine.js.map +1 -1
  765. package/lib/module/features/performance/models.js +8 -8
  766. package/lib/module/features/performance/models.js.map +1 -1
  767. package/lib/module/features/performance/transport/PerformanceTransport.js +6 -6
  768. package/lib/module/features/performance/transport/PerformanceTransport.js.map +1 -1
  769. package/lib/module/features/profiler/ProfilerFeature.js +53 -53
  770. package/lib/module/features/profiler/ProfilerFeature.js.map +1 -1
  771. package/lib/module/features/profiler/config.js +15 -15
  772. package/lib/module/features/profiler/config.js.map +1 -1
  773. package/lib/module/features/profiler/contracts.js +22 -22
  774. package/lib/module/features/profiler/contracts.js.map +1 -1
  775. package/lib/module/features/profiler/index.js +4 -4
  776. package/lib/module/features/profiler/index.js.map +1 -1
  777. package/lib/module/features/profiler/models.js +44 -44
  778. package/lib/module/features/profiler/models.js.map +1 -1
  779. package/lib/module/features/profiler/transport/ProfilerTransport.js +9 -9
  780. package/lib/module/features/profiler/transport/ProfilerTransport.js.map +1 -1
  781. package/lib/module/features/replay/bridge/adapters/bridgeAdapter.js +17 -17
  782. package/lib/module/features/replay/bridge/adapters/bridgeAdapter.js.map +1 -1
  783. package/lib/module/features/replay/bridge/eventEmitter.js +8 -8
  784. package/lib/module/features/replay/bridge/eventEmitter.js.map +1 -1
  785. package/lib/module/features/replay/bridge/nativeModule.js +20 -20
  786. package/lib/module/features/replay/bridge/nativeModule.js.map +1 -1
  787. package/lib/module/features/replay/core/clock/clock.js +6 -6
  788. package/lib/module/features/replay/core/clock/clock.js.map +1 -1
  789. package/lib/module/features/replay/core/config/defaults.js +2 -2
  790. package/lib/module/features/replay/core/config/defaults.js.map +1 -1
  791. package/lib/module/features/replay/core/config/validator.js +5 -5
  792. package/lib/module/features/replay/core/config/validator.js.map +1 -1
  793. package/lib/module/features/replay/core/env/environmentDetector.js +10 -10
  794. package/lib/module/features/replay/core/env/environmentDetector.js.map +1 -1
  795. package/lib/module/features/replay/core/errors/safeCall.js +4 -4
  796. package/lib/module/features/replay/core/errors/safeCall.js.map +1 -1
  797. package/lib/module/features/replay/core/ids/sessionId.js +5 -5
  798. package/lib/module/features/replay/core/ids/sessionId.js.map +1 -1
  799. package/lib/module/features/replay/core/logger/logger.js +5 -5
  800. package/lib/module/features/replay/core/logger/logger.js.map +1 -1
  801. package/lib/module/features/replay/core/privacy/privacyTypes.js +4 -4
  802. package/lib/module/features/replay/core/privacy/privacyTypes.js.map +1 -1
  803. package/lib/module/features/replay/core/queue/boundedQueue.js +5 -5
  804. package/lib/module/features/replay/core/queue/boundedQueue.js.map +1 -1
  805. package/lib/module/features/replay/integrations/alert/alertInstrumentation.js +59 -59
  806. package/lib/module/features/replay/integrations/alert/alertInstrumentation.js.map +1 -1
  807. package/lib/module/features/replay/integrations/logs/consoleIntegration.js +19 -19
  808. package/lib/module/features/replay/integrations/logs/consoleIntegration.js.map +1 -1
  809. package/lib/module/features/replay/integrations/network/networkAdapter.js +30 -30
  810. package/lib/module/features/replay/integrations/network/networkAdapter.js.map +1 -1
  811. package/lib/module/features/replay/integrations/react-navigation/navigationIntegration.js +19 -19
  812. package/lib/module/features/replay/integrations/react-navigation/navigationIntegration.js.map +1 -1
  813. package/lib/module/features/replay/integrations/touch/ReplayRoot.js +16 -16
  814. package/lib/module/features/replay/integrations/touch/ReplayRoot.js.map +1 -1
  815. package/lib/module/features/replay/pipeline/batching/batchManager.js +5 -5
  816. package/lib/module/features/replay/pipeline/batching/batchManager.js.map +1 -1
  817. package/lib/module/features/replay/pipeline/envelope/envelopeBuilder.js +5 -5
  818. package/lib/module/features/replay/pipeline/envelope/envelopeBuilder.js.map +1 -1
  819. package/lib/module/features/replay/pipeline/retry/retryPolicy.js +4 -4
  820. package/lib/module/features/replay/pipeline/retry/retryPolicy.js.map +1 -1
  821. package/lib/module/features/replay/pipeline/transport/transportTypes.js +7 -7
  822. package/lib/module/features/replay/pipeline/transport/transportTypes.js.map +1 -1
  823. package/lib/module/features/replay/public/api.js +21 -21
  824. package/lib/module/features/replay/public/api.js.map +1 -1
  825. package/lib/module/features/replay/public/enums.js +5 -5
  826. package/lib/module/features/replay/public/enums.js.map +1 -1
  827. package/lib/module/features/replay/public/types.js.map +1 -1
  828. package/lib/module/features/replay/replay/breadcrumbs/breadcrumbCollector.js +5 -5
  829. package/lib/module/features/replay/replay/breadcrumbs/breadcrumbCollector.js.map +1 -1
  830. package/lib/module/features/replay/replay/frames/frameModels.js +4 -4
  831. package/lib/module/features/replay/replay/frames/frameModels.js.map +1 -1
  832. package/lib/module/features/replay/replay/session/sessionOrchestrator.js +10 -10
  833. package/lib/module/features/replay/replay/session/sessionOrchestrator.js.map +1 -1
  834. package/lib/module/features/replay/replay/timeline/timelineModels.js +4 -4
  835. package/lib/module/features/replay/replay/timeline/timelineModels.js.map +1 -1
  836. package/lib/module/features/replay/transport/BackendReplayTransport.js +13 -13
  837. package/lib/module/features/replay/transport/BackendReplayTransport.js.map +1 -1
  838. package/lib/module/features/replay/transport/CompositeReplayTransport.js +8 -8
  839. package/lib/module/features/replay/transport/CompositeReplayTransport.js.map +1 -1
  840. package/lib/module/features/replay/transport/DesktopReplayTransport.js +14 -14
  841. package/lib/module/features/replay/transport/DesktopReplayTransport.js.map +1 -1
  842. package/lib/module/features/replay/transport/ReplayTransport.js.map +1 -1
  843. package/lib/module/features/session/BackendSessionAdapter.js +357 -153
  844. package/lib/module/features/session/BackendSessionAdapter.js.map +1 -1
  845. package/lib/module/features/session/DesktopSessionTransport.js +14 -14
  846. package/lib/module/features/session/DesktopSessionTransport.js.map +1 -1
  847. package/lib/module/features/session/JourneyEventPipeline.js +19 -19
  848. package/lib/module/features/session/JourneyEventPipeline.js.map +1 -1
  849. package/lib/module/features/session/ReplayCaptureManager.js +123 -123
  850. package/lib/module/features/session/ReplayCaptureManager.js.map +1 -1
  851. package/lib/module/features/session/ScrollTracker.js +17 -17
  852. package/lib/module/features/session/ScrollTracker.js.map +1 -1
  853. package/lib/module/features/session/SessionManager.js +143 -143
  854. package/lib/module/features/session/SessionManager.js.map +1 -1
  855. package/lib/module/features/session/SyncDecisionEngine.js +23 -23
  856. package/lib/module/features/session/SyncDecisionEngine.js.map +1 -1
  857. package/lib/module/features/session/index.js +5 -5
  858. package/lib/module/features/session/index.js.map +1 -1
  859. package/lib/module/features/session/nativeCapture.js +5 -5
  860. package/lib/module/features/session/nativeCapture.js.map +1 -1
  861. package/lib/module/features/session/outboxFrameCapture.js +15 -15
  862. package/lib/module/features/session/outboxFrameCapture.js.map +1 -1
  863. package/lib/module/features/session/sessionTypes.js +44 -44
  864. package/lib/module/features/session/sessionTypes.js.map +1 -1
  865. package/lib/module/features/skan/skanBridge.js +11 -11
  866. package/lib/module/features/skan/skanBridge.js.map +1 -1
  867. package/lib/module/features/skan/skanConversionManager.js +23 -23
  868. package/lib/module/features/skan/skanConversionManager.js.map +1 -1
  869. package/lib/module/index.js +16 -10
  870. package/lib/module/index.js.map +1 -1
  871. package/lib/module/integrations/fetch/fetchInterceptor.js +21 -21
  872. package/lib/module/integrations/fetch/fetchInterceptor.js.map +1 -1
  873. package/lib/module/integrations/navigation/screenTracker.js.map +1 -1
  874. package/lib/module/integrations/network/bodyCapture.js +69 -69
  875. package/lib/module/integrations/network/bodyCapture.js.map +1 -1
  876. package/lib/module/integrations/xhr/xhrInterceptor.js +24 -24
  877. package/lib/module/integrations/xhr/xhrInterceptor.js.map +1 -1
  878. package/lib/module/metro/index.js +37 -37
  879. package/lib/module/metro/index.js.map +1 -1
  880. package/lib/module/metro/optionalDependencyStub.js +11 -11
  881. package/lib/module/metro/optionalDependencyStub.js.map +1 -1
  882. package/lib/module/metro/optionalModules.js +16 -16
  883. package/lib/module/metro/optionalModules.js.map +1 -1
  884. package/lib/module/pipeline/dispatcher/dispatcher.js.map +1 -1
  885. package/lib/module/pipeline/envelope/envelope.js.map +1 -1
  886. package/lib/module/pipeline/envelope/serializer.js.map +1 -1
  887. package/lib/module/pipeline/processors/dedupe.js.map +1 -1
  888. package/lib/module/pipeline/processors/enrich.js.map +1 -1
  889. package/lib/module/pipeline/processors/sampling.js.map +1 -1
  890. package/lib/module/pipeline/processors/sanitize.js.map +1 -1
  891. package/lib/module/pipeline/queue/flushQueue.js +4 -4
  892. package/lib/module/pipeline/queue/flushQueue.js.map +1 -1
  893. package/lib/module/pipeline/queue/memoryQueue.js.map +1 -1
  894. package/lib/module/pipeline/queue/persistentQueue.js +80 -80
  895. package/lib/module/pipeline/queue/persistentQueue.js.map +1 -1
  896. package/lib/module/pipeline/queue/queuePolicy.js.map +1 -1
  897. package/lib/module/pipeline/scheduler/flushScheduler.js.map +1 -1
  898. package/lib/module/pipeline/scheduler/retryPolicy.js +2 -2
  899. package/lib/module/pipeline/scheduler/retryPolicy.js.map +1 -1
  900. package/lib/module/public/ScaleBunErrorBoundary.js +70 -0
  901. package/lib/module/public/ScaleBunErrorBoundary.js.map +1 -0
  902. package/lib/module/public/ScaleBunFacade.js +274 -274
  903. package/lib/module/public/ScaleBunFacade.js.map +1 -1
  904. package/lib/module/public/ScaleBunProvider.js +3 -3
  905. package/lib/module/public/ScaleBunProvider.js.map +1 -1
  906. package/lib/module/public/typedTracker.js +36 -36
  907. package/lib/module/public/typedTracker.js.map +1 -1
  908. package/lib/module/public/types.js.map +1 -1
  909. package/lib/module/push/PushManager.js +21 -21
  910. package/lib/module/push/PushManager.js.map +1 -1
  911. package/lib/module/push/adapters/ManualAdapter.js +14 -14
  912. package/lib/module/push/adapters/ManualAdapter.js.map +1 -1
  913. package/lib/module/push/adapters/NativeBridgeAdapter.js +17 -17
  914. package/lib/module/push/adapters/NativeBridgeAdapter.js.map +1 -1
  915. package/lib/module/push/adapters/NoopAdapter.js +5 -5
  916. package/lib/module/push/adapters/NoopAdapter.js.map +1 -1
  917. package/lib/module/push/adapters/RNFirebaseMessagingAdapter.js +17 -17
  918. package/lib/module/push/adapters/RNFirebaseMessagingAdapter.js.map +1 -1
  919. package/lib/module/push/adapters/loadMessaging.js +12 -12
  920. package/lib/module/push/adapters/loadMessaging.js.map +1 -1
  921. package/lib/module/push/adapters/loadNotifee.js +12 -12
  922. package/lib/module/push/adapters/loadNotifee.js.map +1 -1
  923. package/lib/module/push/adapters/selectAdapter.js +14 -14
  924. package/lib/module/push/adapters/selectAdapter.js.map +1 -1
  925. package/lib/module/push/detect/capabilities.js +19 -19
  926. package/lib/module/push/detect/capabilities.js.map +1 -1
  927. package/lib/module/push/index.js +3 -3
  928. package/lib/module/push/index.js.map +1 -1
  929. package/lib/module/push/native/nativeNotifications.js +32 -32
  930. package/lib/module/push/native/nativeNotifications.js.map +1 -1
  931. package/lib/module/push/types.js.map +1 -1
  932. package/lib/module/specs/NativeReplaySdk.js +18 -18
  933. package/lib/module/specs/NativeReplaySdk.js.map +1 -1
  934. package/lib/module/specs/NativeScaleBunCrash.js +19 -19
  935. package/lib/module/specs/NativeScaleBunCrash.js.map +1 -1
  936. package/lib/module/specs/NativeScaleBunInstallReferrer.js +14 -14
  937. package/lib/module/specs/NativeScaleBunInstallReferrer.js.map +1 -1
  938. package/lib/module/specs/NativeScaleBunOta.js +21 -21
  939. package/lib/module/specs/NativeScaleBunOta.js.map +1 -1
  940. package/lib/module/specs/NativeScaleBunPerformance.js +15 -15
  941. package/lib/module/specs/NativeScaleBunPerformance.js.map +1 -1
  942. package/lib/module/specs/NativeScaleBunProfiler.js +16 -16
  943. package/lib/module/specs/NativeScaleBunProfiler.js.map +1 -1
  944. package/lib/module/specs/NativeScaleBunStorage.js +29 -29
  945. package/lib/module/specs/NativeScaleBunStorage.js.map +1 -1
  946. package/lib/module/storage/StorageBackend.js +83 -83
  947. package/lib/module/storage/StorageBackend.js.map +1 -1
  948. package/lib/module/storage/db/sqlite.js.map +1 -1
  949. package/lib/module/storage/files/fileStore.js.map +1 -1
  950. package/lib/module/transport/auth/sdkSession.js.map +1 -1
  951. package/lib/module/transport/backoff/exponentialJitter.js +2 -2
  952. package/lib/module/transport/backoff/exponentialJitter.js.map +1 -1
  953. package/lib/module/transport/http/endpoints.js.map +1 -1
  954. package/lib/module/transport/http/httpClient.js +3 -3
  955. package/lib/module/transport/http/httpClient.js.map +1 -1
  956. package/lib/module/transport/rateLimit/retryAfter.js.map +1 -1
  957. package/lib/module/transport/signing/requestSigner.js.map +1 -1
  958. package/lib/module/vendor/protocol/index.js +74 -74
  959. package/lib/module/vendor/protocol/index.js.map +1 -1
  960. package/lib/module/vendor/protocol/internal/validation.js +23 -23
  961. package/lib/module/vendor/protocol/internal/validation.js.map +1 -1
  962. package/lib/module/vendor/sdk-contracts/bridge.js.map +1 -1
  963. package/lib/module/vendor/sdk-contracts/config.js.map +1 -1
  964. package/lib/module/vendor/sdk-contracts/events.js.map +1 -1
  965. package/lib/module/vendor/sdk-contracts/features.js.map +1 -1
  966. package/lib/module/vendor/sdk-contracts/index.js.map +1 -1
  967. package/lib/module/vendor/sdk-contracts/platform.js.map +1 -1
  968. package/lib/module/vendor/sdk-contracts/session-boundary.js.map +1 -1
  969. package/lib/module/vendor/sdk-contracts/session.js.map +1 -1
  970. package/lib/module/vendor/vendor.manifest +10 -10
  971. package/lib/typescript/bootstrap/SDKBootstrapper.d.ts.map +1 -1
  972. package/lib/typescript/features/crash/CrashFeature.d.ts.map +1 -1
  973. package/lib/typescript/features/crash/rejectionHandler.d.ts +46 -0
  974. package/lib/typescript/features/crash/rejectionHandler.d.ts.map +1 -0
  975. package/lib/typescript/features/engage/EngagePromptProvider.d.ts.map +1 -1
  976. package/lib/typescript/features/engage/engageThrottle.d.ts +24 -4
  977. package/lib/typescript/features/engage/engageThrottle.d.ts.map +1 -1
  978. package/lib/typescript/features/engage/engageTypes.d.ts +6 -0
  979. package/lib/typescript/features/engage/engageTypes.d.ts.map +1 -1
  980. package/lib/typescript/features/navigation/AutoScreenDetector.d.ts +9 -0
  981. package/lib/typescript/features/navigation/AutoScreenDetector.d.ts.map +1 -1
  982. package/lib/typescript/features/ota/OtaOrchestrator.d.ts +67 -1
  983. package/lib/typescript/features/ota/OtaOrchestrator.d.ts.map +1 -1
  984. package/lib/typescript/features/ota/OtaTypes.d.ts +42 -0
  985. package/lib/typescript/features/ota/OtaTypes.d.ts.map +1 -1
  986. package/lib/typescript/features/ota/environment.d.ts +99 -0
  987. package/lib/typescript/features/ota/environment.d.ts.map +1 -0
  988. package/lib/typescript/features/ota/retry.d.ts +53 -0
  989. package/lib/typescript/features/ota/retry.d.ts.map +1 -0
  990. package/lib/typescript/features/ota/signature.d.ts +66 -0
  991. package/lib/typescript/features/ota/signature.d.ts.map +1 -0
  992. package/lib/typescript/features/session/BackendSessionAdapter.d.ts +93 -2
  993. package/lib/typescript/features/session/BackendSessionAdapter.d.ts.map +1 -1
  994. package/lib/typescript/index.d.ts +6 -0
  995. package/lib/typescript/index.d.ts.map +1 -1
  996. package/lib/typescript/public/ScaleBunErrorBoundary.d.ts +44 -0
  997. package/lib/typescript/public/ScaleBunErrorBoundary.d.ts.map +1 -0
  998. package/lib/typescript/specs/NativeScaleBunOta.d.ts +11 -0
  999. package/lib/typescript/specs/NativeScaleBunOta.d.ts.map +1 -1
  1000. package/package.json +12 -14
  1001. package/react-native.config.js +24 -24
  1002. package/scalebun-react-native.podspec +37 -37
  1003. package/src/analytics/EventTracker.ts +462 -462
  1004. package/src/analytics/automaticEvents.ts +105 -105
  1005. package/src/analytics/batching.ts +54 -54
  1006. package/src/analytics/eventLane.ts +26 -26
  1007. package/src/bootstrap/FeatureRegistry.ts +81 -81
  1008. package/src/bootstrap/SDKBootstrapper.ts +609 -585
  1009. package/src/bucketing/fnv1a32.ts +40 -40
  1010. package/src/compat/codepush.ts +118 -118
  1011. package/src/config/ConfigManager.ts +167 -167
  1012. package/src/config/configTypes.ts +32 -32
  1013. package/src/core/architecture.ts +39 -39
  1014. package/src/core/clock/now.ts +6 -6
  1015. package/src/core/config/schema.ts +231 -231
  1016. package/src/core/constants/endpoints.ts +9 -9
  1017. package/src/core/constants/timings.ts +23 -23
  1018. package/src/core/constants/version.ts +6 -6
  1019. package/src/core/context/user.ts +26 -26
  1020. package/src/core/contracts/IFeature.ts +53 -53
  1021. package/src/core/di/container.ts +26 -26
  1022. package/src/core/encoding/base64.ts +46 -46
  1023. package/src/core/id/deviceId.ts +51 -51
  1024. package/src/core/lifecycle/appLifecycle.ts +33 -33
  1025. package/src/core/lifecycle/crashSafe.ts +29 -29
  1026. package/src/core/logger/errorClassification.ts +108 -108
  1027. package/src/core/logger/internalLogger.ts +65 -65
  1028. package/src/crypto/hmacSha256.ts +106 -106
  1029. package/src/debug/bootstrap.ts +366 -366
  1030. package/src/debug/commands.ts +597 -597
  1031. package/src/debug/configBuilder.ts +56 -56
  1032. package/src/debug/exportBridge.ts +153 -153
  1033. package/src/debug/hostResolver.ts +34 -34
  1034. package/src/debug/index.ts +25 -25
  1035. package/src/debug/metrics.ts +29 -29
  1036. package/src/debug/perf.ts +212 -212
  1037. package/src/debug/perfWiring.ts +119 -119
  1038. package/src/debug/protocol.ts +58 -58
  1039. package/src/debug/redaction.ts +290 -290
  1040. package/src/debug/replayWiring.ts +147 -147
  1041. package/src/debug/screenTracking.ts +55 -55
  1042. package/src/debug/sessionWiring.ts +59 -59
  1043. package/src/debug/stream.ts +561 -561
  1044. package/src/debug/transport.ts +439 -439
  1045. package/src/features/crash/CrashFeature.ts +71 -52
  1046. package/src/features/crash/CrashReporter.ts +140 -140
  1047. package/src/features/crash/NativeCrashFeature.ts +42 -42
  1048. package/src/features/crash/capture.ts +21 -21
  1049. package/src/features/crash/globalHandler.ts +39 -39
  1050. package/src/features/crash/index.ts +8 -8
  1051. package/src/features/crash/nativeCrashBridge.ts +132 -132
  1052. package/src/features/crash/rejectionHandler.ts +134 -0
  1053. package/src/features/engage/EngageAnchor.tsx +159 -159
  1054. package/src/features/engage/EngageArchetypeRenderers.tsx +3716 -3716
  1055. package/src/features/engage/EngageInAppView.tsx +2678 -2678
  1056. package/src/features/engage/EngageInlinePlacement.tsx +169 -169
  1057. package/src/features/engage/EngagePromptProvider.tsx +1272 -1270
  1058. package/src/features/engage/EngagePromptView.tsx +1364 -1364
  1059. package/src/features/engage/EngageTransport.ts +668 -668
  1060. package/src/features/engage/EngageVariantContent.tsx +1483 -1483
  1061. package/src/features/engage/__test-support__/reactNativeStub.js +40 -40
  1062. package/src/features/engage/attachmentCapture.ts +45 -45
  1063. package/src/features/engage/captureVoiceAttachment.ts +81 -81
  1064. package/src/features/engage/engageCoachmarkTour.ts +120 -120
  1065. package/src/features/engage/engageGameLogic.ts +347 -347
  1066. package/src/features/engage/engageMediaSizing.ts +76 -76
  1067. package/src/features/engage/engageMultiStepSheet.ts +53 -53
  1068. package/src/features/engage/engageOutcome.ts +157 -157
  1069. package/src/features/engage/engagePushTokenBridge.ts +84 -84
  1070. package/src/features/engage/engageShakeBridge.ts +67 -67
  1071. package/src/features/engage/engageSignals.ts +40 -40
  1072. package/src/features/engage/engageStoreReviewBridge.ts +48 -48
  1073. package/src/features/engage/engageTestSeenStore.ts +95 -95
  1074. package/src/features/engage/engageThrottle.ts +478 -440
  1075. package/src/features/engage/engageTriggerEngine.ts +335 -335
  1076. package/src/features/engage/engageTypes.ts +697 -691
  1077. package/src/features/engage/engageVariantResolver.ts +364 -364
  1078. package/src/features/engage/engageWindowInsets.ts +108 -108
  1079. package/src/features/engage/gestureTriggerDetector.ts +83 -83
  1080. package/src/features/engage/transcription/TranscriptionProvider.ts +68 -68
  1081. package/src/features/install-referrer/installReferrer.ts +112 -112
  1082. package/src/features/journey/ScaleBunDebugRoot.tsx +726 -726
  1083. package/src/features/journey/ScaleBunFlatList.tsx +39 -39
  1084. package/src/features/journey/ScaleBunImpression.tsx +109 -109
  1085. package/src/features/journey/ScaleBunScrollView.tsx +72 -72
  1086. package/src/features/journey/ScaleBunSectionList.tsx +39 -39
  1087. package/src/features/journey/calibrationContext.ts +53 -53
  1088. package/src/features/journey/gestureBuffer.ts +59 -59
  1089. package/src/features/journey/gestureDetector.ts +162 -162
  1090. package/src/features/journey/impression.ts +92 -92
  1091. package/src/features/journey/journeyManager.ts +466 -466
  1092. package/src/features/journey/journeyTypes.ts +215 -215
  1093. package/src/features/journey/navDetector.ts +149 -149
  1094. package/src/features/journey/screenshotHelper.ts +137 -137
  1095. package/src/features/journey/targetRegistry.ts +43 -43
  1096. package/src/features/journey/touchTarget.ts +128 -128
  1097. package/src/features/navigation/AutoScreenDetector.ts +503 -448
  1098. package/src/features/network/NetworkFeature.ts +144 -144
  1099. package/src/features/network/index.ts +31 -31
  1100. package/src/features/ota/OtaEventEmitter.ts +128 -128
  1101. package/src/features/ota/OtaOrchestrator.ts +894 -323
  1102. package/src/features/ota/OtaTypes.ts +118 -62
  1103. package/src/features/ota/environment.ts +199 -0
  1104. package/src/features/ota/retry.ts +123 -0
  1105. package/src/features/ota/signature.ts +123 -0
  1106. package/src/features/ota/useOtaUpdate.ts +134 -134
  1107. package/src/features/performance/PerformanceFeature.ts +584 -584
  1108. package/src/features/performance/collectors/AppLaunchCollector.ts +117 -117
  1109. package/src/features/performance/collectors/AutoScreenLoadCollector.ts +258 -258
  1110. package/src/features/performance/collectors/CustomTraceCollector.ts +116 -116
  1111. package/src/features/performance/collectors/FrameMetricsCollector.ts +119 -119
  1112. package/src/features/performance/collectors/JsStallCollector.ts +165 -165
  1113. package/src/features/performance/collectors/NetworkPerfCollector.ts +69 -69
  1114. package/src/features/performance/collectors/ScreenLoadCollector.ts +95 -95
  1115. package/src/features/performance/collectors/UiHangCollector.ts +98 -98
  1116. package/src/features/performance/config.ts +136 -136
  1117. package/src/features/performance/getNativePerformanceModule.ts +38 -38
  1118. package/src/features/performance/index.ts +28 -28
  1119. package/src/features/performance/metrics/MetricsEngine.ts +152 -152
  1120. package/src/features/performance/models.ts +235 -235
  1121. package/src/features/performance/transport/PerformanceTransport.ts +143 -143
  1122. package/src/features/profiler/ProfilerFeature.ts +661 -661
  1123. package/src/features/profiler/config.ts +230 -230
  1124. package/src/features/profiler/contracts.ts +176 -176
  1125. package/src/features/profiler/index.ts +45 -45
  1126. package/src/features/profiler/models.ts +430 -430
  1127. package/src/features/profiler/transport/ProfilerTransport.ts +93 -93
  1128. package/src/features/replay/bridge/adapters/bridgeAdapter.ts +230 -230
  1129. package/src/features/replay/bridge/eventEmitter.ts +176 -176
  1130. package/src/features/replay/bridge/nativeModule.ts +241 -241
  1131. package/src/features/replay/core/clock/clock.ts +38 -38
  1132. package/src/features/replay/core/config/defaults.ts +66 -66
  1133. package/src/features/replay/core/config/validator.ts +113 -113
  1134. package/src/features/replay/core/env/environmentDetector.ts +21 -21
  1135. package/src/features/replay/core/errors/safeCall.ts +34 -34
  1136. package/src/features/replay/core/ids/sessionId.ts +44 -44
  1137. package/src/features/replay/core/logger/logger.ts +40 -40
  1138. package/src/features/replay/core/privacy/privacyTypes.ts +41 -41
  1139. package/src/features/replay/core/queue/boundedQueue.ts +71 -71
  1140. package/src/features/replay/integrations/alert/alertInstrumentation.ts +277 -277
  1141. package/src/features/replay/integrations/logs/consoleIntegration.ts +116 -116
  1142. package/src/features/replay/integrations/network/networkAdapter.ts +128 -128
  1143. package/src/features/replay/integrations/react-navigation/navigationIntegration.ts +89 -89
  1144. package/src/features/replay/integrations/touch/ReplayRoot.tsx +114 -114
  1145. package/src/features/replay/pipeline/batching/batchManager.ts +133 -133
  1146. package/src/features/replay/pipeline/envelope/envelopeBuilder.ts +66 -66
  1147. package/src/features/replay/pipeline/retry/retryPolicy.ts +62 -62
  1148. package/src/features/replay/pipeline/transport/transportTypes.ts +85 -85
  1149. package/src/features/replay/public/api.ts +364 -364
  1150. package/src/features/replay/public/enums.ts +78 -78
  1151. package/src/features/replay/public/types.ts +297 -297
  1152. package/src/features/replay/replay/breadcrumbs/breadcrumbCollector.ts +115 -115
  1153. package/src/features/replay/replay/frames/frameModels.ts +45 -45
  1154. package/src/features/replay/replay/session/sessionOrchestrator.ts +286 -286
  1155. package/src/features/replay/replay/timeline/timelineModels.ts +129 -129
  1156. package/src/features/replay/transport/BackendReplayTransport.ts +215 -215
  1157. package/src/features/replay/transport/CompositeReplayTransport.ts +82 -82
  1158. package/src/features/replay/transport/DesktopReplayTransport.ts +140 -140
  1159. package/src/features/replay/transport/ReplayTransport.ts +84 -84
  1160. package/src/features/session/BackendSessionAdapter.ts +1441 -1233
  1161. package/src/features/session/DesktopSessionTransport.ts +128 -128
  1162. package/src/features/session/JourneyEventPipeline.ts +273 -273
  1163. package/src/features/session/ReplayCaptureManager.ts +946 -946
  1164. package/src/features/session/ScrollTracker.ts +166 -166
  1165. package/src/features/session/SessionManager.ts +1209 -1209
  1166. package/src/features/session/SyncDecisionEngine.ts +117 -117
  1167. package/src/features/session/index.ts +88 -88
  1168. package/src/features/session/nativeCapture.ts +38 -38
  1169. package/src/features/session/outboxFrameCapture.ts +74 -74
  1170. package/src/features/session/sessionTypes.ts +491 -491
  1171. package/src/features/skan/skanBridge.ts +61 -61
  1172. package/src/features/skan/skanConversionManager.ts +173 -173
  1173. package/src/index.ts +197 -191
  1174. package/src/integrations/fetch/fetchInterceptor.ts +182 -182
  1175. package/src/integrations/network/bodyCapture.ts +328 -328
  1176. package/src/integrations/xhr/xhrInterceptor.ts +231 -231
  1177. package/src/metro/index.ts +164 -164
  1178. package/src/metro/optionalDependencyStub.ts +13 -13
  1179. package/src/metro/optionalModules.ts +27 -27
  1180. package/src/pipeline/dispatcher/dispatcher.ts +22 -22
  1181. package/src/pipeline/envelope/envelope.ts +31 -31
  1182. package/src/pipeline/envelope/serializer.ts +14 -14
  1183. package/src/pipeline/processors/enrich.ts +11 -11
  1184. package/src/pipeline/processors/sanitize.ts +23 -23
  1185. package/src/pipeline/queue/flushQueue.ts +144 -144
  1186. package/src/pipeline/queue/memoryQueue.ts +31 -31
  1187. package/src/pipeline/queue/persistentQueue.ts +414 -414
  1188. package/src/pipeline/scheduler/flushScheduler.ts +47 -47
  1189. package/src/pipeline/scheduler/retryPolicy.ts +8 -8
  1190. package/src/public/ScaleBunErrorBoundary.tsx +79 -0
  1191. package/src/public/ScaleBunFacade.ts +1479 -1479
  1192. package/src/public/ScaleBunProvider.tsx +91 -91
  1193. package/src/public/typedTracker.ts +123 -123
  1194. package/src/public/types.ts +312 -312
  1195. package/src/push/PushManager.ts +318 -318
  1196. package/src/push/adapters/ManualAdapter.ts +100 -100
  1197. package/src/push/adapters/NativeBridgeAdapter.ts +142 -142
  1198. package/src/push/adapters/NoopAdapter.ts +46 -46
  1199. package/src/push/adapters/RNFirebaseMessagingAdapter.ts +271 -271
  1200. package/src/push/adapters/loadMessaging.ts +24 -24
  1201. package/src/push/adapters/loadNotifee.ts +29 -29
  1202. package/src/push/adapters/selectAdapter.ts +176 -176
  1203. package/src/push/detect/capabilities.ts +124 -124
  1204. package/src/push/index.ts +22 -22
  1205. package/src/push/native/nativeNotifications.ts +216 -216
  1206. package/src/push/types.ts +159 -159
  1207. package/src/specs/NativeReplaySdk.ts +99 -99
  1208. package/src/specs/NativeScaleBunCrash.ts +36 -36
  1209. package/src/specs/NativeScaleBunInstallReferrer.ts +29 -29
  1210. package/src/specs/NativeScaleBunOta.ts +97 -85
  1211. package/src/specs/NativeScaleBunPerformance.ts +34 -34
  1212. package/src/specs/NativeScaleBunProfiler.ts +41 -41
  1213. package/src/specs/NativeScaleBunStorage.ts +59 -59
  1214. package/src/storage/StorageBackend.ts +272 -272
  1215. package/src/transport/auth/sdkSession.ts +27 -27
  1216. package/src/transport/backoff/exponentialJitter.ts +9 -9
  1217. package/src/transport/http/endpoints.ts +33 -33
  1218. package/src/transport/http/httpClient.ts +73 -73
  1219. package/src/vendor/protocol/index.ts +391 -391
  1220. package/src/vendor/protocol/internal/validation.ts +497 -497
  1221. package/src/vendor/sdk-contracts/bridge.ts +162 -162
  1222. package/src/vendor/sdk-contracts/config.ts +192 -192
  1223. package/src/vendor/sdk-contracts/events.ts +50 -50
  1224. package/src/vendor/sdk-contracts/features.ts +42 -42
  1225. package/src/vendor/sdk-contracts/index.ts +98 -98
  1226. package/src/vendor/sdk-contracts/platform.ts +42 -42
  1227. package/src/vendor/sdk-contracts/session-boundary.ts +55 -55
  1228. package/src/vendor/sdk-contracts/session.ts +225 -225
  1229. package/src/vendor/vendor.manifest +10 -10
  1230. package/android/build/generated/source/buildConfig/debug/com/scalebun/sdk/BuildConfig.java +0 -12
  1231. package/android/build/generated/source/codegen/java/com/scalebun/spec/NativeReplaySdkSpec.java +0 -208
  1232. package/android/build/generated/source/codegen/java/com/scalebun/spec/NativeScaleBunCrashSpec.java +0 -46
  1233. package/android/build/generated/source/codegen/java/com/scalebun/spec/NativeScaleBunInstallReferrerSpec.java +0 -38
  1234. package/android/build/generated/source/codegen/java/com/scalebun/spec/NativeScaleBunOtaSpec.java +0 -63
  1235. package/android/build/generated/source/codegen/java/com/scalebun/spec/NativeScaleBunPerformanceSpec.java +0 -70
  1236. package/android/build/generated/source/codegen/java/com/scalebun/spec/NativeScaleBunProfilerSpec.java +0 -96
  1237. package/android/build/generated/source/codegen/java/com/scalebun/spec/NativeScaleBunStorageSpec.java +0 -50
  1238. package/android/build/generated/source/codegen/jni/CMakeLists.txt +0 -28
  1239. package/android/build/generated/source/codegen/jni/ScaleBunSpec-generated.cpp +0 -554
  1240. package/android/build/generated/source/codegen/jni/ScaleBunSpec.h +0 -79
  1241. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/ComponentDescriptors.cpp +0 -22
  1242. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/ComponentDescriptors.h +0 -24
  1243. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/EventEmitters.cpp +0 -16
  1244. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/EventEmitters.h +0 -17
  1245. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/Props.cpp +0 -19
  1246. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/Props.h +0 -18
  1247. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/ScaleBunSpecJSI-generated.cpp +0 -595
  1248. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/ScaleBunSpecJSI.h +0 -1070
  1249. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/ShadowNodes.cpp +0 -17
  1250. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/ShadowNodes.h +0 -23
  1251. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/States.cpp +0 -16
  1252. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/States.h +0 -20
  1253. package/android/build/generated/source/codegen/schema.json +0 -1
  1254. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +0 -20
  1255. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +0 -18
  1256. package/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +0 -6
  1257. package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +0 -1
  1258. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  1259. package/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
  1260. package/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +0 -0
  1261. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +0 -1
  1262. package/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +0 -2
  1263. package/android/build/intermediates/incremental/mergeDebugAssets/merger.xml +0 -2
  1264. package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +0 -2
  1265. package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +0 -2
  1266. package/android/build/intermediates/java_res/debug/processDebugJavaRes/out/META-INF/scalebun_react-native_debug.kotlin_module +0 -0
  1267. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/sdk/BuildConfig.class +0 -0
  1268. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/spec/NativeReplaySdkSpec.class +0 -0
  1269. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/spec/NativeScaleBunCrashSpec.class +0 -0
  1270. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/spec/NativeScaleBunInstallReferrerSpec.class +0 -0
  1271. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/spec/NativeScaleBunOtaSpec.class +0 -0
  1272. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/spec/NativeScaleBunPerformanceSpec.class +0 -0
  1273. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/spec/NativeScaleBunProfilerSpec.class +0 -0
  1274. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/spec/NativeScaleBunStorageSpec.class +0 -0
  1275. package/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +0 -2
  1276. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +0 -24
  1277. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +0 -20
  1278. package/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +0 -1
  1279. package/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +0 -1
  1280. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/META-INF/scalebun_react-native_debug.kotlin_module +0 -0
  1281. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/crash/CrashStorage.class +0 -0
  1282. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/crash/NativeCrashHandler$Companion.class +0 -0
  1283. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/crash/NativeCrashHandler.class +0 -0
  1284. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/ANRWatchdog$HangInfo.class +0 -0
  1285. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/ANRWatchdog.class +0 -0
  1286. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/AppStartCollector$AppStartInfo.class +0 -0
  1287. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/AppStartCollector$Breakdown.class +0 -0
  1288. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/AppStartCollector$start$1.class +0 -0
  1289. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/AppStartCollector.class +0 -0
  1290. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/FrameMetricsCollector$Companion.class +0 -0
  1291. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/FrameMetricsCollector$FrameMetricsSnapshot.class +0 -0
  1292. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/FrameMetricsCollector$start$1.class +0 -0
  1293. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/FrameMetricsCollector$startChoreographerFallback$1.class +0 -0
  1294. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/FrameMetricsCollector.class +0 -0
  1295. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/PerformanceCore$Listener.class +0 -0
  1296. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/PerformanceCore.class +0 -0
  1297. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/ProfilerModule$Companion.class +0 -0
  1298. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/ProfilerModule.class +0 -0
  1299. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/ProfilerPackage.class +0 -0
  1300. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/ProfilerSpec.class +0 -0
  1301. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/CpuCollector.class +0 -0
  1302. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/IncidentDetector.class +0 -0
  1303. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/MemoryCollector.class +0 -0
  1304. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/RenderCollector$frameCallback$1.class +0 -0
  1305. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/RenderCollector.class +0 -0
  1306. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/SamplerScheduler.class +0 -0
  1307. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/SamplerSchedulerKt.class +0 -0
  1308. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/ThreadCollector$WhenMappings.class +0 -0
  1309. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/ThreadCollector.class +0 -0
  1310. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/ReplaySdkModule$Companion.class +0 -0
  1311. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/ReplaySdkModule$registerConnectivity$cb$1.class +0 -0
  1312. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/ReplaySdkModule.class +0 -0
  1313. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/ReplaySdkPackage.class +0 -0
  1314. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/ReplaySdkSpec.class +0 -0
  1315. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/CaptureReason$Companion.class +0 -0
  1316. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/CaptureReason.class +0 -0
  1317. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/FrameCaptureManager$startFrequencyTimer$1.class +0 -0
  1318. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/FrameCaptureManager.class +0 -0
  1319. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/FrameCaptureScheduler$Companion.class +0 -0
  1320. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/FrameCaptureScheduler$FrameRequest.class +0 -0
  1321. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/FrameCaptureScheduler.class +0 -0
  1322. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/UiStabilityDetector$Companion.class +0 -0
  1323. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/UiStabilityDetector$SettleWatch.class +0 -0
  1324. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/UiStabilityDetector$StabilityWatch.class +0 -0
  1325. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/UiStabilityDetector.class +0 -0
  1326. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/CaptureMode$Companion.class +0 -0
  1327. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/CaptureMode.class +0 -0
  1328. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/ReplayConfig$Companion.class +0 -0
  1329. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/ReplayConfig.class +0 -0
  1330. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/ReplayLogger.class +0 -0
  1331. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/ScreenshotQuality$Companion.class +0 -0
  1332. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/ScreenshotQuality.class +0 -0
  1333. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/SessionIdGenerator.class +0 -0
  1334. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/SessionState.class +0 -0
  1335. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/models/ReplayFrame.class +0 -0
  1336. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/models/ReplaySession.class +0 -0
  1337. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/models/TimelineEvent.class +0 -0
  1338. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/NativeOutbox$Companion.class +0 -0
  1339. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/NativeOutbox$enforceLimits$lambda$37$$inlined$sortedBy$1.class +0 -0
  1340. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/NativeOutbox.class +0 -0
  1341. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/OutboxUploader$NetResult$NetworkError.class +0 -0
  1342. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/OutboxUploader$NetResult$Response.class +0 -0
  1343. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/OutboxUploader$NetResult.class +0 -0
  1344. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/OutboxUploader$Outcome.class +0 -0
  1345. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/OutboxUploader$WhenMappings.class +0 -0
  1346. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/OutboxUploader.class +0 -0
  1347. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/privacy/PrivacyMaskProcessor.class +0 -0
  1348. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/session/SessionManager.class +0 -0
  1349. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/storage/ReplayStorage$enforceStorageLimit$$inlined$sortedBy$1.class +0 -0
  1350. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/storage/ReplayStorage.class +0 -0
  1351. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/timeline/TimelineCollector.class +0 -0
  1352. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/tracking/DialogTouchObserver$start$runnable$1.class +0 -0
  1353. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/tracking/DialogTouchObserver.class +0 -0
  1354. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/tracking/InteractionTracker.class +0 -0
  1355. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/tracking/NativeTouchInterceptor.class +0 -0
  1356. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/tracking/ScreenTracker.class +0 -0
  1357. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/transport/ReplayTransport$UploadResult.class +0 -0
  1358. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/transport/ReplayTransport$upload$2.class +0 -0
  1359. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/transport/ReplayTransport.class +0 -0
  1360. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/voice/VoiceRecorder$Companion.class +0 -0
  1361. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/voice/VoiceRecorder$Result.class +0 -0
  1362. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/voice/VoiceRecorder.class +0 -0
  1363. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/voice/VoiceTranscriber$TranscriptResult.class +0 -0
  1364. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/voice/VoiceTranscriber$listener$1.class +0 -0
  1365. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/voice/VoiceTranscriber.class +0 -0
  1366. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/ScaleBunPackage$Companion.class +0 -0
  1367. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/ScaleBunPackage.class +0 -0
  1368. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/crash/ScaleBunCrashModule$Companion.class +0 -0
  1369. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/crash/ScaleBunCrashModule.class +0 -0
  1370. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/crash/ScaleBunCrashPackage.class +0 -0
  1371. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/crash/ScaleBunCrashSpec.class +0 -0
  1372. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/engage/ScaleBunEngageModule$Companion.class +0 -0
  1373. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/engage/ScaleBunEngageModule$WindowInsetEdges.class +0 -0
  1374. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/engage/ScaleBunEngageModule$shakeListener$1.class +0 -0
  1375. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/engage/ScaleBunEngageModule.class +0 -0
  1376. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/engage/ScaleBunEngagePackage.class +0 -0
  1377. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/engage/ScaleBunNotificationPresenter.class +0 -0
  1378. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/ota/ScaleBunOtaModule$Companion.class +0 -0
  1379. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/ota/ScaleBunOtaModule.class +0 -0
  1380. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/ota/ScaleBunOtaSpec.class +0 -0
  1381. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/ota/SlotManager$Companion.class +0 -0
  1382. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/ota/SlotManager.class +0 -0
  1383. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/performance/PerformanceModule$Companion.class +0 -0
  1384. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/performance/PerformanceModule$coreListener$1.class +0 -0
  1385. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/performance/PerformanceModule.class +0 -0
  1386. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/performance/PerformanceSpec.class +0 -0
  1387. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/referrer/ScaleBunInstallReferrerModule$Companion.class +0 -0
  1388. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/referrer/ScaleBunInstallReferrerModule$getInstallReferrer$1.class +0 -0
  1389. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/referrer/ScaleBunInstallReferrerModule.class +0 -0
  1390. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/referrer/ScaleBunInstallReferrerSpec.class +0 -0
  1391. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/storage/ScaleBunStorageModule$Companion.class +0 -0
  1392. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/storage/ScaleBunStorageModule.class +0 -0
  1393. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/storage/ScaleBunStorageSpec.class +0 -0
  1394. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/sdk/BuildConfig.class +0 -0
  1395. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/spec/NativeReplaySdkSpec.class +0 -0
  1396. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/spec/NativeScaleBunCrashSpec.class +0 -0
  1397. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/spec/NativeScaleBunInstallReferrerSpec.class +0 -0
  1398. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/spec/NativeScaleBunOtaSpec.class +0 -0
  1399. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/spec/NativeScaleBunPerformanceSpec.class +0 -0
  1400. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/spec/NativeScaleBunProfilerSpec.class +0 -0
  1401. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/spec/NativeScaleBunStorageSpec.class +0 -0
  1402. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/storage/KvFileStore$Companion.class +0 -0
  1403. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/storage/KvFileStore.class +0 -0
  1404. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  1405. package/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +0 -1
  1406. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
  1407. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream +0 -0
  1408. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len +0 -0
  1409. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len +0 -0
  1410. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
  1411. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i +0 -0
  1412. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len +0 -0
  1413. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
  1414. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream +0 -0
  1415. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len +0 -0
  1416. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len +0 -0
  1417. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
  1418. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i +0 -0
  1419. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len +0 -0
  1420. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
  1421. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream +0 -0
  1422. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len +0 -0
  1423. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len +0 -0
  1424. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
  1425. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i +0 -0
  1426. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len +0 -0
  1427. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab +0 -0
  1428. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream +0 -0
  1429. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len +0 -0
  1430. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len +0 -0
  1431. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at +0 -0
  1432. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i +0 -0
  1433. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len +0 -0
  1434. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
  1435. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
  1436. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
  1437. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
  1438. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
  1439. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
  1440. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len +0 -0
  1441. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab +0 -0
  1442. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream +0 -0
  1443. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream.len +0 -0
  1444. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.len +0 -0
  1445. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.values.at +0 -0
  1446. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i +0 -0
  1447. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i.len +0 -0
  1448. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
  1449. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream +0 -0
  1450. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len +0 -0
  1451. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len +0 -0
  1452. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values +0 -0
  1453. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
  1454. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.s +0 -1
  1455. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i +0 -0
  1456. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len +0 -0
  1457. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
  1458. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream +0 -0
  1459. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len +0 -0
  1460. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len +0 -0
  1461. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
  1462. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i +0 -0
  1463. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len +0 -0
  1464. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
  1465. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream +0 -0
  1466. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len +0 -0
  1467. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.len +0 -0
  1468. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
  1469. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i +0 -0
  1470. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i.len +0 -0
  1471. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
  1472. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream +0 -0
  1473. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len +0 -0
  1474. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.len +0 -0
  1475. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
  1476. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i +0 -0
  1477. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i.len +0 -0
  1478. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +0 -2
  1479. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
  1480. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream +0 -0
  1481. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len +0 -0
  1482. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len +0 -0
  1483. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
  1484. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i +0 -0
  1485. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len +0 -0
  1486. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
  1487. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
  1488. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
  1489. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
  1490. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
  1491. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i +0 -0
  1492. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len +0 -0
  1493. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
  1494. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
  1495. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
  1496. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
  1497. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values +0 -0
  1498. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
  1499. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.s +0 -1
  1500. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
  1501. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len +0 -0
  1502. package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  1503. package/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
  1504. package/android/build/kotlin/compileDebugKotlin/local-state/build-history.bin +0 -0
  1505. package/android/build/outputs/logs/manifest-merger-debug-report.txt +0 -25
  1506. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  1507. package/android/build/tmp/kotlin-classes/debug/META-INF/scalebun_react-native_debug.kotlin_module +0 -0
  1508. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/crash/CrashStorage.class +0 -0
  1509. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/crash/NativeCrashHandler$Companion.class +0 -0
  1510. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/crash/NativeCrashHandler.class +0 -0
  1511. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/ANRWatchdog$HangInfo.class +0 -0
  1512. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/ANRWatchdog.class +0 -0
  1513. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/AppStartCollector$AppStartInfo.class +0 -0
  1514. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/AppStartCollector$Breakdown.class +0 -0
  1515. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/AppStartCollector$start$1.class +0 -0
  1516. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/AppStartCollector.class +0 -0
  1517. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/FrameMetricsCollector$Companion.class +0 -0
  1518. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/FrameMetricsCollector$FrameMetricsSnapshot.class +0 -0
  1519. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/FrameMetricsCollector$start$1.class +0 -0
  1520. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/FrameMetricsCollector$startChoreographerFallback$1.class +0 -0
  1521. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/FrameMetricsCollector.class +0 -0
  1522. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/PerformanceCore$Listener.class +0 -0
  1523. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/PerformanceCore.class +0 -0
  1524. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/ProfilerModule$Companion.class +0 -0
  1525. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/ProfilerModule.class +0 -0
  1526. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/ProfilerPackage.class +0 -0
  1527. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/ProfilerSpec.class +0 -0
  1528. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/CpuCollector.class +0 -0
  1529. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/IncidentDetector.class +0 -0
  1530. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/MemoryCollector.class +0 -0
  1531. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/RenderCollector$frameCallback$1.class +0 -0
  1532. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/RenderCollector.class +0 -0
  1533. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/SamplerScheduler.class +0 -0
  1534. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/SamplerSchedulerKt.class +0 -0
  1535. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/ThreadCollector$WhenMappings.class +0 -0
  1536. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/ThreadCollector.class +0 -0
  1537. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/ReplaySdkModule$Companion.class +0 -0
  1538. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/ReplaySdkModule$registerConnectivity$cb$1.class +0 -0
  1539. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/ReplaySdkModule.class +0 -0
  1540. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/ReplaySdkPackage.class +0 -0
  1541. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/ReplaySdkSpec.class +0 -0
  1542. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/CaptureReason$Companion.class +0 -0
  1543. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/CaptureReason.class +0 -0
  1544. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/FrameCaptureManager$startFrequencyTimer$1.class +0 -0
  1545. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/FrameCaptureManager.class +0 -0
  1546. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/FrameCaptureScheduler$Companion.class +0 -0
  1547. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/FrameCaptureScheduler$FrameRequest.class +0 -0
  1548. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/FrameCaptureScheduler.class +0 -0
  1549. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/UiStabilityDetector$Companion.class +0 -0
  1550. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/UiStabilityDetector$SettleWatch.class +0 -0
  1551. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/UiStabilityDetector$StabilityWatch.class +0 -0
  1552. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/UiStabilityDetector.class +0 -0
  1553. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/CaptureMode$Companion.class +0 -0
  1554. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/CaptureMode.class +0 -0
  1555. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/ReplayConfig$Companion.class +0 -0
  1556. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/ReplayConfig.class +0 -0
  1557. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/ReplayLogger.class +0 -0
  1558. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/ScreenshotQuality$Companion.class +0 -0
  1559. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/ScreenshotQuality.class +0 -0
  1560. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/SessionIdGenerator.class +0 -0
  1561. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/SessionState.class +0 -0
  1562. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/models/ReplayFrame.class +0 -0
  1563. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/models/ReplaySession.class +0 -0
  1564. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/models/TimelineEvent.class +0 -0
  1565. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/NativeOutbox$Companion.class +0 -0
  1566. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/NativeOutbox$enforceLimits$lambda$37$$inlined$sortedBy$1.class +0 -0
  1567. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/NativeOutbox.class +0 -0
  1568. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/OutboxUploader$NetResult$NetworkError.class +0 -0
  1569. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/OutboxUploader$NetResult$Response.class +0 -0
  1570. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/OutboxUploader$NetResult.class +0 -0
  1571. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/OutboxUploader$Outcome.class +0 -0
  1572. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/OutboxUploader$WhenMappings.class +0 -0
  1573. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/OutboxUploader.class +0 -0
  1574. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/privacy/PrivacyMaskProcessor.class +0 -0
  1575. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/session/SessionManager.class +0 -0
  1576. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/storage/ReplayStorage$enforceStorageLimit$$inlined$sortedBy$1.class +0 -0
  1577. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/storage/ReplayStorage.class +0 -0
  1578. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/timeline/TimelineCollector.class +0 -0
  1579. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/tracking/DialogTouchObserver$start$runnable$1.class +0 -0
  1580. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/tracking/DialogTouchObserver.class +0 -0
  1581. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/tracking/InteractionTracker.class +0 -0
  1582. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/tracking/NativeTouchInterceptor.class +0 -0
  1583. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/tracking/ScreenTracker.class +0 -0
  1584. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/transport/ReplayTransport$UploadResult.class +0 -0
  1585. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/transport/ReplayTransport$upload$2.class +0 -0
  1586. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/transport/ReplayTransport.class +0 -0
  1587. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/voice/VoiceRecorder$Companion.class +0 -0
  1588. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/voice/VoiceRecorder$Result.class +0 -0
  1589. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/voice/VoiceRecorder.class +0 -0
  1590. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/voice/VoiceTranscriber$TranscriptResult.class +0 -0
  1591. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/voice/VoiceTranscriber$listener$1.class +0 -0
  1592. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/voice/VoiceTranscriber.class +0 -0
  1593. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/ScaleBunPackage$Companion.class +0 -0
  1594. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/ScaleBunPackage.class +0 -0
  1595. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/crash/ScaleBunCrashModule$Companion.class +0 -0
  1596. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/crash/ScaleBunCrashModule.class +0 -0
  1597. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/crash/ScaleBunCrashPackage.class +0 -0
  1598. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/crash/ScaleBunCrashSpec.class +0 -0
  1599. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/engage/ScaleBunEngageModule$Companion.class +0 -0
  1600. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/engage/ScaleBunEngageModule$WindowInsetEdges.class +0 -0
  1601. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/engage/ScaleBunEngageModule$shakeListener$1.class +0 -0
  1602. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/engage/ScaleBunEngageModule.class +0 -0
  1603. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/engage/ScaleBunEngagePackage.class +0 -0
  1604. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/engage/ScaleBunNotificationPresenter.class +0 -0
  1605. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/ota/ScaleBunOtaModule$Companion.class +0 -0
  1606. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/ota/ScaleBunOtaModule.class +0 -0
  1607. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/ota/ScaleBunOtaSpec.class +0 -0
  1608. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/ota/SlotManager$Companion.class +0 -0
  1609. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/ota/SlotManager.class +0 -0
  1610. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/performance/PerformanceModule$Companion.class +0 -0
  1611. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/performance/PerformanceModule$coreListener$1.class +0 -0
  1612. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/performance/PerformanceModule.class +0 -0
  1613. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/performance/PerformanceSpec.class +0 -0
  1614. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/referrer/ScaleBunInstallReferrerModule$Companion.class +0 -0
  1615. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/referrer/ScaleBunInstallReferrerModule$getInstallReferrer$1.class +0 -0
  1616. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/referrer/ScaleBunInstallReferrerModule.class +0 -0
  1617. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/referrer/ScaleBunInstallReferrerSpec.class +0 -0
  1618. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/storage/ScaleBunStorageModule$Companion.class +0 -0
  1619. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/storage/ScaleBunStorageModule.class +0 -0
  1620. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/storage/ScaleBunStorageSpec.class +0 -0
  1621. package/android/build/tmp/kotlin-classes/debug/com/scalebun/storage/KvFileStore$Companion.class +0 -0
  1622. package/android/build/tmp/kotlin-classes/debug/com/scalebun/storage/KvFileStore.class +0 -0
@@ -1,8 +1,113 @@
1
- import { DevSettings, NativeModules, Platform } from 'react-native';
1
+ import { AppState, DeviceEventEmitter, DevSettings, NativeEventEmitter, NativeModules, Platform } from 'react-native';
2
2
  import { logger } from '../../core/logger/internalLogger';
3
3
  import { noThrow } from '../../core/lifecycle/crashSafe';
4
4
  import NativeScaleBunOta from '../../specs/NativeScaleBunOta';
5
5
  import { otaEventEmitter } from './OtaEventEmitter';
6
+ import { verifyBundleSignature } from './signature';
7
+ import { detectOtaEnvironment } from './environment';
8
+ import { retryWithBackoff, isRetryableNetworkError, HttpStatusError } from './retry';
9
+ import { createStorageBackend } from '../../storage/StorageBackend';
10
+
11
+ /**
12
+ * Identity marker injected into the bundle by `scalebun ota publish` before
13
+ * Hermes compilation. Lets the SDK prove that the bundle it *installed* is the
14
+ * bundle actually *running* — see `verifyRunningBundleIdentity`.
15
+ */
16
+ function readRunningBundleMarker() {
17
+ try {
18
+ const id = globalThis.__SCALEBUN_OTA_ID__;
19
+ return typeof id === 'string' && id.length > 0 ? id : null;
20
+ } catch {
21
+ return null;
22
+ }
23
+ }
24
+
25
+ /**
26
+ * Download progress: native → JS → (hook + backend live tracker).
27
+ *
28
+ * Both native downloaders emit throttled `ScaleBunOtaProgress` ticks — Android
29
+ * over `RCTDeviceEventEmitter`, iOS via the `ScaleBunOtaEvents` RCTEventEmitter.
30
+ * This subscribes for the duration of one download. Until this existed, the
31
+ * hook's `downloadProgress` and the backend's `/sdk/ota/progress` +
32
+ * live-downloads dashboard were declared on both ends and connected by
33
+ * NOTHING — the tracker had never received a single real row.
34
+ */
35
+
36
+ function subscribeNativeProgress(onTick) {
37
+ try {
38
+ if (Platform.OS === 'ios') {
39
+ const eventsModule = NativeModules.ScaleBunOtaEvents;
40
+ if (!eventsModule) return () => {};
41
+ const emitter = new NativeEventEmitter(eventsModule);
42
+ const sub = emitter.addListener('ScaleBunOtaProgress', onTick);
43
+ return () => sub.remove();
44
+ }
45
+ const sub = DeviceEventEmitter.addListener('ScaleBunOtaProgress', onTick);
46
+ return () => sub.remove();
47
+ } catch {
48
+ return () => {};
49
+ }
50
+ }
51
+
52
+ /** POST at most once per this interval; first and terminal ticks always go. */
53
+ const PROGRESS_POST_INTERVAL_MS = 1_000;
54
+
55
+ /**
56
+ * Deliver queued OTA lifecycle events to the backend's batch endpoint.
57
+ *
58
+ * ── Why the orchestrator owns this ──────────────────────────────────────────
59
+ *
60
+ * `otaEventEmitter.setFlushCallback` documents itself as "called by the SDK
61
+ * core to wire into the existing batch transport" — and nothing, anywhere,
62
+ * ever called it. `flush()` drained the queue into a null callback, so every
63
+ * OTA event the real SDK ever emitted was silently discarded in-process.
64
+ * All 129 ota_events rows in the dev database came from the test app's
65
+ * SIMULATOR; the funnel, adoption charts, and guard thresholds had never seen
66
+ * one byte of real-device telemetry.
67
+ *
68
+ * Owning delivery here (with the params sync() already has) instead of relying
69
+ * on bootstrap wiring means OTA telemetry works in every integration shape —
70
+ * full SDK, standalone orchestrator, CodePush shim — because the component
71
+ * that EMITS the events is the component that delivers them.
72
+ */
73
+ async function deliverOtaEvents(params) {
74
+ const events = otaEventEmitter.flush();
75
+ if (!events.length) return;
76
+ const items = events.map(e => ({
77
+ kind: 'ota_event',
78
+ type: e.type,
79
+ bundleId: e.bundleId,
80
+ installationId: params.installationId,
81
+ platform: Platform.OS === 'ios' ? 'ios' : 'android',
82
+ appVersion: params.appVersion,
83
+ durationMs: e.durationMs,
84
+ errorCode: e.error ?? e.reason,
85
+ patchUsed: e.patchUsed,
86
+ timestamp: e.timestamp
87
+ }));
88
+ try {
89
+ const base = params.apiUrl.replace(/\/+$/, '');
90
+ // The batch lane is session-scoped for replay items; OTA rows carry their
91
+ // own installationId and ignore the session, so a synthetic id is correct.
92
+ const res = await fetch(`${base}/ingestion/sessions/ota-${params.installationId}/batch`, {
93
+ method: 'POST',
94
+ headers: {
95
+ 'Content-Type': 'application/json',
96
+ 'x-scalebun-client-key': params.clientKey
97
+ },
98
+ body: JSON.stringify({
99
+ items
100
+ })
101
+ });
102
+ if (!res.ok) throw new Error(`HTTP ${res.status}`);
103
+ logger.debug(`[OTA] Delivered ${items.length} telemetry event(s)`);
104
+ } catch (err) {
105
+ // Failed delivery must not fail the update — but the events must not be
106
+ // lost either: requeue so the next sync retries them.
107
+ for (const e of events) otaEventEmitter.emit(e);
108
+ logger.debug(`[OTA] Telemetry delivery failed (will retry next sync): ${err?.message}`);
109
+ }
110
+ }
6
111
 
7
112
  /** Boot-guard configuration */
8
113
 
@@ -14,29 +119,225 @@ export class OtaOrchestrator {
14
119
  isRestartRequiredState = false;
15
120
  healthyTimer = null;
16
121
  bootGuardConfig = {};
122
+ environment = null;
123
+ /** One-time boot checks have run in this process (init is idempotent). */
124
+ initialized = false;
125
+ storageBackend = null;
17
126
 
18
- /**
19
- * Initialize the orchestrator. Checks for boot-guard recovery state.
127
+ /**
128
+ * Initialize the orchestrator. Checks for boot-guard recovery state.
129
+ *
130
+ * `signature` is optional: an app that has not adopted signing keeps working
131
+ * on SHA-256 integrity alone. Once a public key IS configured, a bundle that
132
+ * cannot be verified is refused rather than installed (OTA-03).
20
133
  */
21
134
  init(config) {
22
135
  noThrow(() => {
136
+ // Idempotent: init() runs its one-time checks ONCE per process. Found
137
+ // live — a host that calls init() again after installing an update (any
138
+ // retry/re-entry path does this) re-runs the identity verification in a
139
+ // process whose running JS legitimately predates the install, producing
140
+ // a false "INSTALL DID NOT TAKE EFFECT" alarm. The boot-time checks are
141
+ // only meaningful in a fresh process; a second init() must not repeat
142
+ // them. Config is still refreshed so late signature setup works.
143
+ if (this.initialized) {
144
+ this.bootGuardConfig = config ?? this.bootGuardConfig;
145
+ this.signatureConfig = config?.signature ?? this.signatureConfig;
146
+ return;
147
+ }
23
148
  if (!NativeScaleBunOta) {
24
149
  logger.warn('[OTA] NativeScaleBunOta module unavailable — OTA disabled');
25
150
  return;
26
151
  }
152
+
153
+ // ── RUNTIME GATE ─────────────────────────────────────────────────────
154
+ // Refuse to run on a runtime where the install would silently no-op.
155
+ // See environment.ts: bridgeless below RN 0.76.1 ignores
156
+ // getJSBundleFile() entirely, so a bundle installs, reports INSTALLED,
157
+ // and the app keeps running the APK asset. Staying loudly disabled is
158
+ // strictly better than reporting success that never happened — those
159
+ // false INSTALLED rows feed adoption metrics and guard thresholds.
160
+ this.environment = detectOtaEnvironment();
161
+ if (!this.environment.supported) {
162
+ logger.error(`[OTA] DISABLED — ${this.environment.blockReason}`);
163
+ this.enabled = false;
164
+ return;
165
+ }
166
+ if (this.environment.bridgeless && !this.environment.rnVersion) {
167
+ logger.warn('[OTA] Running bridgeless but the React Native version could not be determined. ' + 'If this app is below RN 0.76.1, OTA updates will install and never load.');
168
+ }
169
+ if (this.environment.requiresReactHostIntegration) {
170
+ // RN 0.82 removed ReactNativeHost, so the legacy
171
+ // `override fun getJSBundleFile()` integration does not exist there.
172
+ // We cannot see which form the host used — the identity check after
173
+ // restart is what proves it — but naming the right fix up front turns
174
+ // a confusing silent failure into a one-line correction.
175
+ logger.debug('[OTA] React Native >= 0.82 detected. The only valid Android integration is ' + 'getDefaultReactHost(..., jsBundleFilePath = ScaleBunOtaModule.getJSBundleFile(ctx)) — ' + 'ReactNativeHost and its getJSBundleFile() override no longer exist.');
176
+ }
177
+ this.initialized = true;
27
178
  this.enabled = true;
28
179
  this.bootGuardConfig = config ?? {};
29
- logger.debug('[OTA] Orchestrator initialized successfully');
180
+ this.signatureConfig = config?.signature;
181
+ logger.debug(`[OTA] Orchestrator initialized (RN ${this.environment.rnVersionString ?? 'unknown'}` + `${this.environment.bridgeless ? ', bridgeless' : ''}` + `${this.environment.hermes ? `, Hermes HBC v${this.environment.hermesBytecodeVersion ?? '?'}` : ''})`);
182
+
183
+ // Rehydrate which bundle we are running from the native slot state.
184
+ // Without this `currentBundle` stays null for the whole process after a
185
+ // restart, so every check reported no current bundle and the backend had
186
+ // no way to know what the device was actually on.
187
+ this.hydrateCurrentBundleFromSlots();
188
+
189
+ // Prove the bundle we installed is the bundle that loaded.
190
+ this.verifyRunningBundleIdentity();
30
191
 
31
192
  // Check if the boot guard fired on this launch (native reverted before JS loaded)
32
193
  this.checkBootGuardRecovery();
33
194
  });
34
195
  }
35
196
 
36
- /**
37
- * Sprint 5 (S5-NAT-1): Check if the native boot guard reverted us on this cold start.
38
- * If getSlotState() shows bootMarkerPresent=false but we have a 'previous' slot
39
- * and no 'current' OTA bundle, the native layer already reverted.
197
+ /**
198
+ * Read the active slot back into `currentBundle` so the next check reports
199
+ * what this device is genuinely running.
200
+ */
201
+ hydrateCurrentBundleFromSlots() {
202
+ if (!NativeScaleBunOta) return;
203
+ try {
204
+ const state = JSON.parse(NativeScaleBunOta.getSlotState());
205
+ const current = state?.current;
206
+ if (!current?.sha256) return;
207
+
208
+ // Keyed on sha256, NOT bundleId. The native `stageBundle` is never told
209
+ // the bundleId — it writes a meta.json containing only `sha256` and
210
+ // `installedAt` — so `current.bundleId` is always absent. Hydrating from
211
+ // it left `currentBundle` null on every launch, which meant the device
212
+ // never told the server what it was running and the server re-offered
213
+ // the same bundle forever. sha256 is the field that is actually there.
214
+ const record = this.readInstallRecord();
215
+ if (record && record.sha256 === current.sha256) {
216
+ this.currentBundle = {
217
+ id: record.bundleId,
218
+ version: record.version,
219
+ sha256: record.sha256
220
+ };
221
+ logger.debug(`[OTA] Running bundle v${record.version} (${record.bundleId})`);
222
+ return;
223
+ }
224
+
225
+ // An OTA bundle is installed but we have no record of installing it —
226
+ // a reinstall of the app, cleared storage, or a bundle staged by an
227
+ // older SDK. Report the hash so the server can still recognise it.
228
+ this.currentBundle = {
229
+ sha256: current.sha256
230
+ };
231
+ logger.debug(`[OTA] Running an OTA bundle (sha ${String(current.sha256).slice(0, 12)}…) with no local install record.`);
232
+ } catch {
233
+ // Slot state unreadable — treat as factory bundle.
234
+ }
235
+ }
236
+
237
+ /**
238
+ * Compare the bundle the slot manager believes is active against the identity
239
+ * marker compiled into the bundle that actually loaded.
240
+ *
241
+ * A mismatch means the install path reported success while the runtime kept
242
+ * executing different code — the silent no-op this whole guard exists for.
243
+ * It is reported as APPLY_FAILED, because that is what happened, regardless
244
+ * of what the previous session's telemetry claimed.
245
+ *
246
+ * The expectation recorded at install time is what makes this conclusive.
247
+ * Without it, a missing marker is ambiguous — it could be a bundle published
248
+ * before markers existed, or an install that never took effect. Having
249
+ * written down "this bundle definitely carries marker X" before restarting,
250
+ * a missing marker afterwards can only mean the second.
251
+ */
252
+ verifyRunningBundleIdentity() {
253
+ if (!this.currentBundle) return;
254
+ const running = readRunningBundleMarker();
255
+ const expected = this.readInstallExpectation();
256
+
257
+ // Stale record from an earlier install — the slot has moved on since.
258
+ if (expected && expected.bundleId !== this.currentBundle.id) {
259
+ this.clearInstallExpectation();
260
+ return;
261
+ }
262
+ if (expected) {
263
+ if (running === expected.identityToken) {
264
+ // Proven: the bundle we installed is the bundle executing.
265
+ logger.debug('[OTA] Install verified — running bundle matches what was installed.');
266
+ this.clearInstallExpectation();
267
+ return;
268
+ }
269
+ logger.error(`[OTA] INSTALL DID NOT TAKE EFFECT — bundle ${this.currentBundle.id} was installed and ` + `carries a known identity marker, but the running bundle reports ` + `${running ?? 'no marker at all'}. The app is executing different code than the slot ` + 'manager believes. Check that the host app resolves the OTA bundle path at launch ' + '(see the ScaleBunOta integration for your React Native version).');
270
+ otaEventEmitter.emitSimple('APPLY_FAILED', this.currentBundle.id, {
271
+ error: `install_not_effective — expected ${expected.identityToken}, running ${running ?? 'none'}`
272
+ });
273
+ // Deliberately NOT cleared: the condition is still true on the next boot
274
+ // and should keep reporting until the integration is fixed. Clearing here
275
+ // would make a permanently broken install look like a one-off.
276
+ return;
277
+ }
278
+ if (running && running !== this.currentBundle.id) {
279
+ // No recorded expectation (installed by an older SDK), but the running
280
+ // marker disagrees with the active slot outright. Still conclusive.
281
+ logger.error(`[OTA] BUNDLE MISMATCH — slot says ${this.currentBundle.id} is active but the ` + `running bundle identifies as ${running}.`);
282
+ otaEventEmitter.emitSimple('APPLY_FAILED', this.currentBundle.id, {
283
+ error: `bundle_identity_mismatch — running ${running}`
284
+ });
285
+ }
286
+ }
287
+
288
+ // ── Install expectation ────────────────────────────────────────────────────
289
+ // Written just before the restart that activates a bundle, read on the next
290
+ // boot. Synchronous, disk-backed, and the same store used for the device id —
291
+ // it has to survive a process death that happens moments after the write.
292
+
293
+ static INSTALL_EXPECTATION_KEY = 'scalebun.ota.pendingInstall';
294
+ recordInstallExpectation(bundle) {
295
+ try {
296
+ this.storage().set(OtaOrchestrator.INSTALL_EXPECTATION_KEY, JSON.stringify({
297
+ bundleId: bundle.id,
298
+ version: bundle.version,
299
+ // The join key back to the native slot, which records sha256 and
300
+ // nothing else identifying.
301
+ sha256: bundle.sha256,
302
+ identityToken: bundle.identityToken ?? null
303
+ }));
304
+ } catch {
305
+ // Verification is a safety net, never a precondition for installing.
306
+ }
307
+ }
308
+ readInstallRecord() {
309
+ try {
310
+ const raw = this.storage().get(OtaOrchestrator.INSTALL_EXPECTATION_KEY);
311
+ if (!raw) return null;
312
+ const parsed = JSON.parse(raw);
313
+ return typeof parsed?.bundleId === 'string' && typeof parsed?.sha256 === 'string' ? parsed : null;
314
+ } catch {
315
+ return null;
316
+ }
317
+ }
318
+ readInstallExpectation() {
319
+ const record = this.readInstallRecord();
320
+ return record && record.identityToken ? {
321
+ bundleId: record.bundleId,
322
+ identityToken: record.identityToken
323
+ } : null;
324
+ }
325
+ clearInstallExpectation() {
326
+ try {
327
+ this.storage().set(OtaOrchestrator.INSTALL_EXPECTATION_KEY, '');
328
+ } catch {
329
+ /* non-fatal */
330
+ }
331
+ }
332
+ storage() {
333
+ if (!this.storageBackend) this.storageBackend = createStorageBackend();
334
+ return this.storageBackend;
335
+ }
336
+
337
+ /**
338
+ * Sprint 5 (S5-NAT-1): Check if the native boot guard reverted us on this cold start.
339
+ * If getSlotState() shows bootMarkerPresent=false but we have a 'previous' slot
340
+ * and no 'current' OTA bundle, the native layer already reverted.
40
341
  */
41
342
  checkBootGuardRecovery() {
42
343
  if (!NativeScaleBunOta) return;
@@ -60,31 +361,57 @@ export class OtaOrchestrator {
60
361
  return this.isRestartRequiredState;
61
362
  }
62
363
 
63
- /**
64
- * Perform an OTA check against the backend endpoint.
364
+ /**
365
+ * Perform an OTA check against the backend endpoint.
65
366
  */
66
367
  async checkForUpdate(requestParams) {
67
368
  try {
369
+ const env = this.environment ?? detectOtaEnvironment();
370
+
371
+ // C1: send the channel and targeting context. `channelName` was already an
372
+ // accepted parameter here and was then dropped on the floor — the payload
373
+ // never carried it — so every device resolved to `default` no matter what
374
+ // the host app asked for. Undefined fields are omitted by JSON.stringify,
375
+ // so an app that supplies nothing behaves exactly as before.
68
376
  const payload = {
69
377
  appVersion: requestParams.appVersion,
70
378
  platform: Platform.OS === 'ios' ? 'ios' : 'android',
71
379
  installationId: requestParams.installationId,
72
380
  currentBundleId: this.currentBundle?.id,
73
- currentBundleHash: this.currentBundle?.sha256
381
+ currentBundleHash: this.currentBundle?.sha256,
382
+ channelName: requestParams.channelName,
383
+ country: requestParams.country,
384
+ attributes: requestParams.attributes,
385
+ segmentIds: requestParams.segmentIds,
386
+ lifecycleStage: requestParams.lifecycleStage,
387
+ // Runtime compatibility context. Without these the backend cannot tell
388
+ // whether a bundle is safe for this binary: appVersion is a marketing
389
+ // string, while the RN version and the Hermes bytecode format are the
390
+ // actual runtime contract. A bundle compiled against a different HBC
391
+ // version either fails to load or crashes later on a missing path.
392
+ rnVersion: env.rnVersionString ?? undefined,
393
+ hermes: env.hermes,
394
+ hermesBytecodeVersion: env.hermesBytecodeVersion ?? undefined,
395
+ bridgeless: env.bridgeless
74
396
  };
75
397
  const url = `${requestParams.apiUrl.replace(/\/+$/, '')}/sdk/ota/check`;
76
- const res = await fetch(url, {
77
- method: 'POST',
78
- headers: {
79
- 'Content-Type': 'application/json',
80
- 'x-scalebun-client-key': requestParams.clientKey
81
- },
82
- body: JSON.stringify(payload)
398
+ const data = await retryWithBackoff(async () => {
399
+ const res = await fetch(url, {
400
+ method: 'POST',
401
+ headers: {
402
+ 'Content-Type': 'application/json',
403
+ 'x-scalebun-client-key': requestParams.clientKey
404
+ },
405
+ body: JSON.stringify(payload)
406
+ });
407
+ if (!res.ok) {
408
+ throw new HttpStatusError(`OTA check failed with status ${res.status}`, res.status);
409
+ }
410
+ return await res.json();
411
+ }, {
412
+ label: 'check',
413
+ isRetryable: isRetryableNetworkError
83
414
  });
84
- if (!res.ok) {
85
- throw new Error(`OTA check failed with status ${res.status}`);
86
- }
87
- const data = await res.json();
88
415
  return data;
89
416
  } catch (err) {
90
417
  logger.error(`[OTA] checkForUpdate failed: ${err.message}`);
@@ -94,9 +421,9 @@ export class OtaOrchestrator {
94
421
  }
95
422
  }
96
423
 
97
- /**
98
- * Downloads, stage, and apply an update in one step.
99
- * Sprint 5: emits lifecycle events + starts boot-guard heartbeat.
424
+ /**
425
+ * Downloads, stage, and apply an update in one step.
426
+ * Sprint 5: emits lifecycle events + starts boot-guard heartbeat.
100
427
  */
101
428
  async sync(params) {
102
429
  try {
@@ -145,12 +472,75 @@ export class OtaOrchestrator {
145
472
  const bundle = checkRes.bundle;
146
473
  let patchUsed = false;
147
474
 
475
+ // ── VERIFY AUTHENTICITY (OTA-03) ─────────────────────────────────────
476
+ // Before anything touches the disk. SHA-256 proves the bytes arrived
477
+ // intact; only the signature proves they came from you. Checking after
478
+ // staging would mean writing unverified code to the slot directory first.
479
+ const signatureOutcome = await verifyBundleSignature(bundle.sha256, bundle.signature, this.signatureConfig);
480
+ if (!signatureOutcome.ok) {
481
+ otaEventEmitter.emitSimple('APPLY_FAILED', bundle.id, {
482
+ error: `Signature check failed: ${signatureOutcome.reason}`,
483
+ version: bundle.version
484
+ });
485
+ return {
486
+ status: 'ERROR',
487
+ error: `Bundle signature check failed (${signatureOutcome.reason})`,
488
+ bundle
489
+ };
490
+ }
491
+
148
492
  // ── DOWNLOAD ─────────────────────────────────────────────────────────
149
493
  otaEventEmitter.emitSimple('DOWNLOAD_STARTED', bundle.id, {
150
494
  version: bundle.version
151
495
  });
152
496
  const downloadStart = Date.now();
153
497
  logger.debug(`[OTA] Downloading update v${bundle.version}…`);
498
+
499
+ // Live progress: native tick → DOWNLOAD_PROGRESS (feeds useOtaUpdate) →
500
+ // throttled POST to the live tracker. `bundle.size` is the authoritative
501
+ // total — the server just told us — so an unknown native total (-1 on
502
+ // chunked/gzip bodies) still yields a truthful percentage.
503
+ let lastPostAt = 0;
504
+ const postProgress = (bytesRead, status) => {
505
+ const total = bundle.size > 0 ? bundle.size : Math.max(bytesRead, 1);
506
+ const percent = Math.min(100, Math.round(bytesRead / total * 100));
507
+ const elapsedS = (Date.now() - downloadStart) / 1000;
508
+ const payload = {
509
+ installationId: params.installationId,
510
+ bundleId: bundle.id,
511
+ bytesRead,
512
+ totalBytes: total,
513
+ progressPercent: percent,
514
+ speedKbps: elapsedS > 0 ? Math.round(bytesRead / 1024 / elapsedS) : 0,
515
+ status
516
+ };
517
+ // Fire-and-forget: progress display must never delay or fail the
518
+ // download it describes.
519
+ fetch(`${params.apiUrl.replace(/\/+$/, '')}/sdk/ota/progress`, {
520
+ method: 'POST',
521
+ headers: {
522
+ 'Content-Type': 'application/json',
523
+ 'x-scalebun-client-key': params.clientKey
524
+ },
525
+ body: JSON.stringify(payload)
526
+ }).catch(() => {});
527
+ };
528
+ const unsubscribeProgress = subscribeNativeProgress(({
529
+ bytesRead
530
+ }) => {
531
+ const total = bundle.size > 0 ? bundle.size : bytesRead;
532
+ otaEventEmitter.emit({
533
+ type: 'DOWNLOAD_PROGRESS',
534
+ bundleId: bundle.id,
535
+ timestamp: Date.now(),
536
+ progress: Math.min(100, Math.round(bytesRead / Math.max(total, 1) * 100))
537
+ });
538
+ const now = Date.now();
539
+ if (now - lastPostAt >= PROGRESS_POST_INTERVAL_MS) {
540
+ lastPostAt = now;
541
+ postProgress(bytesRead, 'DOWNLOADING');
542
+ }
543
+ });
154
544
  let staged = false;
155
545
 
156
546
  // Sprint 7: Try patch first if offered, fall back to full bundle
@@ -170,12 +560,34 @@ export class OtaOrchestrator {
170
560
  }
171
561
  }
172
562
 
173
- // Full-bundle fallback (or primary path when no patch is available)
563
+ // Full-bundle fallback (or primary path when no patch is available).
564
+ // Retried with backoff: on a mobile network a transient drop mid-download
565
+ // is the common case, and previously one failure meant waiting for the
566
+ // next cold start — often hours away, sometimes never.
174
567
  if (!staged) {
175
- staged = await NativeScaleBunOta.stageBundle(bundle.url, bundle.sha256);
568
+ try {
569
+ staged = await retryWithBackoff(async () => {
570
+ const ok = await NativeScaleBunOta.stageBundle(bundle.url, bundle.sha256);
571
+ if (!ok) {
572
+ // Native returns a bare boolean, so a hash mismatch and a
573
+ // dropped connection are indistinguishable here. Retrying a
574
+ // genuine mismatch a couple of times is cheap; not retrying a
575
+ // dropped connection costs the whole update.
576
+ throw new Error('stageBundle returned false');
577
+ }
578
+ return ok;
579
+ }, {
580
+ label: `download v${bundle.version}`,
581
+ attempts: 3
582
+ });
583
+ } catch {
584
+ staged = false;
585
+ }
176
586
  }
587
+ unsubscribeProgress();
177
588
  if (!staged) {
178
- logger.error('[OTA] Staging bundle failed');
589
+ postProgress(0, 'FAILED');
590
+ logger.error('[OTA] Staging bundle failed after retries');
179
591
  otaEventEmitter.emitSimple('APPLY_FAILED', bundle.id, {
180
592
  error: 'Staging failed — SHA-256 mismatch or download error',
181
593
  version: bundle.version
@@ -186,6 +598,7 @@ export class OtaOrchestrator {
186
598
  bundle
187
599
  };
188
600
  }
601
+ postProgress(bundle.size, 'COMPLETED');
189
602
  const downloadDuration = Date.now() - downloadStart;
190
603
  otaEventEmitter.emitSimple('DOWNLOAD_COMPLETE', bundle.id, {
191
604
  version: bundle.version,
@@ -210,15 +623,36 @@ export class OtaOrchestrator {
210
623
  }
211
624
  this.currentBundle = bundle;
212
625
  this.isRestartRequiredState = true;
626
+
627
+ // Written BEFORE the restart, so the next boot can prove whether this
628
+ // install actually took effect. Only recorded when the server told us the
629
+ // bundle carries a marker — otherwise there is nothing to compare against
630
+ // and a recorded expectation would produce a false alarm.
631
+ // Recorded unconditionally, not only when a marker is present: this is
632
+ // also the record that tells the next launch WHICH bundle the slot's
633
+ // sha256 belongs to, without which the device cannot report what it is
634
+ // running. Identity verification is the second job of this record, and
635
+ // it is skipped when there is no marker to compare.
636
+ this.recordInstallExpectation(bundle);
213
637
  otaEventEmitter.emitSimple('INSTALLED', bundle.id, {
214
638
  version: bundle.version
215
639
  });
216
640
  logger.debug(`[OTA] Update v${bundle.version} installed successfully!`);
217
641
 
218
- // Flush telemetry events before restart
219
- otaEventEmitter.flush();
220
- if (params.autoRestart) {
642
+ // Deliver telemetry BEFORE a restart tears the JS runtime down —
643
+ // an INSTALLED event queued but not sent would vanish with the process.
644
+ await deliverOtaEvents(params);
645
+
646
+ // Activation, per the release's installMode. `params.autoRestart` is the
647
+ // host app's own override and continues to force a restart regardless.
648
+ // These behaviours were documented (docs, CLI help, the CodePush shim's
649
+ // enum) for a year while nothing implemented them — every release
650
+ // behaved as ON_NEXT_RESTART no matter what was published.
651
+ const installMode = bundle.installMode ?? 'ON_NEXT_RESTART';
652
+ if (params.autoRestart || installMode === 'IMMEDIATE') {
221
653
  this.restart();
654
+ } else if (installMode === 'ON_NEXT_RESUME') {
655
+ this.armResumeRestart();
222
656
  }
223
657
  return {
224
658
  status: 'UPDATE_INSTALLED',
@@ -231,16 +665,23 @@ export class OtaOrchestrator {
231
665
  status: 'ERROR',
232
666
  error: err.message ?? 'Unexpected sync failure'
233
667
  };
668
+ } finally {
669
+ // Every other exit (UP_TO_DATE, ROLLBACK, staging failure, throw)
670
+ // delivers here. This also carries events queued at INIT — boot-guard
671
+ // AUTO_ROLLBACKs and identity-check APPLY_FAILEDs fire before any
672
+ // apiUrl/clientKey exist, so they wait in the queue for the first sync.
673
+ // Fire-and-forget: delivery is never allowed to delay a result.
674
+ void deliverOtaEvents(params);
234
675
  }
235
676
  }
236
677
 
237
- /**
238
- * Sprint 5 (S5-NAT-1): Boot-guard heartbeat.
239
- *
240
- * After booting from an OTA bundle, start a timer. If the app survives
241
- * `healthyAfterMs` without crashing, call `markHealthy()` to clear the
242
- * native boot-guard marker. If JS crashes before the timer fires, the
243
- * marker stays set and native code reverts on next cold start.
678
+ /**
679
+ * Sprint 5 (S5-NAT-1): Boot-guard heartbeat.
680
+ *
681
+ * After booting from an OTA bundle, start a timer. If the app survives
682
+ * `healthyAfterMs` without crashing, call `markHealthy()` to clear the
683
+ * native boot-guard marker. If JS crashes before the timer fires, the
684
+ * marker stays set and native code reverts on next cold start.
244
685
  */
245
686
  startBootGuardHeartbeat() {
246
687
  if (!NativeScaleBunOta) return;
@@ -273,13 +714,67 @@ export class OtaOrchestrator {
273
714
  }
274
715
  }
275
716
 
276
- /**
277
- * Reload the JS app bundle to apply the new update immediately.
717
+ /** One-shot guard so repeated syncs cannot stack resume listeners. */
718
+ resumeRestartArmed = false;
719
+
720
+ /**
721
+ * ON_NEXT_RESUME: restart the JS runtime the next time the app returns to
722
+ * the foreground after genuinely being in the background.
723
+ *
724
+ * The staged bundle is already applied at this point — the restart is purely
725
+ * about WHEN the user experiences the reload. Two deliberate choices:
726
+ *
727
+ * - Armed only after a real background→active transition, never on the
728
+ * initial 'active' state, so installing while the user is mid-session
729
+ * does not instantly yank the screen out from under them.
730
+ * - One-shot. The listener removes itself after firing (or after the
731
+ * restart makes the whole question moot).
732
+ */
733
+ armResumeRestart() {
734
+ if (this.resumeRestartArmed) return;
735
+ this.resumeRestartArmed = true;
736
+ let wasBackground = false;
737
+ try {
738
+ const sub = AppState.addEventListener('change', state => {
739
+ if (state === 'background') {
740
+ wasBackground = true;
741
+ return;
742
+ }
743
+ if (state === 'active' && wasBackground) {
744
+ try {
745
+ sub.remove();
746
+ } catch {
747
+ /* the restart below makes cleanup moot */
748
+ }
749
+ this.resumeRestartArmed = false;
750
+ logger.info('[OTA] App resumed — activating the staged update now');
751
+ this.restart();
752
+ }
753
+ });
754
+ logger.debug('[OTA] Update staged — will activate on next resume (ON_NEXT_RESUME)');
755
+ } catch {
756
+ // AppState unavailable (tests, exotic hosts): the update still activates
757
+ // on the next cold start, which is the documented fallback behaviour.
758
+ this.resumeRestartArmed = false;
759
+ }
760
+ }
761
+
762
+ /**
763
+ * Reload the JS app bundle to apply the new update immediately.
764
+ *
765
+ * Order matters: the native `restartApp()` is the only path that works in
766
+ * RELEASE builds. `DevSettings.reload()` looks callable there too — it
767
+ * logged, returned, and reloaded nothing when tested live on a release APK,
768
+ * which made every "restart" this SDK ever promised a silent no-op in
769
+ * production. DevSettings remains as the dev-build fallback for hosts that
770
+ * have not rebuilt native yet.
278
771
  */
279
772
  restart() {
280
773
  noThrow(() => {
281
774
  logger.info('[OTA] Triggering app restart…');
282
- if (DevSettings && typeof DevSettings.reload === 'function') {
775
+ if (NativeScaleBunOta && typeof NativeScaleBunOta.restartApp === 'function') {
776
+ NativeScaleBunOta.restartApp();
777
+ } else if (DevSettings && typeof DevSettings.reload === 'function') {
283
778
  DevSettings.reload();
284
779
  } else if (NativeModules.RNReload) {
285
780
  NativeModules.RNReload.reload();