@hot-updater/react-native 1.0.0-rc.3 → 1.0.0-rc.30
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.
- package/android/proguard-rules.pro +17 -2
- package/android/src/main/java/com/hotupdater/BuiltInAssetResolver.kt +286 -0
- package/android/src/main/java/com/hotupdater/BundleFileStorageService.kt +954 -837
- package/android/src/main/java/com/hotupdater/BundleMetadata.kt +15 -11
- package/android/src/main/java/com/hotupdater/FileManagerService.kt +45 -0
- package/android/src/main/java/com/hotupdater/HotUpdaterException.kt +287 -22
- package/android/src/main/java/com/hotupdater/HotUpdaterImpl.kt +43 -31
- package/android/src/main/java/com/hotupdater/HotUpdaterRecoveryManager.kt +37 -54
- package/android/src/main/java/com/hotupdater/HotUpdaterRecoveryState.kt +64 -0
- package/android/src/main/java/com/hotupdater/InstallIdentityService.kt +37 -0
- package/android/src/main/java/com/hotupdater/KeyValueStorageService.kt +86 -0
- package/android/src/main/java/com/hotupdater/NetworkState.kt +31 -0
- package/android/src/main/java/com/hotupdater/NoBackupStorage.kt +17 -0
- package/android/src/main/java/com/hotupdater/OkHttpDownloadService.kt +127 -50
- package/android/src/main/java/com/hotupdater/PreviousProcessExit.kt +89 -0
- package/android/src/main/java/com/hotupdater/ReactNativeValueConverters.kt +34 -0
- package/android/src/main/java/com/hotupdater/TarArchiveInputStream.kt +214 -375
- package/android/src/main/java/com/hotupdater/TarBrArchiveExtractor.kt +119 -0
- package/android/src/newarch/HotUpdater.kt +7 -9
- package/android/src/newarch/HotUpdaterModule.kt +109 -84
- package/android/src/oldarch/HotUpdater.kt +7 -9
- package/android/src/oldarch/HotUpdaterModule.kt +98 -74
- package/android/src/oldarch/HotUpdaterSpec.kt +4 -6
- package/ios/HotUpdater/Internal/BrotliFileDecompressor.swift +167 -0
- package/ios/HotUpdater/Internal/BuiltInAssetResolver.swift +196 -0
- package/ios/HotUpdater/Internal/BundleFileStorageService.swift +950 -1112
- package/ios/HotUpdater/Internal/BundleMetadata.swift +8 -53
- package/ios/HotUpdater/Internal/FileManagerService.swift +48 -0
- package/ios/HotUpdater/Internal/FileUtilities.swift +64 -0
- package/ios/HotUpdater/Internal/HotUpdater-Bridging-Header.h +0 -1
- package/ios/HotUpdater/Internal/HotUpdater.mm +13 -45
- package/ios/HotUpdater/Internal/HotUpdaterImpl.swift +190 -73
- package/ios/HotUpdater/Internal/KeyValueStorageService.swift +71 -0
- package/ios/HotUpdater/Internal/NotificationExtension.swift +0 -2
- package/ios/HotUpdater/Internal/TarArchiveExtractor.swift +182 -311
- package/ios/HotUpdater/Internal/URLSessionDownloadService.swift +119 -71
- package/ios/HotUpdater/Internal/UpdateFailure.swift +390 -0
- package/ios/HotUpdater/Recovery/HotUpdaterRecovery.h +16 -0
- package/ios/HotUpdater/Recovery/HotUpdaterRecovery.mm +83 -0
- package/ios/HotUpdater/Recovery/HotUpdaterRecoveryHooks.mm +49 -0
- package/lib/commonjs/appReady.js +111 -0
- package/lib/commonjs/appReady.js.map +1 -0
- package/lib/commonjs/checkForUpdate.js +124 -69
- package/lib/commonjs/checkForUpdate.js.map +1 -1
- package/lib/commonjs/clientPlugin.js +13 -0
- package/lib/commonjs/clientPlugin.js.map +1 -0
- package/lib/commonjs/error.js +4 -13
- package/lib/commonjs/error.js.map +1 -1
- package/lib/commonjs/fetchJSON.js +16 -27
- package/lib/commonjs/fetchJSON.js.map +1 -1
- package/lib/commonjs/fetchUpdateResponse.js +54 -0
- package/lib/commonjs/fetchUpdateResponse.js.map +1 -0
- package/lib/commonjs/httpClient.js +63 -94
- package/lib/commonjs/httpClient.js.map +1 -1
- package/lib/commonjs/index.js +71 -18
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/native.js +78 -60
- package/lib/commonjs/native.js.map +1 -1
- package/lib/commonjs/pluginHost.js +44 -0
- package/lib/commonjs/pluginHost.js.map +1 -0
- package/lib/commonjs/releaseCatalogCache.js +36 -87
- package/lib/commonjs/releaseCatalogCache.js.map +1 -1
- package/lib/commonjs/sdkVersion.js +1 -1
- package/lib/commonjs/sdkVersion.js.map +1 -1
- package/lib/commonjs/specs/NativeHotUpdater.js.map +1 -1
- package/lib/commonjs/store.js +3 -10
- package/lib/commonjs/store.js.map +1 -1
- package/lib/commonjs/updateError.js +132 -0
- package/lib/commonjs/updateError.js.map +1 -0
- package/lib/commonjs/wrap.js +43 -26
- package/lib/commonjs/wrap.js.map +1 -1
- package/lib/module/appReady.js +103 -0
- package/lib/module/appReady.js.map +1 -0
- package/lib/module/checkForUpdate.js +117 -64
- package/lib/module/checkForUpdate.js.map +1 -1
- package/lib/module/clientPlugin.js +4 -0
- package/lib/module/clientPlugin.js.map +1 -0
- package/lib/module/error.js +4 -13
- package/lib/module/error.js.map +1 -1
- package/lib/module/fetchJSON.js +14 -26
- package/lib/module/fetchJSON.js.map +1 -1
- package/lib/module/fetchUpdateResponse.js +49 -0
- package/lib/module/fetchUpdateResponse.js.map +1 -0
- package/lib/module/httpClient.js +62 -93
- package/lib/module/httpClient.js.map +1 -1
- package/lib/module/index.js +58 -20
- package/lib/module/index.js.map +1 -1
- package/lib/module/native.js +71 -53
- package/lib/module/native.js.map +1 -1
- package/lib/module/pluginHost.js +35 -0
- package/lib/module/pluginHost.js.map +1 -0
- package/lib/module/releaseCatalogCache.js +32 -82
- package/lib/module/releaseCatalogCache.js.map +1 -1
- package/lib/module/sdkVersion.js +1 -1
- package/lib/module/sdkVersion.js.map +1 -1
- package/lib/module/specs/NativeHotUpdater.js.map +1 -1
- package/lib/module/store.js +3 -10
- package/lib/module/store.js.map +1 -1
- package/lib/module/updateError.js +126 -0
- package/lib/module/updateError.js.map +1 -0
- package/lib/module/wrap.js +43 -26
- package/lib/module/wrap.js.map +1 -1
- package/lib/typescript/commonjs/appReady.d.ts +23 -0
- package/lib/typescript/commonjs/appReady.d.ts.map +1 -0
- package/lib/typescript/commonjs/checkForUpdate.d.ts +16 -4
- package/lib/typescript/commonjs/checkForUpdate.d.ts.map +1 -1
- package/lib/typescript/commonjs/clientPlugin.d.ts +2 -0
- package/lib/typescript/commonjs/clientPlugin.d.ts.map +1 -0
- package/lib/typescript/commonjs/error.d.ts +4 -13
- package/lib/typescript/commonjs/error.d.ts.map +1 -1
- package/lib/typescript/commonjs/fetchJSON.d.ts +5 -5
- package/lib/typescript/commonjs/fetchJSON.d.ts.map +1 -1
- package/lib/typescript/commonjs/fetchUpdateResponse.d.ts +14 -0
- package/lib/typescript/commonjs/fetchUpdateResponse.d.ts.map +1 -0
- package/lib/typescript/commonjs/httpClient.d.ts +4 -33
- package/lib/typescript/commonjs/httpClient.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +4 -8
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/native.d.ts +31 -22
- package/lib/typescript/commonjs/native.d.ts.map +1 -1
- package/lib/typescript/commonjs/pluginHost.d.ts +4 -0
- package/lib/typescript/commonjs/pluginHost.d.ts.map +1 -0
- package/lib/typescript/commonjs/releaseCatalogCache.d.ts +8 -14
- package/lib/typescript/commonjs/releaseCatalogCache.d.ts.map +1 -1
- package/lib/typescript/commonjs/sdkVersion.d.ts +1 -1
- package/lib/typescript/commonjs/sdkVersion.d.ts.map +1 -1
- package/lib/typescript/commonjs/specs/NativeHotUpdater.d.ts +42 -47
- package/lib/typescript/commonjs/specs/NativeHotUpdater.d.ts.map +1 -1
- package/lib/typescript/commonjs/store.d.ts +1 -3
- package/lib/typescript/commonjs/store.d.ts.map +1 -1
- package/lib/typescript/commonjs/types.d.ts +1 -1
- package/lib/typescript/commonjs/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/updateError.d.ts +26 -0
- package/lib/typescript/commonjs/updateError.d.ts.map +1 -0
- package/lib/typescript/commonjs/wrap.d.ts.map +1 -1
- package/lib/typescript/commonjs/wrap.types.d.ts +6 -7
- package/lib/typescript/commonjs/wrap.types.d.ts.map +1 -1
- package/lib/typescript/module/appReady.d.ts +23 -0
- package/lib/typescript/module/appReady.d.ts.map +1 -0
- package/lib/typescript/module/checkForUpdate.d.ts +16 -4
- package/lib/typescript/module/checkForUpdate.d.ts.map +1 -1
- package/lib/typescript/module/clientPlugin.d.ts +2 -0
- package/lib/typescript/module/clientPlugin.d.ts.map +1 -0
- package/lib/typescript/module/error.d.ts +4 -13
- package/lib/typescript/module/error.d.ts.map +1 -1
- package/lib/typescript/module/fetchJSON.d.ts +5 -5
- package/lib/typescript/module/fetchJSON.d.ts.map +1 -1
- package/lib/typescript/module/fetchUpdateResponse.d.ts +14 -0
- package/lib/typescript/module/fetchUpdateResponse.d.ts.map +1 -0
- package/lib/typescript/module/httpClient.d.ts +4 -33
- package/lib/typescript/module/httpClient.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +4 -8
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/native.d.ts +31 -22
- package/lib/typescript/module/native.d.ts.map +1 -1
- package/lib/typescript/module/pluginHost.d.ts +4 -0
- package/lib/typescript/module/pluginHost.d.ts.map +1 -0
- package/lib/typescript/module/releaseCatalogCache.d.ts +8 -14
- package/lib/typescript/module/releaseCatalogCache.d.ts.map +1 -1
- package/lib/typescript/module/sdkVersion.d.ts +1 -1
- package/lib/typescript/module/sdkVersion.d.ts.map +1 -1
- package/lib/typescript/module/specs/NativeHotUpdater.d.ts +42 -47
- package/lib/typescript/module/specs/NativeHotUpdater.d.ts.map +1 -1
- package/lib/typescript/module/store.d.ts +1 -3
- package/lib/typescript/module/store.d.ts.map +1 -1
- package/lib/typescript/module/types.d.ts +1 -1
- package/lib/typescript/module/types.d.ts.map +1 -1
- package/lib/typescript/module/updateError.d.ts +26 -0
- package/lib/typescript/module/updateError.d.ts.map +1 -0
- package/lib/typescript/module/wrap.d.ts.map +1 -1
- package/lib/typescript/module/wrap.types.d.ts +6 -7
- package/lib/typescript/module/wrap.types.d.ts.map +1 -1
- package/package.json +7 -4
- package/src/appReady.ts +149 -0
- package/src/checkForUpdate.ts +151 -88
- package/src/clientPlugin.ts +18 -0
- package/src/error.ts +4 -14
- package/src/fetchJSON.ts +14 -30
- package/src/fetchUpdateResponse.ts +54 -0
- package/src/httpClient.ts +88 -159
- package/src/index.ts +90 -24
- package/src/native.ts +106 -102
- package/src/pluginHost.ts +45 -0
- package/src/releaseCatalogCache.ts +43 -172
- package/src/sdkVersion.ts +1 -1
- package/src/specs/NativeHotUpdater.ts +41 -48
- package/src/store.ts +2 -23
- package/src/types.ts +1 -1
- package/src/updateError.ts +153 -0
- package/src/wrap.tsx +57 -26
- package/src/wrap.types.ts +6 -7
- package/android/src/main/java/com/hotupdater/DecompressService.kt +0 -89
- package/android/src/main/java/com/hotupdater/DecompressionStrategy.kt +0 -26
- package/android/src/main/java/com/hotupdater/TarBrDecompressionStrategy.kt +0 -117
- package/android/src/main/java/com/hotupdater/TarGzDecompressionStrategy.kt +0 -117
- package/android/src/main/java/com/hotupdater/ZipDecompressionStrategy.kt +0 -192
- package/android/src/test/java/com/hotupdater/BsdiffPatchTest.kt +0 -46
- package/android/src/test/java/com/hotupdater/BundleFileStorageServiceTest.kt +0 -799
- package/android/src/test/java/com/hotupdater/HotUpdaterImplTest.kt +0 -273
- package/android/src/test/java/com/hotupdater/NativeConfigUtilsTest.kt +0 -20
- package/android/src/test/java/com/hotupdater/OkHttpDownloadServiceTest.kt +0 -111
- package/android/src/test/java/com/hotupdater/RelativePathResolverTest.kt +0 -41
- package/android/src/test/java/com/hotupdater/ReleaseCatalogCacheServiceTest.kt +0 -118
- package/android/src/test/java/com/hotupdater/TarArchiveInputStreamTest.kt +0 -68
- package/ios/HotUpdater/Internal/ArchiveExtractionUtilities.swift +0 -178
- package/ios/HotUpdater/Internal/DecompressService.swift +0 -112
- package/ios/HotUpdater/Internal/DecompressionStrategy.swift +0 -22
- package/ios/HotUpdater/Internal/StreamingTarArchiveExtractor.swift +0 -370
- package/ios/HotUpdater/Internal/TarBrDecompressionStrategy.swift +0 -39
- package/ios/HotUpdater/Internal/TarGzDecompressionStrategy.swift +0 -59
- package/ios/HotUpdater/Internal/ZipArchiveExtractor.swift +0 -482
- package/ios/HotUpdater/Internal/ZipDecompressionStrategy.swift +0 -56
- package/lib/commonjs/catalogCacheNative.spec.js +0 -31
- package/lib/commonjs/catalogCacheNative.spec.js.map +0 -1
- package/lib/commonjs/checkForUpdate.releaseCatalog.spec.js +0 -615
- package/lib/commonjs/checkForUpdate.releaseCatalog.spec.js.map +0 -1
- package/lib/commonjs/httpClient.spec.js +0 -102
- package/lib/commonjs/httpClient.spec.js.map +0 -1
- package/lib/commonjs/index.spec.js +0 -302
- package/lib/commonjs/index.spec.js.map +0 -1
- package/lib/commonjs/iosInterop.spec.js +0 -18
- package/lib/commonjs/iosInterop.spec.js.map +0 -1
- package/lib/commonjs/native.spec.js +0 -883
- package/lib/commonjs/native.spec.js.map +0 -1
- package/lib/commonjs/notifyAppReadyInsights.boundary.spec.js +0 -218
- package/lib/commonjs/notifyAppReadyInsights.boundary.spec.js.map +0 -1
- package/lib/commonjs/notifyAppReadyInsights.js +0 -133
- package/lib/commonjs/notifyAppReadyInsights.js.map +0 -1
- package/lib/commonjs/notifyAppReadyInsights.spec.js +0 -246
- package/lib/commonjs/notifyAppReadyInsights.spec.js.map +0 -1
- package/lib/commonjs/notifyAppReadyInsights.test-utils.js +0 -24
- package/lib/commonjs/notifyAppReadyInsights.test-utils.js.map +0 -1
- package/lib/commonjs/notifyAppReadyInsights.transport.spec.js +0 -117
- package/lib/commonjs/notifyAppReadyInsights.transport.spec.js.map +0 -1
- package/lib/commonjs/releaseCatalogCache.spec.js +0 -195
- package/lib/commonjs/releaseCatalogCache.spec.js.map +0 -1
- package/lib/commonjs/releaseCatalogCacheNativeContract.spec.js +0 -64
- package/lib/commonjs/releaseCatalogCacheNativeContract.spec.js.map +0 -1
- package/lib/commonjs/store.notification.spec.js +0 -76
- package/lib/commonjs/store.notification.spec.js.map +0 -1
- package/lib/commonjs/store.spec.js +0 -316
- package/lib/commonjs/store.spec.js.map +0 -1
- package/lib/commonjs/wrap.spec.js +0 -329
- package/lib/commonjs/wrap.spec.js.map +0 -1
- package/lib/module/catalogCacheNative.spec.js +0 -31
- package/lib/module/catalogCacheNative.spec.js.map +0 -1
- package/lib/module/checkForUpdate.releaseCatalog.spec.js +0 -614
- package/lib/module/checkForUpdate.releaseCatalog.spec.js.map +0 -1
- package/lib/module/httpClient.spec.js +0 -102
- package/lib/module/httpClient.spec.js.map +0 -1
- package/lib/module/index.spec.js +0 -301
- package/lib/module/index.spec.js.map +0 -1
- package/lib/module/iosInterop.spec.js +0 -18
- package/lib/module/iosInterop.spec.js.map +0 -1
- package/lib/module/native.spec.js +0 -882
- package/lib/module/native.spec.js.map +0 -1
- package/lib/module/notifyAppReadyInsights.boundary.spec.js +0 -217
- package/lib/module/notifyAppReadyInsights.boundary.spec.js.map +0 -1
- package/lib/module/notifyAppReadyInsights.js +0 -128
- package/lib/module/notifyAppReadyInsights.js.map +0 -1
- package/lib/module/notifyAppReadyInsights.spec.js +0 -245
- package/lib/module/notifyAppReadyInsights.spec.js.map +0 -1
- package/lib/module/notifyAppReadyInsights.test-utils.js +0 -18
- package/lib/module/notifyAppReadyInsights.test-utils.js.map +0 -1
- package/lib/module/notifyAppReadyInsights.transport.spec.js +0 -116
- package/lib/module/notifyAppReadyInsights.transport.spec.js.map +0 -1
- package/lib/module/releaseCatalogCache.spec.js +0 -195
- package/lib/module/releaseCatalogCache.spec.js.map +0 -1
- package/lib/module/releaseCatalogCacheNativeContract.spec.js +0 -64
- package/lib/module/releaseCatalogCacheNativeContract.spec.js.map +0 -1
- package/lib/module/store.notification.spec.js +0 -77
- package/lib/module/store.notification.spec.js.map +0 -1
- package/lib/module/store.spec.js +0 -315
- package/lib/module/store.spec.js.map +0 -1
- package/lib/module/wrap.spec.js +0 -330
- package/lib/module/wrap.spec.js.map +0 -1
- package/lib/typescript/commonjs/notifyAppReadyInsights.d.ts +0 -13
- package/lib/typescript/commonjs/notifyAppReadyInsights.d.ts.map +0 -1
- package/lib/typescript/commonjs/notifyAppReadyInsights.test-utils.d.ts +0 -8
- package/lib/typescript/commonjs/notifyAppReadyInsights.test-utils.d.ts.map +0 -1
- package/lib/typescript/module/notifyAppReadyInsights.d.ts +0 -13
- package/lib/typescript/module/notifyAppReadyInsights.d.ts.map +0 -1
- package/lib/typescript/module/notifyAppReadyInsights.test-utils.d.ts +0 -8
- package/lib/typescript/module/notifyAppReadyInsights.test-utils.d.ts.map +0 -1
- package/src/catalogCacheNative.spec.ts +0 -63
- package/src/checkForUpdate.releaseCatalog.spec.ts +0 -611
- package/src/httpClient.spec.ts +0 -132
- package/src/index.spec.ts +0 -337
- package/src/iosInterop.spec.ts +0 -30
- package/src/native.spec.ts +0 -945
- package/src/notifyAppReadyInsights.boundary.spec.ts +0 -234
- package/src/notifyAppReadyInsights.spec.ts +0 -243
- package/src/notifyAppReadyInsights.test-utils.ts +0 -31
- package/src/notifyAppReadyInsights.transport.spec.ts +0 -130
- package/src/notifyAppReadyInsights.ts +0 -194
- package/src/releaseCatalogCache.spec.ts +0 -282
- package/src/releaseCatalogCacheNativeContract.spec.ts +0 -80
- package/src/store.notification.spec.ts +0 -92
- package/src/store.spec.ts +0 -372
- 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,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":"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","ignoreList":[]}
|
|
@@ -4,69 +4,68 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.checkForUpdate = checkForUpdate;
|
|
7
|
-
|
|
8
|
-
var
|
|
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,
|
|
17
|
-
throw new
|
|
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
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
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
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
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,
|
|
66
|
+
const channelKey = (0, _protocol.encodeChannelKey)(input.targetChannel);
|
|
68
67
|
const strategy = options.updateStrategy === "appVersion" ? "APP_VERSION" : "FINGERPRINT";
|
|
69
|
-
const canonicalAppVersion = (0,
|
|
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
|
|
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,
|
|
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
|
|
126
|
+
throw new _updateError.InvalidUpdateResponseError("Rejected a stale or inconsistent Release catalog");
|
|
125
127
|
}
|
|
126
|
-
const desired = (0,
|
|
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,
|
|
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
|
|
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"
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
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
|
-
|
|
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
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
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
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
|
|
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
|
-
|
|
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,CAACnC,SAAS,IAAImC,OAAO,CAAClC,QAAQ;IACzC8G,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":[]}
|