@hot-updater/react-native 1.0.0-rc.4 → 1.0.0-rc.41

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 (317) hide show
  1. package/android/build.gradle +13 -2
  2. package/android/proguard-rules.pro +8 -2
  3. package/android/src/bridge/BridgeReactInstance.kt +38 -0
  4. package/android/src/bridgeless/BridgeReactInstance.kt +24 -0
  5. package/android/src/main/java/com/hotupdater/ActivityStartGate.kt +94 -0
  6. package/android/src/main/java/com/hotupdater/BuiltInAssetResolver.kt +286 -0
  7. package/android/src/main/java/com/hotupdater/BundleFileStorageService.kt +1064 -844
  8. package/android/src/main/java/com/hotupdater/BundleMetadata.kt +50 -11
  9. package/android/src/main/java/com/hotupdater/FileManagerService.kt +45 -0
  10. package/android/src/main/java/com/hotupdater/HotUpdaterException.kt +287 -22
  11. package/android/src/main/java/com/hotupdater/HotUpdaterImpl.kt +46 -30
  12. package/android/src/main/java/com/hotupdater/HotUpdaterRecoveryManager.kt +75 -192
  13. package/android/src/main/java/com/hotupdater/HotUpdaterRecoveryState.kt +64 -0
  14. package/android/src/main/java/com/hotupdater/InstallIdentityService.kt +37 -0
  15. package/android/src/main/java/com/hotupdater/KeyValueStorageService.kt +86 -0
  16. package/android/src/main/java/com/hotupdater/NetworkState.kt +31 -0
  17. package/android/src/main/java/com/hotupdater/NoBackupStorage.kt +17 -0
  18. package/android/src/main/java/com/hotupdater/OkHttpDownloadService.kt +127 -50
  19. package/android/src/main/java/com/hotupdater/ReactNativeValueConverters.kt +34 -0
  20. package/android/src/main/java/com/hotupdater/TarArchiveInputStream.kt +214 -375
  21. package/android/src/main/java/com/hotupdater/TarBrArchiveExtractor.kt +119 -0
  22. package/android/src/newarch/HotUpdater.kt +7 -9
  23. package/android/src/newarch/HotUpdaterModule.kt +109 -84
  24. package/android/src/newarch/JavaScriptExceptionHooks.kt +48 -0
  25. package/android/src/newarch/ReactIntegrationManager.kt +6 -32
  26. package/android/src/oldarch/HotUpdater.kt +7 -9
  27. package/android/src/oldarch/HotUpdaterModule.kt +98 -74
  28. package/android/src/oldarch/HotUpdaterSpec.kt +4 -6
  29. package/android/src/oldarch/JavaScriptExceptionHooks.kt +71 -0
  30. package/ios/HotUpdater/Internal/BrotliFileDecompressor.swift +167 -0
  31. package/ios/HotUpdater/Internal/BuiltInAssetResolver.swift +196 -0
  32. package/ios/HotUpdater/Internal/BundleFileStorageService.swift +1032 -1116
  33. package/ios/HotUpdater/Internal/BundleMetadata.swift +61 -54
  34. package/ios/HotUpdater/Internal/FileManagerService.swift +48 -0
  35. package/ios/HotUpdater/Internal/FileUtilities.swift +64 -0
  36. package/ios/HotUpdater/Internal/HotUpdater-Bridging-Header.h +0 -1
  37. package/ios/HotUpdater/Internal/HotUpdater.mm +32 -67
  38. package/ios/HotUpdater/Internal/HotUpdaterImpl.swift +229 -73
  39. package/ios/HotUpdater/Internal/KeyValueStorageService.swift +71 -0
  40. package/ios/HotUpdater/Internal/NotificationExtension.swift +0 -2
  41. package/ios/HotUpdater/Internal/TarArchiveExtractor.swift +182 -311
  42. package/ios/HotUpdater/Internal/URLSessionDownloadService.swift +119 -71
  43. package/ios/HotUpdater/Internal/UpdateFailure.swift +390 -0
  44. package/ios/HotUpdater/Recovery/HotUpdaterRecovery.h +16 -0
  45. package/ios/HotUpdater/Recovery/HotUpdaterRecovery.mm +83 -0
  46. package/ios/HotUpdater/Recovery/HotUpdaterRecoveryHooks.mm +49 -0
  47. package/lib/commonjs/appReady.js +96 -0
  48. package/lib/commonjs/appReady.js.map +1 -0
  49. package/lib/commonjs/checkForUpdate.js +121 -69
  50. package/lib/commonjs/checkForUpdate.js.map +1 -1
  51. package/lib/commonjs/clientPlugin.js +13 -0
  52. package/lib/commonjs/clientPlugin.js.map +1 -0
  53. package/lib/commonjs/error.js +5 -14
  54. package/lib/commonjs/error.js.map +1 -1
  55. package/lib/commonjs/fetchJSON.js +16 -27
  56. package/lib/commonjs/fetchJSON.js.map +1 -1
  57. package/lib/commonjs/fetchUpdateResponse.js +60 -0
  58. package/lib/commonjs/fetchUpdateResponse.js.map +1 -0
  59. package/lib/commonjs/httpClient.js +64 -95
  60. package/lib/commonjs/httpClient.js.map +1 -1
  61. package/lib/commonjs/index.js +355 -324
  62. package/lib/commonjs/index.js.map +1 -1
  63. package/lib/commonjs/init.types.js +6 -0
  64. package/lib/commonjs/init.types.js.map +1 -0
  65. package/lib/commonjs/native.js +77 -63
  66. package/lib/commonjs/native.js.map +1 -1
  67. package/lib/commonjs/pluginHost.js +41 -0
  68. package/lib/commonjs/pluginHost.js.map +1 -0
  69. package/lib/commonjs/releaseCatalogCache.js +36 -87
  70. package/lib/commonjs/releaseCatalogCache.js.map +1 -1
  71. package/lib/commonjs/sdkVersion.js +1 -1
  72. package/lib/commonjs/sdkVersion.js.map +1 -1
  73. package/lib/commonjs/specs/NativeHotUpdater.js.map +1 -1
  74. package/lib/commonjs/store.js +3 -10
  75. package/lib/commonjs/store.js.map +1 -1
  76. package/lib/commonjs/updateError.js +145 -0
  77. package/lib/commonjs/updateError.js.map +1 -0
  78. package/lib/commonjs/wrap.js +46 -38
  79. package/lib/commonjs/wrap.js.map +1 -1
  80. package/lib/module/appReady.js +90 -0
  81. package/lib/module/appReady.js.map +1 -0
  82. package/lib/module/checkForUpdate.js +114 -64
  83. package/lib/module/checkForUpdate.js.map +1 -1
  84. package/lib/module/clientPlugin.js +4 -0
  85. package/lib/module/clientPlugin.js.map +1 -0
  86. package/lib/module/error.js +5 -14
  87. package/lib/module/error.js.map +1 -1
  88. package/lib/module/fetchJSON.js +14 -26
  89. package/lib/module/fetchJSON.js.map +1 -1
  90. package/lib/module/fetchUpdateResponse.js +55 -0
  91. package/lib/module/fetchUpdateResponse.js.map +1 -0
  92. package/lib/module/httpClient.js +63 -94
  93. package/lib/module/httpClient.js.map +1 -1
  94. package/lib/module/index.js +335 -327
  95. package/lib/module/index.js.map +1 -1
  96. package/lib/module/init.types.js +4 -0
  97. package/lib/module/init.types.js.map +1 -0
  98. package/lib/module/native.js +70 -56
  99. package/lib/module/native.js.map +1 -1
  100. package/lib/module/pluginHost.js +36 -0
  101. package/lib/module/pluginHost.js.map +1 -0
  102. package/lib/module/releaseCatalogCache.js +32 -82
  103. package/lib/module/releaseCatalogCache.js.map +1 -1
  104. package/lib/module/sdkVersion.js +1 -1
  105. package/lib/module/sdkVersion.js.map +1 -1
  106. package/lib/module/specs/NativeHotUpdater.js.map +1 -1
  107. package/lib/module/store.js +3 -10
  108. package/lib/module/store.js.map +1 -1
  109. package/lib/module/updateError.js +139 -0
  110. package/lib/module/updateError.js.map +1 -0
  111. package/lib/module/wrap.js +47 -38
  112. package/lib/module/wrap.js.map +1 -1
  113. package/lib/typescript/commonjs/appReady.d.ts +30 -0
  114. package/lib/typescript/commonjs/appReady.d.ts.map +1 -0
  115. package/lib/typescript/commonjs/checkForUpdate.d.ts +20 -6
  116. package/lib/typescript/commonjs/checkForUpdate.d.ts.map +1 -1
  117. package/lib/typescript/commonjs/clientPlugin.d.ts +2 -0
  118. package/lib/typescript/commonjs/clientPlugin.d.ts.map +1 -0
  119. package/lib/typescript/commonjs/error.d.ts +5 -14
  120. package/lib/typescript/commonjs/error.d.ts.map +1 -1
  121. package/lib/typescript/commonjs/fetchJSON.d.ts +5 -5
  122. package/lib/typescript/commonjs/fetchJSON.d.ts.map +1 -1
  123. package/lib/typescript/commonjs/fetchUpdateResponse.d.ts +14 -0
  124. package/lib/typescript/commonjs/fetchUpdateResponse.d.ts.map +1 -0
  125. package/lib/typescript/commonjs/httpClient.d.ts +5 -34
  126. package/lib/typescript/commonjs/httpClient.d.ts.map +1 -1
  127. package/lib/typescript/commonjs/index.d.ts +124 -116
  128. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  129. package/lib/typescript/commonjs/init.types.d.ts +21 -0
  130. package/lib/typescript/commonjs/init.types.d.ts.map +1 -0
  131. package/lib/typescript/commonjs/native.d.ts +32 -25
  132. package/lib/typescript/commonjs/native.d.ts.map +1 -1
  133. package/lib/typescript/commonjs/pluginHost.d.ts +8 -0
  134. package/lib/typescript/commonjs/pluginHost.d.ts.map +1 -0
  135. package/lib/typescript/commonjs/releaseCatalogCache.d.ts +8 -14
  136. package/lib/typescript/commonjs/releaseCatalogCache.d.ts.map +1 -1
  137. package/lib/typescript/commonjs/sdkVersion.d.ts +1 -1
  138. package/lib/typescript/commonjs/sdkVersion.d.ts.map +1 -1
  139. package/lib/typescript/commonjs/specs/NativeHotUpdater.d.ts +35 -47
  140. package/lib/typescript/commonjs/specs/NativeHotUpdater.d.ts.map +1 -1
  141. package/lib/typescript/commonjs/store.d.ts +1 -3
  142. package/lib/typescript/commonjs/store.d.ts.map +1 -1
  143. package/lib/typescript/commonjs/types.d.ts +1 -1
  144. package/lib/typescript/commonjs/types.d.ts.map +1 -1
  145. package/lib/typescript/commonjs/updateError.d.ts +26 -0
  146. package/lib/typescript/commonjs/updateError.d.ts.map +1 -0
  147. package/lib/typescript/commonjs/wrap.d.ts +2 -3
  148. package/lib/typescript/commonjs/wrap.d.ts.map +1 -1
  149. package/lib/typescript/commonjs/wrap.types.d.ts +13 -41
  150. package/lib/typescript/commonjs/wrap.types.d.ts.map +1 -1
  151. package/lib/typescript/module/appReady.d.ts +30 -0
  152. package/lib/typescript/module/appReady.d.ts.map +1 -0
  153. package/lib/typescript/module/checkForUpdate.d.ts +20 -6
  154. package/lib/typescript/module/checkForUpdate.d.ts.map +1 -1
  155. package/lib/typescript/module/clientPlugin.d.ts +2 -0
  156. package/lib/typescript/module/clientPlugin.d.ts.map +1 -0
  157. package/lib/typescript/module/error.d.ts +5 -14
  158. package/lib/typescript/module/error.d.ts.map +1 -1
  159. package/lib/typescript/module/fetchJSON.d.ts +5 -5
  160. package/lib/typescript/module/fetchJSON.d.ts.map +1 -1
  161. package/lib/typescript/module/fetchUpdateResponse.d.ts +14 -0
  162. package/lib/typescript/module/fetchUpdateResponse.d.ts.map +1 -0
  163. package/lib/typescript/module/httpClient.d.ts +5 -34
  164. package/lib/typescript/module/httpClient.d.ts.map +1 -1
  165. package/lib/typescript/module/index.d.ts +124 -116
  166. package/lib/typescript/module/index.d.ts.map +1 -1
  167. package/lib/typescript/module/init.types.d.ts +21 -0
  168. package/lib/typescript/module/init.types.d.ts.map +1 -0
  169. package/lib/typescript/module/native.d.ts +32 -25
  170. package/lib/typescript/module/native.d.ts.map +1 -1
  171. package/lib/typescript/module/pluginHost.d.ts +8 -0
  172. package/lib/typescript/module/pluginHost.d.ts.map +1 -0
  173. package/lib/typescript/module/releaseCatalogCache.d.ts +8 -14
  174. package/lib/typescript/module/releaseCatalogCache.d.ts.map +1 -1
  175. package/lib/typescript/module/sdkVersion.d.ts +1 -1
  176. package/lib/typescript/module/sdkVersion.d.ts.map +1 -1
  177. package/lib/typescript/module/specs/NativeHotUpdater.d.ts +35 -47
  178. package/lib/typescript/module/specs/NativeHotUpdater.d.ts.map +1 -1
  179. package/lib/typescript/module/store.d.ts +1 -3
  180. package/lib/typescript/module/store.d.ts.map +1 -1
  181. package/lib/typescript/module/types.d.ts +1 -1
  182. package/lib/typescript/module/types.d.ts.map +1 -1
  183. package/lib/typescript/module/updateError.d.ts +26 -0
  184. package/lib/typescript/module/updateError.d.ts.map +1 -0
  185. package/lib/typescript/module/wrap.d.ts +2 -3
  186. package/lib/typescript/module/wrap.d.ts.map +1 -1
  187. package/lib/typescript/module/wrap.types.d.ts +13 -41
  188. package/lib/typescript/module/wrap.types.d.ts.map +1 -1
  189. package/package.json +8 -4
  190. package/src/appReady.ts +147 -0
  191. package/src/checkForUpdate.ts +156 -89
  192. package/src/clientPlugin.ts +21 -0
  193. package/src/error.ts +5 -15
  194. package/src/fetchJSON.ts +14 -30
  195. package/src/fetchUpdateResponse.ts +60 -0
  196. package/src/httpClient.ts +89 -160
  197. package/src/index.ts +413 -425
  198. package/src/init.types.ts +24 -0
  199. package/src/native.ts +101 -105
  200. package/src/pluginHost.ts +52 -0
  201. package/src/releaseCatalogCache.ts +43 -172
  202. package/src/sdkVersion.ts +1 -1
  203. package/src/specs/NativeHotUpdater.ts +34 -48
  204. package/src/store.ts +2 -23
  205. package/src/types.ts +1 -1
  206. package/src/updateError.ts +167 -0
  207. package/src/wrap.tsx +60 -43
  208. package/src/wrap.types.ts +18 -46
  209. package/android/src/main/java/com/hotupdater/DecompressService.kt +0 -89
  210. package/android/src/main/java/com/hotupdater/DecompressionStrategy.kt +0 -26
  211. package/android/src/main/java/com/hotupdater/TarBrDecompressionStrategy.kt +0 -117
  212. package/android/src/main/java/com/hotupdater/TarGzDecompressionStrategy.kt +0 -117
  213. package/android/src/main/java/com/hotupdater/ZipDecompressionStrategy.kt +0 -192
  214. package/android/src/test/java/com/hotupdater/BsdiffPatchTest.kt +0 -46
  215. package/android/src/test/java/com/hotupdater/BundleFileStorageServiceTest.kt +0 -799
  216. package/android/src/test/java/com/hotupdater/HotUpdaterImplTest.kt +0 -273
  217. package/android/src/test/java/com/hotupdater/NativeConfigUtilsTest.kt +0 -20
  218. package/android/src/test/java/com/hotupdater/OkHttpDownloadServiceTest.kt +0 -111
  219. package/android/src/test/java/com/hotupdater/RelativePathResolverTest.kt +0 -41
  220. package/android/src/test/java/com/hotupdater/ReleaseCatalogCacheServiceTest.kt +0 -118
  221. package/android/src/test/java/com/hotupdater/TarArchiveInputStreamTest.kt +0 -68
  222. package/ios/HotUpdater/Internal/ArchiveExtractionUtilities.swift +0 -178
  223. package/ios/HotUpdater/Internal/DecompressService.swift +0 -112
  224. package/ios/HotUpdater/Internal/DecompressionStrategy.swift +0 -22
  225. package/ios/HotUpdater/Internal/StreamingTarArchiveExtractor.swift +0 -370
  226. package/ios/HotUpdater/Internal/TarBrDecompressionStrategy.swift +0 -39
  227. package/ios/HotUpdater/Internal/TarGzDecompressionStrategy.swift +0 -59
  228. package/ios/HotUpdater/Internal/ZipArchiveExtractor.swift +0 -482
  229. package/ios/HotUpdater/Internal/ZipDecompressionStrategy.swift +0 -56
  230. package/lib/commonjs/catalogCacheNative.spec.js +0 -31
  231. package/lib/commonjs/catalogCacheNative.spec.js.map +0 -1
  232. package/lib/commonjs/checkForUpdate.releaseCatalog.spec.js +0 -616
  233. package/lib/commonjs/checkForUpdate.releaseCatalog.spec.js.map +0 -1
  234. package/lib/commonjs/httpClient.spec.js +0 -102
  235. package/lib/commonjs/httpClient.spec.js.map +0 -1
  236. package/lib/commonjs/index.spec.js +0 -302
  237. package/lib/commonjs/index.spec.js.map +0 -1
  238. package/lib/commonjs/iosInterop.spec.js +0 -18
  239. package/lib/commonjs/iosInterop.spec.js.map +0 -1
  240. package/lib/commonjs/native.spec.js +0 -883
  241. package/lib/commonjs/native.spec.js.map +0 -1
  242. package/lib/commonjs/notifyAppReadyInsights.boundary.spec.js +0 -218
  243. package/lib/commonjs/notifyAppReadyInsights.boundary.spec.js.map +0 -1
  244. package/lib/commonjs/notifyAppReadyInsights.js +0 -133
  245. package/lib/commonjs/notifyAppReadyInsights.js.map +0 -1
  246. package/lib/commonjs/notifyAppReadyInsights.spec.js +0 -246
  247. package/lib/commonjs/notifyAppReadyInsights.spec.js.map +0 -1
  248. package/lib/commonjs/notifyAppReadyInsights.test-utils.js +0 -24
  249. package/lib/commonjs/notifyAppReadyInsights.test-utils.js.map +0 -1
  250. package/lib/commonjs/notifyAppReadyInsights.transport.spec.js +0 -117
  251. package/lib/commonjs/notifyAppReadyInsights.transport.spec.js.map +0 -1
  252. package/lib/commonjs/releaseCatalogCache.spec.js +0 -195
  253. package/lib/commonjs/releaseCatalogCache.spec.js.map +0 -1
  254. package/lib/commonjs/releaseCatalogCacheNativeContract.spec.js +0 -64
  255. package/lib/commonjs/releaseCatalogCacheNativeContract.spec.js.map +0 -1
  256. package/lib/commonjs/store.notification.spec.js +0 -76
  257. package/lib/commonjs/store.notification.spec.js.map +0 -1
  258. package/lib/commonjs/store.spec.js +0 -316
  259. package/lib/commonjs/store.spec.js.map +0 -1
  260. package/lib/commonjs/wrap.spec.js +0 -329
  261. package/lib/commonjs/wrap.spec.js.map +0 -1
  262. package/lib/module/catalogCacheNative.spec.js +0 -31
  263. package/lib/module/catalogCacheNative.spec.js.map +0 -1
  264. package/lib/module/checkForUpdate.releaseCatalog.spec.js +0 -615
  265. package/lib/module/checkForUpdate.releaseCatalog.spec.js.map +0 -1
  266. package/lib/module/httpClient.spec.js +0 -102
  267. package/lib/module/httpClient.spec.js.map +0 -1
  268. package/lib/module/index.spec.js +0 -301
  269. package/lib/module/index.spec.js.map +0 -1
  270. package/lib/module/iosInterop.spec.js +0 -18
  271. package/lib/module/iosInterop.spec.js.map +0 -1
  272. package/lib/module/native.spec.js +0 -882
  273. package/lib/module/native.spec.js.map +0 -1
  274. package/lib/module/notifyAppReadyInsights.boundary.spec.js +0 -217
  275. package/lib/module/notifyAppReadyInsights.boundary.spec.js.map +0 -1
  276. package/lib/module/notifyAppReadyInsights.js +0 -128
  277. package/lib/module/notifyAppReadyInsights.js.map +0 -1
  278. package/lib/module/notifyAppReadyInsights.spec.js +0 -245
  279. package/lib/module/notifyAppReadyInsights.spec.js.map +0 -1
  280. package/lib/module/notifyAppReadyInsights.test-utils.js +0 -18
  281. package/lib/module/notifyAppReadyInsights.test-utils.js.map +0 -1
  282. package/lib/module/notifyAppReadyInsights.transport.spec.js +0 -116
  283. package/lib/module/notifyAppReadyInsights.transport.spec.js.map +0 -1
  284. package/lib/module/releaseCatalogCache.spec.js +0 -195
  285. package/lib/module/releaseCatalogCache.spec.js.map +0 -1
  286. package/lib/module/releaseCatalogCacheNativeContract.spec.js +0 -64
  287. package/lib/module/releaseCatalogCacheNativeContract.spec.js.map +0 -1
  288. package/lib/module/store.notification.spec.js +0 -77
  289. package/lib/module/store.notification.spec.js.map +0 -1
  290. package/lib/module/store.spec.js +0 -315
  291. package/lib/module/store.spec.js.map +0 -1
  292. package/lib/module/wrap.spec.js +0 -330
  293. package/lib/module/wrap.spec.js.map +0 -1
  294. package/lib/typescript/commonjs/notifyAppReadyInsights.d.ts +0 -13
  295. package/lib/typescript/commonjs/notifyAppReadyInsights.d.ts.map +0 -1
  296. package/lib/typescript/commonjs/notifyAppReadyInsights.test-utils.d.ts +0 -8
  297. package/lib/typescript/commonjs/notifyAppReadyInsights.test-utils.d.ts.map +0 -1
  298. package/lib/typescript/module/notifyAppReadyInsights.d.ts +0 -13
  299. package/lib/typescript/module/notifyAppReadyInsights.d.ts.map +0 -1
  300. package/lib/typescript/module/notifyAppReadyInsights.test-utils.d.ts +0 -8
  301. package/lib/typescript/module/notifyAppReadyInsights.test-utils.d.ts.map +0 -1
  302. package/src/catalogCacheNative.spec.ts +0 -63
  303. package/src/checkForUpdate.releaseCatalog.spec.ts +0 -612
  304. package/src/httpClient.spec.ts +0 -132
  305. package/src/index.spec.ts +0 -337
  306. package/src/iosInterop.spec.ts +0 -30
  307. package/src/native.spec.ts +0 -945
  308. package/src/notifyAppReadyInsights.boundary.spec.ts +0 -234
  309. package/src/notifyAppReadyInsights.spec.ts +0 -243
  310. package/src/notifyAppReadyInsights.test-utils.ts +0 -31
  311. package/src/notifyAppReadyInsights.transport.spec.ts +0 -130
  312. package/src/notifyAppReadyInsights.ts +0 -194
  313. package/src/releaseCatalogCache.spec.ts +0 -282
  314. package/src/releaseCatalogCacheNativeContract.spec.ts +0 -80
  315. package/src/store.notification.spec.ts +0 -92
  316. package/src/store.spec.ts +0 -372
  317. package/src/wrap.spec.ts +0 -406
@@ -0,0 +1,83 @@
1
+ #import "HotUpdaterRecovery.h"
2
+
3
+ static NSString *const failedRuntimeKey = @"HotUpdater.failedRuntime";
4
+ static NSString *const surfaceStartsKey = @"HotUpdater.surfaceStarts";
5
+
6
+ static BOOL isRuntimeThread(void)
7
+ {
8
+ return [[NSThread currentThread].name isEqualToString:@"com.facebook.react.runtime.JavaScript"];
9
+ }
10
+
11
+ static NSMutableDictionary *pendingStarts(void)
12
+ {
13
+ static NSMutableDictionary *starts;
14
+ static dispatch_once_t onceToken;
15
+ dispatch_once(&onceToken, ^{ starts = [NSMutableDictionary new]; });
16
+ return starts;
17
+ }
18
+
19
+ BOOL HotUpdaterIsFailedRuntime(void)
20
+ {
21
+ return [[[NSThread currentThread] threadDictionary][failedRuntimeKey] boolValue];
22
+ }
23
+
24
+ void HotUpdaterMarkFailedRuntime(void)
25
+ {
26
+ #ifdef RCT_NEW_ARCH_ENABLED
27
+ // A bridgeless runtime owns this thread. Never mark shared native workers.
28
+ if (isRuntimeThread()) {
29
+ [NSThread currentThread].threadDictionary[failedRuntimeKey] = @YES;
30
+ }
31
+ #endif
32
+ }
33
+
34
+ BOOL HotUpdaterBeginSurfaceStart(const void *surfaceHandler)
35
+ {
36
+ if (HotUpdaterIsFailedRuntime()) {
37
+ return NO;
38
+ }
39
+ if (!isRuntimeThread()) {
40
+ return YES;
41
+ }
42
+
43
+ NSMutableDictionary *starts = pendingStarts();
44
+ NSValue *key = [NSValue valueWithPointer:surfaceHandler];
45
+ @synchronized (starts) {
46
+ if (starts[key]) {
47
+ return NO;
48
+ }
49
+ NSMutableDictionary *runtime = [NSThread currentThread].threadDictionary;
50
+ dispatch_group_t group = runtime[surfaceStartsKey];
51
+ if (!group) {
52
+ group = dispatch_group_create();
53
+ runtime[surfaceStartsKey] = group;
54
+ }
55
+ dispatch_group_enter(group);
56
+ starts[key] = group;
57
+ }
58
+ return YES;
59
+ }
60
+
61
+ void HotUpdaterFinishSurfaceStart(const void *surfaceHandler)
62
+ {
63
+ NSMutableDictionary *starts = pendingStarts();
64
+ NSValue *key = [NSValue valueWithPointer:surfaceHandler];
65
+ dispatch_group_t group;
66
+ @synchronized (starts) {
67
+ group = starts[key];
68
+ [starts removeObjectForKey:key];
69
+ }
70
+ if (group) {
71
+ dispatch_group_leave(group);
72
+ }
73
+ }
74
+
75
+ void HotUpdaterAfterSurfaceStarts(dispatch_block_t action)
76
+ {
77
+ dispatch_group_t group = [NSThread currentThread].threadDictionary[surfaceStartsKey];
78
+ if (group) {
79
+ dispatch_group_notify(group, dispatch_get_main_queue(), action);
80
+ } else {
81
+ dispatch_async(dispatch_get_main_queue(), action);
82
+ }
83
+ }
@@ -0,0 +1,49 @@
1
+ #import "HotUpdaterRecovery.h"
2
+ #import <objc/runtime.h>
3
+
4
+ #ifdef RCT_NEW_ARCH_ENABLED
5
+ #import <React/RCTFabricSurface.h>
6
+ #import <React/RCTSurfacePresenter.h>
7
+ #endif
8
+
9
+ void HotUpdaterInstallRecoveryHooks(void)
10
+ {
11
+ #ifdef RCT_NEW_ARCH_ENABLED
12
+ static dispatch_once_t onceToken;
13
+ dispatch_once(&onceToken, ^{
14
+ SEL startSelector = @selector(start);
15
+ SEL completionSelector = @selector(setupAnimationDriverWithSurfaceHandler:);
16
+ Method startMethod = class_getInstanceMethod(RCTFabricSurface.class, startSelector);
17
+ Method completionMethod = class_getInstanceMethod(RCTSurfacePresenter.class, completionSelector);
18
+ if (!startMethod || !completionMethod) {
19
+ return;
20
+ }
21
+
22
+ IMP originalCompletion = method_getImplementation(completionMethod);
23
+ method_setImplementation(completionMethod, imp_implementationWithBlock(
24
+ ^(RCTSurfacePresenter *presenter, const facebook::react::SurfaceHandler &handler) {
25
+ ((void (*)(id, SEL, const facebook::react::SurfaceHandler &))originalCompletion)(
26
+ presenter, completionSelector, handler);
27
+ // This is the final operation in both synchronous and asynchronous
28
+ // Fabric starts. A stage callback fires too early to permit reload.
29
+ HotUpdaterFinishSurfaceStart(&handler);
30
+ }));
31
+
32
+ IMP originalStart = method_getImplementation(startMethod);
33
+ method_setImplementation(startMethod, imp_implementationWithBlock(^(RCTFabricSurface *surface) {
34
+ if (HotUpdaterIsFailedRuntime()) {
35
+ return;
36
+ }
37
+ const auto &handler = surface.surfaceHandler;
38
+ if (handler.getStatus() != facebook::react::SurfaceHandler::Status::Registered) {
39
+ return;
40
+ }
41
+ if (HotUpdaterBeginSurfaceStart(&handler)) {
42
+ // No coordination lock crosses the original call: older RN versions
43
+ // invoke the completion synchronously on this same thread.
44
+ ((void (*)(id, SEL))originalStart)(surface, startSelector);
45
+ }
46
+ }));
47
+ });
48
+ #endif
49
+ }
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getRunningReleaseId = exports.createLaunchReporter = void 0;
7
+ var _native = require("./native.js");
8
+ const waitForNextFrame = () => new Promise(resolve => {
9
+ const requestAnimationFrame = globalThis?.requestAnimationFrame;
10
+ if (requestAnimationFrame) {
11
+ requestAnimationFrame(() => resolve());
12
+ return;
13
+ }
14
+ void Promise.resolve().then(resolve);
15
+ });
16
+
17
+ /**
18
+ * The Release the running bundle was selected as: the active or stable
19
+ * selection that names it on the current channel.
20
+ */
21
+ const getRunningReleaseId = (bundleId, channel) => {
22
+ const state = (0, _native.getActiveUpdateState)();
23
+ return [state.activeSelection, state.stableSelection].find(selection => selection?.bundleId === bundleId && selection.channel === channel)?.releaseId ?? null;
24
+ };
25
+ exports.getRunningReleaseId = getRunningReleaseId;
26
+ const toAppReadyResult = (result, transition) => {
27
+ const channel = (0, _native.getChannel)();
28
+ if (result.status === "UNCHANGED") {
29
+ const bundleId = (0, _native.getBundleId)();
30
+ return {
31
+ status: "UNCHANGED",
32
+ channel,
33
+ bundleId,
34
+ releaseId: getRunningReleaseId(bundleId, channel)
35
+ };
36
+ }
37
+ // Native persists the transition with every applied or recovered launch;
38
+ // a report without it cannot say what moved.
39
+ if (transition === null) return null;
40
+ return {
41
+ status: transition.type,
42
+ channel,
43
+ fromBundleId: transition.fromBundleId,
44
+ fromReleaseId: transition.fromReleaseId,
45
+ toBundleId: transition.toBundleId,
46
+ toReleaseId: transition.toReleaseId,
47
+ updateStrategy: transition.updateStrategy
48
+ };
49
+ };
50
+ const notifyAppReady = async (host, options) => {
51
+ try {
52
+ let nativeReadResult;
53
+ do {
54
+ await waitForNextFrame();
55
+ nativeReadResult = (0, _native.readNotifyAppReady)();
56
+ } while (nativeReadResult.pending);
57
+ const {
58
+ result,
59
+ transition
60
+ } = nativeReadResult;
61
+ host.emitPluginHook("onAppReady", () => toAppReadyResult(result, transition));
62
+ options.onNotifyAppReady?.(result);
63
+ return result;
64
+ } catch (error) {
65
+ const normalizedError = error instanceof Error ? error : new Error(String(error));
66
+ options.onError?.(error);
67
+ console.warn("[HotUpdater] Failed to notify app ready:", normalizedError);
68
+ return undefined;
69
+ }
70
+ };
71
+
72
+ /** An instance's launch: read once, and reported to the instance's plugins. */
73
+
74
+ const createLaunchReporter = host => {
75
+ let launchRead = null;
76
+ return {
77
+ read: options => {
78
+ launchRead ??= notifyAppReady(host, options);
79
+ return launchRead;
80
+ },
81
+ get appReady() {
82
+ return launchRead ?? Promise.resolve();
83
+ },
84
+ emit: (name, createPayload) => {
85
+ const payload = host.buildPluginEvent(name, createPayload);
86
+ if (payload === null) return;
87
+ if (launchRead === null) {
88
+ host.dispatchPluginHook(name, payload);
89
+ return;
90
+ }
91
+ void launchRead.then(() => host.dispatchPluginHook(name, payload));
92
+ }
93
+ };
94
+ };
95
+ exports.createLaunchReporter = createLaunchReporter;
96
+ //# sourceMappingURL=appReady.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_native","require","waitForNextFrame","Promise","resolve","requestAnimationFrame","globalThis","then","getRunningReleaseId","bundleId","channel","state","getActiveUpdateState","activeSelection","stableSelection","find","selection","releaseId","exports","toAppReadyResult","result","transition","getChannel","status","getBundleId","type","fromBundleId","fromReleaseId","toBundleId","toReleaseId","updateStrategy","notifyAppReady","host","options","nativeReadResult","readNotifyAppReady","pending","emitPluginHook","onNotifyAppReady","error","normalizedError","Error","String","onError","console","warn","undefined","createLaunchReporter","launchRead","read","appReady","emit","name","createPayload","payload","buildPluginEvent","dispatchPluginHook"],"sourceRoot":"../../src","sources":["appReady.ts"],"mappings":"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","ignoreList":[]}
@@ -4,69 +4,64 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.checkForUpdate = checkForUpdate;
7
- var _core = require("@hot-updater/core");
8
- var _pluginCore = require("@hot-updater/plugin-core");
7
+ exports.reportUpdateError = void 0;
8
+ var _protocol = require("@hot-updater/protocol");
9
9
  var _reactNative = require("react-native");
10
+ var _appReady = require("./appReady.js");
10
11
  var _error = require("./error.js");
11
12
  var _native = require("./native.js");
12
- var _releaseCatalogCache = require("./releaseCatalogCache.js");
13
13
  var _store = require("./store.js");
14
+ var _updateError = require("./updateError.js");
14
15
  const sameReceipt = (first, second) => first !== null && first.kind === second.kind && first.releaseId === second.releaseId && first.bundleId === second.bundleId && first.catalogId === second.catalogId && first.scopeKey === second.scopeKey && first.generation === second.generation && first.catalogHash === second.catalogHash && first.channel === second.channel && first.selectionContextHash === second.selectionContextHash;
15
16
  const validateCatalog = (catalog, expectedScope) => {
16
- if (catalog.schemaVersion !== 1 || !Number.isSafeInteger(catalog.generation) || catalog.generation < 1 || !/^sha256:[0-9a-f]{64}$/.test(catalog.catalogHash) || !(0, _releaseCatalogCache.hasExpectedReleaseCatalogScope)(catalog, expectedScope)) {
17
- throw new _error.HotUpdaterError("Received an invalid Release catalog");
17
+ if (catalog.schemaVersion !== 1 || !Number.isSafeInteger(catalog.generation) || catalog.generation < 1 || !/^sha256:[0-9a-f]{64}$/.test(catalog.catalogHash) || !(0, _protocol.hasExpectedReleaseCatalogScope)(catalog, expectedScope)) {
18
+ throw new _updateError.InvalidUpdateResponseError("Received an invalid Release catalog");
18
19
  }
19
20
  };
20
21
  const resetProgress = () => {
21
22
  _store.hotUpdaterStore.setState({
22
23
  artifactType: null,
23
24
  details: null,
24
- downloadedBytes: undefined,
25
25
  isUpdateDownloaded: false,
26
- progress: 0,
27
- totalBytes: undefined
26
+ progress: 0
28
27
  });
29
28
  };
30
- const notifyUnchangedSelection = async input => {
31
- const {
32
- userId,
33
- username
34
- } = (0, _native.getPersistedUserIdentity)();
35
- try {
36
- await input.session.sendInsightsEvent({
37
- appVersion: input.appVersion,
38
- channel: input.desired.channel,
39
- cohort: input.cohort,
40
- fingerprintHash: input.fingerprintHash,
41
- fromBundleId: null,
42
- fromReleaseId: input.active?.releaseId ?? null,
43
- installId: (0, _native.getInstallId)(),
44
- platform: input.platform,
45
- requestHeaders: input.requestHeaders,
46
- requestTimeout: input.requestTimeout,
47
- toBundleId: input.desired.bundleId,
48
- toReleaseId: input.desired.releaseId,
49
- type: "UNCHANGED",
50
- updateStrategy: null,
51
- ...(userId === undefined ? {} : {
52
- userId
29
+
30
+ /** The running bundle, the channel checked, and the update's target. */
31
+
32
+ /**
33
+ * Tells plugins why an update failed, when it failed as an update. An error
34
+ * the SDK's JavaScript raised happened in `stage`, fetching `resource`.
35
+ */
36
+ const reportUpdateError = (emit, error, stage, resource, scope) => {
37
+ emit("onUpdateError", () => {
38
+ const classification = (0, _updateError.classifyUpdateError)(error, stage, resource);
39
+ if (classification === null) return null;
40
+ return {
41
+ ...classification,
42
+ channel: scope.channel,
43
+ bundleId: scope.bundleId,
44
+ releaseId: (0, _appReady.getRunningReleaseId)(scope.bundleId, (0, _native.getChannel)()),
45
+ updateStrategy: scope.updateStrategy,
46
+ ...(scope.targetBundleId === undefined ? {} : {
47
+ targetBundleId: scope.targetBundleId
53
48
  }),
54
- ...(username === undefined ? {} : {
55
- username
56
- })
57
- });
58
- } catch (error) {
59
- console.warn("[HotUpdater] Unchanged selection insights failed:", error);
60
- }
49
+ ...(scope.targetReleaseId == null ? {} : {
50
+ targetReleaseId: scope.targetReleaseId
51
+ }),
52
+ cause: error
53
+ };
54
+ });
61
55
  };
56
+ exports.reportUpdateError = reportUpdateError;
62
57
  async function checkForReleaseCatalogUpdate(input) {
63
58
  const {
64
59
  options
65
60
  } = input;
66
61
  const session = await options.client.createSession();
67
- const channelKey = (0, _core.encodeChannelKey)(input.targetChannel);
62
+ const channelKey = (0, _protocol.encodeChannelKey)(input.targetChannel);
68
63
  const strategy = options.updateStrategy === "appVersion" ? "APP_VERSION" : "FINGERPRINT";
69
- const canonicalAppVersion = (0, _pluginCore.canonicalizeAppVersion)(input.currentAppVersion);
64
+ const canonicalAppVersion = (0, _protocol.canonicalizeAppVersion)(input.currentAppVersion);
70
65
  if (strategy === "APP_VERSION" && canonicalAppVersion === null) {
71
66
  throw new _error.HotUpdaterError("Failed to canonicalize app version");
72
67
  }
@@ -92,11 +87,14 @@ async function checkForReleaseCatalogUpdate(input) {
92
87
  requestTimeout: options.requestTimeout,
93
88
  updateStrategy: options.updateStrategy
94
89
  });
90
+ // The server says this scope has no catalog yet: no update, not a failure.
91
+ if (catalog === null) return null;
95
92
  validateCatalog(catalog, expectedScope);
96
93
  const catalogId = catalog.catalogId;
97
94
  const scopeKey = catalog.scopeKey;
98
95
  const crashedBundleIds = (0, _native.getCrashHistory)();
99
- const active = (0, _native.getActiveUpdateState)().activeSelection;
96
+ const activeState = (0, _native.getActiveUpdateState)();
97
+ const active = activeState.activeSelection;
100
98
  const explicitScopeSwitch = input.explicitChannel !== undefined && input.explicitChannel !== input.currentChannel;
101
99
  const activeInTargetScope = active?.catalogId === catalogId && active.scopeKey === scopeKey ? active : null;
102
100
  const hasAuthenticatedActive = active !== null && active.catalogId !== null && active.scopeKey !== null && active.generation !== null;
@@ -104,7 +102,7 @@ async function checkForReleaseCatalogUpdate(input) {
104
102
  throw new _error.HotUpdaterError("Release transition rejected: UNSOLICITED_SCOPE");
105
103
  }
106
104
  const selectorCurrentBundleId = activeInTargetScope !== null || !hasAuthenticatedActive && !explicitScopeSwitch ? input.currentBundleId : input.minimumReleaseId;
107
- const selectionContextHash = (0, _core.createReleaseSelectionContextHash)({
105
+ const selectionContextHash = (0, _protocol.createReleaseSelectionContextHash)({
108
106
  activeBundleId: selectorCurrentBundleId,
109
107
  activeReleaseId: activeInTargetScope?.releaseId ?? null,
110
108
  cohort: input.cohort,
@@ -121,9 +119,9 @@ async function checkForReleaseCatalogUpdate(input) {
121
119
  selectionContextHash,
122
120
  scopeKey
123
121
  })) {
124
- throw new _error.HotUpdaterError("Rejected a stale or inconsistent Release catalog");
122
+ throw new _updateError.InvalidUpdateResponseError("Rejected a stale or inconsistent Release catalog");
125
123
  }
126
- const desired = (0, _core.selectDesiredRelease)(catalog, {
124
+ const desired = (0, _protocol.selectDesiredRelease)(catalog, {
127
125
  activeReleaseId: activeInTargetScope?.releaseId ?? null,
128
126
  builtInBundleId: input.minimumReleaseId,
129
127
  cohort: input.cohort,
@@ -147,7 +145,7 @@ async function checkForReleaseCatalogUpdate(input) {
147
145
  selectionContextHash
148
146
  };
149
147
  if (sameReceipt(active, receipt)) return null;
150
- const authorization = (0, _core.authorizeReleaseTransition)({
148
+ const authorization = (0, _protocol.authorizeReleaseTransition)({
151
149
  active,
152
150
  desired: receipt,
153
151
  explicitScopeSwitch
@@ -166,7 +164,15 @@ async function checkForReleaseCatalogUpdate(input) {
166
164
  scopeKey,
167
165
  selectionContextHash
168
166
  };
169
- const updateBundleForSelection = async () => {
167
+ const fromReleaseId = active?.bundleId === input.currentBundleId ? active.releaseId : activeState.stableSelection?.bundleId === input.currentBundleId ? activeState.stableSelection.releaseId : null;
168
+ const errorScope = {
169
+ bundleId: input.currentBundleId,
170
+ channel: input.targetChannel,
171
+ targetBundleId: desired.bundleId,
172
+ targetReleaseId: desired.releaseId,
173
+ updateStrategy: options.updateStrategy
174
+ };
175
+ const installSelection = async () => {
170
176
  resetProgress();
171
177
  if (!(0, _native.isReleaseSelectionCurrent)(guard)) {
172
178
  throw new _error.StaleReleaseCatalogError();
@@ -176,18 +182,14 @@ async function checkForReleaseCatalogUpdate(input) {
176
182
  guard,
177
183
  selection: receipt
178
184
  });
179
- if (committed && transitionKind === "ADOPT_RELEASE" && options.insights) {
180
- await notifyUnchangedSelection({
181
- active,
182
- appVersion: input.currentAppVersion,
183
- cohort: input.cohort,
184
- desired: receipt,
185
- fingerprintHash: input.fingerprintHash,
186
- platform: input.platform,
187
- requestHeaders: options.requestHeaders,
188
- requestTimeout: options.requestTimeout,
189
- session
190
- });
185
+ if (committed && transitionKind === "ADOPT_RELEASE") {
186
+ options.emit("onUpdateCheck", () => ({
187
+ status: "UNCHANGED",
188
+ channel: receipt.channel,
189
+ bundleId: receipt.bundleId,
190
+ releaseId: receipt.releaseId,
191
+ previousReleaseId: active?.releaseId ?? null
192
+ }));
191
193
  }
192
194
  return committed;
193
195
  }
@@ -200,27 +202,59 @@ async function checkForReleaseCatalogUpdate(input) {
200
202
  if (!(0, _native.isReleaseSelectionCurrent)(guard)) {
201
203
  throw new _error.StaleReleaseCatalogError();
202
204
  }
203
- return (0, _native.updateBundle)({
205
+ const delivery = await (0, _native.stageBundle)({
206
+ assets: artifact.assets,
204
207
  bundleId: desired.bundleId,
205
- changedAssets: artifact.changedAssets ?? null,
206
208
  channel: input.targetChannel,
207
- fileHash: artifact.fileHash,
208
- fileUrl: artifact.fileUrl,
209
- manifestFileHash: artifact.manifestFileHash ?? null,
210
- manifestUrl: artifact.manifestUrl ?? null,
209
+ manifestFileHash: artifact.manifestFileHash,
210
+ manifestUrl: artifact.manifestUrl,
211
+ ...(artifact.archiveUrl ? {
212
+ archiveUrl: artifact.archiveUrl
213
+ } : {}),
211
214
  selection: receipt,
212
215
  shouldSkipCurrentBundleIdCheck: true,
213
216
  status: desired.status
214
217
  });
218
+ if (delivery !== null && desired.bundleId !== input.currentBundleId) {
219
+ options.emit("onBundleDownloaded", () => ({
220
+ channel: input.targetChannel,
221
+ fromBundleId: input.currentBundleId,
222
+ fromReleaseId,
223
+ toBundleId: desired.bundleId,
224
+ toReleaseId: desired.releaseId,
225
+ updateStrategy: options.updateStrategy,
226
+ ...delivery
227
+ }));
228
+ }
229
+ return true;
230
+ };
231
+ const updateBundleForSelection = async () => {
232
+ try {
233
+ return await installSelection();
234
+ } catch (error) {
235
+ reportUpdateError(options.emit, error, "download", "artifact", errorScope);
236
+ throw error;
237
+ }
215
238
  };
239
+ const shouldForceUpdate = transitionKind === "ADOPT_RELEASE" ? false : desired.status === "ROLLBACK" ? true : release?.shouldForceUpdate ?? false;
240
+ options.emit("onUpdateCheck", () => ({
241
+ status: "UPDATE_AVAILABLE",
242
+ channel: input.targetChannel,
243
+ fromBundleId: input.currentBundleId,
244
+ fromReleaseId,
245
+ toBundleId: desired.bundleId,
246
+ toReleaseId: desired.releaseId,
247
+ transitionKind,
248
+ updateStatus: desired.status,
249
+ shouldForceUpdate,
250
+ updateStrategy: options.updateStrategy
251
+ }));
216
252
  return {
217
- fileHash: null,
218
- fileUrl: null,
219
253
  id: desired.releaseId ?? desired.bundleId,
220
254
  message: release?.message ?? null,
221
255
  releaseId: desired.releaseId,
222
256
  rolloutCohortCount: release?.rolloutCohortCount ?? 1000,
223
- shouldForceUpdate: transitionKind === "ADOPT_RELEASE" ? false : desired.status === "ROLLBACK" ? true : release?.shouldForceUpdate ?? false,
257
+ shouldForceUpdate,
224
258
  status: desired.status,
225
259
  targetCohorts: release?.targetCohorts ? [...release.targetCohorts] : [],
226
260
  transitionKind,
@@ -250,13 +284,13 @@ async function checkForUpdate(options) {
250
284
  return null;
251
285
  }
252
286
  if (isSwitched && explicitChannel && explicitChannel !== currentChannel) {
253
- const error = new _error.HotUpdaterError(`Runtime channel is already switched to "${currentChannel}". Call HotUpdater.resetChannel() before checking "${explicitChannel}".`);
287
+ const error = new _error.HotUpdaterError(`Runtime channel is already switched to "${currentChannel}". Call hotUpdater.resetChannel() before checking "${explicitChannel}".`);
254
288
  options.onError?.(error);
255
289
  throw error;
256
290
  }
257
291
  const fingerprintHash = (0, _native.getFingerprintHash)();
258
292
  try {
259
- return await checkForReleaseCatalogUpdate({
293
+ const result = await checkForReleaseCatalogUpdate({
260
294
  cohort,
261
295
  currentAppVersion,
262
296
  currentBundleId,
@@ -270,7 +304,25 @@ async function checkForUpdate(options) {
270
304
  platform,
271
305
  targetChannel
272
306
  });
307
+ if (result === null) {
308
+ options.emit("onUpdateCheck", () => {
309
+ const releaseId = (0, _appReady.getRunningReleaseId)(currentBundleId, currentChannel);
310
+ return {
311
+ status: "UNCHANGED",
312
+ channel: currentChannel,
313
+ bundleId: currentBundleId,
314
+ releaseId,
315
+ previousReleaseId: releaseId
316
+ };
317
+ });
318
+ }
319
+ return result;
273
320
  } catch (error) {
321
+ reportUpdateError(options.emit, error, "check", "catalog", {
322
+ bundleId: currentBundleId,
323
+ channel: targetChannel,
324
+ updateStrategy: options.updateStrategy
325
+ });
274
326
  options.onError?.(error);
275
327
  return null;
276
328
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_core","require","_pluginCore","_reactNative","_error","_native","_releaseCatalogCache","_store","sameReceipt","first","second","kind","releaseId","bundleId","catalogId","scopeKey","generation","catalogHash","channel","selectionContextHash","validateCatalog","catalog","expectedScope","schemaVersion","Number","isSafeInteger","test","hasExpectedReleaseCatalogScope","HotUpdaterError","resetProgress","hotUpdaterStore","setState","artifactType","details","downloadedBytes","undefined","isUpdateDownloaded","progress","totalBytes","notifyUnchangedSelection","input","userId","username","getPersistedUserIdentity","session","sendInsightsEvent","appVersion","desired","cohort","fingerprintHash","fromBundleId","fromReleaseId","active","installId","getInstallId","platform","requestHeaders","requestTimeout","toBundleId","toReleaseId","type","updateStrategy","error","console","warn","checkForReleaseCatalogUpdate","options","client","createSession","channelKey","encodeChannelKey","targetChannel","strategy","canonicalAppVersion","canonicalizeAppVersion","currentAppVersion","fetchReleaseCatalog","crashedBundleIds","getCrashHistory","getActiveUpdateState","activeSelection","explicitScopeSwitch","explicitChannel","currentChannel","activeInTargetScope","hasAuthenticatedActive","selectorCurrentBundleId","currentBundleId","minimumReleaseId","createReleaseSelectionContextHash","activeBundleId","activeReleaseId","strategyValue","acceptReleaseCatalog","selectDesiredRelease","builtInBundleId","receipt","authorization","authorizeReleaseTransition","authorized","reason","release","transitionKind","guard","updateBundleForSelection","isReleaseSelectionCurrent","StaleReleaseCatalogError","committed","commitReleaseSelection","selection","insights","artifact","resolveArtifact","targetBundleId","updateBundle","changedAssets","fileHash","fileUrl","manifestFileHash","manifestUrl","shouldSkipCurrentBundleIdCheck","status","id","message","rolloutCohortCount","shouldForceUpdate","targetCohorts","checkForUpdate","__DEV__","includes","Platform","OS","onError","getAppVersion","getBundleId","getMinBundleId","defaultChannel","getDefaultChannel","isSwitched","isChannelSwitched","getChannel","getCohort","getFingerprintHash"],"sourceRoot":"../../src","sources":["checkForUpdate.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_protocol","require","_reactNative","_appReady","_error","_native","_store","_updateError","sameReceipt","first","second","kind","releaseId","bundleId","catalogId","scopeKey","generation","catalogHash","channel","selectionContextHash","validateCatalog","catalog","expectedScope","schemaVersion","Number","isSafeInteger","test","hasExpectedReleaseCatalogScope","InvalidUpdateResponseError","resetProgress","hotUpdaterStore","setState","artifactType","details","isUpdateDownloaded","progress","reportUpdateError","emit","error","stage","resource","scope","classification","classifyUpdateError","getRunningReleaseId","getChannel","updateStrategy","targetBundleId","undefined","targetReleaseId","cause","exports","checkForReleaseCatalogUpdate","input","options","session","client","createSession","channelKey","encodeChannelKey","targetChannel","strategy","canonicalAppVersion","canonicalizeAppVersion","currentAppVersion","HotUpdaterError","fingerprintHash","platform","fetchReleaseCatalog","appVersion","requestHeaders","requestTimeout","crashedBundleIds","getCrashHistory","activeState","getActiveUpdateState","active","activeSelection","explicitScopeSwitch","explicitChannel","currentChannel","activeInTargetScope","hasAuthenticatedActive","selectorCurrentBundleId","currentBundleId","minimumReleaseId","createReleaseSelectionContextHash","activeBundleId","activeReleaseId","cohort","strategyValue","acceptReleaseCatalog","desired","selectDesiredRelease","builtInBundleId","receipt","authorization","authorizeReleaseTransition","authorized","reason","release","transitionKind","guard","fromReleaseId","stableSelection","errorScope","installSelection","isReleaseSelectionCurrent","StaleReleaseCatalogError","committed","commitReleaseSelection","selection","status","previousReleaseId","artifact","resolveArtifact","delivery","stageBundle","assets","manifestFileHash","manifestUrl","archiveUrl","shouldSkipCurrentBundleIdCheck","fromBundleId","toBundleId","toReleaseId","updateBundleForSelection","shouldForceUpdate","updateStatus","id","message","rolloutCohortCount","targetCohorts","updateBundle","checkForUpdate","__DEV__","includes","Platform","OS","onError","getAppVersion","getBundleId","getMinBundleId","defaultChannel","getDefaultChannel","isSwitched","isChannelSwitched","getCohort","getFingerprintHash","result"],"sourceRoot":"../../src","sources":["checkForUpdate.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "defineClientPlugin", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _protocol.defineClientPlugin;
10
+ }
11
+ });
12
+ var _protocol = require("@hot-updater/protocol");
13
+ //# sourceMappingURL=clientPlugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_protocol","require"],"sourceRoot":"../../src","sources":["clientPlugin.ts"],"mappings":";;;;;;;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA","ignoreList":[]}