@scalebun/react-native 1.0.2 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1694) 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 +155 -41
  7. package/android/src/main/java/com/scalebun/core/crash/NativeCrashHandler.kt +93 -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 +982 -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 +170 -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 +164 -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 +69 -63
  78. package/ios/Crash/ScaleBunCrashHandler.swift +80 -67
  79. package/ios/Crash/ScaleBunCrashModule.swift +83 -69
  80. package/ios/Crash/ScaleBunCrashSignalBridge.h +49 -18
  81. package/ios/Crash/ScaleBunCrashSignalBridge.m +296 -131
  82. package/ios/Crash/ScaleBunCrashSignalStress.c +137 -0
  83. package/ios/Crash/ScaleBunCrashStorage.swift +121 -46
  84. package/ios/Engage/ScaleBunEngageBridge.m +32 -32
  85. package/ios/Engage/ScaleBunEngageModule.swift +250 -250
  86. package/ios/Engage/ScaleBunPushNotificationCenter.swift +185 -185
  87. package/ios/Ota/BundleDownloader.swift +182 -0
  88. package/ios/Ota/OtaSlotManager.swift +290 -264
  89. package/ios/Ota/ScaleBunOtaBridge.mm +77 -68
  90. package/ios/Ota/ScaleBunOtaEventsModule.swift +61 -0
  91. package/ios/Ota/ScaleBunOtaModule.swift +176 -123
  92. package/ios/Outbox/NativeOutbox.swift +598 -598
  93. package/ios/Outbox/OutboxUploader.swift +431 -431
  94. package/ios/Performance/ScaleBunPerformanceBridge.m +32 -32
  95. package/ios/Performance/ScaleBunPerformanceModule.swift +290 -290
  96. package/ios/PrivacyInfo.xcprivacy +97 -97
  97. package/ios/Profiler/ScaleBunProfilerBridge.m +55 -55
  98. package/ios/Profiler/ScaleBunProfilerModule.swift +972 -972
  99. package/ios/ReplaySdk-Bridging-Header.h +2 -2
  100. package/ios/ReplaySdk.swift +608 -608
  101. package/ios/ReplaySdkBridge.m +94 -94
  102. package/ios/Session/SessionManager.swift +203 -203
  103. package/ios/Skan/ScaleBunSkanBridge.m +14 -14
  104. package/ios/Skan/ScaleBunSkanModule.swift +61 -61
  105. package/ios/Storage/ReplayStorage.swift +61 -61
  106. package/ios/Storage/ScaleBunKvFileStore.swift +125 -125
  107. package/ios/Storage/ScaleBunStorageBridge.mm +72 -72
  108. package/ios/Storage/ScaleBunStorageModule.swift +57 -57
  109. package/ios/Transport/ReplayTransport.swift +70 -70
  110. package/ios/VoiceRecorder.swift +145 -145
  111. package/lib/commonjs/analytics/EventTracker.js +64 -36
  112. package/lib/commonjs/analytics/EventTracker.js.map +1 -1
  113. package/lib/commonjs/analytics/automaticEvents.js +7 -7
  114. package/lib/commonjs/analytics/automaticEvents.js.map +1 -1
  115. package/lib/commonjs/analytics/batching.js +24 -24
  116. package/lib/commonjs/analytics/batching.js.map +1 -1
  117. package/lib/commonjs/analytics/eventLane.js +13 -13
  118. package/lib/commonjs/analytics/eventLane.js.map +1 -1
  119. package/lib/commonjs/bootstrap/FeatureRegistry.js +17 -17
  120. package/lib/commonjs/bootstrap/FeatureRegistry.js.map +1 -1
  121. package/lib/commonjs/bootstrap/SDKBootstrapper.js +83 -56
  122. package/lib/commonjs/bootstrap/SDKBootstrapper.js.map +1 -1
  123. package/lib/commonjs/bucketing/fnv1a32.js +10 -10
  124. package/lib/commonjs/bucketing/fnv1a32.js.map +1 -1
  125. package/lib/commonjs/compat/codepush.js +6 -6
  126. package/lib/commonjs/compat/codepush.js.map +1 -1
  127. package/lib/commonjs/config/ConfigManager.js +20 -20
  128. package/lib/commonjs/config/ConfigManager.js.map +1 -1
  129. package/lib/commonjs/config/configTypes.js.map +1 -1
  130. package/lib/commonjs/core/architecture.js +23 -23
  131. package/lib/commonjs/core/architecture.js.map +1 -1
  132. package/lib/commonjs/core/clock/now.js +2 -2
  133. package/lib/commonjs/core/clock/now.js.map +1 -1
  134. package/lib/commonjs/core/config/defaults.js.map +1 -1
  135. package/lib/commonjs/core/config/schema.js +112 -104
  136. package/lib/commonjs/core/config/schema.js.map +1 -1
  137. package/lib/commonjs/core/constants/endpoints.js +7 -7
  138. package/lib/commonjs/core/constants/endpoints.js.map +1 -1
  139. package/lib/commonjs/core/constants/timings.js +5 -5
  140. package/lib/commonjs/core/constants/timings.js.map +1 -1
  141. package/lib/commonjs/core/constants/version.js +4 -4
  142. package/lib/commonjs/core/constants/version.js.map +1 -1
  143. package/lib/commonjs/core/context/app.js.map +1 -1
  144. package/lib/commonjs/core/context/device.js +130 -0
  145. package/lib/commonjs/core/context/device.js.map +1 -1
  146. package/lib/commonjs/core/context/session.js.map +1 -1
  147. package/lib/commonjs/core/context/user.js.map +1 -1
  148. package/lib/commonjs/core/contracts/IFeature.js.map +1 -1
  149. package/lib/commonjs/core/di/container.js.map +1 -1
  150. package/lib/commonjs/core/encoding/base64.js +9 -9
  151. package/lib/commonjs/core/encoding/base64.js.map +1 -1
  152. package/lib/commonjs/core/id/deviceId.js +4 -4
  153. package/lib/commonjs/core/id/deviceId.js.map +1 -1
  154. package/lib/commonjs/core/id/sessionId.js.map +1 -1
  155. package/lib/commonjs/core/lifecycle/appLifecycle.js.map +1 -1
  156. package/lib/commonjs/core/lifecycle/crashSafe.js +3 -3
  157. package/lib/commonjs/core/lifecycle/crashSafe.js.map +1 -1
  158. package/lib/commonjs/core/logger/errorClassification.js +30 -30
  159. package/lib/commonjs/core/logger/errorClassification.js.map +1 -1
  160. package/lib/commonjs/core/logger/internalLogger.js.map +1 -1
  161. package/lib/commonjs/core/logger/levels.js.map +1 -1
  162. package/lib/commonjs/crypto/hmacSha256.js +6 -6
  163. package/lib/commonjs/crypto/hmacSha256.js.map +1 -1
  164. package/lib/commonjs/debug/bootstrap.js +26 -26
  165. package/lib/commonjs/debug/bootstrap.js.map +1 -1
  166. package/lib/commonjs/debug/commands.js +10 -10
  167. package/lib/commonjs/debug/commands.js.map +1 -1
  168. package/lib/commonjs/debug/configBuilder.js +6 -6
  169. package/lib/commonjs/debug/configBuilder.js.map +1 -1
  170. package/lib/commonjs/debug/exportBridge.js +17 -17
  171. package/lib/commonjs/debug/exportBridge.js.map +1 -1
  172. package/lib/commonjs/debug/hostResolver.js +10 -10
  173. package/lib/commonjs/debug/hostResolver.js.map +1 -1
  174. package/lib/commonjs/debug/index.js.map +1 -1
  175. package/lib/commonjs/debug/metrics.js.map +1 -1
  176. package/lib/commonjs/debug/perf.js +11 -11
  177. package/lib/commonjs/debug/perf.js.map +1 -1
  178. package/lib/commonjs/debug/perfWiring.js +10 -10
  179. package/lib/commonjs/debug/perfWiring.js.map +1 -1
  180. package/lib/commonjs/debug/protocol.js.map +1 -1
  181. package/lib/commonjs/debug/redaction.js +26 -26
  182. package/lib/commonjs/debug/redaction.js.map +1 -1
  183. package/lib/commonjs/debug/replayWiring.js +13 -12
  184. package/lib/commonjs/debug/replayWiring.js.map +1 -1
  185. package/lib/commonjs/debug/screenTracking.js +7 -7
  186. package/lib/commonjs/debug/screenTracking.js.map +1 -1
  187. package/lib/commonjs/debug/sessionWiring.js +8 -8
  188. package/lib/commonjs/debug/sessionWiring.js.map +1 -1
  189. package/lib/commonjs/debug/stream.js +26 -26
  190. package/lib/commonjs/debug/stream.js.map +1 -1
  191. package/lib/commonjs/debug/transport.js +24 -24
  192. package/lib/commonjs/debug/transport.js.map +1 -1
  193. package/lib/commonjs/features/bugreport/BugReportFeature.js +112 -0
  194. package/lib/commonjs/features/bugreport/BugReportFeature.js.map +1 -0
  195. package/lib/commonjs/features/bugreport/buildPayload.js +97 -0
  196. package/lib/commonjs/features/bugreport/buildPayload.js.map +1 -0
  197. package/lib/commonjs/features/bugreport/index.js.map +1 -1
  198. package/lib/commonjs/features/crash/CrashFeature.js +27 -9
  199. package/lib/commonjs/features/crash/CrashFeature.js.map +1 -1
  200. package/lib/commonjs/features/crash/CrashReporter.js +53 -29
  201. package/lib/commonjs/features/crash/CrashReporter.js.map +1 -1
  202. package/lib/commonjs/features/crash/NativeCrashFeature.js +7 -7
  203. package/lib/commonjs/features/crash/NativeCrashFeature.js.map +1 -1
  204. package/lib/commonjs/features/crash/capture.js +27 -9
  205. package/lib/commonjs/features/crash/capture.js.map +1 -1
  206. package/lib/commonjs/features/crash/globalHandler.js +11 -11
  207. package/lib/commonjs/features/crash/globalHandler.js.map +1 -1
  208. package/lib/commonjs/features/crash/index.js.map +1 -1
  209. package/lib/commonjs/features/crash/nativeCrashBridge.js +179 -44
  210. package/lib/commonjs/features/crash/nativeCrashBridge.js.map +1 -1
  211. package/lib/commonjs/features/crash/rejectionHandler.js +123 -0
  212. package/lib/commonjs/features/crash/rejectionHandler.js.map +1 -0
  213. package/lib/commonjs/features/engage/EngageAnchor.js +3 -3
  214. package/lib/commonjs/features/engage/EngageAnchor.js.map +1 -1
  215. package/lib/commonjs/features/engage/EngageArchetypeRenderers.js +19 -19
  216. package/lib/commonjs/features/engage/EngageArchetypeRenderers.js.map +1 -1
  217. package/lib/commonjs/features/engage/EngageInAppView.js +35 -35
  218. package/lib/commonjs/features/engage/EngageInAppView.js.map +1 -1
  219. package/lib/commonjs/features/engage/EngageInlinePlacement.js +7 -7
  220. package/lib/commonjs/features/engage/EngageInlinePlacement.js.map +1 -1
  221. package/lib/commonjs/features/engage/EngagePromptProvider.js +124 -88
  222. package/lib/commonjs/features/engage/EngagePromptProvider.js.map +1 -1
  223. package/lib/commonjs/features/engage/EngagePromptView.js +65 -32
  224. package/lib/commonjs/features/engage/EngagePromptView.js.map +1 -1
  225. package/lib/commonjs/features/engage/EngageTransport.js +79 -79
  226. package/lib/commonjs/features/engage/EngageTransport.js.map +1 -1
  227. package/lib/commonjs/features/engage/EngageVariantContent.js +10 -10
  228. package/lib/commonjs/features/engage/EngageVariantContent.js.map +1 -1
  229. package/lib/commonjs/features/engage/__test-support__/reactNativeStub.js +7 -7
  230. package/lib/commonjs/features/engage/__test-support__/reactNativeStub.js.map +1 -1
  231. package/lib/commonjs/features/engage/attachmentCapture.js +12 -12
  232. package/lib/commonjs/features/engage/attachmentCapture.js.map +1 -1
  233. package/lib/commonjs/features/engage/captureVoiceAttachment.js +20 -20
  234. package/lib/commonjs/features/engage/captureVoiceAttachment.js.map +1 -1
  235. package/lib/commonjs/features/engage/engageCoachmarkTour.js +4 -4
  236. package/lib/commonjs/features/engage/engageCoachmarkTour.js.map +1 -1
  237. package/lib/commonjs/features/engage/engageGameLogic.js.map +1 -1
  238. package/lib/commonjs/features/engage/engageMediaSizing.js +15 -15
  239. package/lib/commonjs/features/engage/engageMediaSizing.js.map +1 -1
  240. package/lib/commonjs/features/engage/engageMultiStepSheet.js +6 -6
  241. package/lib/commonjs/features/engage/engageMultiStepSheet.js.map +1 -1
  242. package/lib/commonjs/features/engage/engageOutcome.js +6 -6
  243. package/lib/commonjs/features/engage/engageOutcome.js.map +1 -1
  244. package/lib/commonjs/features/engage/engagePushTokenBridge.js +20 -20
  245. package/lib/commonjs/features/engage/engagePushTokenBridge.js.map +1 -1
  246. package/lib/commonjs/features/engage/engageShakeBridge.js +16 -16
  247. package/lib/commonjs/features/engage/engageShakeBridge.js.map +1 -1
  248. package/lib/commonjs/features/engage/engageSignals.js.map +1 -1
  249. package/lib/commonjs/features/engage/engageStoreReviewBridge.js +19 -19
  250. package/lib/commonjs/features/engage/engageStoreReviewBridge.js.map +1 -1
  251. package/lib/commonjs/features/engage/engageTestSeenStore.js +29 -29
  252. package/lib/commonjs/features/engage/engageTestSeenStore.js.map +1 -1
  253. package/lib/commonjs/features/engage/engageThrottle.js +117 -86
  254. package/lib/commonjs/features/engage/engageThrottle.js.map +1 -1
  255. package/lib/commonjs/features/engage/engageTriggerEngine.js +17 -7
  256. package/lib/commonjs/features/engage/engageTriggerEngine.js.map +1 -1
  257. package/lib/commonjs/features/engage/engageTypes.js +33 -33
  258. package/lib/commonjs/features/engage/engageTypes.js.map +1 -1
  259. package/lib/commonjs/features/engage/engageVariantResolver.js +13 -13
  260. package/lib/commonjs/features/engage/engageVariantResolver.js.map +1 -1
  261. package/lib/commonjs/features/engage/engageWindowInsets.js +10 -10
  262. package/lib/commonjs/features/engage/engageWindowInsets.js.map +1 -1
  263. package/lib/commonjs/features/engage/gestureTriggerDetector.js.map +1 -1
  264. package/lib/commonjs/features/engage/transcription/TranscriptionProvider.js +16 -16
  265. package/lib/commonjs/features/engage/transcription/TranscriptionProvider.js.map +1 -1
  266. package/lib/commonjs/features/install-referrer/installReferrer.js +26 -26
  267. package/lib/commonjs/features/install-referrer/installReferrer.js.map +1 -1
  268. package/lib/commonjs/features/journey/ScaleBunDebugRoot.js +30 -29
  269. package/lib/commonjs/features/journey/ScaleBunDebugRoot.js.map +1 -1
  270. package/lib/commonjs/features/journey/ScaleBunFlatList.js +15 -15
  271. package/lib/commonjs/features/journey/ScaleBunFlatList.js.map +1 -1
  272. package/lib/commonjs/features/journey/ScaleBunImpression.js +22 -22
  273. package/lib/commonjs/features/journey/ScaleBunImpression.js.map +1 -1
  274. package/lib/commonjs/features/journey/ScaleBunScrollView.js +20 -20
  275. package/lib/commonjs/features/journey/ScaleBunScrollView.js.map +1 -1
  276. package/lib/commonjs/features/journey/ScaleBunSectionList.js +15 -15
  277. package/lib/commonjs/features/journey/ScaleBunSectionList.js.map +1 -1
  278. package/lib/commonjs/features/journey/calibrationContext.js +12 -12
  279. package/lib/commonjs/features/journey/calibrationContext.js.map +1 -1
  280. package/lib/commonjs/features/journey/gestureBuffer.js +9 -9
  281. package/lib/commonjs/features/journey/gestureBuffer.js.map +1 -1
  282. package/lib/commonjs/features/journey/gestureDetector.js +10 -10
  283. package/lib/commonjs/features/journey/gestureDetector.js.map +1 -1
  284. package/lib/commonjs/features/journey/impression.js +18 -18
  285. package/lib/commonjs/features/journey/impression.js.map +1 -1
  286. package/lib/commonjs/features/journey/journeyManager.js +6 -6
  287. package/lib/commonjs/features/journey/journeyManager.js.map +1 -1
  288. package/lib/commonjs/features/journey/journeyTypes.js +5 -5
  289. package/lib/commonjs/features/journey/journeyTypes.js.map +1 -1
  290. package/lib/commonjs/features/journey/navDetector.js +7 -7
  291. package/lib/commonjs/features/journey/navDetector.js.map +1 -1
  292. package/lib/commonjs/features/journey/screenshotHelper.js +7 -7
  293. package/lib/commonjs/features/journey/screenshotHelper.js.map +1 -1
  294. package/lib/commonjs/features/journey/targetRegistry.js +17 -17
  295. package/lib/commonjs/features/journey/targetRegistry.js.map +1 -1
  296. package/lib/commonjs/features/journey/touchTarget.js +29 -29
  297. package/lib/commonjs/features/journey/touchTarget.js.map +1 -1
  298. package/lib/commonjs/features/navigation/AutoScreenDetector.js +114 -71
  299. package/lib/commonjs/features/navigation/AutoScreenDetector.js.map +1 -1
  300. package/lib/commonjs/features/network/NetworkFeature.js +23 -23
  301. package/lib/commonjs/features/network/NetworkFeature.js.map +1 -1
  302. package/lib/commonjs/features/network/index.js +5 -5
  303. package/lib/commonjs/features/network/index.js.map +1 -1
  304. package/lib/commonjs/features/ota/OtaEventEmitter.js +21 -21
  305. package/lib/commonjs/features/ota/OtaEventEmitter.js.map +1 -1
  306. package/lib/commonjs/features/ota/OtaOrchestrator.js +595 -42
  307. package/lib/commonjs/features/ota/OtaOrchestrator.js.map +1 -1
  308. package/lib/commonjs/features/ota/OtaTypes.js.map +1 -1
  309. package/lib/commonjs/features/ota/deviceAttributes.js +48 -0
  310. package/lib/commonjs/features/ota/deviceAttributes.js.map +1 -0
  311. package/lib/commonjs/features/ota/environment.js +172 -0
  312. package/lib/commonjs/features/ota/environment.js.map +1 -0
  313. package/lib/commonjs/features/ota/geoCountry.js +93 -0
  314. package/lib/commonjs/features/ota/geoCountry.js.map +1 -0
  315. package/lib/commonjs/features/ota/retry.js +96 -0
  316. package/lib/commonjs/features/ota/retry.js.map +1 -0
  317. package/lib/commonjs/features/ota/signature.js +115 -0
  318. package/lib/commonjs/features/ota/signature.js.map +1 -0
  319. package/lib/commonjs/features/ota/useOtaUpdate.js +18 -15
  320. package/lib/commonjs/features/ota/useOtaUpdate.js.map +1 -1
  321. package/lib/commonjs/features/performance/PerformanceFeature.js +49 -35
  322. package/lib/commonjs/features/performance/PerformanceFeature.js.map +1 -1
  323. package/lib/commonjs/features/performance/collectors/AppLaunchCollector.js +13 -13
  324. package/lib/commonjs/features/performance/collectors/AppLaunchCollector.js.map +1 -1
  325. package/lib/commonjs/features/performance/collectors/AutoScreenLoadCollector.js +32 -32
  326. package/lib/commonjs/features/performance/collectors/AutoScreenLoadCollector.js.map +1 -1
  327. package/lib/commonjs/features/performance/collectors/CustomTraceCollector.js +13 -13
  328. package/lib/commonjs/features/performance/collectors/CustomTraceCollector.js.map +1 -1
  329. package/lib/commonjs/features/performance/collectors/FrameMetricsCollector.js +80 -20
  330. package/lib/commonjs/features/performance/collectors/FrameMetricsCollector.js.map +1 -1
  331. package/lib/commonjs/features/performance/collectors/JsStallCollector.js +12 -12
  332. package/lib/commonjs/features/performance/collectors/JsStallCollector.js.map +1 -1
  333. package/lib/commonjs/features/performance/collectors/NetworkPerfCollector.js +10 -10
  334. package/lib/commonjs/features/performance/collectors/NetworkPerfCollector.js.map +1 -1
  335. package/lib/commonjs/features/performance/collectors/ScreenLoadCollector.js +11 -11
  336. package/lib/commonjs/features/performance/collectors/ScreenLoadCollector.js.map +1 -1
  337. package/lib/commonjs/features/performance/collectors/UiHangCollector.js +5 -5
  338. package/lib/commonjs/features/performance/collectors/UiHangCollector.js.map +1 -1
  339. package/lib/commonjs/features/performance/config.js +11 -11
  340. package/lib/commonjs/features/performance/config.js.map +1 -1
  341. package/lib/commonjs/features/performance/getNativePerformanceModule.js +11 -11
  342. package/lib/commonjs/features/performance/getNativePerformanceModule.js.map +1 -1
  343. package/lib/commonjs/features/performance/index.js.map +1 -1
  344. package/lib/commonjs/features/performance/metrics/MetricsEngine.js +13 -13
  345. package/lib/commonjs/features/performance/metrics/MetricsEngine.js.map +1 -1
  346. package/lib/commonjs/features/performance/models.js +8 -8
  347. package/lib/commonjs/features/performance/models.js.map +1 -1
  348. package/lib/commonjs/features/performance/transport/PerformanceTransport.js +31 -6
  349. package/lib/commonjs/features/performance/transport/PerformanceTransport.js.map +1 -1
  350. package/lib/commonjs/features/profiler/ProfilerFeature.js +53 -53
  351. package/lib/commonjs/features/profiler/ProfilerFeature.js.map +1 -1
  352. package/lib/commonjs/features/profiler/config.js +15 -15
  353. package/lib/commonjs/features/profiler/config.js.map +1 -1
  354. package/lib/commonjs/features/profiler/contracts.js +22 -22
  355. package/lib/commonjs/features/profiler/contracts.js.map +1 -1
  356. package/lib/commonjs/features/profiler/index.js.map +1 -1
  357. package/lib/commonjs/features/profiler/models.js +44 -44
  358. package/lib/commonjs/features/profiler/models.js.map +1 -1
  359. package/lib/commonjs/features/profiler/transport/ProfilerTransport.js +9 -9
  360. package/lib/commonjs/features/profiler/transport/ProfilerTransport.js.map +1 -1
  361. package/lib/commonjs/features/replay/bridge/adapters/bridgeAdapter.js +17 -17
  362. package/lib/commonjs/features/replay/bridge/adapters/bridgeAdapter.js.map +1 -1
  363. package/lib/commonjs/features/replay/bridge/eventEmitter.js +8 -8
  364. package/lib/commonjs/features/replay/bridge/eventEmitter.js.map +1 -1
  365. package/lib/commonjs/features/replay/bridge/nativeModule.js +20 -20
  366. package/lib/commonjs/features/replay/bridge/nativeModule.js.map +1 -1
  367. package/lib/commonjs/features/replay/core/clock/clock.js +6 -6
  368. package/lib/commonjs/features/replay/core/clock/clock.js.map +1 -1
  369. package/lib/commonjs/features/replay/core/config/defaults.js +2 -2
  370. package/lib/commonjs/features/replay/core/config/defaults.js.map +1 -1
  371. package/lib/commonjs/features/replay/core/config/validator.js +5 -5
  372. package/lib/commonjs/features/replay/core/config/validator.js.map +1 -1
  373. package/lib/commonjs/features/replay/core/env/environmentDetector.js +10 -10
  374. package/lib/commonjs/features/replay/core/env/environmentDetector.js.map +1 -1
  375. package/lib/commonjs/features/replay/core/errors/safeCall.js +4 -4
  376. package/lib/commonjs/features/replay/core/errors/safeCall.js.map +1 -1
  377. package/lib/commonjs/features/replay/core/ids/sessionId.js +5 -5
  378. package/lib/commonjs/features/replay/core/ids/sessionId.js.map +1 -1
  379. package/lib/commonjs/features/replay/core/logger/logger.js +5 -5
  380. package/lib/commonjs/features/replay/core/logger/logger.js.map +1 -1
  381. package/lib/commonjs/features/replay/core/privacy/privacyTypes.js +4 -4
  382. package/lib/commonjs/features/replay/core/privacy/privacyTypes.js.map +1 -1
  383. package/lib/commonjs/features/replay/core/queue/boundedQueue.js +5 -5
  384. package/lib/commonjs/features/replay/core/queue/boundedQueue.js.map +1 -1
  385. package/lib/commonjs/features/replay/integrations/alert/alertInstrumentation.js +59 -59
  386. package/lib/commonjs/features/replay/integrations/alert/alertInstrumentation.js.map +1 -1
  387. package/lib/commonjs/features/replay/integrations/logs/consoleIntegration.js +19 -19
  388. package/lib/commonjs/features/replay/integrations/logs/consoleIntegration.js.map +1 -1
  389. package/lib/commonjs/features/replay/integrations/network/networkAdapter.js +30 -30
  390. package/lib/commonjs/features/replay/integrations/network/networkAdapter.js.map +1 -1
  391. package/lib/commonjs/features/replay/integrations/react-navigation/navigationIntegration.js +19 -19
  392. package/lib/commonjs/features/replay/integrations/react-navigation/navigationIntegration.js.map +1 -1
  393. package/lib/commonjs/features/replay/integrations/touch/ReplayRoot.js +16 -16
  394. package/lib/commonjs/features/replay/integrations/touch/ReplayRoot.js.map +1 -1
  395. package/lib/commonjs/features/replay/pipeline/batching/batchManager.js +5 -5
  396. package/lib/commonjs/features/replay/pipeline/batching/batchManager.js.map +1 -1
  397. package/lib/commonjs/features/replay/pipeline/envelope/envelopeBuilder.js +5 -5
  398. package/lib/commonjs/features/replay/pipeline/envelope/envelopeBuilder.js.map +1 -1
  399. package/lib/commonjs/features/replay/pipeline/retry/retryPolicy.js +4 -4
  400. package/lib/commonjs/features/replay/pipeline/retry/retryPolicy.js.map +1 -1
  401. package/lib/commonjs/features/replay/pipeline/transport/transportTypes.js +7 -7
  402. package/lib/commonjs/features/replay/pipeline/transport/transportTypes.js.map +1 -1
  403. package/lib/commonjs/features/replay/public/api.js +21 -21
  404. package/lib/commonjs/features/replay/public/api.js.map +1 -1
  405. package/lib/commonjs/features/replay/public/enums.js +5 -5
  406. package/lib/commonjs/features/replay/public/enums.js.map +1 -1
  407. package/lib/commonjs/features/replay/public/types.js.map +1 -1
  408. package/lib/commonjs/features/replay/replay/breadcrumbs/breadcrumbCollector.js +5 -5
  409. package/lib/commonjs/features/replay/replay/breadcrumbs/breadcrumbCollector.js.map +1 -1
  410. package/lib/commonjs/features/replay/replay/frames/frameModels.js +4 -4
  411. package/lib/commonjs/features/replay/replay/frames/frameModels.js.map +1 -1
  412. package/lib/commonjs/features/replay/replay/session/sessionOrchestrator.js +10 -10
  413. package/lib/commonjs/features/replay/replay/session/sessionOrchestrator.js.map +1 -1
  414. package/lib/commonjs/features/replay/replay/timeline/timelineModels.js +4 -4
  415. package/lib/commonjs/features/replay/replay/timeline/timelineModels.js.map +1 -1
  416. package/lib/commonjs/features/replay/transport/BackendReplayTransport.js +13 -13
  417. package/lib/commonjs/features/replay/transport/BackendReplayTransport.js.map +1 -1
  418. package/lib/commonjs/features/replay/transport/CompositeReplayTransport.js +8 -8
  419. package/lib/commonjs/features/replay/transport/CompositeReplayTransport.js.map +1 -1
  420. package/lib/commonjs/features/replay/transport/DesktopReplayTransport.js +14 -14
  421. package/lib/commonjs/features/replay/transport/DesktopReplayTransport.js.map +1 -1
  422. package/lib/commonjs/features/replay/transport/ReplayTransport.js.map +1 -1
  423. package/lib/commonjs/features/session/BackendSessionAdapter.js +486 -164
  424. package/lib/commonjs/features/session/BackendSessionAdapter.js.map +1 -1
  425. package/lib/commonjs/features/session/DesktopSessionTransport.js +14 -14
  426. package/lib/commonjs/features/session/DesktopSessionTransport.js.map +1 -1
  427. package/lib/commonjs/features/session/JourneyEventPipeline.js +20 -19
  428. package/lib/commonjs/features/session/JourneyEventPipeline.js.map +1 -1
  429. package/lib/commonjs/features/session/ReplayCaptureManager.js +169 -123
  430. package/lib/commonjs/features/session/ReplayCaptureManager.js.map +1 -1
  431. package/lib/commonjs/features/session/ScrollTracker.js +17 -17
  432. package/lib/commonjs/features/session/ScrollTracker.js.map +1 -1
  433. package/lib/commonjs/features/session/SessionManager.js +185 -155
  434. package/lib/commonjs/features/session/SessionManager.js.map +1 -1
  435. package/lib/commonjs/features/session/SyncDecisionEngine.js +23 -23
  436. package/lib/commonjs/features/session/SyncDecisionEngine.js.map +1 -1
  437. package/lib/commonjs/features/session/index.js.map +1 -1
  438. package/lib/commonjs/features/session/nativeCapture.js +9 -9
  439. package/lib/commonjs/features/session/nativeCapture.js.map +1 -1
  440. package/lib/commonjs/features/session/outboxFrameCapture.js +18 -17
  441. package/lib/commonjs/features/session/outboxFrameCapture.js.map +1 -1
  442. package/lib/commonjs/features/session/sessionTypes.js +44 -44
  443. package/lib/commonjs/features/session/sessionTypes.js.map +1 -1
  444. package/lib/commonjs/features/skan/skanBridge.js +11 -11
  445. package/lib/commonjs/features/skan/skanBridge.js.map +1 -1
  446. package/lib/commonjs/features/skan/skanConversionManager.js +23 -23
  447. package/lib/commonjs/features/skan/skanConversionManager.js.map +1 -1
  448. package/lib/commonjs/index.js +20 -0
  449. package/lib/commonjs/index.js.map +1 -1
  450. package/lib/commonjs/integrations/fetch/fetchInterceptor.js +21 -21
  451. package/lib/commonjs/integrations/fetch/fetchInterceptor.js.map +1 -1
  452. package/lib/commonjs/integrations/navigation/screenTracker.js.map +1 -1
  453. package/lib/commonjs/integrations/network/bodyCapture.js +69 -69
  454. package/lib/commonjs/integrations/network/bodyCapture.js.map +1 -1
  455. package/lib/commonjs/integrations/xhr/xhrInterceptor.js +24 -24
  456. package/lib/commonjs/integrations/xhr/xhrInterceptor.js.map +1 -1
  457. package/lib/commonjs/metro/index.js +37 -37
  458. package/lib/commonjs/metro/index.js.map +1 -1
  459. package/lib/commonjs/metro/optionalDependencyStub.js.map +1 -1
  460. package/lib/commonjs/metro/optionalModules.js +16 -16
  461. package/lib/commonjs/metro/optionalModules.js.map +1 -1
  462. package/lib/commonjs/pipeline/dispatcher/dispatcher.js.map +1 -1
  463. package/lib/commonjs/pipeline/envelope/envelope.js.map +1 -1
  464. package/lib/commonjs/pipeline/envelope/serializer.js.map +1 -1
  465. package/lib/commonjs/pipeline/processors/dedupe.js.map +1 -1
  466. package/lib/commonjs/pipeline/processors/enrich.js.map +1 -1
  467. package/lib/commonjs/pipeline/processors/sampling.js.map +1 -1
  468. package/lib/commonjs/pipeline/processors/sanitize.js.map +1 -1
  469. package/lib/commonjs/pipeline/queue/flushQueue.js +4 -4
  470. package/lib/commonjs/pipeline/queue/flushQueue.js.map +1 -1
  471. package/lib/commonjs/pipeline/queue/memoryQueue.js.map +1 -1
  472. package/lib/commonjs/pipeline/queue/persistentQueue.js +80 -80
  473. package/lib/commonjs/pipeline/queue/persistentQueue.js.map +1 -1
  474. package/lib/commonjs/pipeline/queue/queuePolicy.js.map +1 -1
  475. package/lib/commonjs/pipeline/scheduler/flushScheduler.js.map +1 -1
  476. package/lib/commonjs/pipeline/scheduler/retryPolicy.js +2 -2
  477. package/lib/commonjs/pipeline/scheduler/retryPolicy.js.map +1 -1
  478. package/lib/commonjs/public/ScaleBunErrorBoundary.js +79 -0
  479. package/lib/commonjs/public/ScaleBunErrorBoundary.js.map +1 -0
  480. package/lib/commonjs/public/ScaleBunFacade.js +424 -276
  481. package/lib/commonjs/public/ScaleBunFacade.js.map +1 -1
  482. package/lib/commonjs/public/ScaleBunProvider.js +3 -3
  483. package/lib/commonjs/public/ScaleBunProvider.js.map +1 -1
  484. package/lib/commonjs/public/typedTracker.js +36 -36
  485. package/lib/commonjs/public/typedTracker.js.map +1 -1
  486. package/lib/commonjs/public/types.js.map +1 -1
  487. package/lib/commonjs/push/PushManager.js +21 -21
  488. package/lib/commonjs/push/PushManager.js.map +1 -1
  489. package/lib/commonjs/push/adapters/ManualAdapter.js +14 -14
  490. package/lib/commonjs/push/adapters/ManualAdapter.js.map +1 -1
  491. package/lib/commonjs/push/adapters/NativeBridgeAdapter.js +17 -17
  492. package/lib/commonjs/push/adapters/NativeBridgeAdapter.js.map +1 -1
  493. package/lib/commonjs/push/adapters/NoopAdapter.js +5 -5
  494. package/lib/commonjs/push/adapters/NoopAdapter.js.map +1 -1
  495. package/lib/commonjs/push/adapters/RNFirebaseMessagingAdapter.js +17 -17
  496. package/lib/commonjs/push/adapters/RNFirebaseMessagingAdapter.js.map +1 -1
  497. package/lib/commonjs/push/adapters/loadMessaging.js +12 -12
  498. package/lib/commonjs/push/adapters/loadMessaging.js.map +1 -1
  499. package/lib/commonjs/push/adapters/loadNotifee.js +12 -12
  500. package/lib/commonjs/push/adapters/loadNotifee.js.map +1 -1
  501. package/lib/commonjs/push/adapters/selectAdapter.js +14 -14
  502. package/lib/commonjs/push/adapters/selectAdapter.js.map +1 -1
  503. package/lib/commonjs/push/detect/capabilities.js +19 -19
  504. package/lib/commonjs/push/detect/capabilities.js.map +1 -1
  505. package/lib/commonjs/push/index.js.map +1 -1
  506. package/lib/commonjs/push/native/nativeNotifications.js +32 -32
  507. package/lib/commonjs/push/native/nativeNotifications.js.map +1 -1
  508. package/lib/commonjs/push/types.js.map +1 -1
  509. package/lib/commonjs/specs/NativeReplaySdk.js +18 -18
  510. package/lib/commonjs/specs/NativeReplaySdk.js.map +1 -1
  511. package/lib/commonjs/specs/NativeScaleBunCrash.js +19 -19
  512. package/lib/commonjs/specs/NativeScaleBunCrash.js.map +1 -1
  513. package/lib/commonjs/specs/NativeScaleBunInstallReferrer.js +14 -14
  514. package/lib/commonjs/specs/NativeScaleBunInstallReferrer.js.map +1 -1
  515. package/lib/commonjs/specs/NativeScaleBunOta.js +21 -21
  516. package/lib/commonjs/specs/NativeScaleBunOta.js.map +1 -1
  517. package/lib/commonjs/specs/NativeScaleBunPerformance.js +15 -15
  518. package/lib/commonjs/specs/NativeScaleBunPerformance.js.map +1 -1
  519. package/lib/commonjs/specs/NativeScaleBunProfiler.js +16 -16
  520. package/lib/commonjs/specs/NativeScaleBunProfiler.js.map +1 -1
  521. package/lib/commonjs/specs/NativeScaleBunStorage.js +29 -29
  522. package/lib/commonjs/specs/NativeScaleBunStorage.js.map +1 -1
  523. package/lib/commonjs/storage/StorageBackend.js +83 -83
  524. package/lib/commonjs/storage/StorageBackend.js.map +1 -1
  525. package/lib/commonjs/storage/db/sqlite.js.map +1 -1
  526. package/lib/commonjs/storage/files/fileStore.js.map +1 -1
  527. package/lib/commonjs/transport/auth/sdkSession.js.map +1 -1
  528. package/lib/commonjs/transport/backoff/exponentialJitter.js +2 -2
  529. package/lib/commonjs/transport/backoff/exponentialJitter.js.map +1 -1
  530. package/lib/commonjs/transport/http/endpoints.js.map +1 -1
  531. package/lib/commonjs/transport/http/httpClient.js +3 -3
  532. package/lib/commonjs/transport/http/httpClient.js.map +1 -1
  533. package/lib/commonjs/transport/rateLimit/retryAfter.js.map +1 -1
  534. package/lib/commonjs/transport/signing/requestSigner.js.map +1 -1
  535. package/lib/commonjs/vendor/protocol/index.js +74 -74
  536. package/lib/commonjs/vendor/protocol/index.js.map +1 -1
  537. package/lib/commonjs/vendor/protocol/internal/validation.js +23 -23
  538. package/lib/commonjs/vendor/protocol/internal/validation.js.map +1 -1
  539. package/lib/commonjs/vendor/sdk-contracts/bridge.js.map +1 -1
  540. package/lib/commonjs/vendor/sdk-contracts/config.js.map +1 -1
  541. package/lib/commonjs/vendor/sdk-contracts/events.js.map +1 -1
  542. package/lib/commonjs/vendor/sdk-contracts/features.js.map +1 -1
  543. package/lib/commonjs/vendor/sdk-contracts/index.js.map +1 -1
  544. package/lib/commonjs/vendor/sdk-contracts/platform.js.map +1 -1
  545. package/lib/commonjs/vendor/sdk-contracts/session-boundary.js.map +1 -1
  546. package/lib/commonjs/vendor/sdk-contracts/session.js.map +1 -1
  547. package/lib/commonjs/vendor/vendor.manifest +10 -10
  548. package/lib/module/analytics/EventTracker.js +63 -35
  549. package/lib/module/analytics/EventTracker.js.map +1 -1
  550. package/lib/module/analytics/automaticEvents.js +7 -7
  551. package/lib/module/analytics/automaticEvents.js.map +1 -1
  552. package/lib/module/analytics/batching.js +24 -24
  553. package/lib/module/analytics/batching.js.map +1 -1
  554. package/lib/module/analytics/eventLane.js +13 -13
  555. package/lib/module/analytics/eventLane.js.map +1 -1
  556. package/lib/module/bootstrap/FeatureRegistry.js +17 -17
  557. package/lib/module/bootstrap/FeatureRegistry.js.map +1 -1
  558. package/lib/module/bootstrap/SDKBootstrapper.js +81 -54
  559. package/lib/module/bootstrap/SDKBootstrapper.js.map +1 -1
  560. package/lib/module/bucketing/fnv1a32.js +10 -10
  561. package/lib/module/bucketing/fnv1a32.js.map +1 -1
  562. package/lib/module/compat/codepush.js +6 -6
  563. package/lib/module/compat/codepush.js.map +1 -1
  564. package/lib/module/config/ConfigManager.js +20 -20
  565. package/lib/module/config/ConfigManager.js.map +1 -1
  566. package/lib/module/config/configTypes.js.map +1 -1
  567. package/lib/module/core/architecture.js +23 -23
  568. package/lib/module/core/architecture.js.map +1 -1
  569. package/lib/module/core/clock/now.js +2 -2
  570. package/lib/module/core/clock/now.js.map +1 -1
  571. package/lib/module/core/config/defaults.js.map +1 -1
  572. package/lib/module/core/config/schema.js +112 -104
  573. package/lib/module/core/config/schema.js.map +1 -1
  574. package/lib/module/core/constants/endpoints.js +7 -7
  575. package/lib/module/core/constants/endpoints.js.map +1 -1
  576. package/lib/module/core/constants/timings.js +5 -5
  577. package/lib/module/core/constants/timings.js.map +1 -1
  578. package/lib/module/core/constants/version.js +4 -4
  579. package/lib/module/core/constants/version.js.map +1 -1
  580. package/lib/module/core/context/app.js.map +1 -1
  581. package/lib/module/core/context/device.js +119 -0
  582. package/lib/module/core/context/device.js.map +1 -1
  583. package/lib/module/core/context/session.js.map +1 -1
  584. package/lib/module/core/context/user.js.map +1 -1
  585. package/lib/module/core/contracts/IFeature.js.map +1 -1
  586. package/lib/module/core/di/container.js.map +1 -1
  587. package/lib/module/core/encoding/base64.js +9 -9
  588. package/lib/module/core/encoding/base64.js.map +1 -1
  589. package/lib/module/core/id/deviceId.js +4 -4
  590. package/lib/module/core/id/deviceId.js.map +1 -1
  591. package/lib/module/core/id/sessionId.js.map +1 -1
  592. package/lib/module/core/lifecycle/appLifecycle.js.map +1 -1
  593. package/lib/module/core/lifecycle/crashSafe.js +3 -3
  594. package/lib/module/core/lifecycle/crashSafe.js.map +1 -1
  595. package/lib/module/core/logger/errorClassification.js +30 -30
  596. package/lib/module/core/logger/errorClassification.js.map +1 -1
  597. package/lib/module/core/logger/internalLogger.js.map +1 -1
  598. package/lib/module/core/logger/levels.js.map +1 -1
  599. package/lib/module/crypto/hmacSha256.js +6 -6
  600. package/lib/module/crypto/hmacSha256.js.map +1 -1
  601. package/lib/module/debug/bootstrap.js +26 -26
  602. package/lib/module/debug/bootstrap.js.map +1 -1
  603. package/lib/module/debug/commands.js +10 -10
  604. package/lib/module/debug/commands.js.map +1 -1
  605. package/lib/module/debug/configBuilder.js +6 -6
  606. package/lib/module/debug/configBuilder.js.map +1 -1
  607. package/lib/module/debug/exportBridge.js +17 -17
  608. package/lib/module/debug/exportBridge.js.map +1 -1
  609. package/lib/module/debug/hostResolver.js +10 -10
  610. package/lib/module/debug/hostResolver.js.map +1 -1
  611. package/lib/module/debug/index.js +5 -5
  612. package/lib/module/debug/index.js.map +1 -1
  613. package/lib/module/debug/metrics.js.map +1 -1
  614. package/lib/module/debug/perf.js +11 -11
  615. package/lib/module/debug/perf.js.map +1 -1
  616. package/lib/module/debug/perfWiring.js +10 -10
  617. package/lib/module/debug/perfWiring.js.map +1 -1
  618. package/lib/module/debug/protocol.js +11 -11
  619. package/lib/module/debug/protocol.js.map +1 -1
  620. package/lib/module/debug/redaction.js +26 -26
  621. package/lib/module/debug/redaction.js.map +1 -1
  622. package/lib/module/debug/replayWiring.js +13 -12
  623. package/lib/module/debug/replayWiring.js.map +1 -1
  624. package/lib/module/debug/screenTracking.js +7 -7
  625. package/lib/module/debug/screenTracking.js.map +1 -1
  626. package/lib/module/debug/sessionWiring.js +8 -8
  627. package/lib/module/debug/sessionWiring.js.map +1 -1
  628. package/lib/module/debug/stream.js +26 -26
  629. package/lib/module/debug/stream.js.map +1 -1
  630. package/lib/module/debug/transport.js +24 -24
  631. package/lib/module/debug/transport.js.map +1 -1
  632. package/lib/module/features/bugreport/BugReportFeature.js +105 -0
  633. package/lib/module/features/bugreport/BugReportFeature.js.map +1 -0
  634. package/lib/module/features/bugreport/buildPayload.js +91 -0
  635. package/lib/module/features/bugreport/buildPayload.js.map +1 -0
  636. package/lib/module/features/bugreport/index.js.map +1 -1
  637. package/lib/module/features/crash/CrashFeature.js +27 -9
  638. package/lib/module/features/crash/CrashFeature.js.map +1 -1
  639. package/lib/module/features/crash/CrashReporter.js +53 -29
  640. package/lib/module/features/crash/CrashReporter.js.map +1 -1
  641. package/lib/module/features/crash/NativeCrashFeature.js +7 -7
  642. package/lib/module/features/crash/NativeCrashFeature.js.map +1 -1
  643. package/lib/module/features/crash/capture.js +28 -9
  644. package/lib/module/features/crash/capture.js.map +1 -1
  645. package/lib/module/features/crash/globalHandler.js +11 -11
  646. package/lib/module/features/crash/globalHandler.js.map +1 -1
  647. package/lib/module/features/crash/index.js.map +1 -1
  648. package/lib/module/features/crash/nativeCrashBridge.js +177 -44
  649. package/lib/module/features/crash/nativeCrashBridge.js.map +1 -1
  650. package/lib/module/features/crash/rejectionHandler.js +116 -0
  651. package/lib/module/features/crash/rejectionHandler.js.map +1 -0
  652. package/lib/module/features/engage/EngageAnchor.js +3 -3
  653. package/lib/module/features/engage/EngageAnchor.js.map +1 -1
  654. package/lib/module/features/engage/EngageArchetypeRenderers.js +19 -19
  655. package/lib/module/features/engage/EngageArchetypeRenderers.js.map +1 -1
  656. package/lib/module/features/engage/EngageInAppView.js +35 -35
  657. package/lib/module/features/engage/EngageInAppView.js.map +1 -1
  658. package/lib/module/features/engage/EngageInlinePlacement.js +7 -7
  659. package/lib/module/features/engage/EngageInlinePlacement.js.map +1 -1
  660. package/lib/module/features/engage/EngagePromptProvider.js +124 -88
  661. package/lib/module/features/engage/EngagePromptProvider.js.map +1 -1
  662. package/lib/module/features/engage/EngagePromptView.js +65 -32
  663. package/lib/module/features/engage/EngagePromptView.js.map +1 -1
  664. package/lib/module/features/engage/EngageTransport.js +79 -79
  665. package/lib/module/features/engage/EngageTransport.js.map +1 -1
  666. package/lib/module/features/engage/EngageVariantContent.js +10 -10
  667. package/lib/module/features/engage/EngageVariantContent.js.map +1 -1
  668. package/lib/module/features/engage/__test-support__/reactNativeStub.js +7 -7
  669. package/lib/module/features/engage/__test-support__/reactNativeStub.js.map +1 -1
  670. package/lib/module/features/engage/attachmentCapture.js +12 -12
  671. package/lib/module/features/engage/attachmentCapture.js.map +1 -1
  672. package/lib/module/features/engage/captureVoiceAttachment.js +20 -20
  673. package/lib/module/features/engage/captureVoiceAttachment.js.map +1 -1
  674. package/lib/module/features/engage/engageCoachmarkTour.js +4 -4
  675. package/lib/module/features/engage/engageCoachmarkTour.js.map +1 -1
  676. package/lib/module/features/engage/engageGameLogic.js.map +1 -1
  677. package/lib/module/features/engage/engageMediaSizing.js +15 -15
  678. package/lib/module/features/engage/engageMediaSizing.js.map +1 -1
  679. package/lib/module/features/engage/engageMultiStepSheet.js +6 -6
  680. package/lib/module/features/engage/engageMultiStepSheet.js.map +1 -1
  681. package/lib/module/features/engage/engageOutcome.js +6 -6
  682. package/lib/module/features/engage/engageOutcome.js.map +1 -1
  683. package/lib/module/features/engage/engagePushTokenBridge.js +20 -20
  684. package/lib/module/features/engage/engagePushTokenBridge.js.map +1 -1
  685. package/lib/module/features/engage/engageShakeBridge.js +16 -16
  686. package/lib/module/features/engage/engageShakeBridge.js.map +1 -1
  687. package/lib/module/features/engage/engageSignals.js.map +1 -1
  688. package/lib/module/features/engage/engageStoreReviewBridge.js +19 -19
  689. package/lib/module/features/engage/engageStoreReviewBridge.js.map +1 -1
  690. package/lib/module/features/engage/engageTestSeenStore.js +29 -29
  691. package/lib/module/features/engage/engageTestSeenStore.js.map +1 -1
  692. package/lib/module/features/engage/engageThrottle.js +117 -86
  693. package/lib/module/features/engage/engageThrottle.js.map +1 -1
  694. package/lib/module/features/engage/engageTriggerEngine.js +17 -7
  695. package/lib/module/features/engage/engageTriggerEngine.js.map +1 -1
  696. package/lib/module/features/engage/engageTypes.js +33 -33
  697. package/lib/module/features/engage/engageTypes.js.map +1 -1
  698. package/lib/module/features/engage/engageVariantResolver.js +13 -13
  699. package/lib/module/features/engage/engageVariantResolver.js.map +1 -1
  700. package/lib/module/features/engage/engageWindowInsets.js +10 -10
  701. package/lib/module/features/engage/engageWindowInsets.js.map +1 -1
  702. package/lib/module/features/engage/gestureTriggerDetector.js.map +1 -1
  703. package/lib/module/features/engage/transcription/TranscriptionProvider.js +16 -16
  704. package/lib/module/features/engage/transcription/TranscriptionProvider.js.map +1 -1
  705. package/lib/module/features/install-referrer/installReferrer.js +26 -26
  706. package/lib/module/features/install-referrer/installReferrer.js.map +1 -1
  707. package/lib/module/features/journey/ScaleBunDebugRoot.js +30 -29
  708. package/lib/module/features/journey/ScaleBunDebugRoot.js.map +1 -1
  709. package/lib/module/features/journey/ScaleBunFlatList.js +15 -15
  710. package/lib/module/features/journey/ScaleBunFlatList.js.map +1 -1
  711. package/lib/module/features/journey/ScaleBunImpression.js +22 -22
  712. package/lib/module/features/journey/ScaleBunImpression.js.map +1 -1
  713. package/lib/module/features/journey/ScaleBunScrollView.js +20 -20
  714. package/lib/module/features/journey/ScaleBunScrollView.js.map +1 -1
  715. package/lib/module/features/journey/ScaleBunSectionList.js +15 -15
  716. package/lib/module/features/journey/ScaleBunSectionList.js.map +1 -1
  717. package/lib/module/features/journey/calibrationContext.js +12 -12
  718. package/lib/module/features/journey/calibrationContext.js.map +1 -1
  719. package/lib/module/features/journey/gestureBuffer.js +9 -9
  720. package/lib/module/features/journey/gestureBuffer.js.map +1 -1
  721. package/lib/module/features/journey/gestureDetector.js +10 -10
  722. package/lib/module/features/journey/gestureDetector.js.map +1 -1
  723. package/lib/module/features/journey/impression.js +18 -18
  724. package/lib/module/features/journey/impression.js.map +1 -1
  725. package/lib/module/features/journey/journeyManager.js +6 -6
  726. package/lib/module/features/journey/journeyManager.js.map +1 -1
  727. package/lib/module/features/journey/journeyTypes.js +5 -5
  728. package/lib/module/features/journey/journeyTypes.js.map +1 -1
  729. package/lib/module/features/journey/navDetector.js +7 -7
  730. package/lib/module/features/journey/navDetector.js.map +1 -1
  731. package/lib/module/features/journey/screenshotHelper.js +7 -7
  732. package/lib/module/features/journey/screenshotHelper.js.map +1 -1
  733. package/lib/module/features/journey/targetRegistry.js +17 -17
  734. package/lib/module/features/journey/targetRegistry.js.map +1 -1
  735. package/lib/module/features/journey/touchTarget.js +29 -29
  736. package/lib/module/features/journey/touchTarget.js.map +1 -1
  737. package/lib/module/features/navigation/AutoScreenDetector.js +114 -71
  738. package/lib/module/features/navigation/AutoScreenDetector.js.map +1 -1
  739. package/lib/module/features/network/NetworkFeature.js +23 -23
  740. package/lib/module/features/network/NetworkFeature.js.map +1 -1
  741. package/lib/module/features/network/index.js +5 -5
  742. package/lib/module/features/network/index.js.map +1 -1
  743. package/lib/module/features/ota/OtaEventEmitter.js +21 -21
  744. package/lib/module/features/ota/OtaEventEmitter.js.map +1 -1
  745. package/lib/module/features/ota/OtaOrchestrator.js +596 -43
  746. package/lib/module/features/ota/OtaOrchestrator.js.map +1 -1
  747. package/lib/module/features/ota/OtaTypes.js.map +1 -1
  748. package/lib/module/features/ota/deviceAttributes.js +43 -0
  749. package/lib/module/features/ota/deviceAttributes.js.map +1 -0
  750. package/lib/module/features/ota/environment.js +165 -0
  751. package/lib/module/features/ota/environment.js.map +1 -0
  752. package/lib/module/features/ota/geoCountry.js +86 -0
  753. package/lib/module/features/ota/geoCountry.js.map +1 -0
  754. package/lib/module/features/ota/retry.js +87 -0
  755. package/lib/module/features/ota/retry.js.map +1 -0
  756. package/lib/module/features/ota/signature.js +109 -0
  757. package/lib/module/features/ota/signature.js.map +1 -0
  758. package/lib/module/features/ota/useOtaUpdate.js +18 -15
  759. package/lib/module/features/ota/useOtaUpdate.js.map +1 -1
  760. package/lib/module/features/performance/PerformanceFeature.js +49 -35
  761. package/lib/module/features/performance/PerformanceFeature.js.map +1 -1
  762. package/lib/module/features/performance/collectors/AppLaunchCollector.js +13 -13
  763. package/lib/module/features/performance/collectors/AppLaunchCollector.js.map +1 -1
  764. package/lib/module/features/performance/collectors/AutoScreenLoadCollector.js +32 -32
  765. package/lib/module/features/performance/collectors/AutoScreenLoadCollector.js.map +1 -1
  766. package/lib/module/features/performance/collectors/CustomTraceCollector.js +13 -13
  767. package/lib/module/features/performance/collectors/CustomTraceCollector.js.map +1 -1
  768. package/lib/module/features/performance/collectors/FrameMetricsCollector.js +81 -21
  769. package/lib/module/features/performance/collectors/FrameMetricsCollector.js.map +1 -1
  770. package/lib/module/features/performance/collectors/JsStallCollector.js +12 -12
  771. package/lib/module/features/performance/collectors/JsStallCollector.js.map +1 -1
  772. package/lib/module/features/performance/collectors/NetworkPerfCollector.js +10 -10
  773. package/lib/module/features/performance/collectors/NetworkPerfCollector.js.map +1 -1
  774. package/lib/module/features/performance/collectors/ScreenLoadCollector.js +11 -11
  775. package/lib/module/features/performance/collectors/ScreenLoadCollector.js.map +1 -1
  776. package/lib/module/features/performance/collectors/UiHangCollector.js +5 -5
  777. package/lib/module/features/performance/collectors/UiHangCollector.js.map +1 -1
  778. package/lib/module/features/performance/config.js +11 -11
  779. package/lib/module/features/performance/config.js.map +1 -1
  780. package/lib/module/features/performance/getNativePerformanceModule.js +11 -11
  781. package/lib/module/features/performance/getNativePerformanceModule.js.map +1 -1
  782. package/lib/module/features/performance/index.js +2 -2
  783. package/lib/module/features/performance/index.js.map +1 -1
  784. package/lib/module/features/performance/metrics/MetricsEngine.js +13 -13
  785. package/lib/module/features/performance/metrics/MetricsEngine.js.map +1 -1
  786. package/lib/module/features/performance/models.js +8 -8
  787. package/lib/module/features/performance/models.js.map +1 -1
  788. package/lib/module/features/performance/transport/PerformanceTransport.js +31 -6
  789. package/lib/module/features/performance/transport/PerformanceTransport.js.map +1 -1
  790. package/lib/module/features/profiler/ProfilerFeature.js +53 -53
  791. package/lib/module/features/profiler/ProfilerFeature.js.map +1 -1
  792. package/lib/module/features/profiler/config.js +15 -15
  793. package/lib/module/features/profiler/config.js.map +1 -1
  794. package/lib/module/features/profiler/contracts.js +22 -22
  795. package/lib/module/features/profiler/contracts.js.map +1 -1
  796. package/lib/module/features/profiler/index.js +4 -4
  797. package/lib/module/features/profiler/index.js.map +1 -1
  798. package/lib/module/features/profiler/models.js +44 -44
  799. package/lib/module/features/profiler/models.js.map +1 -1
  800. package/lib/module/features/profiler/transport/ProfilerTransport.js +9 -9
  801. package/lib/module/features/profiler/transport/ProfilerTransport.js.map +1 -1
  802. package/lib/module/features/replay/bridge/adapters/bridgeAdapter.js +17 -17
  803. package/lib/module/features/replay/bridge/adapters/bridgeAdapter.js.map +1 -1
  804. package/lib/module/features/replay/bridge/eventEmitter.js +8 -8
  805. package/lib/module/features/replay/bridge/eventEmitter.js.map +1 -1
  806. package/lib/module/features/replay/bridge/nativeModule.js +20 -20
  807. package/lib/module/features/replay/bridge/nativeModule.js.map +1 -1
  808. package/lib/module/features/replay/core/clock/clock.js +6 -6
  809. package/lib/module/features/replay/core/clock/clock.js.map +1 -1
  810. package/lib/module/features/replay/core/config/defaults.js +2 -2
  811. package/lib/module/features/replay/core/config/defaults.js.map +1 -1
  812. package/lib/module/features/replay/core/config/validator.js +5 -5
  813. package/lib/module/features/replay/core/config/validator.js.map +1 -1
  814. package/lib/module/features/replay/core/env/environmentDetector.js +10 -10
  815. package/lib/module/features/replay/core/env/environmentDetector.js.map +1 -1
  816. package/lib/module/features/replay/core/errors/safeCall.js +4 -4
  817. package/lib/module/features/replay/core/errors/safeCall.js.map +1 -1
  818. package/lib/module/features/replay/core/ids/sessionId.js +5 -5
  819. package/lib/module/features/replay/core/ids/sessionId.js.map +1 -1
  820. package/lib/module/features/replay/core/logger/logger.js +5 -5
  821. package/lib/module/features/replay/core/logger/logger.js.map +1 -1
  822. package/lib/module/features/replay/core/privacy/privacyTypes.js +4 -4
  823. package/lib/module/features/replay/core/privacy/privacyTypes.js.map +1 -1
  824. package/lib/module/features/replay/core/queue/boundedQueue.js +5 -5
  825. package/lib/module/features/replay/core/queue/boundedQueue.js.map +1 -1
  826. package/lib/module/features/replay/integrations/alert/alertInstrumentation.js +59 -59
  827. package/lib/module/features/replay/integrations/alert/alertInstrumentation.js.map +1 -1
  828. package/lib/module/features/replay/integrations/logs/consoleIntegration.js +19 -19
  829. package/lib/module/features/replay/integrations/logs/consoleIntegration.js.map +1 -1
  830. package/lib/module/features/replay/integrations/network/networkAdapter.js +30 -30
  831. package/lib/module/features/replay/integrations/network/networkAdapter.js.map +1 -1
  832. package/lib/module/features/replay/integrations/react-navigation/navigationIntegration.js +19 -19
  833. package/lib/module/features/replay/integrations/react-navigation/navigationIntegration.js.map +1 -1
  834. package/lib/module/features/replay/integrations/touch/ReplayRoot.js +16 -16
  835. package/lib/module/features/replay/integrations/touch/ReplayRoot.js.map +1 -1
  836. package/lib/module/features/replay/pipeline/batching/batchManager.js +5 -5
  837. package/lib/module/features/replay/pipeline/batching/batchManager.js.map +1 -1
  838. package/lib/module/features/replay/pipeline/envelope/envelopeBuilder.js +5 -5
  839. package/lib/module/features/replay/pipeline/envelope/envelopeBuilder.js.map +1 -1
  840. package/lib/module/features/replay/pipeline/retry/retryPolicy.js +4 -4
  841. package/lib/module/features/replay/pipeline/retry/retryPolicy.js.map +1 -1
  842. package/lib/module/features/replay/pipeline/transport/transportTypes.js +7 -7
  843. package/lib/module/features/replay/pipeline/transport/transportTypes.js.map +1 -1
  844. package/lib/module/features/replay/public/api.js +21 -21
  845. package/lib/module/features/replay/public/api.js.map +1 -1
  846. package/lib/module/features/replay/public/enums.js +5 -5
  847. package/lib/module/features/replay/public/enums.js.map +1 -1
  848. package/lib/module/features/replay/public/types.js.map +1 -1
  849. package/lib/module/features/replay/replay/breadcrumbs/breadcrumbCollector.js +5 -5
  850. package/lib/module/features/replay/replay/breadcrumbs/breadcrumbCollector.js.map +1 -1
  851. package/lib/module/features/replay/replay/frames/frameModels.js +4 -4
  852. package/lib/module/features/replay/replay/frames/frameModels.js.map +1 -1
  853. package/lib/module/features/replay/replay/session/sessionOrchestrator.js +10 -10
  854. package/lib/module/features/replay/replay/session/sessionOrchestrator.js.map +1 -1
  855. package/lib/module/features/replay/replay/timeline/timelineModels.js +4 -4
  856. package/lib/module/features/replay/replay/timeline/timelineModels.js.map +1 -1
  857. package/lib/module/features/replay/transport/BackendReplayTransport.js +13 -13
  858. package/lib/module/features/replay/transport/BackendReplayTransport.js.map +1 -1
  859. package/lib/module/features/replay/transport/CompositeReplayTransport.js +8 -8
  860. package/lib/module/features/replay/transport/CompositeReplayTransport.js.map +1 -1
  861. package/lib/module/features/replay/transport/DesktopReplayTransport.js +14 -14
  862. package/lib/module/features/replay/transport/DesktopReplayTransport.js.map +1 -1
  863. package/lib/module/features/replay/transport/ReplayTransport.js.map +1 -1
  864. package/lib/module/features/session/BackendSessionAdapter.js +485 -164
  865. package/lib/module/features/session/BackendSessionAdapter.js.map +1 -1
  866. package/lib/module/features/session/DesktopSessionTransport.js +14 -14
  867. package/lib/module/features/session/DesktopSessionTransport.js.map +1 -1
  868. package/lib/module/features/session/JourneyEventPipeline.js +20 -19
  869. package/lib/module/features/session/JourneyEventPipeline.js.map +1 -1
  870. package/lib/module/features/session/ReplayCaptureManager.js +169 -123
  871. package/lib/module/features/session/ReplayCaptureManager.js.map +1 -1
  872. package/lib/module/features/session/ScrollTracker.js +17 -17
  873. package/lib/module/features/session/ScrollTracker.js.map +1 -1
  874. package/lib/module/features/session/SessionManager.js +185 -155
  875. package/lib/module/features/session/SessionManager.js.map +1 -1
  876. package/lib/module/features/session/SyncDecisionEngine.js +23 -23
  877. package/lib/module/features/session/SyncDecisionEngine.js.map +1 -1
  878. package/lib/module/features/session/index.js +5 -5
  879. package/lib/module/features/session/index.js.map +1 -1
  880. package/lib/module/features/session/nativeCapture.js +9 -10
  881. package/lib/module/features/session/nativeCapture.js.map +1 -1
  882. package/lib/module/features/session/outboxFrameCapture.js +18 -17
  883. package/lib/module/features/session/outboxFrameCapture.js.map +1 -1
  884. package/lib/module/features/session/sessionTypes.js +44 -44
  885. package/lib/module/features/session/sessionTypes.js.map +1 -1
  886. package/lib/module/features/skan/skanBridge.js +11 -11
  887. package/lib/module/features/skan/skanBridge.js.map +1 -1
  888. package/lib/module/features/skan/skanConversionManager.js +23 -23
  889. package/lib/module/features/skan/skanConversionManager.js.map +1 -1
  890. package/lib/module/index.js +19 -10
  891. package/lib/module/index.js.map +1 -1
  892. package/lib/module/integrations/fetch/fetchInterceptor.js +21 -21
  893. package/lib/module/integrations/fetch/fetchInterceptor.js.map +1 -1
  894. package/lib/module/integrations/navigation/screenTracker.js.map +1 -1
  895. package/lib/module/integrations/network/bodyCapture.js +69 -69
  896. package/lib/module/integrations/network/bodyCapture.js.map +1 -1
  897. package/lib/module/integrations/xhr/xhrInterceptor.js +24 -24
  898. package/lib/module/integrations/xhr/xhrInterceptor.js.map +1 -1
  899. package/lib/module/metro/index.js +37 -37
  900. package/lib/module/metro/index.js.map +1 -1
  901. package/lib/module/metro/optionalDependencyStub.js +11 -11
  902. package/lib/module/metro/optionalDependencyStub.js.map +1 -1
  903. package/lib/module/metro/optionalModules.js +16 -16
  904. package/lib/module/metro/optionalModules.js.map +1 -1
  905. package/lib/module/pipeline/dispatcher/dispatcher.js.map +1 -1
  906. package/lib/module/pipeline/envelope/envelope.js.map +1 -1
  907. package/lib/module/pipeline/envelope/serializer.js.map +1 -1
  908. package/lib/module/pipeline/processors/dedupe.js.map +1 -1
  909. package/lib/module/pipeline/processors/enrich.js.map +1 -1
  910. package/lib/module/pipeline/processors/sampling.js.map +1 -1
  911. package/lib/module/pipeline/processors/sanitize.js.map +1 -1
  912. package/lib/module/pipeline/queue/flushQueue.js +4 -4
  913. package/lib/module/pipeline/queue/flushQueue.js.map +1 -1
  914. package/lib/module/pipeline/queue/memoryQueue.js.map +1 -1
  915. package/lib/module/pipeline/queue/persistentQueue.js +80 -80
  916. package/lib/module/pipeline/queue/persistentQueue.js.map +1 -1
  917. package/lib/module/pipeline/queue/queuePolicy.js.map +1 -1
  918. package/lib/module/pipeline/scheduler/flushScheduler.js.map +1 -1
  919. package/lib/module/pipeline/scheduler/retryPolicy.js +2 -2
  920. package/lib/module/pipeline/scheduler/retryPolicy.js.map +1 -1
  921. package/lib/module/public/ScaleBunErrorBoundary.js +70 -0
  922. package/lib/module/public/ScaleBunErrorBoundary.js.map +1 -0
  923. package/lib/module/public/ScaleBunFacade.js +424 -276
  924. package/lib/module/public/ScaleBunFacade.js.map +1 -1
  925. package/lib/module/public/ScaleBunProvider.js +3 -3
  926. package/lib/module/public/ScaleBunProvider.js.map +1 -1
  927. package/lib/module/public/typedTracker.js +36 -36
  928. package/lib/module/public/typedTracker.js.map +1 -1
  929. package/lib/module/public/types.js.map +1 -1
  930. package/lib/module/push/PushManager.js +21 -21
  931. package/lib/module/push/PushManager.js.map +1 -1
  932. package/lib/module/push/adapters/ManualAdapter.js +14 -14
  933. package/lib/module/push/adapters/ManualAdapter.js.map +1 -1
  934. package/lib/module/push/adapters/NativeBridgeAdapter.js +17 -17
  935. package/lib/module/push/adapters/NativeBridgeAdapter.js.map +1 -1
  936. package/lib/module/push/adapters/NoopAdapter.js +5 -5
  937. package/lib/module/push/adapters/NoopAdapter.js.map +1 -1
  938. package/lib/module/push/adapters/RNFirebaseMessagingAdapter.js +17 -17
  939. package/lib/module/push/adapters/RNFirebaseMessagingAdapter.js.map +1 -1
  940. package/lib/module/push/adapters/loadMessaging.js +12 -12
  941. package/lib/module/push/adapters/loadMessaging.js.map +1 -1
  942. package/lib/module/push/adapters/loadNotifee.js +12 -12
  943. package/lib/module/push/adapters/loadNotifee.js.map +1 -1
  944. package/lib/module/push/adapters/selectAdapter.js +14 -14
  945. package/lib/module/push/adapters/selectAdapter.js.map +1 -1
  946. package/lib/module/push/detect/capabilities.js +19 -19
  947. package/lib/module/push/detect/capabilities.js.map +1 -1
  948. package/lib/module/push/index.js +3 -3
  949. package/lib/module/push/index.js.map +1 -1
  950. package/lib/module/push/native/nativeNotifications.js +32 -32
  951. package/lib/module/push/native/nativeNotifications.js.map +1 -1
  952. package/lib/module/push/types.js.map +1 -1
  953. package/lib/module/specs/NativeReplaySdk.js +18 -18
  954. package/lib/module/specs/NativeReplaySdk.js.map +1 -1
  955. package/lib/module/specs/NativeScaleBunCrash.js +19 -19
  956. package/lib/module/specs/NativeScaleBunCrash.js.map +1 -1
  957. package/lib/module/specs/NativeScaleBunInstallReferrer.js +14 -14
  958. package/lib/module/specs/NativeScaleBunInstallReferrer.js.map +1 -1
  959. package/lib/module/specs/NativeScaleBunOta.js +21 -21
  960. package/lib/module/specs/NativeScaleBunOta.js.map +1 -1
  961. package/lib/module/specs/NativeScaleBunPerformance.js +15 -15
  962. package/lib/module/specs/NativeScaleBunPerformance.js.map +1 -1
  963. package/lib/module/specs/NativeScaleBunProfiler.js +16 -16
  964. package/lib/module/specs/NativeScaleBunProfiler.js.map +1 -1
  965. package/lib/module/specs/NativeScaleBunStorage.js +29 -29
  966. package/lib/module/specs/NativeScaleBunStorage.js.map +1 -1
  967. package/lib/module/storage/StorageBackend.js +83 -83
  968. package/lib/module/storage/StorageBackend.js.map +1 -1
  969. package/lib/module/storage/db/sqlite.js.map +1 -1
  970. package/lib/module/storage/files/fileStore.js.map +1 -1
  971. package/lib/module/transport/auth/sdkSession.js.map +1 -1
  972. package/lib/module/transport/backoff/exponentialJitter.js +2 -2
  973. package/lib/module/transport/backoff/exponentialJitter.js.map +1 -1
  974. package/lib/module/transport/http/endpoints.js.map +1 -1
  975. package/lib/module/transport/http/httpClient.js +3 -3
  976. package/lib/module/transport/http/httpClient.js.map +1 -1
  977. package/lib/module/transport/rateLimit/retryAfter.js.map +1 -1
  978. package/lib/module/transport/signing/requestSigner.js.map +1 -1
  979. package/lib/module/vendor/protocol/index.js +74 -74
  980. package/lib/module/vendor/protocol/index.js.map +1 -1
  981. package/lib/module/vendor/protocol/internal/validation.js +23 -23
  982. package/lib/module/vendor/protocol/internal/validation.js.map +1 -1
  983. package/lib/module/vendor/sdk-contracts/bridge.js.map +1 -1
  984. package/lib/module/vendor/sdk-contracts/config.js.map +1 -1
  985. package/lib/module/vendor/sdk-contracts/events.js.map +1 -1
  986. package/lib/module/vendor/sdk-contracts/features.js.map +1 -1
  987. package/lib/module/vendor/sdk-contracts/index.js.map +1 -1
  988. package/lib/module/vendor/sdk-contracts/platform.js.map +1 -1
  989. package/lib/module/vendor/sdk-contracts/session-boundary.js.map +1 -1
  990. package/lib/module/vendor/sdk-contracts/session.js.map +1 -1
  991. package/lib/module/vendor/vendor.manifest +10 -10
  992. package/lib/typescript/analytics/EventTracker.d.ts +20 -0
  993. package/lib/typescript/analytics/EventTracker.d.ts.map +1 -1
  994. package/lib/typescript/bootstrap/SDKBootstrapper.d.ts.map +1 -1
  995. package/lib/typescript/core/config/schema.d.ts +1 -1
  996. package/lib/typescript/core/config/schema.d.ts.map +1 -1
  997. package/lib/typescript/core/context/device.d.ts +46 -0
  998. package/lib/typescript/core/context/device.d.ts.map +1 -1
  999. package/lib/typescript/debug/replayWiring.d.ts.map +1 -1
  1000. package/lib/typescript/features/bugreport/BugReportFeature.d.ts +59 -0
  1001. package/lib/typescript/features/bugreport/BugReportFeature.d.ts.map +1 -0
  1002. package/lib/typescript/features/bugreport/buildPayload.d.ts +51 -0
  1003. package/lib/typescript/features/bugreport/buildPayload.d.ts.map +1 -0
  1004. package/lib/typescript/features/crash/CrashFeature.d.ts.map +1 -1
  1005. package/lib/typescript/features/crash/CrashReporter.d.ts +20 -1
  1006. package/lib/typescript/features/crash/CrashReporter.d.ts.map +1 -1
  1007. package/lib/typescript/features/crash/capture.d.ts +21 -2
  1008. package/lib/typescript/features/crash/capture.d.ts.map +1 -1
  1009. package/lib/typescript/features/crash/nativeCrashBridge.d.ts +16 -3
  1010. package/lib/typescript/features/crash/nativeCrashBridge.d.ts.map +1 -1
  1011. package/lib/typescript/features/crash/rejectionHandler.d.ts +46 -0
  1012. package/lib/typescript/features/crash/rejectionHandler.d.ts.map +1 -0
  1013. package/lib/typescript/features/engage/EngagePromptProvider.d.ts.map +1 -1
  1014. package/lib/typescript/features/engage/EngagePromptView.d.ts.map +1 -1
  1015. package/lib/typescript/features/engage/engageThrottle.d.ts +24 -4
  1016. package/lib/typescript/features/engage/engageThrottle.d.ts.map +1 -1
  1017. package/lib/typescript/features/engage/engageTriggerEngine.d.ts.map +1 -1
  1018. package/lib/typescript/features/engage/engageTypes.d.ts +21 -0
  1019. package/lib/typescript/features/engage/engageTypes.d.ts.map +1 -1
  1020. package/lib/typescript/features/journey/ScaleBunDebugRoot.d.ts.map +1 -1
  1021. package/lib/typescript/features/navigation/AutoScreenDetector.d.ts +9 -0
  1022. package/lib/typescript/features/navigation/AutoScreenDetector.d.ts.map +1 -1
  1023. package/lib/typescript/features/ota/OtaOrchestrator.d.ts +75 -3
  1024. package/lib/typescript/features/ota/OtaOrchestrator.d.ts.map +1 -1
  1025. package/lib/typescript/features/ota/OtaTypes.d.ts +42 -0
  1026. package/lib/typescript/features/ota/OtaTypes.d.ts.map +1 -1
  1027. package/lib/typescript/features/ota/deviceAttributes.d.ts +18 -0
  1028. package/lib/typescript/features/ota/deviceAttributes.d.ts.map +1 -0
  1029. package/lib/typescript/features/ota/environment.d.ts +99 -0
  1030. package/lib/typescript/features/ota/environment.d.ts.map +1 -0
  1031. package/lib/typescript/features/ota/geoCountry.d.ts +14 -0
  1032. package/lib/typescript/features/ota/geoCountry.d.ts.map +1 -0
  1033. package/lib/typescript/features/ota/retry.d.ts +53 -0
  1034. package/lib/typescript/features/ota/retry.d.ts.map +1 -0
  1035. package/lib/typescript/features/ota/signature.d.ts +66 -0
  1036. package/lib/typescript/features/ota/signature.d.ts.map +1 -0
  1037. package/lib/typescript/features/ota/useOtaUpdate.d.ts +20 -2
  1038. package/lib/typescript/features/ota/useOtaUpdate.d.ts.map +1 -1
  1039. package/lib/typescript/features/performance/PerformanceFeature.d.ts +0 -1
  1040. package/lib/typescript/features/performance/PerformanceFeature.d.ts.map +1 -1
  1041. package/lib/typescript/features/performance/collectors/FrameMetricsCollector.d.ts +33 -0
  1042. package/lib/typescript/features/performance/collectors/FrameMetricsCollector.d.ts.map +1 -1
  1043. package/lib/typescript/features/performance/transport/PerformanceTransport.d.ts.map +1 -1
  1044. package/lib/typescript/features/session/BackendSessionAdapter.d.ts +135 -4
  1045. package/lib/typescript/features/session/BackendSessionAdapter.d.ts.map +1 -1
  1046. package/lib/typescript/features/session/JourneyEventPipeline.d.ts +2 -0
  1047. package/lib/typescript/features/session/JourneyEventPipeline.d.ts.map +1 -1
  1048. package/lib/typescript/features/session/ReplayCaptureManager.d.ts +38 -1
  1049. package/lib/typescript/features/session/ReplayCaptureManager.d.ts.map +1 -1
  1050. package/lib/typescript/features/session/SessionManager.d.ts.map +1 -1
  1051. package/lib/typescript/features/session/nativeCapture.d.ts +2 -1
  1052. package/lib/typescript/features/session/nativeCapture.d.ts.map +1 -1
  1053. package/lib/typescript/features/session/outboxFrameCapture.d.ts.map +1 -1
  1054. package/lib/typescript/features/session/sessionTypes.d.ts +20 -3
  1055. package/lib/typescript/features/session/sessionTypes.d.ts.map +1 -1
  1056. package/lib/typescript/index.d.ts +7 -0
  1057. package/lib/typescript/index.d.ts.map +1 -1
  1058. package/lib/typescript/public/ScaleBunErrorBoundary.d.ts +44 -0
  1059. package/lib/typescript/public/ScaleBunErrorBoundary.d.ts.map +1 -0
  1060. package/lib/typescript/public/ScaleBunFacade.d.ts +58 -0
  1061. package/lib/typescript/public/ScaleBunFacade.d.ts.map +1 -1
  1062. package/lib/typescript/specs/NativeScaleBunCrash.d.ts +14 -0
  1063. package/lib/typescript/specs/NativeScaleBunCrash.d.ts.map +1 -1
  1064. package/lib/typescript/specs/NativeScaleBunOta.d.ts +11 -0
  1065. package/lib/typescript/specs/NativeScaleBunOta.d.ts.map +1 -1
  1066. package/lib/typescript/vendor/protocol/index.d.ts +17 -17
  1067. package/package.json +12 -14
  1068. package/react-native.config.js +24 -24
  1069. package/scalebun-react-native.podspec +37 -37
  1070. package/src/analytics/EventTracker.ts +489 -462
  1071. package/src/analytics/automaticEvents.ts +105 -105
  1072. package/src/analytics/batching.ts +54 -54
  1073. package/src/analytics/eventLane.ts +26 -26
  1074. package/src/bootstrap/FeatureRegistry.ts +81 -81
  1075. package/src/bootstrap/SDKBootstrapper.ts +610 -585
  1076. package/src/bucketing/fnv1a32.ts +40 -40
  1077. package/src/compat/codepush.ts +118 -118
  1078. package/src/config/ConfigManager.ts +167 -167
  1079. package/src/config/configTypes.ts +32 -32
  1080. package/src/core/architecture.ts +39 -39
  1081. package/src/core/clock/now.ts +6 -6
  1082. package/src/core/config/schema.ts +239 -231
  1083. package/src/core/constants/endpoints.ts +9 -9
  1084. package/src/core/constants/timings.ts +23 -23
  1085. package/src/core/constants/version.ts +6 -6
  1086. package/src/core/context/device.ts +146 -0
  1087. package/src/core/context/user.ts +26 -26
  1088. package/src/core/contracts/IFeature.ts +53 -53
  1089. package/src/core/di/container.ts +26 -26
  1090. package/src/core/encoding/base64.ts +46 -46
  1091. package/src/core/id/deviceId.ts +51 -51
  1092. package/src/core/lifecycle/appLifecycle.ts +33 -33
  1093. package/src/core/lifecycle/crashSafe.ts +29 -29
  1094. package/src/core/logger/errorClassification.ts +108 -108
  1095. package/src/core/logger/internalLogger.ts +65 -65
  1096. package/src/crypto/hmacSha256.ts +106 -106
  1097. package/src/debug/bootstrap.ts +366 -366
  1098. package/src/debug/commands.ts +597 -597
  1099. package/src/debug/configBuilder.ts +56 -56
  1100. package/src/debug/exportBridge.ts +153 -153
  1101. package/src/debug/hostResolver.ts +34 -34
  1102. package/src/debug/index.ts +25 -25
  1103. package/src/debug/metrics.ts +29 -29
  1104. package/src/debug/perf.ts +212 -212
  1105. package/src/debug/perfWiring.ts +119 -119
  1106. package/src/debug/protocol.ts +58 -58
  1107. package/src/debug/redaction.ts +290 -290
  1108. package/src/debug/replayWiring.ts +148 -147
  1109. package/src/debug/screenTracking.ts +55 -55
  1110. package/src/debug/sessionWiring.ts +59 -59
  1111. package/src/debug/stream.ts +561 -561
  1112. package/src/debug/transport.ts +439 -439
  1113. package/src/features/bugreport/BugReportFeature.ts +128 -0
  1114. package/src/features/bugreport/buildPayload.ts +116 -0
  1115. package/src/features/crash/CrashFeature.ts +71 -52
  1116. package/src/features/crash/CrashReporter.ts +179 -140
  1117. package/src/features/crash/NativeCrashFeature.ts +42 -42
  1118. package/src/features/crash/capture.ts +48 -21
  1119. package/src/features/crash/globalHandler.ts +39 -39
  1120. package/src/features/crash/index.ts +8 -8
  1121. package/src/features/crash/nativeCrashBridge.ts +266 -132
  1122. package/src/features/crash/rejectionHandler.ts +134 -0
  1123. package/src/features/engage/EngageAnchor.tsx +159 -159
  1124. package/src/features/engage/EngageArchetypeRenderers.tsx +3716 -3716
  1125. package/src/features/engage/EngageInAppView.tsx +2678 -2678
  1126. package/src/features/engage/EngageInlinePlacement.tsx +169 -169
  1127. package/src/features/engage/EngagePromptProvider.tsx +1318 -1270
  1128. package/src/features/engage/EngagePromptView.tsx +1400 -1364
  1129. package/src/features/engage/EngageTransport.ts +668 -668
  1130. package/src/features/engage/EngageVariantContent.tsx +1483 -1483
  1131. package/src/features/engage/__test-support__/reactNativeStub.js +40 -40
  1132. package/src/features/engage/attachmentCapture.ts +45 -45
  1133. package/src/features/engage/captureVoiceAttachment.ts +81 -81
  1134. package/src/features/engage/engageCoachmarkTour.ts +120 -120
  1135. package/src/features/engage/engageGameLogic.ts +347 -347
  1136. package/src/features/engage/engageMediaSizing.ts +76 -76
  1137. package/src/features/engage/engageMultiStepSheet.ts +53 -53
  1138. package/src/features/engage/engageOutcome.ts +157 -157
  1139. package/src/features/engage/engagePushTokenBridge.ts +84 -84
  1140. package/src/features/engage/engageShakeBridge.ts +67 -67
  1141. package/src/features/engage/engageSignals.ts +40 -40
  1142. package/src/features/engage/engageStoreReviewBridge.ts +48 -48
  1143. package/src/features/engage/engageTestSeenStore.ts +95 -95
  1144. package/src/features/engage/engageThrottle.ts +478 -440
  1145. package/src/features/engage/engageTriggerEngine.ts +350 -335
  1146. package/src/features/engage/engageTypes.ts +712 -691
  1147. package/src/features/engage/engageVariantResolver.ts +364 -364
  1148. package/src/features/engage/engageWindowInsets.ts +108 -108
  1149. package/src/features/engage/gestureTriggerDetector.ts +83 -83
  1150. package/src/features/engage/transcription/TranscriptionProvider.ts +68 -68
  1151. package/src/features/install-referrer/installReferrer.ts +112 -112
  1152. package/src/features/journey/ScaleBunDebugRoot.tsx +727 -726
  1153. package/src/features/journey/ScaleBunFlatList.tsx +39 -39
  1154. package/src/features/journey/ScaleBunImpression.tsx +109 -109
  1155. package/src/features/journey/ScaleBunScrollView.tsx +72 -72
  1156. package/src/features/journey/ScaleBunSectionList.tsx +39 -39
  1157. package/src/features/journey/calibrationContext.ts +53 -53
  1158. package/src/features/journey/gestureBuffer.ts +59 -59
  1159. package/src/features/journey/gestureDetector.ts +162 -162
  1160. package/src/features/journey/impression.ts +92 -92
  1161. package/src/features/journey/journeyManager.ts +466 -466
  1162. package/src/features/journey/journeyTypes.ts +215 -215
  1163. package/src/features/journey/navDetector.ts +149 -149
  1164. package/src/features/journey/screenshotHelper.ts +137 -137
  1165. package/src/features/journey/targetRegistry.ts +43 -43
  1166. package/src/features/journey/touchTarget.ts +128 -128
  1167. package/src/features/navigation/AutoScreenDetector.ts +503 -448
  1168. package/src/features/network/NetworkFeature.ts +144 -144
  1169. package/src/features/network/index.ts +31 -31
  1170. package/src/features/ota/OtaEventEmitter.ts +128 -128
  1171. package/src/features/ota/OtaOrchestrator.ts +963 -323
  1172. package/src/features/ota/OtaTypes.ts +118 -62
  1173. package/src/features/ota/deviceAttributes.ts +46 -0
  1174. package/src/features/ota/environment.ts +199 -0
  1175. package/src/features/ota/geoCountry.ts +85 -0
  1176. package/src/features/ota/retry.ts +123 -0
  1177. package/src/features/ota/signature.ts +123 -0
  1178. package/src/features/ota/useOtaUpdate.ts +152 -134
  1179. package/src/features/performance/PerformanceFeature.ts +597 -584
  1180. package/src/features/performance/collectors/AppLaunchCollector.ts +117 -117
  1181. package/src/features/performance/collectors/AutoScreenLoadCollector.ts +258 -258
  1182. package/src/features/performance/collectors/CustomTraceCollector.ts +116 -116
  1183. package/src/features/performance/collectors/FrameMetricsCollector.ts +181 -119
  1184. package/src/features/performance/collectors/JsStallCollector.ts +165 -165
  1185. package/src/features/performance/collectors/NetworkPerfCollector.ts +69 -69
  1186. package/src/features/performance/collectors/ScreenLoadCollector.ts +95 -95
  1187. package/src/features/performance/collectors/UiHangCollector.ts +98 -98
  1188. package/src/features/performance/config.ts +136 -136
  1189. package/src/features/performance/getNativePerformanceModule.ts +38 -38
  1190. package/src/features/performance/index.ts +28 -28
  1191. package/src/features/performance/metrics/MetricsEngine.ts +152 -152
  1192. package/src/features/performance/models.ts +235 -235
  1193. package/src/features/performance/transport/PerformanceTransport.ts +161 -143
  1194. package/src/features/profiler/ProfilerFeature.ts +661 -661
  1195. package/src/features/profiler/config.ts +230 -230
  1196. package/src/features/profiler/contracts.ts +176 -176
  1197. package/src/features/profiler/index.ts +45 -45
  1198. package/src/features/profiler/models.ts +430 -430
  1199. package/src/features/profiler/transport/ProfilerTransport.ts +93 -93
  1200. package/src/features/replay/bridge/adapters/bridgeAdapter.ts +230 -230
  1201. package/src/features/replay/bridge/eventEmitter.ts +176 -176
  1202. package/src/features/replay/bridge/nativeModule.ts +241 -241
  1203. package/src/features/replay/core/clock/clock.ts +38 -38
  1204. package/src/features/replay/core/config/defaults.ts +66 -66
  1205. package/src/features/replay/core/config/validator.ts +113 -113
  1206. package/src/features/replay/core/env/environmentDetector.ts +21 -21
  1207. package/src/features/replay/core/errors/safeCall.ts +34 -34
  1208. package/src/features/replay/core/ids/sessionId.ts +44 -44
  1209. package/src/features/replay/core/logger/logger.ts +40 -40
  1210. package/src/features/replay/core/privacy/privacyTypes.ts +41 -41
  1211. package/src/features/replay/core/queue/boundedQueue.ts +71 -71
  1212. package/src/features/replay/integrations/alert/alertInstrumentation.ts +277 -277
  1213. package/src/features/replay/integrations/logs/consoleIntegration.ts +116 -116
  1214. package/src/features/replay/integrations/network/networkAdapter.ts +128 -128
  1215. package/src/features/replay/integrations/react-navigation/navigationIntegration.ts +89 -89
  1216. package/src/features/replay/integrations/touch/ReplayRoot.tsx +114 -114
  1217. package/src/features/replay/pipeline/batching/batchManager.ts +133 -133
  1218. package/src/features/replay/pipeline/envelope/envelopeBuilder.ts +66 -66
  1219. package/src/features/replay/pipeline/retry/retryPolicy.ts +62 -62
  1220. package/src/features/replay/pipeline/transport/transportTypes.ts +85 -85
  1221. package/src/features/replay/public/api.ts +364 -364
  1222. package/src/features/replay/public/enums.ts +78 -78
  1223. package/src/features/replay/public/types.ts +297 -297
  1224. package/src/features/replay/replay/breadcrumbs/breadcrumbCollector.ts +115 -115
  1225. package/src/features/replay/replay/frames/frameModels.ts +45 -45
  1226. package/src/features/replay/replay/session/sessionOrchestrator.ts +286 -286
  1227. package/src/features/replay/replay/timeline/timelineModels.ts +129 -129
  1228. package/src/features/replay/transport/BackendReplayTransport.ts +215 -215
  1229. package/src/features/replay/transport/CompositeReplayTransport.ts +82 -82
  1230. package/src/features/replay/transport/DesktopReplayTransport.ts +140 -140
  1231. package/src/features/replay/transport/ReplayTransport.ts +84 -84
  1232. package/src/features/session/BackendSessionAdapter.ts +1568 -1233
  1233. package/src/features/session/DesktopSessionTransport.ts +128 -128
  1234. package/src/features/session/JourneyEventPipeline.ts +276 -273
  1235. package/src/features/session/ReplayCaptureManager.ts +998 -946
  1236. package/src/features/session/ScrollTracker.ts +166 -166
  1237. package/src/features/session/SessionManager.ts +1248 -1209
  1238. package/src/features/session/SyncDecisionEngine.ts +117 -117
  1239. package/src/features/session/index.ts +88 -88
  1240. package/src/features/session/nativeCapture.ts +39 -38
  1241. package/src/features/session/outboxFrameCapture.ts +75 -74
  1242. package/src/features/session/sessionTypes.ts +514 -491
  1243. package/src/features/skan/skanBridge.ts +61 -61
  1244. package/src/features/skan/skanConversionManager.ts +173 -173
  1245. package/src/index.ts +200 -191
  1246. package/src/integrations/fetch/fetchInterceptor.ts +182 -182
  1247. package/src/integrations/network/bodyCapture.ts +328 -328
  1248. package/src/integrations/xhr/xhrInterceptor.ts +231 -231
  1249. package/src/metro/index.ts +164 -164
  1250. package/src/metro/optionalDependencyStub.ts +13 -13
  1251. package/src/metro/optionalModules.ts +27 -27
  1252. package/src/pipeline/dispatcher/dispatcher.ts +22 -22
  1253. package/src/pipeline/envelope/envelope.ts +31 -31
  1254. package/src/pipeline/envelope/serializer.ts +14 -14
  1255. package/src/pipeline/processors/enrich.ts +11 -11
  1256. package/src/pipeline/processors/sanitize.ts +23 -23
  1257. package/src/pipeline/queue/flushQueue.ts +144 -144
  1258. package/src/pipeline/queue/memoryQueue.ts +31 -31
  1259. package/src/pipeline/queue/persistentQueue.ts +414 -414
  1260. package/src/pipeline/scheduler/flushScheduler.ts +47 -47
  1261. package/src/pipeline/scheduler/retryPolicy.ts +8 -8
  1262. package/src/public/ScaleBunErrorBoundary.tsx +79 -0
  1263. package/src/public/ScaleBunFacade.ts +1630 -1479
  1264. package/src/public/ScaleBunProvider.tsx +91 -91
  1265. package/src/public/typedTracker.ts +123 -123
  1266. package/src/public/types.ts +312 -312
  1267. package/src/push/PushManager.ts +318 -318
  1268. package/src/push/adapters/ManualAdapter.ts +100 -100
  1269. package/src/push/adapters/NativeBridgeAdapter.ts +142 -142
  1270. package/src/push/adapters/NoopAdapter.ts +46 -46
  1271. package/src/push/adapters/RNFirebaseMessagingAdapter.ts +271 -271
  1272. package/src/push/adapters/loadMessaging.ts +24 -24
  1273. package/src/push/adapters/loadNotifee.ts +29 -29
  1274. package/src/push/adapters/selectAdapter.ts +176 -176
  1275. package/src/push/detect/capabilities.ts +124 -124
  1276. package/src/push/index.ts +22 -22
  1277. package/src/push/native/nativeNotifications.ts +216 -216
  1278. package/src/push/types.ts +159 -159
  1279. package/src/specs/NativeReplaySdk.ts +99 -99
  1280. package/src/specs/NativeScaleBunCrash.ts +52 -36
  1281. package/src/specs/NativeScaleBunInstallReferrer.ts +29 -29
  1282. package/src/specs/NativeScaleBunOta.ts +97 -85
  1283. package/src/specs/NativeScaleBunPerformance.ts +34 -34
  1284. package/src/specs/NativeScaleBunProfiler.ts +41 -41
  1285. package/src/specs/NativeScaleBunStorage.ts +59 -59
  1286. package/src/storage/StorageBackend.ts +272 -272
  1287. package/src/transport/auth/sdkSession.ts +27 -27
  1288. package/src/transport/backoff/exponentialJitter.ts +9 -9
  1289. package/src/transport/http/endpoints.ts +33 -33
  1290. package/src/transport/http/httpClient.ts +73 -73
  1291. package/src/vendor/protocol/index.ts +391 -391
  1292. package/src/vendor/protocol/internal/validation.ts +497 -497
  1293. package/src/vendor/sdk-contracts/bridge.ts +162 -162
  1294. package/src/vendor/sdk-contracts/config.ts +192 -192
  1295. package/src/vendor/sdk-contracts/events.ts +50 -50
  1296. package/src/vendor/sdk-contracts/features.ts +42 -42
  1297. package/src/vendor/sdk-contracts/index.ts +98 -98
  1298. package/src/vendor/sdk-contracts/platform.ts +42 -42
  1299. package/src/vendor/sdk-contracts/session-boundary.ts +55 -55
  1300. package/src/vendor/sdk-contracts/session.ts +225 -225
  1301. package/src/vendor/vendor.manifest +10 -10
  1302. package/android/build/generated/source/buildConfig/debug/com/scalebun/sdk/BuildConfig.java +0 -12
  1303. package/android/build/generated/source/codegen/java/com/scalebun/spec/NativeReplaySdkSpec.java +0 -208
  1304. package/android/build/generated/source/codegen/java/com/scalebun/spec/NativeScaleBunCrashSpec.java +0 -46
  1305. package/android/build/generated/source/codegen/java/com/scalebun/spec/NativeScaleBunInstallReferrerSpec.java +0 -38
  1306. package/android/build/generated/source/codegen/java/com/scalebun/spec/NativeScaleBunOtaSpec.java +0 -63
  1307. package/android/build/generated/source/codegen/java/com/scalebun/spec/NativeScaleBunPerformanceSpec.java +0 -70
  1308. package/android/build/generated/source/codegen/java/com/scalebun/spec/NativeScaleBunProfilerSpec.java +0 -96
  1309. package/android/build/generated/source/codegen/java/com/scalebun/spec/NativeScaleBunStorageSpec.java +0 -50
  1310. package/android/build/generated/source/codegen/jni/CMakeLists.txt +0 -28
  1311. package/android/build/generated/source/codegen/jni/ScaleBunSpec-generated.cpp +0 -554
  1312. package/android/build/generated/source/codegen/jni/ScaleBunSpec.h +0 -79
  1313. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/ComponentDescriptors.cpp +0 -22
  1314. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/ComponentDescriptors.h +0 -24
  1315. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/EventEmitters.cpp +0 -16
  1316. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/EventEmitters.h +0 -17
  1317. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/Props.cpp +0 -19
  1318. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/Props.h +0 -18
  1319. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/ScaleBunSpecJSI-generated.cpp +0 -595
  1320. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/ScaleBunSpecJSI.h +0 -1070
  1321. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/ShadowNodes.cpp +0 -17
  1322. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/ShadowNodes.h +0 -23
  1323. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/States.cpp +0 -16
  1324. package/android/build/generated/source/codegen/jni/react/renderer/components/ScaleBunSpec/States.h +0 -20
  1325. package/android/build/generated/source/codegen/schema.json +0 -1
  1326. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +0 -20
  1327. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +0 -18
  1328. package/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +0 -6
  1329. package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +0 -1
  1330. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  1331. package/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
  1332. package/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +0 -0
  1333. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +0 -1
  1334. package/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +0 -2
  1335. package/android/build/intermediates/incremental/mergeDebugAssets/merger.xml +0 -2
  1336. package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +0 -2
  1337. package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +0 -2
  1338. package/android/build/intermediates/java_res/debug/processDebugJavaRes/out/META-INF/scalebun_react-native_debug.kotlin_module +0 -0
  1339. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/sdk/BuildConfig.class +0 -0
  1340. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/spec/NativeReplaySdkSpec.class +0 -0
  1341. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/spec/NativeScaleBunCrashSpec.class +0 -0
  1342. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/spec/NativeScaleBunInstallReferrerSpec.class +0 -0
  1343. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/spec/NativeScaleBunOtaSpec.class +0 -0
  1344. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/spec/NativeScaleBunPerformanceSpec.class +0 -0
  1345. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/spec/NativeScaleBunProfilerSpec.class +0 -0
  1346. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/scalebun/spec/NativeScaleBunStorageSpec.class +0 -0
  1347. package/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +0 -2
  1348. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +0 -24
  1349. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +0 -20
  1350. package/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +0 -1
  1351. package/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +0 -1
  1352. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/META-INF/scalebun_react-native_debug.kotlin_module +0 -0
  1353. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/crash/CrashStorage.class +0 -0
  1354. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/crash/NativeCrashHandler$Companion.class +0 -0
  1355. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/crash/NativeCrashHandler.class +0 -0
  1356. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/ANRWatchdog$HangInfo.class +0 -0
  1357. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/ANRWatchdog.class +0 -0
  1358. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/AppStartCollector$AppStartInfo.class +0 -0
  1359. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/AppStartCollector$Breakdown.class +0 -0
  1360. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/AppStartCollector$start$1.class +0 -0
  1361. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/AppStartCollector.class +0 -0
  1362. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/FrameMetricsCollector$Companion.class +0 -0
  1363. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/FrameMetricsCollector$FrameMetricsSnapshot.class +0 -0
  1364. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/FrameMetricsCollector$start$1.class +0 -0
  1365. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/FrameMetricsCollector$startChoreographerFallback$1.class +0 -0
  1366. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/FrameMetricsCollector.class +0 -0
  1367. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/PerformanceCore$Listener.class +0 -0
  1368. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/core/performance/PerformanceCore.class +0 -0
  1369. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/ProfilerModule$Companion.class +0 -0
  1370. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/ProfilerModule.class +0 -0
  1371. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/ProfilerPackage.class +0 -0
  1372. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/ProfilerSpec.class +0 -0
  1373. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/CpuCollector.class +0 -0
  1374. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/IncidentDetector.class +0 -0
  1375. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/MemoryCollector.class +0 -0
  1376. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/RenderCollector$frameCallback$1.class +0 -0
  1377. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/RenderCollector.class +0 -0
  1378. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/SamplerScheduler.class +0 -0
  1379. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/SamplerSchedulerKt.class +0 -0
  1380. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/ThreadCollector$WhenMappings.class +0 -0
  1381. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/profiler/collectors/ThreadCollector.class +0 -0
  1382. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/ReplaySdkModule$Companion.class +0 -0
  1383. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/ReplaySdkModule$registerConnectivity$cb$1.class +0 -0
  1384. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/ReplaySdkModule.class +0 -0
  1385. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/ReplaySdkPackage.class +0 -0
  1386. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/ReplaySdkSpec.class +0 -0
  1387. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/CaptureReason$Companion.class +0 -0
  1388. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/CaptureReason.class +0 -0
  1389. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/FrameCaptureManager$startFrequencyTimer$1.class +0 -0
  1390. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/FrameCaptureManager.class +0 -0
  1391. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/FrameCaptureScheduler$Companion.class +0 -0
  1392. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/FrameCaptureScheduler$FrameRequest.class +0 -0
  1393. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/FrameCaptureScheduler.class +0 -0
  1394. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/UiStabilityDetector$Companion.class +0 -0
  1395. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/UiStabilityDetector$SettleWatch.class +0 -0
  1396. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/UiStabilityDetector$StabilityWatch.class +0 -0
  1397. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/capture/UiStabilityDetector.class +0 -0
  1398. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/CaptureMode$Companion.class +0 -0
  1399. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/CaptureMode.class +0 -0
  1400. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/ReplayConfig$Companion.class +0 -0
  1401. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/ReplayConfig.class +0 -0
  1402. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/ReplayLogger.class +0 -0
  1403. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/ScreenshotQuality$Companion.class +0 -0
  1404. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/ScreenshotQuality.class +0 -0
  1405. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/SessionIdGenerator.class +0 -0
  1406. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/core/SessionState.class +0 -0
  1407. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/models/ReplayFrame.class +0 -0
  1408. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/models/ReplaySession.class +0 -0
  1409. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/models/TimelineEvent.class +0 -0
  1410. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/NativeOutbox$Companion.class +0 -0
  1411. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/NativeOutbox$enforceLimits$lambda$37$$inlined$sortedBy$1.class +0 -0
  1412. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/NativeOutbox.class +0 -0
  1413. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/OutboxUploader$NetResult$NetworkError.class +0 -0
  1414. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/OutboxUploader$NetResult$Response.class +0 -0
  1415. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/OutboxUploader$NetResult.class +0 -0
  1416. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/OutboxUploader$Outcome.class +0 -0
  1417. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/OutboxUploader$WhenMappings.class +0 -0
  1418. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/outbox/OutboxUploader.class +0 -0
  1419. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/privacy/PrivacyMaskProcessor.class +0 -0
  1420. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/session/SessionManager.class +0 -0
  1421. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/storage/ReplayStorage$enforceStorageLimit$$inlined$sortedBy$1.class +0 -0
  1422. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/storage/ReplayStorage.class +0 -0
  1423. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/timeline/TimelineCollector.class +0 -0
  1424. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/tracking/DialogTouchObserver$start$runnable$1.class +0 -0
  1425. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/tracking/DialogTouchObserver.class +0 -0
  1426. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/tracking/InteractionTracker.class +0 -0
  1427. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/tracking/NativeTouchInterceptor.class +0 -0
  1428. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/tracking/ScreenTracker.class +0 -0
  1429. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/transport/ReplayTransport$UploadResult.class +0 -0
  1430. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/transport/ReplayTransport$upload$2.class +0 -0
  1431. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/transport/ReplayTransport.class +0 -0
  1432. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/voice/VoiceRecorder$Companion.class +0 -0
  1433. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/voice/VoiceRecorder$Result.class +0 -0
  1434. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/voice/VoiceRecorder.class +0 -0
  1435. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/voice/VoiceTranscriber$TranscriptResult.class +0 -0
  1436. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/voice/VoiceTranscriber$listener$1.class +0 -0
  1437. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/replaysdk/voice/VoiceTranscriber.class +0 -0
  1438. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/ScaleBunPackage$Companion.class +0 -0
  1439. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/ScaleBunPackage.class +0 -0
  1440. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/crash/ScaleBunCrashModule$Companion.class +0 -0
  1441. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/crash/ScaleBunCrashModule.class +0 -0
  1442. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/crash/ScaleBunCrashPackage.class +0 -0
  1443. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/crash/ScaleBunCrashSpec.class +0 -0
  1444. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/engage/ScaleBunEngageModule$Companion.class +0 -0
  1445. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/engage/ScaleBunEngageModule$WindowInsetEdges.class +0 -0
  1446. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/engage/ScaleBunEngageModule$shakeListener$1.class +0 -0
  1447. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/engage/ScaleBunEngageModule.class +0 -0
  1448. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/engage/ScaleBunEngagePackage.class +0 -0
  1449. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/engage/ScaleBunNotificationPresenter.class +0 -0
  1450. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/ota/ScaleBunOtaModule$Companion.class +0 -0
  1451. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/ota/ScaleBunOtaModule.class +0 -0
  1452. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/ota/ScaleBunOtaSpec.class +0 -0
  1453. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/ota/SlotManager$Companion.class +0 -0
  1454. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/ota/SlotManager.class +0 -0
  1455. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/performance/PerformanceModule$Companion.class +0 -0
  1456. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/performance/PerformanceModule$coreListener$1.class +0 -0
  1457. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/performance/PerformanceModule.class +0 -0
  1458. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/performance/PerformanceSpec.class +0 -0
  1459. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/referrer/ScaleBunInstallReferrerModule$Companion.class +0 -0
  1460. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/referrer/ScaleBunInstallReferrerModule$getInstallReferrer$1.class +0 -0
  1461. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/referrer/ScaleBunInstallReferrerModule.class +0 -0
  1462. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/referrer/ScaleBunInstallReferrerSpec.class +0 -0
  1463. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/storage/ScaleBunStorageModule$Companion.class +0 -0
  1464. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/storage/ScaleBunStorageModule.class +0 -0
  1465. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/rn/storage/ScaleBunStorageSpec.class +0 -0
  1466. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/sdk/BuildConfig.class +0 -0
  1467. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/spec/NativeReplaySdkSpec.class +0 -0
  1468. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/spec/NativeScaleBunCrashSpec.class +0 -0
  1469. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/spec/NativeScaleBunInstallReferrerSpec.class +0 -0
  1470. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/spec/NativeScaleBunOtaSpec.class +0 -0
  1471. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/spec/NativeScaleBunPerformanceSpec.class +0 -0
  1472. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/spec/NativeScaleBunProfilerSpec.class +0 -0
  1473. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/spec/NativeScaleBunStorageSpec.class +0 -0
  1474. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/storage/KvFileStore$Companion.class +0 -0
  1475. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/scalebun/storage/KvFileStore.class +0 -0
  1476. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  1477. package/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +0 -1
  1478. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
  1479. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream +0 -0
  1480. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len +0 -0
  1481. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len +0 -0
  1482. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
  1483. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i +0 -0
  1484. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len +0 -0
  1485. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
  1486. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream +0 -0
  1487. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len +0 -0
  1488. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len +0 -0
  1489. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
  1490. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i +0 -0
  1491. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len +0 -0
  1492. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
  1493. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream +0 -0
  1494. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len +0 -0
  1495. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len +0 -0
  1496. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
  1497. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i +0 -0
  1498. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len +0 -0
  1499. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab +0 -0
  1500. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream +0 -0
  1501. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len +0 -0
  1502. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len +0 -0
  1503. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at +0 -0
  1504. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i +0 -0
  1505. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len +0 -0
  1506. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
  1507. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
  1508. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
  1509. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
  1510. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
  1511. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
  1512. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len +0 -0
  1513. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab +0 -0
  1514. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream +0 -0
  1515. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream.len +0 -0
  1516. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.len +0 -0
  1517. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.values.at +0 -0
  1518. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i +0 -0
  1519. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i.len +0 -0
  1520. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
  1521. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream +0 -0
  1522. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len +0 -0
  1523. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len +0 -0
  1524. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values +0 -0
  1525. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
  1526. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.s +0 -1
  1527. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i +0 -0
  1528. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len +0 -0
  1529. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
  1530. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream +0 -0
  1531. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len +0 -0
  1532. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len +0 -0
  1533. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
  1534. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i +0 -0
  1535. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len +0 -0
  1536. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
  1537. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream +0 -0
  1538. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len +0 -0
  1539. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.len +0 -0
  1540. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
  1541. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i +0 -0
  1542. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i.len +0 -0
  1543. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
  1544. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream +0 -0
  1545. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len +0 -0
  1546. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.len +0 -0
  1547. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
  1548. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i +0 -0
  1549. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i.len +0 -0
  1550. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +0 -2
  1551. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
  1552. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream +0 -0
  1553. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len +0 -0
  1554. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len +0 -0
  1555. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
  1556. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i +0 -0
  1557. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len +0 -0
  1558. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
  1559. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
  1560. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
  1561. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
  1562. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
  1563. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i +0 -0
  1564. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len +0 -0
  1565. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
  1566. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
  1567. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
  1568. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
  1569. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values +0 -0
  1570. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
  1571. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.s +0 -1
  1572. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
  1573. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len +0 -0
  1574. package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  1575. package/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
  1576. package/android/build/kotlin/compileDebugKotlin/local-state/build-history.bin +0 -0
  1577. package/android/build/outputs/logs/manifest-merger-debug-report.txt +0 -25
  1578. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  1579. package/android/build/tmp/kotlin-classes/debug/META-INF/scalebun_react-native_debug.kotlin_module +0 -0
  1580. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/crash/CrashStorage.class +0 -0
  1581. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/crash/NativeCrashHandler$Companion.class +0 -0
  1582. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/crash/NativeCrashHandler.class +0 -0
  1583. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/ANRWatchdog$HangInfo.class +0 -0
  1584. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/ANRWatchdog.class +0 -0
  1585. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/AppStartCollector$AppStartInfo.class +0 -0
  1586. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/AppStartCollector$Breakdown.class +0 -0
  1587. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/AppStartCollector$start$1.class +0 -0
  1588. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/AppStartCollector.class +0 -0
  1589. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/FrameMetricsCollector$Companion.class +0 -0
  1590. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/FrameMetricsCollector$FrameMetricsSnapshot.class +0 -0
  1591. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/FrameMetricsCollector$start$1.class +0 -0
  1592. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/FrameMetricsCollector$startChoreographerFallback$1.class +0 -0
  1593. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/FrameMetricsCollector.class +0 -0
  1594. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/PerformanceCore$Listener.class +0 -0
  1595. package/android/build/tmp/kotlin-classes/debug/com/scalebun/core/performance/PerformanceCore.class +0 -0
  1596. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/ProfilerModule$Companion.class +0 -0
  1597. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/ProfilerModule.class +0 -0
  1598. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/ProfilerPackage.class +0 -0
  1599. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/ProfilerSpec.class +0 -0
  1600. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/CpuCollector.class +0 -0
  1601. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/IncidentDetector.class +0 -0
  1602. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/MemoryCollector.class +0 -0
  1603. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/RenderCollector$frameCallback$1.class +0 -0
  1604. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/RenderCollector.class +0 -0
  1605. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/SamplerScheduler.class +0 -0
  1606. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/SamplerSchedulerKt.class +0 -0
  1607. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/ThreadCollector$WhenMappings.class +0 -0
  1608. package/android/build/tmp/kotlin-classes/debug/com/scalebun/profiler/collectors/ThreadCollector.class +0 -0
  1609. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/ReplaySdkModule$Companion.class +0 -0
  1610. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/ReplaySdkModule$registerConnectivity$cb$1.class +0 -0
  1611. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/ReplaySdkModule.class +0 -0
  1612. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/ReplaySdkPackage.class +0 -0
  1613. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/ReplaySdkSpec.class +0 -0
  1614. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/CaptureReason$Companion.class +0 -0
  1615. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/CaptureReason.class +0 -0
  1616. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/FrameCaptureManager$startFrequencyTimer$1.class +0 -0
  1617. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/FrameCaptureManager.class +0 -0
  1618. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/FrameCaptureScheduler$Companion.class +0 -0
  1619. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/FrameCaptureScheduler$FrameRequest.class +0 -0
  1620. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/FrameCaptureScheduler.class +0 -0
  1621. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/UiStabilityDetector$Companion.class +0 -0
  1622. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/UiStabilityDetector$SettleWatch.class +0 -0
  1623. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/UiStabilityDetector$StabilityWatch.class +0 -0
  1624. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/capture/UiStabilityDetector.class +0 -0
  1625. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/CaptureMode$Companion.class +0 -0
  1626. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/CaptureMode.class +0 -0
  1627. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/ReplayConfig$Companion.class +0 -0
  1628. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/ReplayConfig.class +0 -0
  1629. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/ReplayLogger.class +0 -0
  1630. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/ScreenshotQuality$Companion.class +0 -0
  1631. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/ScreenshotQuality.class +0 -0
  1632. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/SessionIdGenerator.class +0 -0
  1633. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/core/SessionState.class +0 -0
  1634. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/models/ReplayFrame.class +0 -0
  1635. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/models/ReplaySession.class +0 -0
  1636. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/models/TimelineEvent.class +0 -0
  1637. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/NativeOutbox$Companion.class +0 -0
  1638. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/NativeOutbox$enforceLimits$lambda$37$$inlined$sortedBy$1.class +0 -0
  1639. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/NativeOutbox.class +0 -0
  1640. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/OutboxUploader$NetResult$NetworkError.class +0 -0
  1641. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/OutboxUploader$NetResult$Response.class +0 -0
  1642. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/OutboxUploader$NetResult.class +0 -0
  1643. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/OutboxUploader$Outcome.class +0 -0
  1644. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/OutboxUploader$WhenMappings.class +0 -0
  1645. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/outbox/OutboxUploader.class +0 -0
  1646. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/privacy/PrivacyMaskProcessor.class +0 -0
  1647. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/session/SessionManager.class +0 -0
  1648. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/storage/ReplayStorage$enforceStorageLimit$$inlined$sortedBy$1.class +0 -0
  1649. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/storage/ReplayStorage.class +0 -0
  1650. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/timeline/TimelineCollector.class +0 -0
  1651. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/tracking/DialogTouchObserver$start$runnable$1.class +0 -0
  1652. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/tracking/DialogTouchObserver.class +0 -0
  1653. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/tracking/InteractionTracker.class +0 -0
  1654. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/tracking/NativeTouchInterceptor.class +0 -0
  1655. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/tracking/ScreenTracker.class +0 -0
  1656. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/transport/ReplayTransport$UploadResult.class +0 -0
  1657. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/transport/ReplayTransport$upload$2.class +0 -0
  1658. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/transport/ReplayTransport.class +0 -0
  1659. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/voice/VoiceRecorder$Companion.class +0 -0
  1660. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/voice/VoiceRecorder$Result.class +0 -0
  1661. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/voice/VoiceRecorder.class +0 -0
  1662. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/voice/VoiceTranscriber$TranscriptResult.class +0 -0
  1663. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/voice/VoiceTranscriber$listener$1.class +0 -0
  1664. package/android/build/tmp/kotlin-classes/debug/com/scalebun/replaysdk/voice/VoiceTranscriber.class +0 -0
  1665. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/ScaleBunPackage$Companion.class +0 -0
  1666. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/ScaleBunPackage.class +0 -0
  1667. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/crash/ScaleBunCrashModule$Companion.class +0 -0
  1668. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/crash/ScaleBunCrashModule.class +0 -0
  1669. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/crash/ScaleBunCrashPackage.class +0 -0
  1670. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/crash/ScaleBunCrashSpec.class +0 -0
  1671. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/engage/ScaleBunEngageModule$Companion.class +0 -0
  1672. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/engage/ScaleBunEngageModule$WindowInsetEdges.class +0 -0
  1673. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/engage/ScaleBunEngageModule$shakeListener$1.class +0 -0
  1674. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/engage/ScaleBunEngageModule.class +0 -0
  1675. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/engage/ScaleBunEngagePackage.class +0 -0
  1676. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/engage/ScaleBunNotificationPresenter.class +0 -0
  1677. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/ota/ScaleBunOtaModule$Companion.class +0 -0
  1678. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/ota/ScaleBunOtaModule.class +0 -0
  1679. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/ota/ScaleBunOtaSpec.class +0 -0
  1680. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/ota/SlotManager$Companion.class +0 -0
  1681. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/ota/SlotManager.class +0 -0
  1682. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/performance/PerformanceModule$Companion.class +0 -0
  1683. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/performance/PerformanceModule$coreListener$1.class +0 -0
  1684. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/performance/PerformanceModule.class +0 -0
  1685. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/performance/PerformanceSpec.class +0 -0
  1686. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/referrer/ScaleBunInstallReferrerModule$Companion.class +0 -0
  1687. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/referrer/ScaleBunInstallReferrerModule$getInstallReferrer$1.class +0 -0
  1688. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/referrer/ScaleBunInstallReferrerModule.class +0 -0
  1689. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/referrer/ScaleBunInstallReferrerSpec.class +0 -0
  1690. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/storage/ScaleBunStorageModule$Companion.class +0 -0
  1691. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/storage/ScaleBunStorageModule.class +0 -0
  1692. package/android/build/tmp/kotlin-classes/debug/com/scalebun/rn/storage/ScaleBunStorageSpec.class +0 -0
  1693. package/android/build/tmp/kotlin-classes/debug/com/scalebun/storage/KvFileStore$Companion.class +0 -0
  1694. package/android/build/tmp/kotlin-classes/debug/com/scalebun/storage/KvFileStore.class +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["DevSettings","NativeModules","Platform","logger","noThrow","NativeScaleBunOta","otaEventEmitter","DEFAULT_HEALTHY_AFTER_MS","DEFAULT_MAX_REVERT_ATTEMPTS","OtaOrchestrator","enabled","currentBundle","isRestartRequiredState","healthyTimer","bootGuardConfig","init","config","warn","debug","checkBootGuardRecovery","stateJson","getSlotState","state","JSON","parse","bootGuardReverted","emitSimple","previous","bundleId","reason","isEnabled","isRestartRequired","checkForUpdate","requestParams","payload","appVersion","platform","OS","installationId","currentBundleId","id","currentBundleHash","sha256","url","apiUrl","replace","res","fetch","method","headers","clientKey","body","stringify","ok","Error","status","data","json","err","error","message","action","sync","params","checkRes","startBootGuardHeartbeat","reverted","revertToPrevious","autoRestart","restart","bundle","patchUsed","version","downloadStart","Date","now","staged","patch","stagePatch","size","toFixed","patchErr","stageBundle","downloadDuration","durationMs","applied","applyUpdate","flush","isMandatory","clearTimeout","bootMarkerPresent","healthyMs","healthyAfterMs","setTimeout","markHealthy","info","reload","RNReload","otaOrchestrator"],"sourceRoot":"..\\..\\..\\..\\src","sources":["features/ota/OtaOrchestrator.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["AppState","DeviceEventEmitter","DevSettings","NativeEventEmitter","NativeModules","Platform","logger","noThrow","NativeScaleBunOta","otaEventEmitter","getDeviceCountry","prefetchDeviceCountry","deviceTargetingAttributes","K_INSTALLATION_ID","verifyBundleSignature","detectOtaEnvironment","retryWithBackoff","isRetryableNetworkError","HttpStatusError","createStorageBackend","resolveMobileOS","readRunningBundleMarker","id","globalThis","__SCALEBUN_OTA_ID__","length","subscribeNativeProgress","onTick","OS","eventsModule","ScaleBunOtaEvents","emitter","sub","addListener","remove","PROGRESS_POST_INTERVAL_MS","resolveInstallationId","storage","existing","get","Math","random","toString","slice","set","deliverOtaEvents","params","events","flush","mobileOS","items","map","e","kind","type","bundleId","installationId","platform","appVersion","durationMs","errorCode","error","reason","patchUsed","timestamp","base","apiUrl","replace","res","fetch","method","headers","clientKey","body","JSON","stringify","ok","Error","status","debug","err","emit","message","DEFAULT_HEALTHY_AFTER_MS","DEFAULT_MAX_REVERT_ATTEMPTS","OtaOrchestrator","enabled","currentBundle","isRestartRequiredState","healthyTimer","bootGuardConfig","environment","initialized","storageBackend","init","config","signatureConfig","signature","warn","supported","blockReason","bridgeless","rnVersion","requiresReactHostIntegration","rnVersionString","hermes","hermesBytecodeVersion","hydrateCurrentBundleFromSlots","verifyRunningBundleIdentity","checkBootGuardRecovery","state","parse","getSlotState","current","sha256","record","readInstallRecord","version","String","running","expected","readInstallExpectation","clearInstallExpectation","identityToken","emitSimple","INSTALL_EXPECTATION_KEY","recordInstallExpectation","bundle","raw","parsed","stateJson","bootGuardReverted","previous","isEnabled","isRestartRequired","checkForUpdate","requestParams","env","payload","currentBundleId","currentBundleHash","channelName","country","undefined","attributes","segmentIds","lifecycleStage","url","data","json","label","isRetryable","action","sync","rawParams","checkRes","startBootGuardHeartbeat","reverted","revertToPrevious","autoRestart","restart","signatureOutcome","downloadStart","Date","now","lastPostAt","postProgress","bytesRead","total","size","max","percent","min","round","elapsedS","totalBytes","progressPercent","speedKbps","catch","unsubscribeProgress","progress","staged","patch","stagePatch","toFixed","patchErr","stageBundle","attempts","downloadDuration","applied","applyUpdate","installMode","armResumeRestart","isMandatory","clearTimeout","bootMarkerPresent","healthyMs","healthyAfterMs","setTimeout","markHealthy","info","resumeRestartArmed","wasBackground","addEventListener","restartApp","reload","RNReload","otaOrchestrator"],"sourceRoot":"../../../../src","sources":["features/ota/OtaOrchestrator.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"..\\..\\..\\..\\src","sources":["features/ota/OtaTypes.ts"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["features/ota/OtaTypes.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,43 @@
1
+ import { Dimensions, Platform } from 'react-native';
2
+
3
+ /**
4
+ * Hardware/OS context auto-attached to OTA check payloads so ATTRIBUTE targeting
5
+ * rules can address device classes without any host-app wiring:
6
+ *
7
+ * deviceModel — 'SM-A155F', '23129RAA4G'… (Android; iOS does not expose it in JS)
8
+ * manufacturer — 'samsung', 'xiaomi'… (lowercased: rules shouldn't fail on casing)
9
+ * brand — 'redmi' vs manufacturer 'xiaomi' — sub-brands are real segments
10
+ * osVersion — Android Release ('14') / iOS version ('17.5')
11
+ * formFactor — 'phone' | 'tablet' | 'tv' (Android tablets via the 600dp
12
+ * smallest-width convention — the same line AndroidX draws)
13
+ *
14
+ * Host-supplied attributes always win on key collision: an app that knows better
15
+ * (e.g. its own device tiering) must not be overridden by generic detection.
16
+ * Everything here is best-effort — a missing constant yields a missing key,
17
+ * never a guessed value.
18
+ */
19
+ export function deviceTargetingAttributes() {
20
+ const out = {};
21
+ try {
22
+ const c = Platform.constants ?? {};
23
+ if (Platform.OS === 'android') {
24
+ if (typeof c.Model === 'string' && c.Model) out.deviceModel = c.Model;
25
+ if (typeof c.Manufacturer === 'string' && c.Manufacturer) {
26
+ out.manufacturer = c.Manufacturer.toLowerCase();
27
+ }
28
+ if (typeof c.Brand === 'string' && c.Brand) out.brand = c.Brand.toLowerCase();
29
+ if (typeof c.Release === 'string' && c.Release) out.osVersion = c.Release;
30
+ const screen = Dimensions.get('screen');
31
+ const smallestDp = Math.min(screen.width, screen.height);
32
+ out.formFactor = Platform.isTV ? 'tv' : smallestDp >= 600 ? 'tablet' : 'phone';
33
+ } else {
34
+ const osVersion = typeof c.osVersion === 'string' ? c.osVersion : String(Platform.Version ?? '');
35
+ if (osVersion) out.osVersion = osVersion;
36
+ out.formFactor = Platform.isTV ? 'tv' : c.interfaceIdiom === 'pad' ? 'tablet' : 'phone';
37
+ }
38
+ } catch {
39
+ // Targeting enrichment must never break a check. Missing keys are honest.
40
+ }
41
+ return out;
42
+ }
43
+ //# sourceMappingURL=deviceAttributes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Dimensions","Platform","deviceTargetingAttributes","out","c","constants","OS","Model","deviceModel","Manufacturer","manufacturer","toLowerCase","Brand","brand","Release","osVersion","screen","get","smallestDp","Math","min","width","height","formFactor","isTV","String","Version","interfaceIdiom"],"sourceRoot":"../../../../src","sources":["features/ota/deviceAttributes.ts"],"mappings":"AAAA,SAASA,UAAU,EAAEC,QAAQ,QAAQ,cAAc;;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,yBAAyBA,CAAA,EAA2B;EAChE,MAAMC,GAA2B,GAAG,CAAC,CAAC;EACtC,IAAI;IACA,MAAMC,CAAC,GAAIH,QAAQ,CAACI,SAAS,IAAI,CAAC,CAA6B;IAC/D,IAAIJ,QAAQ,CAACK,EAAE,KAAK,SAAS,EAAE;MAC3B,IAAI,OAAOF,CAAC,CAACG,KAAK,KAAK,QAAQ,IAAIH,CAAC,CAACG,KAAK,EAAEJ,GAAG,CAACK,WAAW,GAAGJ,CAAC,CAACG,KAAK;MACrE,IAAI,OAAOH,CAAC,CAACK,YAAY,KAAK,QAAQ,IAAIL,CAAC,CAACK,YAAY,EAAE;QACtDN,GAAG,CAACO,YAAY,GAAGN,CAAC,CAACK,YAAY,CAACE,WAAW,CAAC,CAAC;MACnD;MACA,IAAI,OAAOP,CAAC,CAACQ,KAAK,KAAK,QAAQ,IAAIR,CAAC,CAACQ,KAAK,EAAET,GAAG,CAACU,KAAK,GAAGT,CAAC,CAACQ,KAAK,CAACD,WAAW,CAAC,CAAC;MAC7E,IAAI,OAAOP,CAAC,CAACU,OAAO,KAAK,QAAQ,IAAIV,CAAC,CAACU,OAAO,EAAEX,GAAG,CAACY,SAAS,GAAGX,CAAC,CAACU,OAAO;MACzE,MAAME,MAAM,GAAGhB,UAAU,CAACiB,GAAG,CAAC,QAAQ,CAAC;MACvC,MAAMC,UAAU,GAAGC,IAAI,CAACC,GAAG,CAACJ,MAAM,CAACK,KAAK,EAAEL,MAAM,CAACM,MAAM,CAAC;MACxDnB,GAAG,CAACoB,UAAU,GAAGtB,QAAQ,CAACuB,IAAI,GAAG,IAAI,GAAGN,UAAU,IAAI,GAAG,GAAG,QAAQ,GAAG,OAAO;IAClF,CAAC,MAAM;MACH,MAAMH,SAAS,GAAG,OAAOX,CAAC,CAACW,SAAS,KAAK,QAAQ,GAAGX,CAAC,CAACW,SAAS,GAAGU,MAAM,CAACxB,QAAQ,CAACyB,OAAO,IAAI,EAAE,CAAC;MAChG,IAAIX,SAAS,EAAEZ,GAAG,CAACY,SAAS,GAAGA,SAAS;MACxCZ,GAAG,CAACoB,UAAU,GAAGtB,QAAQ,CAACuB,IAAI,GACxB,IAAI,GACHpB,CAAC,CAAiCuB,cAAc,KAAK,KAAK,GACzD,QAAQ,GACR,OAAO;IACnB;EACJ,CAAC,CAAC,MAAM;IACJ;EAAA;EAEJ,OAAOxB,GAAG;AACd","ignoreList":[]}
@@ -0,0 +1,165 @@
1
+ import { Platform } from 'react-native';
2
+
3
+ /**
4
+ * OTA runtime environment detection.
5
+ *
6
+ * ── Why this file exists ────────────────────────────────────────────────────
7
+ *
8
+ * Our Android OTA resolves the active bundle through
9
+ * `MainApplication.getJSBundleFile()`. That is a *bridge-mode* API.
10
+ *
11
+ * Under the New Architecture (bridgeless), the app is built by
12
+ * `DefaultReactHost` instead — and until React Native 0.76.1,
13
+ * `DefaultReactNativeHost.toReactHost()` never forwarded `jsBundleFile`:
14
+ *
15
+ * // RN 0.74.1 — DefaultReactNativeHost.kt
16
+ * public fun toReactHost(context: Context): ReactHost =
17
+ * DefaultReactHost.getDefaultReactHost(
18
+ * context, packages, jsMainModuleName,
19
+ * bundleAssetName ?: "index", // <- jsBundleFile is NEVER passed
20
+ * isHermesEnabled ?: true)
21
+ *
22
+ * // RN 0.74.1 — DefaultReactHost.kt
23
+ * val jsBundleLoader =
24
+ * JSBundleLoader.createAssetLoader(context, "assets://$jsBundleAssetPath", true)
25
+ *
26
+ * The loader is hardcoded to the APK asset. `getJSBundleFile()` is never
27
+ * consulted, so an update stages, applies, reports INSTALLED, restarts — and
28
+ * the app loads the bundle baked into the APK. Every signal says success and
29
+ * nothing happened. This is the same failure that killed CodePush on modern RN.
30
+ *
31
+ * Fixed upstream in 0.76.1 (`jsBundleFile` is threaded through). Verified
32
+ * present in 0.81.5.
33
+ *
34
+ * We refuse to run rather than pretend to work. A loud failure at startup is
35
+ * recoverable; a silent no-op that reports success is not — it corrupts the
36
+ * adoption metrics, the guard thresholds, and every rollout decision made
37
+ * from them.
38
+ */
39
+
40
+ /** First React Native version where bridgeless honours `getJSBundleFile()`. */
41
+ export const MIN_BRIDGELESS_RN = {
42
+ major: 0,
43
+ minor: 76,
44
+ patch: 1
45
+ };
46
+
47
+ /**
48
+ * React Native 0.82 REMOVED `ReactNativeHost`. The New Architecture became
49
+ * mandatory and `newArchEnabled=false` was withdrawn, so the legacy
50
+ * `override fun getJSBundleFile()` integration does not merely stop working —
51
+ * it does not compile. From 0.82 the only correct integration is passing
52
+ * `jsBundleFilePath` straight to `getDefaultReactHost(...)`.
53
+ *
54
+ * We cannot see which integration a host app used, so this is not a block. It
55
+ * drives a startup hint, and the post-restart identity check is what actually
56
+ * catches a host that got it wrong.
57
+ */
58
+ export const REACT_HOST_ONLY_RN = {
59
+ major: 0,
60
+ minor: 82,
61
+ patch: 0
62
+ };
63
+ function compare(a, b) {
64
+ if (a.major !== b.major) return a.major - b.major;
65
+ if (a.minor !== b.minor) return a.minor - b.minor;
66
+ return a.patch - b.patch;
67
+ }
68
+ function readRnVersion() {
69
+ // `Platform.constants.reactNativeVersion` is public API and present on both
70
+ // platforms since 0.62. Preferred over the deep `Libraries/Core/...` import,
71
+ // which is private and has moved between releases.
72
+ try {
73
+ const v = Platform.constants?.reactNativeVersion;
74
+ if (v && typeof v.major === 'number' && typeof v.minor === 'number') {
75
+ return {
76
+ major: v.major,
77
+ minor: v.minor,
78
+ patch: v.patch ?? 0
79
+ };
80
+ }
81
+ } catch {
82
+ // fall through
83
+ }
84
+ return null;
85
+ }
86
+ function readBridgeless() {
87
+ // Set by the runtime itself when the bridgeless host is in use. Absent on
88
+ // the old architecture, so `=== true` is the correct test.
89
+ try {
90
+ return globalThis.RN$Bridgeless === true;
91
+ } catch {
92
+ return false;
93
+ }
94
+ }
95
+ function readHermes() {
96
+ try {
97
+ const h = globalThis.HermesInternal;
98
+ if (!h) return {
99
+ hermes: false,
100
+ bytecodeVersion: null
101
+ };
102
+ let bytecodeVersion = null;
103
+ const props = h.getRuntimeProperties?.();
104
+ if (props) {
105
+ // Hermes reports this as "Bytecode Version"; the value has been both a
106
+ // number and a numeric string across releases, so coerce and validate.
107
+ const raw = props['Bytecode Version'];
108
+ const n = typeof raw === 'string' ? Number(raw) : raw;
109
+ if (typeof n === 'number' && Number.isFinite(n)) bytecodeVersion = n;
110
+ }
111
+ return {
112
+ hermes: true,
113
+ bytecodeVersion
114
+ };
115
+ } catch {
116
+ return {
117
+ hermes: false,
118
+ bytecodeVersion: null
119
+ };
120
+ }
121
+ }
122
+ let cached = null;
123
+
124
+ /**
125
+ * Detect the runtime environment and decide whether OTA can function at all.
126
+ * Result is cached — none of these values change during a process lifetime.
127
+ */
128
+ export function detectOtaEnvironment() {
129
+ if (cached) return cached;
130
+ const rnVersion = readRnVersion();
131
+ const bridgeless = readBridgeless();
132
+ const {
133
+ hermes,
134
+ bytecodeVersion
135
+ } = readHermes();
136
+ let supported = true;
137
+ let blockReason = null;
138
+ if (bridgeless && rnVersion) {
139
+ if (compare(rnVersion, MIN_BRIDGELESS_RN) < 0) {
140
+ supported = false;
141
+ blockReason = `React Native ${rnVersion.major}.${rnVersion.minor}.${rnVersion.patch} is running ` + `bridgeless (New Architecture), but jsBundleFile was not threaded through ` + `DefaultReactHost until RN 0.76.1. getJSBundleFile() is ignored on this runtime, ` + `so an OTA bundle would install successfully and never actually load. ` + `Upgrade to React Native >= 0.76.1, or disable the New Architecture.`;
142
+ }
143
+ } else if (bridgeless && !rnVersion) {
144
+ // Can't prove it's broken, and blocking every app whose version we failed
145
+ // to read would be worse than the bug. Warn instead of blocking.
146
+ blockReason = null;
147
+ }
148
+ cached = {
149
+ rnVersion,
150
+ rnVersionString: rnVersion ? `${rnVersion.major}.${rnVersion.minor}.${rnVersion.patch}` : null,
151
+ bridgeless,
152
+ hermes,
153
+ hermesBytecodeVersion: bytecodeVersion,
154
+ supported,
155
+ blockReason,
156
+ requiresReactHostIntegration: rnVersion ? compare(rnVersion, REACT_HOST_ONLY_RN) >= 0 : false
157
+ };
158
+ return cached;
159
+ }
160
+
161
+ /** Test seam — the detection result is process-lifetime cached. */
162
+ export function _resetOtaEnvironmentCache() {
163
+ cached = null;
164
+ }
165
+ //# sourceMappingURL=environment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","MIN_BRIDGELESS_RN","major","minor","patch","REACT_HOST_ONLY_RN","compare","a","b","readRnVersion","v","constants","reactNativeVersion","readBridgeless","globalThis","RN$Bridgeless","readHermes","h","HermesInternal","hermes","bytecodeVersion","props","getRuntimeProperties","raw","n","Number","isFinite","cached","detectOtaEnvironment","rnVersion","bridgeless","supported","blockReason","rnVersionString","hermesBytecodeVersion","requiresReactHostIntegration","_resetOtaEnvironmentCache"],"sourceRoot":"../../../../src","sources":["features/ota/environment.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,86 @@
1
+ import { createStorageBackend } from '../../storage/StorageBackend';
2
+ import { logger } from '../../core/logger/internalLogger';
3
+
4
+ /**
5
+ * Device country via an edge Worker — the workaround for an API that is not
6
+ * behind a geo-stamping CDN.
7
+ *
8
+ * The clean architecture is the API itself resolving `cf-ipcountry` at its own
9
+ * edge (see backend `resolveCountry`) — the device can't forge it and every
10
+ * request carries it. When the API record isn't proxied, that header never
11
+ * exists, so this module asks a Cloudflare Worker (which DOES see the device's
12
+ * edge geo) and attaches the answer to the OTA check payload. Host-supplied
13
+ * country always wins; the server treats a client country as locale-grade, not
14
+ * proof of location.
15
+ *
16
+ * Failure-soft by design: a dead Worker, a timeout, or a bad payload leaves the
17
+ * country unset — an unknown country must render as unknown, never be guessed.
18
+ */
19
+
20
+ /** Default lookup endpoint. Overridable via {@link setGeoEndpoint}. */
21
+ const DEFAULT_GEO_ENDPOINT = 'https://get-location.imohamadfahmy.workers.dev/';
22
+ const K_COUNTRY = 'scalebun.ota.geoCountry';
23
+ const K_FETCHED_AT = 'scalebun.ota.geoCountryAt';
24
+ const TTL_MS = 24 * 60 * 60 * 1000; // countries change when people travel — daily is plenty
25
+ const TIMEOUT_MS = 2500;
26
+
27
+ /** Cloudflare's non-countries: Tor exits and internal probes. Unknown, not a place. */
28
+ const NON_COUNTRIES = new Set(['XX', 'T1', 'ZZ']);
29
+ let endpoint = DEFAULT_GEO_ENDPOINT;
30
+ let memory = null;
31
+ let inFlight = null;
32
+ const storage = createStorageBackend();
33
+
34
+ /** Override the lookup endpoint (e.g. a self-hosted Worker). */
35
+ export function setGeoEndpoint(url) {
36
+ endpoint = url;
37
+ }
38
+
39
+ /**
40
+ * Synchronous read of the cached country (uppercase ISO 3166-1 alpha-2), or
41
+ * null when no fresh lookup has ever succeeded. Never triggers network.
42
+ */
43
+ export function getDeviceCountry() {
44
+ if (memory) return memory;
45
+ const stored = storage.get(K_COUNTRY);
46
+ const at = parseInt(storage.get(K_FETCHED_AT) ?? '0', 10) || 0;
47
+ if (stored && Date.now() - at < TTL_MS) {
48
+ memory = stored;
49
+ return stored;
50
+ }
51
+ return null;
52
+ }
53
+
54
+ /**
55
+ * Refresh the cache from the Worker if stale. Fire-and-forget: call it at
56
+ * orchestrator init; the first check of a cold install may go out without a
57
+ * country (the server stores the country per device on later checks anyway).
58
+ */
59
+ export function prefetchDeviceCountry() {
60
+ if (getDeviceCountry()) return Promise.resolve(); // fresh — nothing to do
61
+ if (inFlight) return inFlight;
62
+ inFlight = (async () => {
63
+ const controller = new AbortController();
64
+ const timer = setTimeout(() => controller.abort(), TIMEOUT_MS);
65
+ try {
66
+ const res = await fetch(endpoint, {
67
+ signal: controller.signal
68
+ });
69
+ if (!res.ok) return;
70
+ const body = await res.json();
71
+ const raw = typeof body?.country === 'string' ? body.country.trim().toUpperCase() : '';
72
+ if (!/^[A-Z]{2}$/.test(raw) || NON_COUNTRIES.has(raw)) return;
73
+ memory = raw;
74
+ storage.set(K_COUNTRY, raw);
75
+ storage.set(K_FETCHED_AT, String(Date.now()));
76
+ logger.debug(`[OTA] Device country resolved: ${raw}`);
77
+ } catch (err) {
78
+ logger.debug(`[OTA] Geo lookup skipped: ${err?.message ?? err}`);
79
+ } finally {
80
+ clearTimeout(timer);
81
+ inFlight = null;
82
+ }
83
+ })();
84
+ return inFlight;
85
+ }
86
+ //# sourceMappingURL=geoCountry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createStorageBackend","logger","DEFAULT_GEO_ENDPOINT","K_COUNTRY","K_FETCHED_AT","TTL_MS","TIMEOUT_MS","NON_COUNTRIES","Set","endpoint","memory","inFlight","storage","setGeoEndpoint","url","getDeviceCountry","stored","get","at","parseInt","Date","now","prefetchDeviceCountry","Promise","resolve","controller","AbortController","timer","setTimeout","abort","res","fetch","signal","ok","body","json","raw","country","trim","toUpperCase","test","has","set","String","debug","err","message","clearTimeout"],"sourceRoot":"../../../../src","sources":["features/ota/geoCountry.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,87 @@
1
+ import { logger } from '../../core/logger/internalLogger';
2
+
3
+ /**
4
+ * Retry with exponential backoff and full jitter.
5
+ *
6
+ * ── Why ─────────────────────────────────────────────────────────────────────
7
+ *
8
+ * The OTA path had no retry at all. A download that failed on a flaky mobile
9
+ * connection returned an error and the device then waited for the next cold
10
+ * start to try again — which on a phone is often hours, and on a device that
11
+ * is never fully restarted, effectively never. On mobile networks a single
12
+ * transient failure is the common case, not the exception.
13
+ *
14
+ * Full jitter (`random(0, backoff)` rather than `backoff`) matters more here
15
+ * than in most clients: every device on a release checks in against the same
16
+ * schedule, so a fixed backoff would retry the whole fleet in lockstep and
17
+ * turn one origin blip into a synchronised thundering herd.
18
+ */
19
+
20
+ const DEFAULT_ATTEMPTS = 3;
21
+ const DEFAULT_BASE_DELAY_MS = 1_000;
22
+ const DEFAULT_MAX_DELAY_MS = 30_000;
23
+ const sleep = ms => new Promise(resolve => setTimeout(resolve, ms));
24
+
25
+ /** Exposed for tests; `Math.random` is the only nondeterminism in the schedule. */
26
+ export function backoffDelay(attemptIndex, baseDelayMs, maxDelayMs, random = Math.random) {
27
+ const exponential = Math.min(maxDelayMs, baseDelayMs * Math.pow(2, attemptIndex));
28
+ return Math.floor(random() * exponential);
29
+ }
30
+
31
+ /**
32
+ * Run `fn`, retrying on failure with exponential backoff.
33
+ * Rethrows the last error once attempts are exhausted.
34
+ */
35
+ export async function retryWithBackoff(fn, options = {}) {
36
+ const attempts = options.attempts ?? DEFAULT_ATTEMPTS;
37
+ const baseDelayMs = options.baseDelayMs ?? DEFAULT_BASE_DELAY_MS;
38
+ const maxDelayMs = options.maxDelayMs ?? DEFAULT_MAX_DELAY_MS;
39
+ const label = options.label ?? 'operation';
40
+ const isRetryable = options.isRetryable ?? (() => true);
41
+ let lastError;
42
+ for (let attempt = 0; attempt < attempts; attempt++) {
43
+ try {
44
+ return await fn(attempt);
45
+ } catch (err) {
46
+ lastError = err;
47
+ if (!isRetryable(err)) {
48
+ logger.debug(`[OTA] ${label} failed with a non-retryable error — not retrying`);
49
+ throw err;
50
+ }
51
+ const isLast = attempt === attempts - 1;
52
+ if (isLast) break;
53
+ const delay = backoffDelay(attempt, baseDelayMs, maxDelayMs);
54
+ logger.debug(`[OTA] ${label} failed (attempt ${attempt + 1}/${attempts}) — retrying in ${delay}ms`);
55
+ await sleep(delay);
56
+ }
57
+ }
58
+ throw lastError;
59
+ }
60
+
61
+ /**
62
+ * True for failures that a later attempt could plausibly survive.
63
+ *
64
+ * Network errors and 5xx/429 are retryable. A 4xx other than 429 is the server
65
+ * telling us the request itself is wrong — retrying it just wastes battery.
66
+ */
67
+ export function isRetryableNetworkError(err) {
68
+ const status = err?.status;
69
+ if (typeof status === 'number') {
70
+ if (status === 429) return true;
71
+ if (status >= 500) return true;
72
+ if (status >= 400) return false;
73
+ }
74
+ // fetch() rejects with a TypeError on DNS failure, connection refused, and
75
+ // airplane mode — all of which are exactly what we want to retry.
76
+ return true;
77
+ }
78
+
79
+ /** Error carrying an HTTP status so `isRetryableNetworkError` can classify it. */
80
+ export class HttpStatusError extends Error {
81
+ constructor(message, status) {
82
+ super(message);
83
+ this.status = status;
84
+ this.name = 'HttpStatusError';
85
+ }
86
+ }
87
+ //# sourceMappingURL=retry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["logger","DEFAULT_ATTEMPTS","DEFAULT_BASE_DELAY_MS","DEFAULT_MAX_DELAY_MS","sleep","ms","Promise","resolve","setTimeout","backoffDelay","attemptIndex","baseDelayMs","maxDelayMs","random","Math","exponential","min","pow","floor","retryWithBackoff","fn","options","attempts","label","isRetryable","lastError","attempt","err","debug","isLast","delay","isRetryableNetworkError","status","HttpStatusError","Error","constructor","message","name"],"sourceRoot":"../../../../src","sources":["features/ota/retry.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,109 @@
1
+ import { logger } from '../../core/logger/internalLogger';
2
+
3
+ /**
4
+ * Bundle signature verification (OTA-03).
5
+ *
6
+ * WHAT WAS WRONG. `ota-signing-key.service.ts` documents the intended model
7
+ * exactly: the CLI generates an ed25519 keypair locally, uploads only the public
8
+ * half, and "the device verifies every bundle's signature before install and
9
+ * rejects forgeries." Two of those three steps did not exist. The CLI had no
10
+ * signing code, and this SDK received `bundle.signature` in the check response
11
+ * and never read it. The only client-side check was SHA-256 against a hash
12
+ * delivered in the same response as the URL — which defends against a corrupted
13
+ * download and nothing else. On a platform whose entire purpose is remote code
14
+ * delivery, that is the control that matters most.
15
+ *
16
+ * WHY IT IS SHAPED LIKE THIS. The SDK ships zero third-party runtime
17
+ * dependencies, and React Native has no built-in ed25519. So verification is
18
+ * delegated to a host-provided verifier when one is installed, and the SDK's job
19
+ * is to decide — unambiguously — what happens when there is not one.
20
+ *
21
+ * THE POLICY, which is the important part:
22
+ *
23
+ * - A bundle carrying a signature, with a configured public key and a
24
+ * verifier: verified. Failure REJECTS the install. This is the goal state.
25
+ * - A bundle carrying a signature, with a public key configured, but no
26
+ * verifier available: REJECT. The app asked for signature enforcement by
27
+ * configuring a key; silently installing unverified code because a helper is
28
+ * missing would turn a security feature into a placebo.
29
+ * - No public key configured: skip, and say so once. Signing is opt-in per app,
30
+ * and an app that has not adopted it must keep working.
31
+ *
32
+ * The failure mode is the whole design: an app that opts in cannot be
33
+ * accidentally downgraded to unverified installs.
34
+ */
35
+
36
+ /** Verifies a detached ed25519 signature. Supplied by the host app. */
37
+
38
+ let warnedNotConfigured = false;
39
+
40
+ /**
41
+ * Decide whether a bundle may be staged.
42
+ *
43
+ * Returns a structured outcome rather than a boolean so the caller can emit a
44
+ * precise telemetry reason — "we shipped unverified code because no key was
45
+ * configured" and "we refused because the signature was forged" are very
46
+ * different operational events and must not collapse into one.
47
+ */
48
+ export async function verifyBundleSignature(bundleSha256, signature, config) {
49
+ const publicKey = config?.publicKey;
50
+
51
+ // Signing not adopted by this app — nothing to enforce.
52
+ if (!publicKey) {
53
+ if (!warnedNotConfigured) {
54
+ warnedNotConfigured = true;
55
+ logger.warn('[OTA] No signing public key configured — bundles are accepted on SHA-256 ' + 'integrity alone. Configure `ota.publicSigningKey` to enforce authenticity.');
56
+ }
57
+ return {
58
+ ok: true,
59
+ reason: 'not_configured'
60
+ };
61
+ }
62
+
63
+ // The app opted in, so a bundle without a signature is a refusal, not a pass.
64
+ if (!signature) {
65
+ logger.error('[OTA] Bundle has no signature but a signing key is configured — refusing to stage.');
66
+ return {
67
+ ok: false,
68
+ reason: 'missing_signature'
69
+ };
70
+ }
71
+ if (typeof config?.verifier !== 'function') {
72
+ logger.error('[OTA] A signing key is configured but no signature verifier is available — ' + 'refusing to stage. Provide `ota.verifySignature` so signatures can be checked.');
73
+ return {
74
+ ok: false,
75
+ reason: 'no_verifier'
76
+ };
77
+ }
78
+ try {
79
+ const valid = await config.verifier({
80
+ messageHex: bundleSha256,
81
+ signature,
82
+ publicKey
83
+ });
84
+ if (!valid) {
85
+ logger.error('[OTA] Bundle signature is INVALID — refusing to stage.');
86
+ return {
87
+ ok: false,
88
+ reason: 'invalid_signature'
89
+ };
90
+ }
91
+ return {
92
+ ok: true,
93
+ reason: 'verified'
94
+ };
95
+ } catch (err) {
96
+ // A throwing verifier is treated as a failed verification, never as a pass.
97
+ logger.error(`[OTA] Signature verifier threw: ${err?.message ?? err}`);
98
+ return {
99
+ ok: false,
100
+ reason: 'verifier_threw'
101
+ };
102
+ }
103
+ }
104
+
105
+ /** Test seam — resets the once-per-process "not configured" warning. */
106
+ export function _resetSignatureWarnings() {
107
+ warnedNotConfigured = false;
108
+ }
109
+ //# sourceMappingURL=signature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["logger","warnedNotConfigured","verifyBundleSignature","bundleSha256","signature","config","publicKey","warn","ok","reason","error","verifier","valid","messageHex","err","message","_resetSignatureWarnings"],"sourceRoot":"../../../../src","sources":["features/ota/signature.ts"],"mappings":"AAAA,SAASA,MAAM,QAAQ,kCAAkC;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAqBA,IAAIC,mBAAmB,GAAG,KAAK;;AAE/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,qBAAqBA,CACzCC,YAAoB,EACpBC,SAA6B,EAC7BC,MAAmC,EACR;EAC3B,MAAMC,SAAS,GAAGD,MAAM,EAAEC,SAAS;;EAEnC;EACA,IAAI,CAACA,SAAS,EAAE;IACd,IAAI,CAACL,mBAAmB,EAAE;MACxBA,mBAAmB,GAAG,IAAI;MAC1BD,MAAM,CAACO,IAAI,CACT,2EAA2E,GACzE,4EACJ,CAAC;IACH;IACA,OAAO;MAAEC,EAAE,EAAE,IAAI;MAAEC,MAAM,EAAE;IAAiB,CAAC;EAC/C;;EAEA;EACA,IAAI,CAACL,SAAS,EAAE;IACdJ,MAAM,CAACU,KAAK,CACV,oFACF,CAAC;IACD,OAAO;MAAEF,EAAE,EAAE,KAAK;MAAEC,MAAM,EAAE;IAAoB,CAAC;EACnD;EAEA,IAAI,OAAOJ,MAAM,EAAEM,QAAQ,KAAK,UAAU,EAAE;IAC1CX,MAAM,CAACU,KAAK,CACV,6EAA6E,GAC3E,gFACJ,CAAC;IACD,OAAO;MAAEF,EAAE,EAAE,KAAK;MAAEC,MAAM,EAAE;IAAc,CAAC;EAC7C;EAEA,IAAI;IACF,MAAMG,KAAK,GAAG,MAAMP,MAAM,CAACM,QAAQ,CAAC;MAClCE,UAAU,EAAEV,YAAY;MACxBC,SAAS;MACTE;IACF,CAAC,CAAC;IACF,IAAI,CAACM,KAAK,EAAE;MACVZ,MAAM,CAACU,KAAK,CAAC,wDAAwD,CAAC;MACtE,OAAO;QAAEF,EAAE,EAAE,KAAK;QAAEC,MAAM,EAAE;MAAoB,CAAC;IACnD;IACA,OAAO;MAAED,EAAE,EAAE,IAAI;MAAEC,MAAM,EAAE;IAAW,CAAC;EACzC,CAAC,CAAC,OAAOK,GAAQ,EAAE;IACjB;IACAd,MAAM,CAACU,KAAK,CAAC,mCAAmCI,GAAG,EAAEC,OAAO,IAAID,GAAG,EAAE,CAAC;IACtE,OAAO;MAAEN,EAAE,EAAE,KAAK;MAAEC,MAAM,EAAE;IAAiB,CAAC;EAChD;AACF;;AAEA;AACA,OAAO,SAASO,uBAAuBA,CAAA,EAAS;EAC9Cf,mBAAmB,GAAG,KAAK;AAC7B","ignoreList":[]}