@hot-updater/react-native 1.0.0-rc.2 → 1.0.0-rc.22

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 (291) hide show
  1. package/android/proguard-rules.pro +17 -2
  2. package/android/src/main/java/com/hotupdater/BuiltInAssetResolver.kt +286 -0
  3. package/android/src/main/java/com/hotupdater/BundleFileStorageService.kt +954 -837
  4. package/android/src/main/java/com/hotupdater/BundleMetadata.kt +15 -11
  5. package/android/src/main/java/com/hotupdater/FileManagerService.kt +45 -0
  6. package/android/src/main/java/com/hotupdater/HotUpdaterException.kt +287 -22
  7. package/android/src/main/java/com/hotupdater/HotUpdaterImpl.kt +43 -31
  8. package/android/src/main/java/com/hotupdater/HotUpdaterRecoveryManager.kt +37 -54
  9. package/android/src/main/java/com/hotupdater/HotUpdaterRecoveryState.kt +64 -0
  10. package/android/src/main/java/com/hotupdater/InstallIdentityService.kt +37 -0
  11. package/android/src/main/java/com/hotupdater/KeyValueStorageService.kt +86 -0
  12. package/android/src/main/java/com/hotupdater/NetworkState.kt +31 -0
  13. package/android/src/main/java/com/hotupdater/NoBackupStorage.kt +17 -0
  14. package/android/src/main/java/com/hotupdater/OkHttpDownloadService.kt +127 -50
  15. package/android/src/main/java/com/hotupdater/PreviousProcessExit.kt +89 -0
  16. package/android/src/main/java/com/hotupdater/ReactNativeValueConverters.kt +34 -0
  17. package/android/src/main/java/com/hotupdater/TarArchiveInputStream.kt +214 -375
  18. package/android/src/main/java/com/hotupdater/TarBrArchiveExtractor.kt +119 -0
  19. package/android/src/newarch/HotUpdater.kt +7 -9
  20. package/android/src/newarch/HotUpdaterModule.kt +109 -84
  21. package/android/src/oldarch/HotUpdater.kt +7 -9
  22. package/android/src/oldarch/HotUpdaterModule.kt +98 -74
  23. package/android/src/oldarch/HotUpdaterSpec.kt +4 -6
  24. package/ios/HotUpdater/Internal/BrotliFileDecompressor.swift +167 -0
  25. package/ios/HotUpdater/Internal/BuiltInAssetResolver.swift +196 -0
  26. package/ios/HotUpdater/Internal/BundleFileStorageService.swift +950 -1112
  27. package/ios/HotUpdater/Internal/BundleMetadata.swift +8 -53
  28. package/ios/HotUpdater/Internal/FileManagerService.swift +48 -0
  29. package/ios/HotUpdater/Internal/FileUtilities.swift +64 -0
  30. package/ios/HotUpdater/Internal/HotUpdater-Bridging-Header.h +0 -1
  31. package/ios/HotUpdater/Internal/HotUpdater.mm +13 -45
  32. package/ios/HotUpdater/Internal/HotUpdaterImpl.swift +190 -73
  33. package/ios/HotUpdater/Internal/KeyValueStorageService.swift +71 -0
  34. package/ios/HotUpdater/Internal/NotificationExtension.swift +0 -2
  35. package/ios/HotUpdater/Internal/TarArchiveExtractor.swift +182 -311
  36. package/ios/HotUpdater/Internal/URLSessionDownloadService.swift +119 -71
  37. package/ios/HotUpdater/Internal/UpdateFailure.swift +390 -0
  38. package/ios/HotUpdater/Recovery/HotUpdaterRecovery.h +16 -0
  39. package/ios/HotUpdater/Recovery/HotUpdaterRecovery.mm +83 -0
  40. package/ios/HotUpdater/Recovery/HotUpdaterRecoveryHooks.mm +49 -0
  41. package/lib/commonjs/appReady.js +111 -0
  42. package/lib/commonjs/appReady.js.map +1 -0
  43. package/lib/commonjs/checkForUpdate.js +125 -70
  44. package/lib/commonjs/checkForUpdate.js.map +1 -1
  45. package/lib/commonjs/clientPlugin.js +13 -0
  46. package/lib/commonjs/clientPlugin.js.map +1 -0
  47. package/lib/commonjs/error.js +4 -13
  48. package/lib/commonjs/error.js.map +1 -1
  49. package/lib/commonjs/fetchJSON.js +5 -2
  50. package/lib/commonjs/fetchJSON.js.map +1 -1
  51. package/lib/commonjs/httpClient.js +55 -92
  52. package/lib/commonjs/httpClient.js.map +1 -1
  53. package/lib/commonjs/index.js +68 -20
  54. package/lib/commonjs/index.js.map +1 -1
  55. package/lib/commonjs/native.js +82 -62
  56. package/lib/commonjs/native.js.map +1 -1
  57. package/lib/commonjs/pluginHost.js +44 -0
  58. package/lib/commonjs/pluginHost.js.map +1 -0
  59. package/lib/commonjs/releaseCatalogCache.js +20 -61
  60. package/lib/commonjs/releaseCatalogCache.js.map +1 -1
  61. package/lib/commonjs/sdkVersion.js +1 -1
  62. package/lib/commonjs/sdkVersion.js.map +1 -1
  63. package/lib/commonjs/specs/NativeHotUpdater.js.map +1 -1
  64. package/lib/commonjs/store.js +3 -10
  65. package/lib/commonjs/store.js.map +1 -1
  66. package/lib/commonjs/updateError.js +132 -0
  67. package/lib/commonjs/updateError.js.map +1 -0
  68. package/lib/commonjs/wrap.js +44 -27
  69. package/lib/commonjs/wrap.js.map +1 -1
  70. package/lib/module/appReady.js +103 -0
  71. package/lib/module/appReady.js.map +1 -0
  72. package/lib/module/checkForUpdate.js +118 -65
  73. package/lib/module/checkForUpdate.js.map +1 -1
  74. package/lib/module/clientPlugin.js +4 -0
  75. package/lib/module/clientPlugin.js.map +1 -0
  76. package/lib/module/error.js +4 -13
  77. package/lib/module/error.js.map +1 -1
  78. package/lib/module/fetchJSON.js +3 -1
  79. package/lib/module/fetchJSON.js.map +1 -1
  80. package/lib/module/httpClient.js +53 -90
  81. package/lib/module/httpClient.js.map +1 -1
  82. package/lib/module/index.js +55 -22
  83. package/lib/module/index.js.map +1 -1
  84. package/lib/module/native.js +74 -54
  85. package/lib/module/native.js.map +1 -1
  86. package/lib/module/pluginHost.js +35 -0
  87. package/lib/module/pluginHost.js.map +1 -0
  88. package/lib/module/releaseCatalogCache.js +16 -56
  89. package/lib/module/releaseCatalogCache.js.map +1 -1
  90. package/lib/module/sdkVersion.js +1 -1
  91. package/lib/module/sdkVersion.js.map +1 -1
  92. package/lib/module/specs/NativeHotUpdater.js.map +1 -1
  93. package/lib/module/store.js +3 -10
  94. package/lib/module/store.js.map +1 -1
  95. package/lib/module/updateError.js +126 -0
  96. package/lib/module/updateError.js.map +1 -0
  97. package/lib/module/wrap.js +45 -28
  98. package/lib/module/wrap.js.map +1 -1
  99. package/lib/typescript/commonjs/appReady.d.ts +23 -0
  100. package/lib/typescript/commonjs/appReady.d.ts.map +1 -0
  101. package/lib/typescript/commonjs/checkForUpdate.d.ts +16 -4
  102. package/lib/typescript/commonjs/checkForUpdate.d.ts.map +1 -1
  103. package/lib/typescript/commonjs/clientPlugin.d.ts +2 -0
  104. package/lib/typescript/commonjs/clientPlugin.d.ts.map +1 -0
  105. package/lib/typescript/commonjs/error.d.ts +4 -13
  106. package/lib/typescript/commonjs/error.d.ts.map +1 -1
  107. package/lib/typescript/commonjs/fetchJSON.d.ts +3 -0
  108. package/lib/typescript/commonjs/fetchJSON.d.ts.map +1 -1
  109. package/lib/typescript/commonjs/httpClient.d.ts +3 -32
  110. package/lib/typescript/commonjs/httpClient.d.ts.map +1 -1
  111. package/lib/typescript/commonjs/index.d.ts +7 -12
  112. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  113. package/lib/typescript/commonjs/native.d.ts +33 -23
  114. package/lib/typescript/commonjs/native.d.ts.map +1 -1
  115. package/lib/typescript/commonjs/pluginHost.d.ts +4 -0
  116. package/lib/typescript/commonjs/pluginHost.d.ts.map +1 -0
  117. package/lib/typescript/commonjs/releaseCatalogCache.d.ts +6 -14
  118. package/lib/typescript/commonjs/releaseCatalogCache.d.ts.map +1 -1
  119. package/lib/typescript/commonjs/sdkVersion.d.ts +1 -1
  120. package/lib/typescript/commonjs/sdkVersion.d.ts.map +1 -1
  121. package/lib/typescript/commonjs/specs/NativeHotUpdater.d.ts +42 -47
  122. package/lib/typescript/commonjs/specs/NativeHotUpdater.d.ts.map +1 -1
  123. package/lib/typescript/commonjs/store.d.ts +1 -3
  124. package/lib/typescript/commonjs/store.d.ts.map +1 -1
  125. package/lib/typescript/commonjs/types.d.ts +1 -1
  126. package/lib/typescript/commonjs/types.d.ts.map +1 -1
  127. package/lib/typescript/commonjs/updateError.d.ts +26 -0
  128. package/lib/typescript/commonjs/updateError.d.ts.map +1 -0
  129. package/lib/typescript/commonjs/wrap.d.ts.map +1 -1
  130. package/lib/typescript/commonjs/wrap.types.d.ts +6 -7
  131. package/lib/typescript/commonjs/wrap.types.d.ts.map +1 -1
  132. package/lib/typescript/module/appReady.d.ts +23 -0
  133. package/lib/typescript/module/appReady.d.ts.map +1 -0
  134. package/lib/typescript/module/checkForUpdate.d.ts +16 -4
  135. package/lib/typescript/module/checkForUpdate.d.ts.map +1 -1
  136. package/lib/typescript/module/clientPlugin.d.ts +2 -0
  137. package/lib/typescript/module/clientPlugin.d.ts.map +1 -0
  138. package/lib/typescript/module/error.d.ts +4 -13
  139. package/lib/typescript/module/error.d.ts.map +1 -1
  140. package/lib/typescript/module/fetchJSON.d.ts +3 -0
  141. package/lib/typescript/module/fetchJSON.d.ts.map +1 -1
  142. package/lib/typescript/module/httpClient.d.ts +3 -32
  143. package/lib/typescript/module/httpClient.d.ts.map +1 -1
  144. package/lib/typescript/module/index.d.ts +7 -12
  145. package/lib/typescript/module/index.d.ts.map +1 -1
  146. package/lib/typescript/module/native.d.ts +33 -23
  147. package/lib/typescript/module/native.d.ts.map +1 -1
  148. package/lib/typescript/module/pluginHost.d.ts +4 -0
  149. package/lib/typescript/module/pluginHost.d.ts.map +1 -0
  150. package/lib/typescript/module/releaseCatalogCache.d.ts +6 -14
  151. package/lib/typescript/module/releaseCatalogCache.d.ts.map +1 -1
  152. package/lib/typescript/module/sdkVersion.d.ts +1 -1
  153. package/lib/typescript/module/sdkVersion.d.ts.map +1 -1
  154. package/lib/typescript/module/specs/NativeHotUpdater.d.ts +42 -47
  155. package/lib/typescript/module/specs/NativeHotUpdater.d.ts.map +1 -1
  156. package/lib/typescript/module/store.d.ts +1 -3
  157. package/lib/typescript/module/store.d.ts.map +1 -1
  158. package/lib/typescript/module/types.d.ts +1 -1
  159. package/lib/typescript/module/types.d.ts.map +1 -1
  160. package/lib/typescript/module/updateError.d.ts +26 -0
  161. package/lib/typescript/module/updateError.d.ts.map +1 -0
  162. package/lib/typescript/module/wrap.d.ts.map +1 -1
  163. package/lib/typescript/module/wrap.types.d.ts +6 -7
  164. package/lib/typescript/module/wrap.types.d.ts.map +1 -1
  165. package/package.json +7 -4
  166. package/src/appReady.ts +149 -0
  167. package/src/checkForUpdate.ts +152 -89
  168. package/src/clientPlugin.ts +17 -0
  169. package/src/error.ts +4 -14
  170. package/src/fetchJSON.ts +5 -1
  171. package/src/httpClient.ts +78 -157
  172. package/src/index.ts +87 -29
  173. package/src/native.ts +109 -104
  174. package/src/pluginHost.ts +45 -0
  175. package/src/releaseCatalogCache.ts +26 -140
  176. package/src/sdkVersion.ts +1 -1
  177. package/src/specs/NativeHotUpdater.ts +41 -48
  178. package/src/store.ts +2 -23
  179. package/src/types.ts +1 -1
  180. package/src/updateError.ts +153 -0
  181. package/src/wrap.tsx +59 -28
  182. package/src/wrap.types.ts +6 -7
  183. package/android/src/main/java/com/hotupdater/DecompressService.kt +0 -89
  184. package/android/src/main/java/com/hotupdater/DecompressionStrategy.kt +0 -26
  185. package/android/src/main/java/com/hotupdater/TarBrDecompressionStrategy.kt +0 -117
  186. package/android/src/main/java/com/hotupdater/TarGzDecompressionStrategy.kt +0 -117
  187. package/android/src/main/java/com/hotupdater/ZipDecompressionStrategy.kt +0 -192
  188. package/android/src/test/java/com/hotupdater/BsdiffPatchTest.kt +0 -46
  189. package/android/src/test/java/com/hotupdater/BundleFileStorageServiceTest.kt +0 -799
  190. package/android/src/test/java/com/hotupdater/HotUpdaterImplTest.kt +0 -273
  191. package/android/src/test/java/com/hotupdater/NativeConfigUtilsTest.kt +0 -20
  192. package/android/src/test/java/com/hotupdater/OkHttpDownloadServiceTest.kt +0 -111
  193. package/android/src/test/java/com/hotupdater/RelativePathResolverTest.kt +0 -41
  194. package/android/src/test/java/com/hotupdater/ReleaseCatalogCacheServiceTest.kt +0 -118
  195. package/android/src/test/java/com/hotupdater/TarArchiveInputStreamTest.kt +0 -68
  196. package/ios/HotUpdater/Internal/ArchiveExtractionUtilities.swift +0 -178
  197. package/ios/HotUpdater/Internal/DecompressService.swift +0 -112
  198. package/ios/HotUpdater/Internal/DecompressionStrategy.swift +0 -22
  199. package/ios/HotUpdater/Internal/StreamingTarArchiveExtractor.swift +0 -370
  200. package/ios/HotUpdater/Internal/TarBrDecompressionStrategy.swift +0 -39
  201. package/ios/HotUpdater/Internal/TarGzDecompressionStrategy.swift +0 -59
  202. package/ios/HotUpdater/Internal/ZipArchiveExtractor.swift +0 -482
  203. package/ios/HotUpdater/Internal/ZipDecompressionStrategy.swift +0 -56
  204. package/lib/commonjs/catalogCacheNative.spec.js +0 -31
  205. package/lib/commonjs/catalogCacheNative.spec.js.map +0 -1
  206. package/lib/commonjs/checkForUpdate.releaseCatalog.spec.js +0 -604
  207. package/lib/commonjs/checkForUpdate.releaseCatalog.spec.js.map +0 -1
  208. package/lib/commonjs/httpClient.spec.js +0 -102
  209. package/lib/commonjs/httpClient.spec.js.map +0 -1
  210. package/lib/commonjs/index.spec.js +0 -298
  211. package/lib/commonjs/index.spec.js.map +0 -1
  212. package/lib/commonjs/iosInterop.spec.js +0 -18
  213. package/lib/commonjs/iosInterop.spec.js.map +0 -1
  214. package/lib/commonjs/native.spec.js +0 -795
  215. package/lib/commonjs/native.spec.js.map +0 -1
  216. package/lib/commonjs/notifyAppReadyInsights.boundary.spec.js +0 -218
  217. package/lib/commonjs/notifyAppReadyInsights.boundary.spec.js.map +0 -1
  218. package/lib/commonjs/notifyAppReadyInsights.js +0 -133
  219. package/lib/commonjs/notifyAppReadyInsights.js.map +0 -1
  220. package/lib/commonjs/notifyAppReadyInsights.spec.js +0 -246
  221. package/lib/commonjs/notifyAppReadyInsights.spec.js.map +0 -1
  222. package/lib/commonjs/notifyAppReadyInsights.test-utils.js +0 -24
  223. package/lib/commonjs/notifyAppReadyInsights.test-utils.js.map +0 -1
  224. package/lib/commonjs/notifyAppReadyInsights.transport.spec.js +0 -117
  225. package/lib/commonjs/notifyAppReadyInsights.transport.spec.js.map +0 -1
  226. package/lib/commonjs/releaseCatalogCache.spec.js +0 -195
  227. package/lib/commonjs/releaseCatalogCache.spec.js.map +0 -1
  228. package/lib/commonjs/releaseCatalogCacheNativeContract.spec.js +0 -64
  229. package/lib/commonjs/releaseCatalogCacheNativeContract.spec.js.map +0 -1
  230. package/lib/commonjs/store.notification.spec.js +0 -76
  231. package/lib/commonjs/store.notification.spec.js.map +0 -1
  232. package/lib/commonjs/store.spec.js +0 -316
  233. package/lib/commonjs/store.spec.js.map +0 -1
  234. package/lib/commonjs/wrap.spec.js +0 -296
  235. package/lib/commonjs/wrap.spec.js.map +0 -1
  236. package/lib/module/catalogCacheNative.spec.js +0 -31
  237. package/lib/module/catalogCacheNative.spec.js.map +0 -1
  238. package/lib/module/checkForUpdate.releaseCatalog.spec.js +0 -603
  239. package/lib/module/checkForUpdate.releaseCatalog.spec.js.map +0 -1
  240. package/lib/module/httpClient.spec.js +0 -102
  241. package/lib/module/httpClient.spec.js.map +0 -1
  242. package/lib/module/index.spec.js +0 -297
  243. package/lib/module/index.spec.js.map +0 -1
  244. package/lib/module/iosInterop.spec.js +0 -18
  245. package/lib/module/iosInterop.spec.js.map +0 -1
  246. package/lib/module/native.spec.js +0 -794
  247. package/lib/module/native.spec.js.map +0 -1
  248. package/lib/module/notifyAppReadyInsights.boundary.spec.js +0 -217
  249. package/lib/module/notifyAppReadyInsights.boundary.spec.js.map +0 -1
  250. package/lib/module/notifyAppReadyInsights.js +0 -128
  251. package/lib/module/notifyAppReadyInsights.js.map +0 -1
  252. package/lib/module/notifyAppReadyInsights.spec.js +0 -245
  253. package/lib/module/notifyAppReadyInsights.spec.js.map +0 -1
  254. package/lib/module/notifyAppReadyInsights.test-utils.js +0 -18
  255. package/lib/module/notifyAppReadyInsights.test-utils.js.map +0 -1
  256. package/lib/module/notifyAppReadyInsights.transport.spec.js +0 -116
  257. package/lib/module/notifyAppReadyInsights.transport.spec.js.map +0 -1
  258. package/lib/module/releaseCatalogCache.spec.js +0 -195
  259. package/lib/module/releaseCatalogCache.spec.js.map +0 -1
  260. package/lib/module/releaseCatalogCacheNativeContract.spec.js +0 -64
  261. package/lib/module/releaseCatalogCacheNativeContract.spec.js.map +0 -1
  262. package/lib/module/store.notification.spec.js +0 -77
  263. package/lib/module/store.notification.spec.js.map +0 -1
  264. package/lib/module/store.spec.js +0 -315
  265. package/lib/module/store.spec.js.map +0 -1
  266. package/lib/module/wrap.spec.js +0 -295
  267. package/lib/module/wrap.spec.js.map +0 -1
  268. package/lib/typescript/commonjs/notifyAppReadyInsights.d.ts +0 -13
  269. package/lib/typescript/commonjs/notifyAppReadyInsights.d.ts.map +0 -1
  270. package/lib/typescript/commonjs/notifyAppReadyInsights.test-utils.d.ts +0 -8
  271. package/lib/typescript/commonjs/notifyAppReadyInsights.test-utils.d.ts.map +0 -1
  272. package/lib/typescript/module/notifyAppReadyInsights.d.ts +0 -13
  273. package/lib/typescript/module/notifyAppReadyInsights.d.ts.map +0 -1
  274. package/lib/typescript/module/notifyAppReadyInsights.test-utils.d.ts +0 -8
  275. package/lib/typescript/module/notifyAppReadyInsights.test-utils.d.ts.map +0 -1
  276. package/src/catalogCacheNative.spec.ts +0 -63
  277. package/src/checkForUpdate.releaseCatalog.spec.ts +0 -596
  278. package/src/httpClient.spec.ts +0 -132
  279. package/src/index.spec.ts +0 -331
  280. package/src/iosInterop.spec.ts +0 -30
  281. package/src/native.spec.ts +0 -855
  282. package/src/notifyAppReadyInsights.boundary.spec.ts +0 -234
  283. package/src/notifyAppReadyInsights.spec.ts +0 -243
  284. package/src/notifyAppReadyInsights.test-utils.ts +0 -31
  285. package/src/notifyAppReadyInsights.transport.spec.ts +0 -130
  286. package/src/notifyAppReadyInsights.ts +0 -194
  287. package/src/releaseCatalogCache.spec.ts +0 -282
  288. package/src/releaseCatalogCacheNativeContract.spec.ts +0 -80
  289. package/src/store.notification.spec.ts +0 -92
  290. package/src/store.spec.ts +0 -372
  291. package/src/wrap.spec.ts +0 -367
@@ -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,111 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.handleNotifyAppReady = exports.getRunningReleaseId = exports.getPreviousProcessExit = exports.emitAfterAppReady = void 0;
7
+ var _native = require("./native.js");
8
+ var _pluginHost = require("./pluginHost.js");
9
+ let didEmitAppReady = false;
10
+ /** Settles once this runtime's launch was read, whether it was reported or failed. */
11
+ let appReadyRead = null;
12
+ /** Why the previous main process exited, read with this runtime's launch. */
13
+ let previousProcessExit = null;
14
+
15
+ /** Android 11+: why the app's previous main process exited, once the launch was read. */
16
+ const getPreviousProcessExit = () => previousProcessExit;
17
+ exports.getPreviousProcessExit = getPreviousProcessExit;
18
+ const waitForNextFrame = () => new Promise(resolve => {
19
+ const requestAnimationFrame = globalThis?.requestAnimationFrame;
20
+ if (requestAnimationFrame) {
21
+ requestAnimationFrame(() => resolve());
22
+ return;
23
+ }
24
+ void Promise.resolve().then(resolve);
25
+ });
26
+
27
+ /**
28
+ * The Release the running bundle was selected as: the active or stable
29
+ * selection that names it on the current channel.
30
+ */
31
+ const getRunningReleaseId = (bundleId, channel) => {
32
+ const state = (0, _native.getActiveUpdateState)();
33
+ return [state.activeSelection, state.stableSelection].find(selection => selection?.bundleId === bundleId && selection.channel === channel)?.releaseId ?? null;
34
+ };
35
+ exports.getRunningReleaseId = getRunningReleaseId;
36
+ const toAppReadyResult = (result, transition) => {
37
+ const channel = (0, _native.getChannel)();
38
+ if (result.status === "UNCHANGED") {
39
+ const bundleId = (0, _native.getBundleId)();
40
+ return {
41
+ status: "UNCHANGED",
42
+ channel,
43
+ bundleId,
44
+ releaseId: getRunningReleaseId(bundleId, channel),
45
+ previousProcessExit
46
+ };
47
+ }
48
+ // Native persists the transition with every applied or recovered launch;
49
+ // a report without it cannot say what moved.
50
+ if (transition === null) return null;
51
+ return {
52
+ status: transition.type,
53
+ channel,
54
+ fromBundleId: transition.fromBundleId,
55
+ fromReleaseId: transition.fromReleaseId,
56
+ toBundleId: transition.toBundleId,
57
+ toReleaseId: transition.toReleaseId,
58
+ updateStrategy: transition.updateStrategy,
59
+ previousProcessExit
60
+ };
61
+ };
62
+ const notifyAppReady = async options => {
63
+ try {
64
+ let nativeReadResult;
65
+ do {
66
+ await waitForNextFrame();
67
+ nativeReadResult = (0, _native.readNotifyAppReady)();
68
+ } while (nativeReadResult.pending);
69
+ const {
70
+ result,
71
+ transition
72
+ } = nativeReadResult;
73
+ previousProcessExit = nativeReadResult.previousProcessExit;
74
+ if (!didEmitAppReady) {
75
+ didEmitAppReady = true;
76
+ (0, _pluginHost.emitPluginHook)("onAppReady", () => toAppReadyResult(result, transition));
77
+ }
78
+ options.onNotifyAppReady?.(result);
79
+ return result;
80
+ } catch (error) {
81
+ const normalizedError = error instanceof Error ? error : new Error(String(error));
82
+ options.onError?.(error);
83
+ console.warn("[HotUpdater] Failed to notify app ready:", normalizedError);
84
+ return undefined;
85
+ }
86
+ };
87
+
88
+ /** Reads this runtime's launch once native finalizes it and reports it to plugins. */
89
+ const handleNotifyAppReady = options => {
90
+ const readiness = notifyAppReady(options);
91
+ appReadyRead ??= readiness;
92
+ return readiness;
93
+ };
94
+
95
+ /**
96
+ * Calls a plugin hook after this runtime's `onAppReady`, so plugins see the
97
+ * launch before anything that followed it. The event is built now, from the
98
+ * state it describes, and only when a plugin listens.
99
+ */
100
+ exports.handleNotifyAppReady = handleNotifyAppReady;
101
+ const emitAfterAppReady = (name, createPayload) => {
102
+ const payload = (0, _pluginHost.buildPluginEvent)(name, createPayload);
103
+ if (payload === null) return;
104
+ if (appReadyRead === null) {
105
+ (0, _pluginHost.dispatchPluginHook)(name, payload);
106
+ return;
107
+ }
108
+ void appReadyRead.then(() => (0, _pluginHost.dispatchPluginHook)(name, payload));
109
+ };
110
+ exports.emitAfterAppReady = emitAfterAppReady;
111
+ //# sourceMappingURL=appReady.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_native","require","_pluginHost","didEmitAppReady","appReadyRead","previousProcessExit","getPreviousProcessExit","exports","waitForNextFrame","Promise","resolve","requestAnimationFrame","globalThis","then","getRunningReleaseId","bundleId","channel","state","getActiveUpdateState","activeSelection","stableSelection","find","selection","releaseId","toAppReadyResult","result","transition","getChannel","status","getBundleId","type","fromBundleId","fromReleaseId","toBundleId","toReleaseId","updateStrategy","notifyAppReady","options","nativeReadResult","readNotifyAppReady","pending","emitPluginHook","onNotifyAppReady","error","normalizedError","Error","String","onError","console","warn","undefined","handleNotifyAppReady","readiness","emitAfterAppReady","name","createPayload","payload","buildPluginEvent","dispatchPluginHook"],"sourceRoot":"../../src","sources":["appReady.ts"],"mappings":";;;;;;AAEA,IAAAA,OAAA,GAAAC,OAAA;AAQA,IAAAC,WAAA,GAAAD,OAAA;AAaA,IAAIE,eAAe,GAAG,KAAK;AAC3B;AACA,IAAIC,YAAqC,GAAG,IAAI;AAChD;AACA,IAAIC,mBAAkC,GAAG,IAAI;;AAE7C;AACO,MAAMC,sBAAsB,GAAGA,CAAA,KAAqBD,mBAAmB;AAACE,OAAA,CAAAD,sBAAA,GAAAA,sBAAA;AAE/E,MAAME,gBAAgB,GAAGA,CAAA,KACvB,IAAIC,OAAO,CAAQC,OAAO,IAAK;EAC7B,MAAMC,qBAAqB,GACzBC,UAAU,EAGTD,qBAAqB;EAExB,IAAIA,qBAAqB,EAAE;IACzBA,qBAAqB,CAAC,MAAMD,OAAO,CAAC,CAAC,CAAC;IACtC;EACF;EAEA,KAAKD,OAAO,CAACC,OAAO,CAAC,CAAC,CAACG,IAAI,CAACH,OAAO,CAAC;AACtC,CAAC,CAAC;;AAEJ;AACA;AACA;AACA;AACO,MAAMI,mBAAmB,GAAGA,CACjCC,QAAgB,EAChBC,OAAe,KACG;EAClB,MAAMC,KAAK,GAAG,IAAAC,4BAAoB,EAAC,CAAC;EACpC,OACE,CAACD,KAAK,CAACE,eAAe,EAAEF,KAAK,CAACG,eAAe,CAAC,CAACC,IAAI,CAChDC,SAAS,IACRA,SAAS,EAAEP,QAAQ,KAAKA,QAAQ,IAAIO,SAAS,CAACN,OAAO,KAAKA,OAC9D,CAAC,EAAEO,SAAS,IAAI,IAAI;AAExB,CAAC;AAAChB,OAAA,CAAAO,mBAAA,GAAAA,mBAAA;AAEF,MAAMU,gBAAgB,GAAGA,CACvBC,MAA4B,EAC5BC,UAAmC,KACT;EAC1B,MAAMV,OAAO,GAAG,IAAAW,kBAAU,EAAC,CAAC;EAC5B,IAAIF,MAAM,CAACG,MAAM,KAAK,WAAW,EAAE;IACjC,MAAMb,QAAQ,GAAG,IAAAc,mBAAW,EAAC,CAAC;IAC9B,OAAO;MACLD,MAAM,EAAE,WAAW;MACnBZ,OAAO;MACPD,QAAQ;MACRQ,SAAS,EAAET,mBAAmB,CAACC,QAAQ,EAAEC,OAAO,CAAC;MACjDX;IACF,CAAC;EACH;EACA;EACA;EACA,IAAIqB,UAAU,KAAK,IAAI,EAAE,OAAO,IAAI;EACpC,OAAO;IACLE,MAAM,EAAEF,UAAU,CAACI,IAAI;IACvBd,OAAO;IACPe,YAAY,EAAEL,UAAU,CAACK,YAAY;IACrCC,aAAa,EAAEN,UAAU,CAACM,aAAa;IACvCC,UAAU,EAAEP,UAAU,CAACO,UAAU;IACjCC,WAAW,EAAER,UAAU,CAACQ,WAAW;IACnCC,cAAc,EAAET,UAAU,CAACS,cAAc;IACzC9B;EACF,CAAC;AACH,CAAC;AAED,MAAM+B,cAAc,GAAG,MACrBC,OAA8B,IACgB;EAC9C,IAAI;IACF,IAAIC,gBAAuD;IAC3D,GAAG;MACD,MAAM9B,gBAAgB,CAAC,CAAC;MACxB8B,gBAAgB,GAAG,IAAAC,0BAAkB,EAAC,CAAC;IACzC,CAAC,QAAQD,gBAAgB,CAACE,OAAO;IAEjC,MAAM;MAAEf,MAAM;MAAEC;IAAW,CAAC,GAAGY,gBAAgB;IAC/CjC,mBAAmB,GAAGiC,gBAAgB,CAACjC,mBAAmB;IAC1D,IAAI,CAACF,eAAe,EAAE;MACpBA,eAAe,GAAG,IAAI;MACtB,IAAAsC,0BAAc,EAAC,YAAY,EAAE,MAAMjB,gBAAgB,CAACC,MAAM,EAAEC,UAAU,CAAC,CAAC;IAC1E;IAEAW,OAAO,CAACK,gBAAgB,GAAGjB,MAAM,CAAC;IAClC,OAAOA,MAAM;EACf,CAAC,CAAC,OAAOkB,KAAK,EAAE;IACd,MAAMC,eAAe,GACnBD,KAAK,YAAYE,KAAK,GAAGF,KAAK,GAAG,IAAIE,KAAK,CAACC,MAAM,CAACH,KAAK,CAAC,CAAC;IAC3DN,OAAO,CAACU,OAAO,GAAGJ,KAAK,CAAC;IACxBK,OAAO,CAACC,IAAI,CAAC,0CAA0C,EAAEL,eAAe,CAAC;IACzE,OAAOM,SAAS;EAClB;AACF,CAAC;;AAED;AACO,MAAMC,oBAAoB,GAC/Bd,OAA8B,IACgB;EAC9C,MAAMe,SAAS,GAAGhB,cAAc,CAACC,OAAO,CAAC;EACzCjC,YAAY,KAAKgD,SAAS;EAC1B,OAAOA,SAAS;AAClB,CAAC;;AAED;AACA;AACA;AACA;AACA;AAJA7C,OAAA,CAAA4C,oBAAA,GAAAA,oBAAA;AAKO,MAAME,iBAAwC,GAAGA,CACtDC,IAAI,EACJC,aAAa,KACV;EACH,MAAMC,OAAO,GAAG,IAAAC,4BAAgB,EAACH,IAAI,EAAEC,aAAa,CAAC;EACrD,IAAIC,OAAO,KAAK,IAAI,EAAE;EACtB,IAAIpD,YAAY,KAAK,IAAI,EAAE;IACzB,IAAAsD,8BAAkB,EAACJ,IAAI,EAAEE,OAAO,CAAC;IACjC;EACF;EACA,KAAKpD,YAAY,CAACS,IAAI,CAAC,MAAM,IAAA6C,8BAAkB,EAACJ,IAAI,EAAEE,OAAO,CAAC,CAAC;AACjE,CAAC;AAACjD,OAAA,CAAA8C,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -4,69 +4,68 @@ 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 notifyReleaseAdoption = 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: input.desired.bundleId,
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: "RELEASE_ADOPTED",
50
- updateStrategy: input.updateStrategy,
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 = (error, stage, resource, scope) => {
37
+ (0, _appReady.emitAfterAppReady)("onUpdateError", () => {
38
+ const classification = (0, _updateError.classifyUpdateError)(error, stage, resource);
39
+ if (classification === null) return null;
40
+ const previousProcessExit = (0, _appReady.getPreviousProcessExit)();
41
+ return {
42
+ ...classification,
43
+ ...(previousProcessExit === null ? {} : {
44
+ previousProcessExit
53
45
  }),
54
- ...(username === undefined ? {} : {
55
- username
56
- })
57
- });
58
- } catch (error) {
59
- console.warn("[HotUpdater] Release adoption insights failed:", error);
60
- }
46
+ channel: scope.channel,
47
+ bundleId: scope.bundleId,
48
+ releaseId: (0, _appReady.getRunningReleaseId)(scope.bundleId, (0, _native.getChannel)()),
49
+ updateStrategy: scope.updateStrategy,
50
+ ...(scope.targetBundleId === undefined ? {} : {
51
+ targetBundleId: scope.targetBundleId
52
+ }),
53
+ ...(scope.targetReleaseId == null ? {} : {
54
+ targetReleaseId: scope.targetReleaseId
55
+ }),
56
+ cause: error
57
+ };
58
+ });
61
59
  };
60
+ exports.reportUpdateError = reportUpdateError;
62
61
  async function checkForReleaseCatalogUpdate(input) {
63
62
  const {
64
63
  options
65
64
  } = input;
66
65
  const session = await options.client.createSession();
67
- const channelKey = (0, _core.encodeChannelKey)(input.targetChannel);
66
+ const channelKey = (0, _protocol.encodeChannelKey)(input.targetChannel);
68
67
  const strategy = options.updateStrategy === "appVersion" ? "APP_VERSION" : "FINGERPRINT";
69
- const canonicalAppVersion = (0, _pluginCore.canonicalizeAppVersion)(input.currentAppVersion);
68
+ const canonicalAppVersion = (0, _protocol.canonicalizeAppVersion)(input.currentAppVersion);
70
69
  if (strategy === "APP_VERSION" && canonicalAppVersion === null) {
71
70
  throw new _error.HotUpdaterError("Failed to canonicalize app version");
72
71
  }
@@ -92,11 +91,14 @@ async function checkForReleaseCatalogUpdate(input) {
92
91
  requestTimeout: options.requestTimeout,
93
92
  updateStrategy: options.updateStrategy
94
93
  });
94
+ // The server says this scope has no catalog yet: no update, not a failure.
95
+ if (catalog === null) return null;
95
96
  validateCatalog(catalog, expectedScope);
96
97
  const catalogId = catalog.catalogId;
97
98
  const scopeKey = catalog.scopeKey;
98
99
  const crashedBundleIds = (0, _native.getCrashHistory)();
99
- const active = (0, _native.getActiveUpdateState)().activeSelection;
100
+ const activeState = (0, _native.getActiveUpdateState)();
101
+ const active = activeState.activeSelection;
100
102
  const explicitScopeSwitch = input.explicitChannel !== undefined && input.explicitChannel !== input.currentChannel;
101
103
  const activeInTargetScope = active?.catalogId === catalogId && active.scopeKey === scopeKey ? active : null;
102
104
  const hasAuthenticatedActive = active !== null && active.catalogId !== null && active.scopeKey !== null && active.generation !== null;
@@ -104,7 +106,7 @@ async function checkForReleaseCatalogUpdate(input) {
104
106
  throw new _error.HotUpdaterError("Release transition rejected: UNSOLICITED_SCOPE");
105
107
  }
106
108
  const selectorCurrentBundleId = activeInTargetScope !== null || !hasAuthenticatedActive && !explicitScopeSwitch ? input.currentBundleId : input.minimumReleaseId;
107
- const selectionContextHash = (0, _core.createReleaseSelectionContextHash)({
109
+ const selectionContextHash = (0, _protocol.createReleaseSelectionContextHash)({
108
110
  activeBundleId: selectorCurrentBundleId,
109
111
  activeReleaseId: activeInTargetScope?.releaseId ?? null,
110
112
  cohort: input.cohort,
@@ -121,9 +123,9 @@ async function checkForReleaseCatalogUpdate(input) {
121
123
  selectionContextHash,
122
124
  scopeKey
123
125
  })) {
124
- throw new _error.HotUpdaterError("Rejected a stale or inconsistent Release catalog");
126
+ throw new _updateError.InvalidUpdateResponseError("Rejected a stale or inconsistent Release catalog");
125
127
  }
126
- const desired = (0, _core.selectDesiredRelease)(catalog, {
128
+ const desired = (0, _protocol.selectDesiredRelease)(catalog, {
127
129
  activeReleaseId: activeInTargetScope?.releaseId ?? null,
128
130
  builtInBundleId: input.minimumReleaseId,
129
131
  cohort: input.cohort,
@@ -147,7 +149,7 @@ async function checkForReleaseCatalogUpdate(input) {
147
149
  selectionContextHash
148
150
  };
149
151
  if (sameReceipt(active, receipt)) return null;
150
- const authorization = (0, _core.authorizeReleaseTransition)({
152
+ const authorization = (0, _protocol.authorizeReleaseTransition)({
151
153
  active,
152
154
  desired: receipt,
153
155
  explicitScopeSwitch
@@ -166,7 +168,15 @@ async function checkForReleaseCatalogUpdate(input) {
166
168
  scopeKey,
167
169
  selectionContextHash
168
170
  };
169
- const updateBundleForSelection = async () => {
171
+ const fromReleaseId = active?.bundleId === input.currentBundleId ? active.releaseId : activeState.stableSelection?.bundleId === input.currentBundleId ? activeState.stableSelection.releaseId : null;
172
+ const errorScope = {
173
+ bundleId: input.currentBundleId,
174
+ channel: input.targetChannel,
175
+ targetBundleId: desired.bundleId,
176
+ targetReleaseId: desired.releaseId,
177
+ updateStrategy: options.updateStrategy
178
+ };
179
+ const installSelection = async () => {
170
180
  resetProgress();
171
181
  if (!(0, _native.isReleaseSelectionCurrent)(guard)) {
172
182
  throw new _error.StaleReleaseCatalogError();
@@ -176,19 +186,14 @@ async function checkForReleaseCatalogUpdate(input) {
176
186
  guard,
177
187
  selection: receipt
178
188
  });
179
- if (committed && transitionKind === "ADOPT_RELEASE" && options.insights) {
180
- await notifyReleaseAdoption({
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
- updateStrategy: options.updateStrategy
191
- });
189
+ if (committed && transitionKind === "ADOPT_RELEASE") {
190
+ (0, _appReady.emitAfterAppReady)("onUpdateCheck", () => ({
191
+ status: "UNCHANGED",
192
+ channel: receipt.channel,
193
+ bundleId: receipt.bundleId,
194
+ releaseId: receipt.releaseId,
195
+ previousReleaseId: active?.releaseId ?? null
196
+ }));
192
197
  }
193
198
  return committed;
194
199
  }
@@ -201,27 +206,59 @@ async function checkForReleaseCatalogUpdate(input) {
201
206
  if (!(0, _native.isReleaseSelectionCurrent)(guard)) {
202
207
  throw new _error.StaleReleaseCatalogError();
203
208
  }
204
- return (0, _native.updateBundle)({
209
+ const delivery = await (0, _native.stageBundle)({
210
+ assets: artifact.assets,
205
211
  bundleId: desired.bundleId,
206
- changedAssets: artifact.changedAssets ?? null,
207
212
  channel: input.targetChannel,
208
- fileHash: artifact.fileHash,
209
- fileUrl: artifact.fileUrl,
210
- manifestFileHash: artifact.manifestFileHash ?? null,
211
- manifestUrl: artifact.manifestUrl ?? null,
213
+ manifestFileHash: artifact.manifestFileHash,
214
+ manifestUrl: artifact.manifestUrl,
215
+ ...(artifact.archiveUrl ? {
216
+ archiveUrl: artifact.archiveUrl
217
+ } : {}),
212
218
  selection: receipt,
213
219
  shouldSkipCurrentBundleIdCheck: true,
214
220
  status: desired.status
215
221
  });
222
+ if (delivery !== null && desired.bundleId !== input.currentBundleId) {
223
+ (0, _appReady.emitAfterAppReady)("onBundleDownloaded", () => ({
224
+ channel: input.targetChannel,
225
+ fromBundleId: input.currentBundleId,
226
+ fromReleaseId,
227
+ toBundleId: desired.bundleId,
228
+ toReleaseId: desired.releaseId,
229
+ updateStrategy: options.updateStrategy,
230
+ ...delivery
231
+ }));
232
+ }
233
+ return true;
234
+ };
235
+ const updateBundleForSelection = async () => {
236
+ try {
237
+ return await installSelection();
238
+ } catch (error) {
239
+ reportUpdateError(error, "download", "artifact", errorScope);
240
+ throw error;
241
+ }
216
242
  };
243
+ const shouldForceUpdate = transitionKind === "ADOPT_RELEASE" ? false : desired.status === "ROLLBACK" ? true : release?.shouldForceUpdate ?? false;
244
+ (0, _appReady.emitAfterAppReady)("onUpdateCheck", () => ({
245
+ status: "UPDATE_AVAILABLE",
246
+ channel: input.targetChannel,
247
+ fromBundleId: input.currentBundleId,
248
+ fromReleaseId,
249
+ toBundleId: desired.bundleId,
250
+ toReleaseId: desired.releaseId,
251
+ transitionKind,
252
+ updateStatus: desired.status,
253
+ shouldForceUpdate,
254
+ updateStrategy: options.updateStrategy
255
+ }));
217
256
  return {
218
- fileHash: null,
219
- fileUrl: null,
220
- id: desired.bundleId,
257
+ id: desired.releaseId ?? desired.bundleId,
221
258
  message: release?.message ?? null,
222
259
  releaseId: desired.releaseId,
223
260
  rolloutCohortCount: release?.rolloutCohortCount ?? 1000,
224
- shouldForceUpdate: transitionKind === "ADOPT_RELEASE" ? false : desired.status === "ROLLBACK" ? true : release?.shouldForceUpdate ?? false,
261
+ shouldForceUpdate,
225
262
  status: desired.status,
226
263
  targetCohorts: release?.targetCohorts ? [...release.targetCohorts] : [],
227
264
  transitionKind,
@@ -257,7 +294,7 @@ async function checkForUpdate(options) {
257
294
  }
258
295
  const fingerprintHash = (0, _native.getFingerprintHash)();
259
296
  try {
260
- return await checkForReleaseCatalogUpdate({
297
+ const result = await checkForReleaseCatalogUpdate({
261
298
  cohort,
262
299
  currentAppVersion,
263
300
  currentBundleId,
@@ -271,7 +308,25 @@ async function checkForUpdate(options) {
271
308
  platform,
272
309
  targetChannel
273
310
  });
311
+ if (result === null) {
312
+ (0, _appReady.emitAfterAppReady)("onUpdateCheck", () => {
313
+ const releaseId = (0, _appReady.getRunningReleaseId)(currentBundleId, currentChannel);
314
+ return {
315
+ status: "UNCHANGED",
316
+ channel: currentChannel,
317
+ bundleId: currentBundleId,
318
+ releaseId,
319
+ previousReleaseId: releaseId
320
+ };
321
+ });
322
+ }
323
+ return result;
274
324
  } catch (error) {
325
+ reportUpdateError(error, "check", "catalog", {
326
+ bundleId: currentBundleId,
327
+ channel: targetChannel,
328
+ updateStrategy: options.updateStrategy
329
+ });
275
330
  options.onError?.(error);
276
331
  return null;
277
332
  }
@@ -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","notifyReleaseAdoption","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":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AASA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAEA,IAAAG,MAAA,GAAAH,OAAA;AAEA,IAAAI,OAAA,GAAAJ,OAAA;AAkBA,IAAAK,oBAAA,GAAAL,OAAA;AAIA,IAAAM,MAAA,GAAAN,OAAA;AAqDA,MAAMO,WAAW,GAAGA,CAClBC,KAAuC,EACvCC,MAAiC,KAEjCD,KAAK,KAAK,IAAI,IACdA,KAAK,CAACE,IAAI,KAAKD,MAAM,CAACC,IAAI,IAC1BF,KAAK,CAACG,SAAS,KAAKF,MAAM,CAACE,SAAS,IACpCH,KAAK,CAACI,QAAQ,KAAKH,MAAM,CAACG,QAAQ,IAClCJ,KAAK,CAACK,SAAS,KAAKJ,MAAM,CAACI,SAAS,IACpCL,KAAK,CAACM,QAAQ,KAAKL,MAAM,CAACK,QAAQ,IAClCN,KAAK,CAACO,UAAU,KAAKN,MAAM,CAACM,UAAU,IACtCP,KAAK,CAACQ,WAAW,KAAKP,MAAM,CAACO,WAAW,IACxCR,KAAK,CAACS,OAAO,KAAKR,MAAM,CAACQ,OAAO,IAChCT,KAAK,CAACU,oBAAoB,KAAKT,MAAM,CAACS,oBAAoB;AAE5D,MAAMC,eAAe,GAAGA,CACtBC,OAAuB,EACvBC,aAA0C,KACvC;EACH,IACED,OAAO,CAACE,aAAa,KAAK,CAAC,IAC3B,CAACC,MAAM,CAACC,aAAa,CAACJ,OAAO,CAACL,UAAU,CAAC,IACzCK,OAAO,CAACL,UAAU,GAAG,CAAC,IACtB,CAAC,uBAAuB,CAACU,IAAI,CAACL,OAAO,CAACJ,WAAW,CAAC,IAClD,CAAC,IAAAU,mDAA8B,EAACN,OAAO,EAAEC,aAAa,CAAC,EACvD;IACA,MAAM,IAAIM,sBAAe,CAAC,qCAAqC,CAAC;EAClE;AACF,CAAC;AAED,MAAMC,aAAa,GAAGA,CAAA,KAAM;EAC1BC,sBAAe,CAACC,QAAQ,CAAC;IACvBC,YAAY,EAAE,IAAI;IAClBC,OAAO,EAAE,IAAI;IACbC,eAAe,EAAEC,SAAS;IAC1BC,kBAAkB,EAAE,KAAK;IACzBC,QAAQ,EAAE,CAAC;IACXC,UAAU,EAAEH;EACd,CAAC,CAAC;AACJ,CAAC;AAED,MAAMI,qBAAqB,GAAG,MAAOC,KAWpC,IAAoB;EACnB,MAAM;IAAEC,MAAM;IAAEC;EAAS,CAAC,GAAG,IAAAC,gCAAwB,EAAC,CAAC;EACvD,IAAI;IACF,MAAMH,KAAK,CAACI,OAAO,CAACC,iBAAiB,CAAC;MACpCC,UAAU,EAAEN,KAAK,CAACM,UAAU;MAC5B5B,OAAO,EAAEsB,KAAK,CAACO,OAAO,CAAC7B,OAAO;MAC9B8B,MAAM,EAAER,KAAK,CAACQ,MAAM;MACpBC,eAAe,EAAET,KAAK,CAACS,eAAe;MACtCC,YAAY,EAAEV,KAAK,CAACO,OAAO,CAAClC,QAAQ;MACpCsC,aAAa,EAAEX,KAAK,CAACY,MAAM,EAAExC,SAAS,IAAI,IAAI;MAC9CyC,SAAS,EAAE,IAAAC,oBAAY,EAAC,CAAC;MACzBC,QAAQ,EAAEf,KAAK,CAACe,QAAQ;MACxBC,cAAc,EAAEhB,KAAK,CAACgB,cAAc;MACpCC,cAAc,EAAEjB,KAAK,CAACiB,cAAc;MACpCC,UAAU,EAAElB,KAAK,CAACO,OAAO,CAAClC,QAAQ;MAClC8C,WAAW,EAAEnB,KAAK,CAACO,OAAO,CAACnC,SAAS;MACpCgD,IAAI,EAAE,iBAAiB;MACvBC,cAAc,EAAErB,KAAK,CAACqB,cAAc;MACpC,IAAIpB,MAAM,KAAKN,SAAS,GAAG,CAAC,CAAC,GAAG;QAAEM;MAAO,CAAC,CAAC;MAC3C,IAAIC,QAAQ,KAAKP,SAAS,GAAG,CAAC,CAAC,GAAG;QAAEO;MAAS,CAAC;IAChD,CAAC,CAAC;EACJ,CAAC,CAAC,OAAOoB,KAAK,EAAE;IACdC,OAAO,CAACC,IAAI,CAAC,gDAAgD,EAAEF,KAAK,CAAC;EACvE;AACF,CAAC;AAED,eAAeG,4BAA4BA,CAACzB,KAa3C,EAAwC;EACvC,MAAM;IAAE0B;EAAQ,CAAC,GAAG1B,KAAK;EACzB,MAAMI,OAAO,GAAG,MAAMsB,OAAO,CAACC,MAAM,CAACC,aAAa,CAAC,CAAC;EACpD,MAAMC,UAAU,GAAG,IAAAC,sBAAgB,EAAC9B,KAAK,CAAC+B,aAAa,CAAC;EACxD,MAAMC,QAAQ,GACZN,OAAO,CAACL,cAAc,KAAK,YAAY,GAAG,aAAa,GAAG,aAAa;EACzE,MAAMY,mBAAmB,GAAG,IAAAC,kCAAsB,EAAClC,KAAK,CAACmC,iBAAiB,CAAC;EAC3E,IAAIH,QAAQ,KAAK,aAAa,IAAIC,mBAAmB,KAAK,IAAI,EAAE;IAC9D,MAAM,IAAI7C,sBAAe,CAAC,oCAAoC,CAAC;EACjE;EACA,IAAI4C,QAAQ,KAAK,aAAa,IAAI,CAAChC,KAAK,CAACS,eAAe,EAAE;IACxD,MAAM,IAAIrB,sBAAe,CAAC,8BAA8B,CAAC;EAC3D;EACA,MAAMN,aAA0C,GAC9CkD,QAAQ,KAAK,aAAa,GACtB;IACEH,UAAU;IACVd,QAAQ,EAAEf,KAAK,CAACe,QAAQ;IACxBiB;EACF,CAAC,GACD;IACEH,UAAU;IACVpB,eAAe,EAAET,KAAK,CAACS,eAAgB;IACvCM,QAAQ,EAAEf,KAAK,CAACe,QAAQ;IACxBiB;EACF,CAAC;EACP,MAAMnD,OAAO,GAAG,MAAMuB,OAAO,CAACgC,mBAAmB,CAAC;IAChD9B,UAAU,EAAE2B,mBAAmB,IAAIjC,KAAK,CAACmC,iBAAiB;IAC1DzD,OAAO,EAAEsB,KAAK,CAAC+B,aAAa;IAC5BtB,eAAe,EAAET,KAAK,CAACS,eAAe;IACtCM,QAAQ,EAAEf,KAAK,CAACe,QAAQ;IACxBC,cAAc,EAAEU,OAAO,CAACV,cAAc;IACtCC,cAAc,EAAES,OAAO,CAACT,cAAc;IACtCI,cAAc,EAAEK,OAAO,CAACL;EAC1B,CAAC,CAAC;EACFzC,eAAe,CAACC,OAAO,EAAEC,aAAa,CAAC;EACvC,MAAMR,SAAS,GAAGO,OAAO,CAACP,SAAS;EACnC,MAAMC,QAAQ,GAAGM,OAAO,CAACN,QAAQ;EAEjC,MAAM8D,gBAAgB,GAAG,IAAAC,uBAAe,EAAC,CAAC;EAC1C,MAAM1B,MAAM,GAAG,IAAA2B,4BAAoB,EAAC,CAAC,CAACC,eAAe;EACrD,MAAMC,mBAAmB,GACvBzC,KAAK,CAAC0C,eAAe,KAAK/C,SAAS,IACnCK,KAAK,CAAC0C,eAAe,KAAK1C,KAAK,CAAC2C,cAAc;EAChD,MAAMC,mBAAmB,GACvBhC,MAAM,EAAEtC,SAAS,KAAKA,SAAS,IAAIsC,MAAM,CAACrC,QAAQ,KAAKA,QAAQ,GAC3DqC,MAAM,GACN,IAAI;EACV,MAAMiC,sBAAsB,GAC1BjC,MAAM,KAAK,IAAI,IACfA,MAAM,CAACtC,SAAS,KAAK,IAAI,IACzBsC,MAAM,CAACrC,QAAQ,KAAK,IAAI,IACxBqC,MAAM,CAACpC,UAAU,KAAK,IAAI;EAC5B,IACEqE,sBAAsB,IACtBD,mBAAmB,KAAK,IAAI,IAC5B,CAACH,mBAAmB,EACpB;IACA,MAAM,IAAIrD,sBAAe,CAAC,gDAAgD,CAAC;EAC7E;EACA,MAAM0D,uBAAuB,GAC3BF,mBAAmB,KAAK,IAAI,IAC3B,CAACC,sBAAsB,IAAI,CAACJ,mBAAoB,GAC7CzC,KAAK,CAAC+C,eAAe,GACrB/C,KAAK,CAACgD,gBAAgB;EAC5B,MAAMrE,oBAAoB,GAAG,IAAAsE,uCAAiC,EAAC;IAC7DC,cAAc,EAAEJ,uBAAuB;IACvCK,eAAe,EAAEP,mBAAmB,EAAExE,SAAS,IAAI,IAAI;IACvDoC,MAAM,EAAER,KAAK,CAACQ,MAAM;IACpB6B,gBAAgB;IAChBW,gBAAgB,EAAEhD,KAAK,CAACgD,gBAAgB;IACxChB,QAAQ;IACRoB,aAAa,EACXpB,QAAQ,KAAK,aAAa,GACtBC,mBAAmB,GACnBjC,KAAK,CAACS;EACd,CAAC,CAAC;EACF,IACE,CAAC,IAAA4C,4BAAoB,EAAC;IACpB/E,SAAS;IACTG,WAAW,EAAEI,OAAO,CAACJ,WAAW;IAChCC,OAAO,EAAEsB,KAAK,CAAC+B,aAAa;IAC5BvD,UAAU,EAAEK,OAAO,CAACL,UAAU;IAC9BG,oBAAoB;IACpBJ;EACF,CAAC,CAAC,EACF;IACA,MAAM,IAAIa,sBAAe,CACvB,kDACF,CAAC;EACH;EACA,MAAMmB,OAAO,GAAG,IAAA+C,0BAAoB,EAACzE,OAAO,EAAE;IAC5CsE,eAAe,EAAEP,mBAAmB,EAAExE,SAAS,IAAI,IAAI;IACvDmF,eAAe,EAAEvD,KAAK,CAACgD,gBAAgB;IACvCxC,MAAM,EAAER,KAAK,CAACQ,MAAM;IACpB6B,gBAAgB;IAChBU,eAAe,EAAED,uBAAuB;IACxCE,gBAAgB,EAAEhD,KAAK,CAACgD;EAC1B,CAAC,CAAC;EACF,IAAIzC,OAAO,KAAK,IAAI,EAAE,OAAO,IAAI;EAEjC,IACEA,OAAO,CAACpC,IAAI,KAAK,SAAS,IAC1B6B,KAAK,CAAC+C,eAAe,KAAK/C,KAAK,CAACgD,gBAAgB,KAC/CpC,MAAM,KAAK,IAAI,IAAIA,MAAM,CAACzC,IAAI,KAAK,SAAS,CAAC,EAC9C;IACA,OAAO,IAAI;EACb;EAEA,MAAMqF,OAAkC,GAAG;IACzClF,SAAS;IACTD,QAAQ,EAAEkC,OAAO,CAAClC,QAAQ;IAC1BI,WAAW,EAAEI,OAAO,CAACJ,WAAW;IAChCC,OAAO,EAAEsB,KAAK,CAAC+B,aAAa;IAC5BvD,UAAU,EAAEK,OAAO,CAACL,UAAU;IAC9BL,IAAI,EAAEoC,OAAO,CAACpC,IAAI;IAClBC,SAAS,EAAEmC,OAAO,CAACnC,SAAS;IAC5BG,QAAQ;IACRI;EACF,CAAC;EACD,IAAIX,WAAW,CAAC4C,MAAM,EAAE4C,OAAO,CAAC,EAAE,OAAO,IAAI;EAE7C,MAAMC,aAAa,GAAG,IAAAC,gCAA0B,EAAC;IAC/C9C,MAAM;IACNL,OAAO,EAAEiD,OAAO;IAChBf;EACF,CAAC,CAAC;EACF,IAAI,CAACgB,aAAa,CAACE,UAAU,EAAE;IAC7B,IAAIF,aAAa,CAACG,MAAM,KAAK,oBAAoB,EAAE,OAAO,IAAI;IAC9D,MAAM,IAAIxE,sBAAe,CACvB,gCAAgCqE,aAAa,CAACG,MAAM,EACtD,CAAC;EACH;EAEA,MAAMC,OAAO,GAAGtD,OAAO,CAACsD,OAAO;EAC/B,MAAMC,cAAqC,GACzCvD,OAAO,CAACpC,IAAI,KAAK,SAAS,GACtB,aAAa,GACboC,OAAO,CAACpC,IAAI,KAAK,UAAU,GACzB,cAAc,GACdyC,MAAM,EAAEvC,QAAQ,KAAKkC,OAAO,CAAClC,QAAQ,GACnC,eAAe,GACf,SAAS;EACnB,MAAM0F,KAAK,GAAG;IACZzF,SAAS;IACTG,WAAW,EAAEI,OAAO,CAACJ,WAAW;IAChCC,OAAO,EAAEsB,KAAK,CAAC+B,aAAa;IAC5BvD,UAAU,EAAEK,OAAO,CAACL,UAAU;IAC9BD,QAAQ;IACRI;EACF,CAAC;EACD,MAAMqF,wBAAwB,GAAG,MAAAA,CAAA,KAA8B;IAC7D3E,aAAa,CAAC,CAAC;IACf,IAAI,CAAC,IAAA4E,iCAAyB,EAACF,KAAK,CAAC,EAAE;MACrC,MAAM,IAAIG,+BAAwB,CAAC,CAAC;IACtC;IAEA,IAAIJ,cAAc,KAAK,SAAS,EAAE;MAChC,MAAMK,SAAS,GAAG,MAAM,IAAAC,8BAAsB,EAAC;QAC7CL,KAAK;QACLM,SAAS,EAAEb;MACb,CAAC,CAAC;MACF,IAAIW,SAAS,IAAIL,cAAc,KAAK,eAAe,IAAIpC,OAAO,CAAC4C,QAAQ,EAAE;QACvE,MAAMvE,qBAAqB,CAAC;UAC1Ba,MAAM;UACNN,UAAU,EAAEN,KAAK,CAACmC,iBAAiB;UACnC3B,MAAM,EAAER,KAAK,CAACQ,MAAM;UACpBD,OAAO,EAAEiD,OAAO;UAChB/C,eAAe,EAAET,KAAK,CAACS,eAAe;UACtCM,QAAQ,EAAEf,KAAK,CAACe,QAAQ;UACxBC,cAAc,EAAEU,OAAO,CAACV,cAAc;UACtCC,cAAc,EAAES,OAAO,CAACT,cAAc;UACtCb,OAAO;UACPiB,cAAc,EAAEK,OAAO,CAACL;QAC1B,CAAC,CAAC;MACJ;MACA,OAAO8C,SAAS;IAClB;IAEA,MAAMI,QAAQ,GAAG,MAAMnE,OAAO,CAACoE,eAAe,CAAC;MAC7CzB,eAAe,EAAE/C,KAAK,CAAC+C,eAAe;MACtC/B,cAAc,EAAEU,OAAO,CAACV,cAAc;MACtCC,cAAc,EAAES,OAAO,CAACT,cAAc;MACtCwD,cAAc,EAAElE,OAAO,CAAClC;IAC1B,CAAC,CAAC;IACF,IAAI,CAAC,IAAA4F,iCAAyB,EAACF,KAAK,CAAC,EAAE;MACrC,MAAM,IAAIG,+BAAwB,CAAC,CAAC;IACtC;IACA,OAAO,IAAAQ,oBAAY,EAAC;MAClBrG,QAAQ,EAAEkC,OAAO,CAAClC,QAAQ;MAC1BsG,aAAa,EAAEJ,QAAQ,CAACI,aAAa,IAAI,IAAI;MAC7CjG,OAAO,EAAEsB,KAAK,CAAC+B,aAAa;MAC5B6C,QAAQ,EAAEL,QAAQ,CAACK,QAAQ;MAC3BC,OAAO,EAAEN,QAAQ,CAACM,OAAO;MACzBC,gBAAgB,EAAEP,QAAQ,CAACO,gBAAgB,IAAI,IAAI;MACnDC,WAAW,EAAER,QAAQ,CAACQ,WAAW,IAAI,IAAI;MACzCV,SAAS,EAAEb,OAAO;MAClBwB,8BAA8B,EAAE,IAAI;MACpCC,MAAM,EAAE1E,OAAO,CAAC0E;IAClB,CAAC,CAAC;EACJ,CAAC;EAED,OAAO;IACLL,QAAQ,EAAE,IAAI;IACdC,OAAO,EAAE,IAAI;IACbK,EAAE,EAAE3E,OAAO,CAAClC,QAAQ;IACpB8G,OAAO,EAAEtB,OAAO,EAAEsB,OAAO,IAAI,IAAI;IACjC/G,SAAS,EAAEmC,OAAO,CAACnC,SAAS;IAC5BgH,kBAAkB,EAAEvB,OAAO,EAAEuB,kBAAkB,IAAI,IAAI;IACvDC,iBAAiB,EACfvB,cAAc,KAAK,eAAe,GAC9B,KAAK,GACLvD,OAAO,CAAC0E,MAAM,KAAK,UAAU,GAC3B,IAAI,GACHpB,OAAO,EAAEwB,iBAAiB,IAAI,KAAM;IAC7CJ,MAAM,EAAE1E,OAAO,CAAC0E,MAAM;IACtBK,aAAa,EAAEzB,OAAO,EAAEyB,aAAa,GAAG,CAAC,GAAGzB,OAAO,CAACyB,aAAa,CAAC,GAAG,EAAE;IACvExB,cAAc;IACdY,YAAY,EAAEV;EAChB,CAAC;AACH;AAEO,eAAeuB,cAAcA,CAClC7D,OAAsC,EACA;EACtC,IAAI8D,OAAO,EAAE;IACX,OAAO,IAAI;EACb;EAEA,IAAI,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,CAACC,QAAQ,CAACC,qBAAQ,CAACC,EAAE,CAAC,EAAE;IAC7CjE,OAAO,CAACkE,OAAO,GACb,IAAIxG,sBAAe,CAAC,iDAAiD,CACvE,CAAC;IACD,OAAO,IAAI;EACb;EAEA,MAAM+C,iBAAiB,GAAG,IAAA0D,qBAAa,EAAC,CAAC;EACzC,MAAM9E,QAAQ,GAAG2E,qBAAQ,CAACC,EAAuB;EACjD,MAAM5C,eAAe,GAAG,IAAA+C,mBAAW,EAAC,CAAC;EACrC,MAAM9C,gBAAgB,GAAG,IAAA+C,sBAAc,EAAC,CAAC;EACzC,MAAMC,cAAc,GAAG,IAAAC,yBAAiB,EAAC,CAAC;EAC1C,MAAMC,UAAU,GAAG,IAAAC,yBAAiB,EAAC,CAAC;EACtC,MAAMxD,cAAc,GAAGuD,UAAU,GAAG,IAAAE,kBAAU,EAAC,CAAC,GAAGJ,cAAc;EACjE,MAAMtD,eAAe,GAAGhB,OAAO,CAAChD,OAAO,IAAIiB,SAAS;EACpD,MAAMoC,aAAa,GAAGW,eAAe,IAAIC,cAAc;EACvD,MAAMnC,MAAM,GAAG,IAAA6F,iBAAS,EAAC,CAAC;EAE1B,IAAI,CAAClE,iBAAiB,EAAE;IACtBT,OAAO,CAACkE,OAAO,GAAG,IAAIxG,sBAAe,CAAC,2BAA2B,CAAC,CAAC;IACnE,OAAO,IAAI;EACb;EAEA,IAAI8G,UAAU,IAAIxD,eAAe,IAAIA,eAAe,KAAKC,cAAc,EAAE;IACvE,MAAMrB,KAAK,GAAG,IAAIlC,sBAAe,CAC/B,2CAA2CuD,cAAc,sDAAsDD,eAAe,IAChI,CAAC;IACDhB,OAAO,CAACkE,OAAO,GAAGtE,KAAK,CAAC;IACxB,MAAMA,KAAK;EACb;EAEA,MAAMb,eAAe,GAAG,IAAA6F,0BAAkB,EAAC,CAAC;EAE5C,IAAI;IACF,OAAO,MAAM7E,4BAA4B,CAAC;MACxCjB,MAAM;MACN2B,iBAAiB;MACjBY,eAAe;MACfJ,cAAc;MACdqD,cAAc;MACdtD,eAAe;MACfjC,eAAe;MACfyF,UAAU;MACVlD,gBAAgB;MAChBtB,OAAO;MACPX,QAAQ;MACRgB;IACF,CAAC,CAAC;EACJ,CAAC,CAAC,OAAOT,KAAK,EAAE;IACdI,OAAO,CAACkE,OAAO,GAAGtE,KAAc,CAAC;IACjC,OAAO,IAAI;EACb;AACF","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","error","stage","resource","scope","emitAfterAppReady","classification","classifyUpdateError","previousProcessExit","getPreviousProcessExit","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":[]}