@hot-updater/react-native 1.0.0-rc.16 → 1.0.0-rc.17
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/src/main/java/com/hotupdater/BundleFileStorageService.kt +491 -388
- package/android/src/main/java/com/hotupdater/BundleMetadata.kt +5 -11
- package/android/src/main/java/com/hotupdater/FileManagerService.kt +45 -0
- package/android/src/main/java/com/hotupdater/HotUpdaterException.kt +290 -12
- package/android/src/main/java/com/hotupdater/HotUpdaterImpl.kt +35 -19
- 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 +110 -52
- 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/newarch/HotUpdaterModule.kt +74 -69
- package/android/src/oldarch/HotUpdaterModule.kt +63 -59
- package/android/src/oldarch/HotUpdaterSpec.kt +4 -6
- package/android/src/test/java/com/hotupdater/BsdiffPatchTest.kt +1 -1
- package/android/src/test/java/com/hotupdater/BundleFileStorageServiceTest.kt +446 -61
- package/android/src/test/java/com/hotupdater/HotUpdaterExceptionTest.kt +220 -0
- package/android/src/test/java/com/hotupdater/HotUpdaterImplTest.kt +19 -27
- package/android/src/test/java/com/hotupdater/InstallIdentityServiceTest.kt +71 -0
- package/android/src/test/java/com/hotupdater/KeyValueStorageServiceTest.kt +106 -0
- package/android/src/test/java/com/hotupdater/NoBackupContext.kt +11 -0
- package/android/src/test/java/com/hotupdater/OkHttpDownloadServiceTest.kt +309 -23
- package/android/src/test/java/com/hotupdater/PreviousProcessExitTest.kt +57 -0
- package/ios/HotUpdater/Internal/BundleFileStorageService.swift +238 -157
- package/ios/HotUpdater/Internal/BundleMetadata.swift +3 -53
- package/ios/HotUpdater/Internal/FileManagerService.swift +48 -0
- package/ios/HotUpdater/Internal/HotUpdater.mm +8 -18
- package/ios/HotUpdater/Internal/HotUpdaterImpl.swift +48 -29
- package/ios/HotUpdater/Internal/KeyValueStorageService.swift +71 -0
- package/ios/HotUpdater/Internal/URLSessionDownloadService.swift +108 -1
- package/ios/HotUpdater/Internal/UpdateFailure.swift +390 -0
- package/lib/commonjs/appReady.js +111 -0
- package/lib/commonjs/appReady.js.map +1 -0
- package/lib/commonjs/appReady.spec.js +360 -0
- package/lib/commonjs/appReady.spec.js.map +1 -0
- package/lib/commonjs/{notifyAppReadyInsights.test-utils.js → appReady.test-utils.js} +4 -3
- package/lib/commonjs/appReady.test-utils.js.map +1 -0
- package/lib/commonjs/baseURL.js +16 -0
- package/lib/commonjs/baseURL.js.map +1 -0
- package/lib/commonjs/checkForUpdate.js +104 -56
- package/lib/commonjs/checkForUpdate.js.map +1 -1
- package/lib/commonjs/checkForUpdate.releaseCatalog.spec.js +337 -74
- package/lib/commonjs/checkForUpdate.releaseCatalog.spec.js.map +1 -1
- package/lib/commonjs/clientPlugin.js +49 -0
- package/lib/commonjs/clientPlugin.js.map +1 -0
- package/lib/commonjs/entryImportGraph.spec.js +50 -0
- package/lib/commonjs/entryImportGraph.spec.js.map +1 -0
- package/lib/commonjs/fetchJSON.js +2 -6
- package/lib/commonjs/fetchJSON.js.map +1 -1
- package/lib/commonjs/httpClient.js +18 -165
- package/lib/commonjs/httpClient.js.map +1 -1
- package/lib/commonjs/httpClient.spec.js +26 -199
- package/lib/commonjs/httpClient.spec.js.map +1 -1
- package/lib/commonjs/index.js +49 -36
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/index.spec.js +108 -123
- package/lib/commonjs/index.spec.js.map +1 -1
- package/lib/commonjs/native.js +67 -48
- package/lib/commonjs/native.js.map +1 -1
- package/lib/commonjs/native.spec.js +80 -58
- package/lib/commonjs/native.spec.js.map +1 -1
- package/lib/commonjs/pluginHost.js +208 -0
- package/lib/commonjs/pluginHost.js.map +1 -0
- package/lib/commonjs/pluginHost.spec.js +292 -0
- package/lib/commonjs/pluginHost.spec.js.map +1 -0
- package/lib/commonjs/plugins/insights/eventId.js +129 -0
- package/lib/commonjs/plugins/insights/eventId.js.map +1 -0
- package/lib/commonjs/plugins/insights/eventId.spec.js +47 -0
- package/lib/commonjs/plugins/insights/eventId.spec.js.map +1 -0
- package/lib/commonjs/plugins/insights/index.js +272 -0
- package/lib/commonjs/plugins/insights/index.js.map +1 -0
- package/lib/commonjs/plugins/insights/insights.spec.js +640 -0
- package/lib/commonjs/plugins/insights/insights.spec.js.map +1 -0
- package/lib/commonjs/plugins/insights/sender.js +128 -0
- package/lib/commonjs/plugins/insights/sender.js.map +1 -0
- package/lib/commonjs/plugins/insights/sender.spec.js +265 -0
- package/lib/commonjs/plugins/insights/sender.spec.js.map +1 -0
- package/lib/commonjs/plugins/insights/state.js +145 -0
- package/lib/commonjs/plugins/insights/state.js.map +1 -0
- package/lib/commonjs/releaseCatalogCache.js +13 -2
- package/lib/commonjs/releaseCatalogCache.js.map +1 -1
- package/lib/commonjs/releaseCatalogCache.spec.js +18 -0
- package/lib/commonjs/releaseCatalogCache.spec.js.map +1 -1
- package/lib/commonjs/sdkVersion.js +1 -1
- package/lib/commonjs/specs/NativeHotUpdater.js.map +1 -1
- package/lib/commonjs/updateError.js +132 -0
- package/lib/commonjs/updateError.js.map +1 -0
- package/lib/commonjs/updateError.spec.js +149 -0
- package/lib/commonjs/updateError.spec.js.map +1 -0
- package/lib/commonjs/wrap.js +43 -25
- package/lib/commonjs/wrap.js.map +1 -1
- package/lib/commonjs/wrap.progress.spec.js +195 -0
- package/lib/commonjs/wrap.progress.spec.js.map +1 -0
- package/lib/commonjs/wrap.spec.js +94 -230
- package/lib/commonjs/wrap.spec.js.map +1 -1
- package/lib/module/appReady.js +103 -0
- package/lib/module/appReady.js.map +1 -0
- package/lib/module/appReady.spec.js +359 -0
- package/lib/module/appReady.spec.js.map +1 -0
- package/lib/module/{notifyAppReadyInsights.test-utils.js → appReady.test-utils.js} +4 -3
- package/lib/module/appReady.test-utils.js.map +1 -0
- package/lib/module/baseURL.js +11 -0
- package/lib/module/baseURL.js.map +1 -0
- package/lib/module/checkForUpdate.js +103 -57
- package/lib/module/checkForUpdate.js.map +1 -1
- package/lib/module/checkForUpdate.releaseCatalog.spec.js +337 -74
- package/lib/module/checkForUpdate.releaseCatalog.spec.js.map +1 -1
- package/lib/module/clientPlugin.js +44 -0
- package/lib/module/clientPlugin.js.map +1 -0
- package/lib/module/entryImportGraph.spec.js +50 -0
- package/lib/module/entryImportGraph.spec.js.map +1 -0
- package/lib/module/fetchJSON.js +2 -6
- package/lib/module/fetchJSON.js.map +1 -1
- package/lib/module/httpClient.js +18 -165
- package/lib/module/httpClient.js.map +1 -1
- package/lib/module/httpClient.spec.js +27 -200
- package/lib/module/httpClient.spec.js.map +1 -1
- package/lib/module/index.js +44 -38
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.spec.js +108 -123
- package/lib/module/index.spec.js.map +1 -1
- package/lib/module/native.js +63 -44
- package/lib/module/native.js.map +1 -1
- package/lib/module/native.spec.js +80 -58
- package/lib/module/native.spec.js.map +1 -1
- package/lib/module/pluginHost.js +200 -0
- package/lib/module/pluginHost.js.map +1 -0
- package/lib/module/pluginHost.spec.js +291 -0
- package/lib/module/pluginHost.spec.js.map +1 -0
- package/lib/module/plugins/insights/eventId.js +122 -0
- package/lib/module/plugins/insights/eventId.js.map +1 -0
- package/lib/module/plugins/insights/eventId.spec.js +47 -0
- package/lib/module/plugins/insights/eventId.spec.js.map +1 -0
- package/lib/module/plugins/insights/index.js +268 -0
- package/lib/module/plugins/insights/index.js.map +1 -0
- package/lib/module/plugins/insights/insights.spec.js +639 -0
- package/lib/module/plugins/insights/insights.spec.js.map +1 -0
- package/lib/module/plugins/insights/sender.js +123 -0
- package/lib/module/plugins/insights/sender.js.map +1 -0
- package/lib/module/plugins/insights/sender.spec.js +265 -0
- package/lib/module/plugins/insights/sender.spec.js.map +1 -0
- package/lib/module/plugins/insights/state.js +139 -0
- package/lib/module/plugins/insights/state.js.map +1 -0
- package/lib/module/releaseCatalogCache.js +13 -2
- package/lib/module/releaseCatalogCache.js.map +1 -1
- package/lib/module/releaseCatalogCache.spec.js +18 -0
- package/lib/module/releaseCatalogCache.spec.js.map +1 -1
- package/lib/module/sdkVersion.js +1 -1
- package/lib/module/specs/NativeHotUpdater.js.map +1 -1
- package/lib/module/updateError.js +126 -0
- package/lib/module/updateError.js.map +1 -0
- package/lib/module/updateError.spec.js +149 -0
- package/lib/module/updateError.spec.js.map +1 -0
- package/lib/module/wrap.js +43 -25
- package/lib/module/wrap.js.map +1 -1
- package/lib/module/wrap.progress.spec.js +196 -0
- package/lib/module/wrap.progress.spec.js.map +1 -0
- package/lib/module/wrap.spec.js +93 -229
- package/lib/module/wrap.spec.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/appReady.test-utils.d.ts +9 -0
- package/lib/typescript/commonjs/appReady.test-utils.d.ts.map +1 -0
- package/lib/typescript/commonjs/baseURL.d.ts +4 -0
- package/lib/typescript/commonjs/baseURL.d.ts.map +1 -0
- package/lib/typescript/commonjs/checkForUpdate.d.ts +15 -2
- package/lib/typescript/commonjs/checkForUpdate.d.ts.map +1 -1
- package/lib/typescript/commonjs/clientPlugin.d.ts +185 -0
- package/lib/typescript/commonjs/clientPlugin.d.ts.map +1 -0
- package/lib/typescript/commonjs/fetchJSON.d.ts +2 -3
- package/lib/typescript/commonjs/fetchJSON.d.ts.map +1 -1
- package/lib/typescript/commonjs/httpClient.d.ts +2 -36
- package/lib/typescript/commonjs/httpClient.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +3 -6
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/native.d.ts +29 -15
- package/lib/typescript/commonjs/native.d.ts.map +1 -1
- package/lib/typescript/commonjs/pluginHost.d.ts +29 -0
- package/lib/typescript/commonjs/pluginHost.d.ts.map +1 -0
- package/lib/typescript/commonjs/plugins/insights/eventId.d.ts +18 -0
- package/lib/typescript/commonjs/plugins/insights/eventId.d.ts.map +1 -0
- package/lib/typescript/commonjs/plugins/insights/index.d.ts +40 -0
- package/lib/typescript/commonjs/plugins/insights/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/plugins/insights/sender.d.ts +74 -0
- package/lib/typescript/commonjs/plugins/insights/sender.d.ts.map +1 -0
- package/lib/typescript/commonjs/plugins/insights/state.d.ts +46 -0
- package/lib/typescript/commonjs/plugins/insights/state.d.ts.map +1 -0
- package/lib/typescript/commonjs/releaseCatalogCache.d.ts +5 -1
- package/lib/typescript/commonjs/releaseCatalogCache.d.ts.map +1 -1
- package/lib/typescript/commonjs/sdkVersion.d.ts +1 -1
- package/lib/typescript/commonjs/specs/NativeHotUpdater.d.ts +34 -12
- package/lib/typescript/commonjs/specs/NativeHotUpdater.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 -10
- 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/appReady.test-utils.d.ts +9 -0
- package/lib/typescript/module/appReady.test-utils.d.ts.map +1 -0
- package/lib/typescript/module/baseURL.d.ts +4 -0
- package/lib/typescript/module/baseURL.d.ts.map +1 -0
- package/lib/typescript/module/checkForUpdate.d.ts +15 -2
- package/lib/typescript/module/checkForUpdate.d.ts.map +1 -1
- package/lib/typescript/module/clientPlugin.d.ts +185 -0
- package/lib/typescript/module/clientPlugin.d.ts.map +1 -0
- package/lib/typescript/module/fetchJSON.d.ts +2 -3
- package/lib/typescript/module/fetchJSON.d.ts.map +1 -1
- package/lib/typescript/module/httpClient.d.ts +2 -36
- package/lib/typescript/module/httpClient.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +3 -6
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/native.d.ts +29 -15
- package/lib/typescript/module/native.d.ts.map +1 -1
- package/lib/typescript/module/pluginHost.d.ts +29 -0
- package/lib/typescript/module/pluginHost.d.ts.map +1 -0
- package/lib/typescript/module/plugins/insights/eventId.d.ts +18 -0
- package/lib/typescript/module/plugins/insights/eventId.d.ts.map +1 -0
- package/lib/typescript/module/plugins/insights/index.d.ts +40 -0
- package/lib/typescript/module/plugins/insights/index.d.ts.map +1 -0
- package/lib/typescript/module/plugins/insights/sender.d.ts +74 -0
- package/lib/typescript/module/plugins/insights/sender.d.ts.map +1 -0
- package/lib/typescript/module/plugins/insights/state.d.ts +46 -0
- package/lib/typescript/module/plugins/insights/state.d.ts.map +1 -0
- package/lib/typescript/module/releaseCatalogCache.d.ts +5 -1
- package/lib/typescript/module/releaseCatalogCache.d.ts.map +1 -1
- package/lib/typescript/module/sdkVersion.d.ts +1 -1
- package/lib/typescript/module/specs/NativeHotUpdater.d.ts +34 -12
- package/lib/typescript/module/specs/NativeHotUpdater.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 -10
- package/lib/typescript/module/wrap.types.d.ts.map +1 -1
- package/package.json +14 -2
- package/plugins/insights/package.json +8 -0
- package/src/appReady.spec.ts +393 -0
- package/src/{notifyAppReadyInsights.test-utils.ts → appReady.test-utils.ts} +7 -7
- package/src/appReady.ts +149 -0
- package/src/baseURL.ts +15 -0
- package/src/checkForUpdate.releaseCatalog.spec.ts +370 -76
- package/src/checkForUpdate.ts +135 -80
- package/src/clientPlugin.ts +231 -0
- package/src/entryImportGraph.spec.ts +65 -0
- package/src/fetchJSON.ts +3 -10
- package/src/httpClient.spec.ts +30 -227
- package/src/httpClient.ts +20 -256
- package/src/index.spec.ts +117 -93
- package/src/index.ts +67 -52
- package/src/native.spec.ts +98 -72
- package/src/native.ts +93 -77
- package/src/pluginHost.spec.ts +297 -0
- package/src/pluginHost.ts +262 -0
- package/src/plugins/insights/eventId.spec.ts +60 -0
- package/src/plugins/insights/eventId.ts +171 -0
- package/src/plugins/insights/index.ts +367 -0
- package/src/plugins/insights/insights.spec.ts +732 -0
- package/src/plugins/insights/sender.spec.ts +287 -0
- package/src/plugins/insights/sender.ts +221 -0
- package/src/plugins/insights/state.ts +184 -0
- package/src/releaseCatalogCache.spec.ts +22 -0
- package/src/releaseCatalogCache.ts +19 -4
- package/src/sdkVersion.ts +1 -1
- package/src/specs/NativeHotUpdater.ts +34 -13
- package/src/updateError.spec.ts +144 -0
- package/src/updateError.ts +153 -0
- package/src/wrap.progress.spec.ts +232 -0
- package/src/wrap.spec.ts +100 -283
- package/src/wrap.tsx +57 -26
- package/src/wrap.types.ts +6 -12
- package/lib/commonjs/notifyAppReadyInsights.boundary.spec.js +0 -225
- package/lib/commonjs/notifyAppReadyInsights.boundary.spec.js.map +0 -1
- package/lib/commonjs/notifyAppReadyInsights.js +0 -188
- package/lib/commonjs/notifyAppReadyInsights.js.map +0 -1
- package/lib/commonjs/notifyAppReadyInsights.spec.js +0 -378
- package/lib/commonjs/notifyAppReadyInsights.spec.js.map +0 -1
- package/lib/commonjs/notifyAppReadyInsights.test-utils.js.map +0 -1
- package/lib/commonjs/notifyAppReadyInsights.transport.spec.js +0 -171
- package/lib/commonjs/notifyAppReadyInsights.transport.spec.js.map +0 -1
- package/lib/commonjs/uuidv7.js +0 -41
- package/lib/commonjs/uuidv7.js.map +0 -1
- package/lib/commonjs/uuidv7.spec.js +0 -30
- package/lib/commonjs/uuidv7.spec.js.map +0 -1
- package/lib/module/notifyAppReadyInsights.boundary.spec.js +0 -224
- package/lib/module/notifyAppReadyInsights.boundary.spec.js.map +0 -1
- package/lib/module/notifyAppReadyInsights.js +0 -181
- package/lib/module/notifyAppReadyInsights.js.map +0 -1
- package/lib/module/notifyAppReadyInsights.spec.js +0 -377
- package/lib/module/notifyAppReadyInsights.spec.js.map +0 -1
- package/lib/module/notifyAppReadyInsights.test-utils.js.map +0 -1
- package/lib/module/notifyAppReadyInsights.transport.spec.js +0 -170
- package/lib/module/notifyAppReadyInsights.transport.spec.js.map +0 -1
- package/lib/module/uuidv7.js +0 -36
- package/lib/module/uuidv7.js.map +0 -1
- package/lib/module/uuidv7.spec.js +0 -30
- package/lib/module/uuidv7.spec.js.map +0 -1
- package/lib/typescript/commonjs/notifyAppReadyInsights.d.ts +0 -25
- 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/commonjs/uuidv7.d.ts +0 -10
- package/lib/typescript/commonjs/uuidv7.d.ts.map +0 -1
- package/lib/typescript/module/notifyAppReadyInsights.d.ts +0 -25
- 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/lib/typescript/module/uuidv7.d.ts +0 -10
- package/lib/typescript/module/uuidv7.d.ts.map +0 -1
- package/src/notifyAppReadyInsights.boundary.spec.ts +0 -242
- package/src/notifyAppReadyInsights.spec.ts +0 -362
- package/src/notifyAppReadyInsights.transport.spec.ts +0 -196
- package/src/notifyAppReadyInsights.ts +0 -293
- package/src/uuidv7.spec.ts +0 -25
- package/src/uuidv7.ts +0 -38
|
@@ -30,7 +30,9 @@ const mocks = _vitest.vi.hoisted(() => {
|
|
|
30
30
|
getInstallId: _vitest.vi.fn(() => "install-id"),
|
|
31
31
|
getManifest: _vitest.vi.fn(() => null),
|
|
32
32
|
getMinBundleId: _vitest.vi.fn(() => "min-bundle-id"),
|
|
33
|
-
|
|
33
|
+
configurePlugins: _vitest.vi.fn(),
|
|
34
|
+
emitAfterAppReady: _vitest.vi.fn(),
|
|
35
|
+
reportUpdateError: _vitest.vi.fn(),
|
|
34
36
|
init: _vitest.vi.fn(),
|
|
35
37
|
isChannelSwitched: _vitest.vi.fn(() => false),
|
|
36
38
|
notifyAppReady: _vitest.vi.fn(() => ({
|
|
@@ -40,8 +42,7 @@ const mocks = _vitest.vi.hoisted(() => {
|
|
|
40
42
|
resetChannel: _vitest.vi.fn(),
|
|
41
43
|
setCohort: _vitest.vi.fn(),
|
|
42
44
|
setReloadBehavior: _vitest.vi.fn(),
|
|
43
|
-
|
|
44
|
-
updateBundle: _vitest.vi.fn(),
|
|
45
|
+
stageBundle: _vitest.vi.fn(),
|
|
45
46
|
wrap: _vitest.vi.fn(Component => Component)
|
|
46
47
|
};
|
|
47
48
|
});
|
|
@@ -54,7 +55,14 @@ _vitest.vi.mock("./httpClient", () => ({
|
|
|
54
55
|
createHttpClient: mocks.createHttpClient
|
|
55
56
|
}));
|
|
56
57
|
_vitest.vi.mock("./checkForUpdate", () => ({
|
|
57
|
-
checkForUpdate: mocks.checkForUpdate
|
|
58
|
+
checkForUpdate: mocks.checkForUpdate,
|
|
59
|
+
reportUpdateError: mocks.reportUpdateError
|
|
60
|
+
}));
|
|
61
|
+
_vitest.vi.mock("./pluginHost", () => ({
|
|
62
|
+
configurePlugins: mocks.configurePlugins
|
|
63
|
+
}));
|
|
64
|
+
_vitest.vi.mock("./appReady", () => ({
|
|
65
|
+
emitAfterAppReady: mocks.emitAfterAppReady
|
|
58
66
|
}));
|
|
59
67
|
_vitest.vi.mock("./native", () => ({
|
|
60
68
|
addListener: mocks.addListener,
|
|
@@ -73,15 +81,13 @@ _vitest.vi.mock("./native", () => ({
|
|
|
73
81
|
getInstallId: mocks.getInstallId,
|
|
74
82
|
getManifest: mocks.getManifest,
|
|
75
83
|
getMinBundleId: mocks.getMinBundleId,
|
|
76
|
-
getPersistedUserIdentity: mocks.getPersistedUserIdentity,
|
|
77
84
|
isChannelSwitched: mocks.isChannelSwitched,
|
|
78
85
|
notifyAppReady: mocks.notifyAppReady,
|
|
79
86
|
reload: mocks.reload,
|
|
80
87
|
resetChannel: mocks.resetChannel,
|
|
81
88
|
setCohort: mocks.setCohort,
|
|
82
89
|
setReloadBehavior: mocks.setReloadBehavior,
|
|
83
|
-
|
|
84
|
-
updateBundle: mocks.updateBundle
|
|
90
|
+
stageBundle: mocks.stageBundle
|
|
85
91
|
}));
|
|
86
92
|
_vitest.vi.mock("./wrap", () => ({
|
|
87
93
|
init: mocks.init,
|
|
@@ -115,7 +121,6 @@ const importHotUpdater = async () => (await Promise.resolve().then(() => _intero
|
|
|
115
121
|
mocks.createHttpClient.mockReturnValue(client);
|
|
116
122
|
const HotUpdater = await importHotUpdater();
|
|
117
123
|
HotUpdater.init({
|
|
118
|
-
insights: true,
|
|
119
124
|
baseURL: "https://updates.example.com",
|
|
120
125
|
requestHeaders: {
|
|
121
126
|
Authorization: "Bearer token"
|
|
@@ -124,7 +129,6 @@ const importHotUpdater = async () => (await Promise.resolve().then(() => _intero
|
|
|
124
129
|
});
|
|
125
130
|
(0, _vitest.expect)(mocks.createHttpClient).toHaveBeenCalledWith("https://updates.example.com");
|
|
126
131
|
(0, _vitest.expect)(mocks.init).toHaveBeenCalledWith({
|
|
127
|
-
insights: true,
|
|
128
132
|
client,
|
|
129
133
|
requestHeaders: {
|
|
130
134
|
Authorization: "Bearer token"
|
|
@@ -141,134 +145,126 @@ const importHotUpdater = async () => (await Promise.resolve().then(() => _intero
|
|
|
141
145
|
(0, _vitest.expect)(mocks.createHttpClient).toHaveBeenCalledWith(resolveBaseURL);
|
|
142
146
|
(0, _vitest.expect)(resolveBaseURL).not.toHaveBeenCalled();
|
|
143
147
|
});
|
|
144
|
-
(0, _vitest.it)("
|
|
148
|
+
(0, _vitest.it)("sets up plugins with the settings they fetch with, before init reads the launch", async () => {
|
|
149
|
+
const plugin = {
|
|
150
|
+
id: "example",
|
|
151
|
+
setup: _vitest.vi.fn()
|
|
152
|
+
};
|
|
153
|
+
const onError = _vitest.vi.fn();
|
|
154
|
+
mocks.init.mockImplementationOnce(() => {
|
|
155
|
+
(0, _vitest.expect)(mocks.configurePlugins).toHaveBeenCalledOnce();
|
|
156
|
+
});
|
|
145
157
|
const HotUpdater = await importHotUpdater();
|
|
146
158
|
HotUpdater.init({
|
|
147
|
-
baseURL: "https://updates.example.com"
|
|
159
|
+
baseURL: "https://updates.example.com",
|
|
160
|
+
onError,
|
|
161
|
+
plugins: [plugin],
|
|
162
|
+
requestHeaders: {
|
|
163
|
+
"x-api-key": "client-key"
|
|
164
|
+
},
|
|
165
|
+
requestTimeout: 1000
|
|
148
166
|
});
|
|
149
167
|
HotUpdater.wrap({
|
|
150
|
-
baseURL: "https://
|
|
168
|
+
baseURL: "https://other.example.com",
|
|
169
|
+
plugins: [plugin],
|
|
151
170
|
updateStrategy: "appVersion"
|
|
152
171
|
});
|
|
153
|
-
(0, _vitest.expect)(mocks.
|
|
154
|
-
insights: true
|
|
155
|
-
}));
|
|
156
|
-
(0, _vitest.expect)(mocks.wrap).toHaveBeenCalledWith(_vitest.expect.objectContaining({
|
|
157
|
-
insights: true
|
|
158
|
-
}));
|
|
159
|
-
});
|
|
160
|
-
(0, _vitest.it)("preserves an explicit insights opt-out", async () => {
|
|
161
|
-
const HotUpdater = await importHotUpdater();
|
|
162
|
-
HotUpdater.init({
|
|
172
|
+
(0, _vitest.expect)(mocks.configurePlugins).toHaveBeenNthCalledWith(1, [plugin], {
|
|
163
173
|
baseURL: "https://updates.example.com",
|
|
164
|
-
|
|
174
|
+
onError,
|
|
175
|
+
requestHeaders: {
|
|
176
|
+
"x-api-key": "client-key"
|
|
177
|
+
},
|
|
178
|
+
requestTimeout: 1000
|
|
165
179
|
});
|
|
166
|
-
|
|
167
|
-
baseURL: "https://
|
|
168
|
-
|
|
169
|
-
|
|
180
|
+
(0, _vitest.expect)(mocks.configurePlugins).toHaveBeenNthCalledWith(2, [plugin], {
|
|
181
|
+
baseURL: "https://other.example.com",
|
|
182
|
+
onError: undefined,
|
|
183
|
+
requestHeaders: undefined,
|
|
184
|
+
requestTimeout: undefined
|
|
170
185
|
});
|
|
171
|
-
(0, _vitest.expect)(mocks.init).toHaveBeenCalledWith(_vitest.expect.objectContaining({
|
|
172
|
-
|
|
186
|
+
(0, _vitest.expect)(mocks.init).toHaveBeenCalledWith(_vitest.expect.not.objectContaining({
|
|
187
|
+
plugins: _vitest.expect.anything()
|
|
173
188
|
}));
|
|
174
|
-
(0, _vitest.expect)(mocks.wrap).toHaveBeenCalledWith(_vitest.expect.objectContaining({
|
|
175
|
-
|
|
189
|
+
(0, _vitest.expect)(mocks.wrap).toHaveBeenCalledWith(_vitest.expect.not.objectContaining({
|
|
190
|
+
plugins: _vitest.expect.anything()
|
|
176
191
|
}));
|
|
177
192
|
});
|
|
178
|
-
_vitest.it
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
}
|
|
195
|
-
expected: true
|
|
196
|
-
}, {
|
|
197
|
-
dev: false,
|
|
198
|
-
insights: {
|
|
199
|
-
debug: true
|
|
200
|
-
},
|
|
201
|
-
expected: true
|
|
202
|
-
}, {
|
|
203
|
-
dev: false,
|
|
204
|
-
insights: {
|
|
205
|
-
debug: false
|
|
206
|
-
},
|
|
207
|
-
expected: true
|
|
208
|
-
}, {
|
|
209
|
-
dev: false,
|
|
210
|
-
insights: false,
|
|
211
|
-
expected: false
|
|
212
|
-
}])("resolves insights $insights to $expected when __DEV__ is $dev", async ({
|
|
213
|
-
dev,
|
|
214
|
-
insights,
|
|
215
|
-
expected
|
|
216
|
-
}) => {
|
|
217
|
-
_vitest.vi.stubGlobal("__DEV__", dev);
|
|
218
|
-
_vitest.vi.spyOn(console, "error").mockImplementation(() => undefined);
|
|
193
|
+
(0, _vitest.it)("reports a staged manual download to plugins after the launch", async () => {
|
|
194
|
+
mocks.stageBundle.mockResolvedValueOnce({
|
|
195
|
+
delivery: "archive",
|
|
196
|
+
patchFallback: true
|
|
197
|
+
});
|
|
198
|
+
mocks.getActiveUpdateState.mockReturnValue({
|
|
199
|
+
activeSelection: {
|
|
200
|
+
bundleId: "next-bundle-id",
|
|
201
|
+
channel: "production",
|
|
202
|
+
kind: "BUNDLE",
|
|
203
|
+
releaseId: "next-release-id",
|
|
204
|
+
scopeKey: "v1:fingerprint:project:ios:cHJvZHVjdGlvbg:hash"
|
|
205
|
+
},
|
|
206
|
+
highestSeenCatalogs: {},
|
|
207
|
+
stableSelection: null,
|
|
208
|
+
verificationPending: true
|
|
209
|
+
});
|
|
219
210
|
const HotUpdater = await importHotUpdater();
|
|
220
211
|
HotUpdater.init({
|
|
221
|
-
baseURL: "https://updates.example.com"
|
|
222
|
-
insights
|
|
212
|
+
baseURL: "https://updates.example.com"
|
|
223
213
|
});
|
|
224
|
-
HotUpdater.
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
214
|
+
await HotUpdater.updateBundle({
|
|
215
|
+
assets: {},
|
|
216
|
+
bundleId: "next-bundle-id",
|
|
217
|
+
manifestFileHash: "manifest-hash",
|
|
218
|
+
manifestUrl: "https://updates.example.com/manifest.json",
|
|
219
|
+
status: "UPDATE"
|
|
220
|
+
});
|
|
221
|
+
(0, _vitest.expect)(mocks.emitAfterAppReady).toHaveBeenCalledOnce();
|
|
222
|
+
const [name, createPayload] = mocks.emitAfterAppReady.mock.calls[0];
|
|
223
|
+
(0, _vitest.expect)(name).toBe("onBundleDownloaded");
|
|
224
|
+
(0, _vitest.expect)(createPayload()).toEqual({
|
|
225
|
+
channel: "production",
|
|
226
|
+
fromBundleId: "bundle-id",
|
|
227
|
+
fromReleaseId: null,
|
|
228
|
+
toBundleId: "next-bundle-id",
|
|
229
|
+
toReleaseId: "next-release-id",
|
|
230
|
+
updateStrategy: "fingerprint",
|
|
231
|
+
delivery: "archive",
|
|
232
|
+
patchFallback: true
|
|
228
233
|
});
|
|
229
|
-
(0, _vitest.expect)(mocks.init).toHaveBeenCalledWith(_vitest.expect.objectContaining({
|
|
230
|
-
insights: expected
|
|
231
|
-
}));
|
|
232
|
-
(0, _vitest.expect)(mocks.wrap).toHaveBeenCalledWith(_vitest.expect.objectContaining({
|
|
233
|
-
insights: expected
|
|
234
|
-
}));
|
|
235
234
|
});
|
|
236
|
-
_vitest.it
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
dev,
|
|
244
|
-
reports
|
|
245
|
-
}) => {
|
|
246
|
-
_vitest.vi.stubGlobal("__DEV__", dev);
|
|
247
|
-
const sendInsightsEvent = _vitest.vi.fn(async () => undefined);
|
|
248
|
-
mocks.createHttpClient.mockReturnValue({
|
|
249
|
-
createSession: _vitest.vi.fn(async () => ({
|
|
250
|
-
sendInsightsEvent
|
|
251
|
-
}))
|
|
235
|
+
(0, _vitest.it)("reports a failed manual download to plugins and rethrows it", async () => {
|
|
236
|
+
const error = Object.assign(new Error("hash mismatch"), {
|
|
237
|
+
code: "SIGNATURE_VERIFICATION_FAILED",
|
|
238
|
+
userInfo: {
|
|
239
|
+
reason: "hash_mismatch",
|
|
240
|
+
stage: "download"
|
|
241
|
+
}
|
|
252
242
|
});
|
|
253
|
-
mocks.
|
|
243
|
+
mocks.stageBundle.mockRejectedValueOnce(error);
|
|
254
244
|
const HotUpdater = await importHotUpdater();
|
|
255
245
|
HotUpdater.init({
|
|
256
246
|
baseURL: "https://updates.example.com"
|
|
257
247
|
});
|
|
258
|
-
await HotUpdater.
|
|
259
|
-
updateStrategy: "appVersion"
|
|
260
|
-
});
|
|
261
|
-
await HotUpdater.updateBundle({
|
|
248
|
+
await (0, _vitest.expect)(HotUpdater.updateBundle({
|
|
262
249
|
assets: {},
|
|
263
250
|
bundleId: "next-bundle-id",
|
|
251
|
+
channel: "beta",
|
|
264
252
|
manifestFileHash: "manifest-hash",
|
|
265
253
|
manifestUrl: "https://updates.example.com/manifest.json",
|
|
254
|
+
selection: {
|
|
255
|
+
releaseId: "next-release-id",
|
|
256
|
+
scopeKey: "v1:app-version:project:ios:YmV0YQ"
|
|
257
|
+
},
|
|
266
258
|
status: "UPDATE"
|
|
259
|
+
})).rejects.toBe(error);
|
|
260
|
+
(0, _vitest.expect)(mocks.reportUpdateError).toHaveBeenCalledWith(error, "download", undefined, {
|
|
261
|
+
bundleId: "bundle-id",
|
|
262
|
+
channel: "beta",
|
|
263
|
+
targetBundleId: "next-bundle-id",
|
|
264
|
+
targetReleaseId: "next-release-id",
|
|
265
|
+
updateStrategy: "appVersion"
|
|
267
266
|
});
|
|
268
|
-
(0, _vitest.expect)(mocks.
|
|
269
|
-
insights: reports
|
|
270
|
-
}));
|
|
271
|
-
(0, _vitest.expect)(sendInsightsEvent).toHaveBeenCalledTimes(reports ? 1 : 0);
|
|
267
|
+
(0, _vitest.expect)(mocks.emitAfterAppReady).not.toHaveBeenCalled();
|
|
272
268
|
});
|
|
273
269
|
(0, _vitest.it)("requires baseURL and rejects the removed resolver shape", async () => {
|
|
274
270
|
const HotUpdater = await importHotUpdater();
|
|
@@ -306,7 +302,7 @@ const importHotUpdater = async () => (await Promise.resolve().then(() => _intero
|
|
|
306
302
|
(0, _vitest.expect)(initOptions.baseURL).toBe("https://updates.example.com");
|
|
307
303
|
(0, _vitest.expect)(wrapOptions.updateStrategy).toBe("appVersion");
|
|
308
304
|
});
|
|
309
|
-
(0, _vitest.it)("merges settings
|
|
305
|
+
(0, _vitest.it)("merges settings into checks", async () => {
|
|
310
306
|
const client = {
|
|
311
307
|
createSession: _vitest.vi.fn()
|
|
312
308
|
};
|
|
@@ -314,7 +310,6 @@ const importHotUpdater = async () => (await Promise.resolve().then(() => _intero
|
|
|
314
310
|
const checkOnError = _vitest.vi.fn();
|
|
315
311
|
const HotUpdater = await importHotUpdater();
|
|
316
312
|
HotUpdater.init({
|
|
317
|
-
insights: true,
|
|
318
313
|
baseURL: "https://updates.example.com",
|
|
319
314
|
requestHeaders: {
|
|
320
315
|
Authorization: "Bearer token"
|
|
@@ -329,7 +324,6 @@ const importHotUpdater = async () => (await Promise.resolve().then(() => _intero
|
|
|
329
324
|
updateStrategy: "appVersion"
|
|
330
325
|
});
|
|
331
326
|
(0, _vitest.expect)(mocks.checkForUpdate).toHaveBeenCalledWith({
|
|
332
|
-
insights: true,
|
|
333
327
|
client,
|
|
334
328
|
onError: checkOnError,
|
|
335
329
|
requestHeaders: {
|
|
@@ -347,12 +341,10 @@ const importHotUpdater = async () => (await Promise.resolve().then(() => _intero
|
|
|
347
341
|
mocks.createHttpClient.mockReturnValue(client);
|
|
348
342
|
const HotUpdater = await importHotUpdater();
|
|
349
343
|
HotUpdater.wrap({
|
|
350
|
-
insights: true,
|
|
351
344
|
baseURL: "https://updates.example.com",
|
|
352
345
|
updateStrategy: "appVersion"
|
|
353
346
|
});
|
|
354
347
|
(0, _vitest.expect)(mocks.wrap).toHaveBeenCalledWith({
|
|
355
|
-
insights: true,
|
|
356
348
|
client,
|
|
357
349
|
updateStrategy: "appVersion"
|
|
358
350
|
});
|
|
@@ -393,18 +385,11 @@ const importHotUpdater = async () => (await Promise.resolve().then(() => _intero
|
|
|
393
385
|
updateStrategy: "appVersion"
|
|
394
386
|
})).toThrow("requires HotUpdater.wrap() or HotUpdater.init() to be used");
|
|
395
387
|
});
|
|
396
|
-
(0, _vitest.it)("
|
|
388
|
+
(0, _vitest.it)("keeps the install id and leaves user identity to the insights plugin", async () => {
|
|
397
389
|
const HotUpdater = await importHotUpdater();
|
|
398
390
|
(0, _vitest.expect)(HotUpdater.getInstallId()).toBe("install-id");
|
|
399
391
|
(0, _vitest.expect)(HotUpdater.getMinBundleId()).toBe("min-bundle-id");
|
|
400
|
-
HotUpdater.setUser
|
|
401
|
-
userId: "user-123",
|
|
402
|
-
username: "alice"
|
|
403
|
-
});
|
|
404
|
-
(0, _vitest.expect)(mocks.setUser).toHaveBeenCalledWith({
|
|
405
|
-
userId: "user-123",
|
|
406
|
-
username: "alice"
|
|
407
|
-
});
|
|
392
|
+
(0, _vitest.expect)(HotUpdater).not.toHaveProperty("setUser");
|
|
408
393
|
});
|
|
409
394
|
});
|
|
410
395
|
//# sourceMappingURL=index.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_vitest","require","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","mocks","vi","hoisted","globalThis","HotUpdater","SDK_VERSION","addListener","fn","checkForUpdate","clearCrashHistory","createHttpClient","baseURL","getActiveUpdateState","activeSelection","highestSeenCatalogs","stableSelection","verificationPending","getAppVersion","getBaseURL","getUpdateId","getChannel","getCohort","getCrashHistory","getDefaultChannel","getFingerprintHash","getInstallId","getManifest","getMinBundleId","getPersistedUserIdentity","init","isChannelSwitched","notifyAppReady","status","reload","resetChannel","setCohort","setReloadBehavior","setUser","updateBundle","wrap","Component","mock","Platform","OS","getPublicActiveUpdateState","getBundleId","importHotUpdater","Promise","resolve","then","describe","beforeEach","resetModules","clearAllMocks","mockImplementation","mockResolvedValue","afterEach","unstubAllGlobals","restoreAllMocks","it","expect","toBe","not","toHaveProperty","client","createSession","mockReturnValue","insights","requestHeaders","Authorization","requestTimeout","toHaveBeenCalledWith","resolveBaseURL","toHaveBeenCalled","updateStrategy","objectContaining","each","dev","undefined","expected","debug","stubGlobal","spyOn","console","reports","sendInsightsEvent","mockResolvedValueOnce","assets","bundleId","manifestFileHash","manifestUrl","toHaveBeenCalledTimes","toThrow","resolver","initOptions","wrapOptions","assertRemovedInputsStayRejected","missingBaseURL","customResolver","clientCatalog","catalogId","toBeTypeOf","checkOnError","onError","first","second","consoleError","configure","api","toHaveBeenCalledOnce","stringContaining","mockRestore","updateMode","userId","username"],"sourceRoot":"../../src","sources":["index.spec.ts"],"mappings":";;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAAyE,SAAAC,wBAAAC,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAH,uBAAA,YAAAA,CAAAC,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAIzE,MAAMkB,KAAK,GAAGC,UAAE,CAACC,OAAO,CAAC,MAAM;EAE3BC,UAAU,CAGVC,UAAU,GAAG;IAAEC,WAAW,EAAE;EAAmB,CAAC;EAElD,OAAO;IACLC,WAAW,EAAEL,UAAE,CAACM,EAAE,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC;IAClCC,cAAc,EAAEP,UAAE,CAACM,EAAE,CAAC,YAAY,IAAI,CAAC;IACvCE,iBAAiB,EAAER,UAAE,CAACM,EAAE,CAAC,MAAM,IAAI,CAAC;IACpCG,gBAAgB,EAAET,UAAE,CAACM,EAAE,CAAEI,OAAgB,KAAM;MAAEA;IAAQ,CAAC,CAAC,CAAC;IAC5DC,oBAAoB,EAAEX,UAAE,CAACM,EAAE,CAAC,OAAO;MACjCM,eAAe,EAAE,IAAI;MACrBC,mBAAmB,EAAE,CAAC,CAAC;MACvBC,eAAe,EAAE,IAAI;MACrBC,mBAAmB,EAAE;IACvB,CAAC,CAAC,CAAC;IACHC,aAAa,EAAEhB,UAAE,CAACM,EAAE,CAAC,MAAM,OAAO,CAAC;IACnCW,UAAU,EAAEjB,UAAE,CAACM,EAAE,CAAC,MAAM,IAAI,CAAC;IAC7BY,WAAW,EAAElB,UAAE,CAACM,EAAE,CAAC,MAAM,YAAY,CAAC;IACtCa,UAAU,EAAEnB,UAAE,CAACM,EAAE,CAAC,MAAM,YAAY,CAAC;IACrCc,SAAS,EAAEpB,UAAE,CAACM,EAAE,CAAC,MAAM,KAAK,CAAC;IAC7Be,eAAe,EAAErB,UAAE,CAACM,EAAE,CAAC,MAAM,EAAE,CAAC;IAChCgB,iBAAiB,EAAEtB,UAAE,CAACM,EAAE,CAAC,MAAM,YAAY,CAAC;IAC5CiB,kBAAkB,EAAEvB,UAAE,CAACM,EAAE,CAAC,MAAM,IAAI,CAAC;IACrCkB,YAAY,EAAExB,UAAE,CAACM,EAAE,CAAC,MAAM,YAAY,CAAC;IACvCmB,WAAW,EAAEzB,UAAE,CAACM,EAAE,CAAC,MAAM,IAAI,CAAC;IAC9BoB,cAAc,EAAE1B,UAAE,CAACM,EAAE,CAAC,MAAM,eAAe,CAAC;IAC5CqB,wBAAwB,EAAE3B,UAAE,CAACM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC3CsB,IAAI,EAAE5B,UAAE,CAACM,EAAE,CAAC,CAAC;IACbuB,iBAAiB,EAAE7B,UAAE,CAACM,EAAE,CAAC,MAAM,KAAK,CAAC;IACrCwB,cAAc,EAAE9B,UAAE,CAACM,EAAE,CAAC,OAAO;MAAEyB,MAAM,EAAE;IAAqB,CAAC,CAAC,CAAC;IAC/DC,MAAM,EAAEhC,UAAE,CAACM,EAAE,CAAC,CAAC;IACf2B,YAAY,EAAEjC,UAAE,CAACM,EAAE,CAAC,CAAC;IACrB4B,SAAS,EAAElC,UAAE,CAACM,EAAE,CAAC,CAAC;IAClB6B,iBAAiB,EAAEnC,UAAE,CAACM,EAAE,CAAC,CAAC;IAC1B8B,OAAO,EAAEpC,UAAE,CAACM,EAAE,CAAC,CAAC;IAChB+B,YAAY,EAAErC,UAAE,CAACM,EAAE,CAAC,CAAC;IACrBgC,IAAI,EAAEtC,UAAE,CAACM,EAAE,CAAEiC,SAAkB,IAAKA,SAAS;EAC/C,CAAC;AACH,CAAC,CAAC;AAEFvC,UAAE,CAACwC,IAAI,CAAC,cAAc,EAAE,OAAO;EAAEC,QAAQ,EAAE;IAAEC,EAAE,EAAE;EAAM;AAAE,CAAC,CAAC,CAAC;AAE5D1C,UAAE,CAACwC,IAAI,CAAC,cAAc,EAAE,OAAO;EAC7B/B,gBAAgB,EAAEV,KAAK,CAACU;AAC1B,CAAC,CAAC,CAAC;AAEHT,UAAE,CAACwC,IAAI,CAAC,kBAAkB,EAAE,OAAO;EACjCjC,cAAc,EAAER,KAAK,CAACQ;AACxB,CAAC,CAAC,CAAC;AAEHP,UAAE,CAACwC,IAAI,CAAC,UAAU,EAAE,OAAO;EACzBnC,WAAW,EAAEN,KAAK,CAACM,WAAW;EAC9BG,iBAAiB,EAAET,KAAK,CAACS,iBAAiB;EAC1CmC,0BAA0B,EAAE5C,KAAK,CAACY,oBAAoB;EACtDA,oBAAoB,EAAEZ,KAAK,CAACY,oBAAoB;EAChDiC,WAAW,EAAEA,CAAA,KAAM,WAAW;EAC9B5B,aAAa,EAAEjB,KAAK,CAACiB,aAAa;EAClCC,UAAU,EAAElB,KAAK,CAACkB,UAAU;EAC5BC,WAAW,EAAEnB,KAAK,CAACmB,WAAW;EAC9BC,UAAU,EAAEpB,KAAK,CAACoB,UAAU;EAC5BC,SAAS,EAAErB,KAAK,CAACqB,SAAS;EAC1BC,eAAe,EAAEtB,KAAK,CAACsB,eAAe;EACtCC,iBAAiB,EAAEvB,KAAK,CAACuB,iBAAiB;EAC1CC,kBAAkB,EAAExB,KAAK,CAACwB,kBAAkB;EAC5CC,YAAY,EAAEzB,KAAK,CAACyB,YAAY;EAChCC,WAAW,EAAE1B,KAAK,CAAC0B,WAAW;EAC9BC,cAAc,EAAE3B,KAAK,CAAC2B,cAAc;EACpCC,wBAAwB,EAAE5B,KAAK,CAAC4B,wBAAwB;EACxDE,iBAAiB,EAAE9B,KAAK,CAAC8B,iBAAiB;EAC1CC,cAAc,EAAE/B,KAAK,CAAC+B,cAAc;EACpCE,MAAM,EAAEjC,KAAK,CAACiC,MAAM;EACpBC,YAAY,EAAElC,KAAK,CAACkC,YAAY;EAChCC,SAAS,EAAEnC,KAAK,CAACmC,SAAS;EAC1BC,iBAAiB,EAAEpC,KAAK,CAACoC,iBAAiB;EAC1CC,OAAO,EAAErC,KAAK,CAACqC,OAAO;EACtBC,YAAY,EAAEtC,KAAK,CAACsC;AACtB,CAAC,CAAC,CAAC;AAEHrC,UAAE,CAACwC,IAAI,CAAC,QAAQ,EAAE,OAAO;EACvBZ,IAAI,EAAE7B,KAAK,CAAC6B,IAAI;EAChBU,IAAI,EAAEvC,KAAK,CAACuC;AACd,CAAC,CAAC,CAAC;AAEH,MAAMO,gBAAgB,GAAG,MAAAA,CAAA,KAAY,CAAC,MAAAC,OAAA,CAAAC,OAAA,GAAAC,IAAA,OAAArE,uBAAA,CAAAD,OAAA,CAAa,SAAS,GAAC,EAAEyB,UAAU;AAEzE,IAAA8C,gBAAQ,EAAC,kCAAkC,EAAE,MAAM;EACjD,IAAAC,kBAAU,EAAC,MAAM;IACflD,UAAE,CAACmD,YAAY,CAAC,CAAC;IACjBnD,UAAE,CAACoD,aAAa,CAAC,CAAC;IAClBrD,KAAK,CAACU,gBAAgB,CAAC4C,kBAAkB,CAAE3C,OAAgB,KAAM;MAC/DA;IACF,CAAC,CAAC,CAAC;IACHX,KAAK,CAACQ,cAAc,CAAC+C,iBAAiB,CAAC,IAAI,CAAC;IAC5CvD,KAAK,CAACuC,IAAI,CAACe,kBAAkB,CAAEd,SAAkB,IAAKA,SAAS,CAAC;EAClE,CAAC,CAAC;EAEF,IAAAgB,iBAAS,EAAC,MAAM;IACdvD,UAAE,CAACwD,gBAAgB,CAAC,CAAC;IACrBxD,UAAE,CAACyD,eAAe,CAAC,CAAC;EACtB,CAAC,CAAC;EAEF,IAAAC,UAAE,EAAC,yDAAyD,EAAE,YAAY;IACxE,MAAMvD,UAAU,GAAG,MAAM0C,gBAAgB,CAAC,CAAC;IAE3C,IAAAc,cAAM,EAACxD,UAAU,CAACyC,WAAW,CAAC,CAAC,CAAC,CAACgB,IAAI,CAAC,YAAY,CAAC;IACnD,IAAAD,cAAM,EAACxD,UAAU,CAAC,CAAC0D,GAAG,CAACC,cAAc,CAAC,cAAc,CAAC;IACrD,IAAAH,cAAM,EAACxD,UAAU,CAAC,CAAC0D,GAAG,CAACC,cAAc,CAAC,aAAa,CAAC;EACtD,CAAC,CAAC;EAEF,IAAAJ,UAAE,EAAC,6DAA6D,EAAE,YAAY;IAC5E,MAAMK,MAAM,GAAG;MAAEC,aAAa,EAAEhE,UAAE,CAACM,EAAE,CAAC;IAAE,CAAC;IACzCP,KAAK,CAACU,gBAAgB,CAACwD,eAAe,CAACF,MAAe,CAAC;IACvD,MAAM5D,UAAU,GAAG,MAAM0C,gBAAgB,CAAC,CAAC;IAE3C1C,UAAU,CAACyB,IAAI,CAAC;MACdsC,QAAQ,EAAE,IAAI;MACdxD,OAAO,EAAE,6BAA6B;MACtCyD,cAAc,EAAE;QAAEC,aAAa,EAAE;MAAe,CAAC;MACjDC,cAAc,EAAE;IAClB,CAAC,CAAC;IAEF,IAAAV,cAAM,EAAC5D,KAAK,CAACU,gBAAgB,CAAC,CAAC6D,oBAAoB,CACjD,6BACF,CAAC;IACD,IAAAX,cAAM,EAAC5D,KAAK,CAAC6B,IAAI,CAAC,CAAC0C,oBAAoB,CAAC;MACtCJ,QAAQ,EAAE,IAAI;MACdH,MAAM;MACNI,cAAc,EAAE;QAAEC,aAAa,EAAE;MAAe,CAAC;MACjDC,cAAc,EAAE;IAClB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,IAAAX,UAAE,EAAC,+DAA+D,EAAE,YAAY;IAC9E,MAAMa,cAAc,GAAGvE,UAAE,CAACM,EAAE,CAAC,MAAM,6BAA6B,CAAC;IACjE,MAAMH,UAAU,GAAG,MAAM0C,gBAAgB,CAAC,CAAC;IAE3C1C,UAAU,CAACyB,IAAI,CAAC;MAAElB,OAAO,EAAE6D;IAAe,CAAC,CAAC;IAE5C,IAAAZ,cAAM,EAAC5D,KAAK,CAACU,gBAAgB,CAAC,CAAC6D,oBAAoB,CAACC,cAAc,CAAC;IACnE,IAAAZ,cAAM,EAACY,cAAc,CAAC,CAACV,GAAG,CAACW,gBAAgB,CAAC,CAAC;EAC/C,CAAC,CAAC;EAEF,IAAAd,UAAE,EAAC,+CAA+C,EAAE,YAAY;IAC9D,MAAMvD,UAAU,GAAG,MAAM0C,gBAAgB,CAAC,CAAC;IAE3C1C,UAAU,CAACyB,IAAI,CAAC;MAAElB,OAAO,EAAE;IAA8B,CAAC,CAAC;IAC3DP,UAAU,CAACmC,IAAI,CAAC;MACd5B,OAAO,EAAE,6BAA6B;MACtC+D,cAAc,EAAE;IAClB,CAAC,CAAC;IAEF,IAAAd,cAAM,EAAC5D,KAAK,CAAC6B,IAAI,CAAC,CAAC0C,oBAAoB,CACrCX,cAAM,CAACe,gBAAgB,CAAC;MAAER,QAAQ,EAAE;IAAK,CAAC,CAC5C,CAAC;IACD,IAAAP,cAAM,EAAC5D,KAAK,CAACuC,IAAI,CAAC,CAACgC,oBAAoB,CACrCX,cAAM,CAACe,gBAAgB,CAAC;MAAER,QAAQ,EAAE;IAAK,CAAC,CAC5C,CAAC;EACH,CAAC,CAAC;EAEF,IAAAR,UAAE,EAAC,wCAAwC,EAAE,YAAY;IACvD,MAAMvD,UAAU,GAAG,MAAM0C,gBAAgB,CAAC,CAAC;IAE3C1C,UAAU,CAACyB,IAAI,CAAC;MACdlB,OAAO,EAAE,6BAA6B;MACtCwD,QAAQ,EAAE;IACZ,CAAC,CAAC;IACF/D,UAAU,CAACmC,IAAI,CAAC;MACd5B,OAAO,EAAE,6BAA6B;MACtCwD,QAAQ,EAAE,KAAK;MACfO,cAAc,EAAE;IAClB,CAAC,CAAC;IAEF,IAAAd,cAAM,EAAC5D,KAAK,CAAC6B,IAAI,CAAC,CAAC0C,oBAAoB,CACrCX,cAAM,CAACe,gBAAgB,CAAC;MAAER,QAAQ,EAAE;IAAM,CAAC,CAC7C,CAAC;IACD,IAAAP,cAAM,EAAC5D,KAAK,CAACuC,IAAI,CAAC,CAACgC,oBAAoB,CACrCX,cAAM,CAACe,gBAAgB,CAAC;MAAER,QAAQ,EAAE;IAAM,CAAC,CAC7C,CAAC;EACH,CAAC,CAAC;EAEFR,UAAE,CAACiB,IAAI,CAAC,CACN;IAAEC,GAAG,EAAE,IAAI;IAAEV,QAAQ,EAAEW,SAAS;IAAEC,QAAQ,EAAE;EAAM,CAAC,EACnD;IAAEF,GAAG,EAAE,IAAI;IAAEV,QAAQ,EAAE,IAAI;IAAEY,QAAQ,EAAE;EAAM,CAAC,EAC9C;IAAEF,GAAG,EAAE,IAAI;IAAEV,QAAQ,EAAE,KAAK;IAAEY,QAAQ,EAAE;EAAM,CAAC,EAC/C;IAAEF,GAAG,EAAE,IAAI;IAAEV,QAAQ,EAAE;MAAEa,KAAK,EAAE;IAAK,CAAC;IAAED,QAAQ,EAAE;EAAK,CAAC,EACxD;IAAEF,GAAG,EAAE,KAAK;IAAEV,QAAQ,EAAE;MAAEa,KAAK,EAAE;IAAK,CAAC;IAAED,QAAQ,EAAE;EAAK,CAAC,EACzD;IAAEF,GAAG,EAAE,KAAK;IAAEV,QAAQ,EAAE;MAAEa,KAAK,EAAE;IAAM,CAAC;IAAED,QAAQ,EAAE;EAAK,CAAC,EAC1D;IAAEF,GAAG,EAAE,KAAK;IAAEV,QAAQ,EAAE,KAAK;IAAEY,QAAQ,EAAE;EAAM,CAAC,CACxC,CAAC,CACT,+DAA+D,EAC/D,OAAO;IAAEF,GAAG;IAAEV,QAAQ;IAAEY;EAAS,CAAC,KAAK;IACrC9E,UAAE,CAACgF,UAAU,CAAC,SAAS,EAAEJ,GAAG,CAAC;IAC7B5E,UAAE,CAACiF,KAAK,CAACC,OAAO,EAAE,OAAO,CAAC,CAAC7B,kBAAkB,CAAC,MAAMwB,SAAS,CAAC;IAC9D,MAAM1E,UAAU,GAAG,MAAM0C,gBAAgB,CAAC,CAAC;IAE3C1C,UAAU,CAACyB,IAAI,CAAC;MAAElB,OAAO,EAAE,6BAA6B;MAAEwD;IAAS,CAAC,CAAC;IACrE/D,UAAU,CAACmC,IAAI,CAAC;MACd5B,OAAO,EAAE,6BAA6B;MACtCwD,QAAQ;MACRO,cAAc,EAAE;IAClB,CAAC,CAAC;IAEF,IAAAd,cAAM,EAAC5D,KAAK,CAAC6B,IAAI,CAAC,CAAC0C,oBAAoB,CACrCX,cAAM,CAACe,gBAAgB,CAAC;MAAER,QAAQ,EAAEY;IAAS,CAAC,CAChD,CAAC;IACD,IAAAnB,cAAM,EAAC5D,KAAK,CAACuC,IAAI,CAAC,CAACgC,oBAAoB,CACrCX,cAAM,CAACe,gBAAgB,CAAC;MAAER,QAAQ,EAAEY;IAAS,CAAC,CAChD,CAAC;EACH,CACF,CAAC;EAEDpB,UAAE,CAACiB,IAAI,CAAC,CACN;IAAEC,GAAG,EAAE,IAAI;IAAEO,OAAO,EAAE;EAAM,CAAC,EAC7B;IAAEP,GAAG,EAAE,KAAK;IAAEO,OAAO,EAAE;EAAK,CAAC,CAC9B,CAAC,CACA,qEAAqE,EACrE,OAAO;IAAEP,GAAG;IAAEO;EAAQ,CAAC,KAAK;IAC1BnF,UAAE,CAACgF,UAAU,CAAC,SAAS,EAAEJ,GAAG,CAAC;IAC7B,MAAMQ,iBAAiB,GAAGpF,UAAE,CAACM,EAAE,CAAC,YAAYuE,SAAS,CAAC;IACtD9E,KAAK,CAACU,gBAAgB,CAACwD,eAAe,CAAC;MACrCD,aAAa,EAAEhE,UAAE,CAACM,EAAE,CAAC,aAAa;QAAE8E;MAAkB,CAAC,CAAC;IAC1D,CAAU,CAAC;IACXrF,KAAK,CAACsC,YAAY,CAACgD,qBAAqB,CAAC,IAAI,CAAC;IAC9C,MAAMlF,UAAU,GAAG,MAAM0C,gBAAgB,CAAC,CAAC;IAC3C1C,UAAU,CAACyB,IAAI,CAAC;MAAElB,OAAO,EAAE;IAA8B,CAAC,CAAC;IAE3D,MAAMP,UAAU,CAACI,cAAc,CAAC;MAAEkE,cAAc,EAAE;IAAa,CAAC,CAAC;IACjE,MAAMtE,UAAU,CAACkC,YAAY,CAAC;MAC5BiD,MAAM,EAAE,CAAC,CAAC;MACVC,QAAQ,EAAE,gBAAgB;MAC1BC,gBAAgB,EAAE,eAAe;MACjCC,WAAW,EAAE,2CAA2C;MACxD1D,MAAM,EAAE;IACV,CAAC,CAAC;IAEF,IAAA4B,cAAM,EAAC5D,KAAK,CAACQ,cAAc,CAAC,CAAC+D,oBAAoB,CAC/CX,cAAM,CAACe,gBAAgB,CAAC;MAAER,QAAQ,EAAEiB;IAAQ,CAAC,CAC/C,CAAC;IACD,IAAAxB,cAAM,EAACyB,iBAAiB,CAAC,CAACM,qBAAqB,CAACP,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;EAClE,CACF,CAAC;EAED,IAAAzB,UAAE,EAAC,yDAAyD,EAAE,YAAY;IACxE,MAAMvD,UAAU,GAAG,MAAM0C,gBAAgB,CAAC,CAAC;IAE3C,IAAAc,cAAM,EAAC,MAAMxD,UAAU,CAACyB,IAAI,CAAC,CAAC,CAAU,CAAC,CAAC,CAAC+D,OAAO,CAChD,0BACF,CAAC;IACD,IAAAhC,cAAM,EAAC,MAAMxD,UAAU,CAACyB,IAAI,CAAC;MAAEgE,QAAQ,EAAE,CAAC;IAAE,CAAU,CAAC,CAAC,CAACD,OAAO,CAC9D,0BACF,CAAC;IACD,IAAAhC,cAAM,EAAC5D,KAAK,CAAC6B,IAAI,CAAC,CAACiC,GAAG,CAACW,gBAAgB,CAAC,CAAC;EAC3C,CAAC,CAAC;EAEF,IAAAd,UAAE,EAAC,+DAA+D,EAAE,MAAM;IACxE,MAAMmC,WAAW,GAAG;MAClBnF,OAAO,EAAE;IACX,CAAiC;IACjC,MAAMoF,WAAW,GAAG;MAClBpF,OAAO,EAAE,MAAAA,CAAA,KAAY,6BAA6B;MAClD+D,cAAc,EAAE;IAClB,CAA6B;IAE7B,MAAMsB,+BAA+B,GAAGA,CAAA,KAAM;MAC5C;MACA,MAAMC,cAAqC,GAAG,CAAC,CAAC;MAChD;MACA,MAAMC,cAAqC,GAAG;QAAEL,QAAQ,EAAE,CAAC;MAAE,CAAC;MAC9D,MAAMM,aAAoC,GAAG;QAC3C;QACAC,SAAS,EAAE,WAAW;QACtBzF,OAAO,EAAE;MACX,CAAC;MACD,KAAKsF,cAAc;MACnB,KAAKC,cAAc;MACnB,KAAKC,aAAa;IACpB,CAAC;IAED,IAAAvC,cAAM,EAACoC,+BAA+B,CAAC,CAACK,UAAU,CAAC,UAAU,CAAC;IAC9D,IAAAzC,cAAM,EAACkC,WAAW,CAACnF,OAAO,CAAC,CAACkD,IAAI,CAAC,6BAA6B,CAAC;IAC/D,IAAAD,cAAM,EAACmC,WAAW,CAACrB,cAAc,CAAC,CAACb,IAAI,CAAC,YAAY,CAAC;EACvD,CAAC,CAAC;EAEF,IAAAF,UAAE,EAAC,yDAAyD,EAAE,YAAY;IACxE,MAAMK,MAAM,GAAG;MAAEC,aAAa,EAAEhE,UAAE,CAACM,EAAE,CAAC;IAAE,CAAC;IACzCP,KAAK,CAACU,gBAAgB,CAACwD,eAAe,CAACF,MAAe,CAAC;IACvD,MAAMsC,YAAY,GAAGrG,UAAE,CAACM,EAAE,CAAC,CAAC;IAC5B,MAAMH,UAAU,GAAG,MAAM0C,gBAAgB,CAAC,CAAC;IAC3C1C,UAAU,CAACyB,IAAI,CAAC;MACdsC,QAAQ,EAAE,IAAI;MACdxD,OAAO,EAAE,6BAA6B;MACtCyD,cAAc,EAAE;QAAEC,aAAa,EAAE;MAAe,CAAC;MACjDC,cAAc,EAAE;IAClB,CAAC,CAAC;IAEF,MAAMlE,UAAU,CAACI,cAAc,CAAC;MAC9B+F,OAAO,EAAED,YAAY;MACrBlC,cAAc,EAAE;QAAE,WAAW,EAAE;MAAY,CAAC;MAC5CM,cAAc,EAAE;IAClB,CAAC,CAAC;IAEF,IAAAd,cAAM,EAAC5D,KAAK,CAACQ,cAAc,CAAC,CAAC+D,oBAAoB,CAAC;MAChDJ,QAAQ,EAAE,IAAI;MACdH,MAAM;MACNuC,OAAO,EAAED,YAAY;MACrBlC,cAAc,EAAE;QACdC,aAAa,EAAE,cAAc;QAC7B,WAAW,EAAE;MACf,CAAC;MACDC,cAAc,EAAE,IAAI;MACpBI,cAAc,EAAE;IAClB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,IAAAf,UAAE,EAAC,uDAAuD,EAAE,YAAY;IACtE,MAAMK,MAAM,GAAG;MAAEC,aAAa,EAAEhE,UAAE,CAACM,EAAE,CAAC;IAAE,CAAC;IACzCP,KAAK,CAACU,gBAAgB,CAACwD,eAAe,CAACF,MAAe,CAAC;IACvD,MAAM5D,UAAU,GAAG,MAAM0C,gBAAgB,CAAC,CAAC;IAE3C1C,UAAU,CAACmC,IAAI,CAAC;MACd4B,QAAQ,EAAE,IAAI;MACdxD,OAAO,EAAE,6BAA6B;MACtC+D,cAAc,EAAE;IAClB,CAAC,CAAC;IAEF,IAAAd,cAAM,EAAC5D,KAAK,CAACuC,IAAI,CAAC,CAACgC,oBAAoB,CAAC;MACtCJ,QAAQ,EAAE,IAAI;MACdH,MAAM;MACNU,cAAc,EAAE;IAClB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFf,UAAE,CAACiB,IAAI,CAAC,CACN,CAAC,MAAM,EAAE,MAAM,CAAC,EAChB,CAAC,MAAM,EAAE,MAAM,CAAC,CACR,CAAC,CACT,4CAA4C,EAC5C,OAAO4B,KAAK,EAAEC,MAAM,KAAK;IACvB,MAAMC,YAAY,GAAGzG,UAAE,CACpBiF,KAAK,CAACC,OAAO,EAAE,OAAO,CAAC,CACvB7B,kBAAkB,CAAC,MAAMwB,SAAS,CAAC;IACtC,MAAM1E,UAAU,GAAG,MAAM0C,gBAAgB,CAAC,CAAC;IAC3C,MAAM6D,SAAS,GAAIC,GAAoB,IAAK;MAC1C,IAAIA,GAAG,KAAK,MAAM,EAAE;QAClBxG,UAAU,CAACyB,IAAI,CAAC;UAAElB,OAAO,EAAE;QAA8B,CAAC,CAAC;QAC3D;MACF;MACAP,UAAU,CAACmC,IAAI,CAAC;QACd5B,OAAO,EAAE,6BAA6B;QACtC+D,cAAc,EAAE;MAClB,CAAC,CAAC;IACJ,CAAC;IAEDiC,SAAS,CAACH,KAAK,CAAC;IAChBG,SAAS,CAACF,MAAM,CAAC;IACjBE,SAAS,CAACF,MAAM,CAAC;IAEjB,IAAA7C,cAAM,EAAC8C,YAAY,CAAC,CAACG,oBAAoB,CAAC,CAAC;IAC3C,IAAAjD,cAAM,EAAC8C,YAAY,CAAC,CAACnC,oBAAoB,CACvCX,cAAM,CAACkD,gBAAgB,CACrB,mEACF,CACF,CAAC;IACD,IAAAlD,cAAM,EAAC8C,YAAY,CAAC,CAACnC,oBAAoB,CACvCX,cAAM,CAACkD,gBAAgB,CACrB,wDACF,CACF,CAAC;IACDJ,YAAY,CAACK,WAAW,CAAC,CAAC;EAC5B,CACF,CAAC;EAED,IAAApD,UAAE,EAAC,qCAAqC,EAAE,YAAY;IACpD,MAAMvD,UAAU,GAAG,MAAM0C,gBAAgB,CAAC,CAAC;IAE3C,IAAAc,cAAM,EAAC,MACLxD,UAAU,CAACmC,IAAI,CAAC;MACd5B,OAAO,EAAE,6BAA6B;MACtCqG,UAAU,EAAE;IACd,CAAU,CACZ,CAAC,CAACpB,OAAO,CAAC,uDAAuD,CAAC;EACpE,CAAC,CAAC;EAEF,IAAAjC,UAAE,EAAC,mDAAmD,EAAE,YAAY;IAClE,MAAMvD,UAAU,GAAG,MAAM0C,gBAAgB,CAAC,CAAC;IAE3C,IAAAc,cAAM,EAAC,MACLxD,UAAU,CAACI,cAAc,CAAC;MAAEkE,cAAc,EAAE;IAAa,CAAC,CAC5D,CAAC,CAACkB,OAAO,CAAC,4DAA4D,CAAC;EACzE,CAAC,CAAC;EAEF,IAAAjC,UAAE,EAAC,yCAAyC,EAAE,YAAY;IACxD,MAAMvD,UAAU,GAAG,MAAM0C,gBAAgB,CAAC,CAAC;IAE3C,IAAAc,cAAM,EAACxD,UAAU,CAACqB,YAAY,CAAC,CAAC,CAAC,CAACoC,IAAI,CAAC,YAAY,CAAC;IACpD,IAAAD,cAAM,EAACxD,UAAU,CAACuB,cAAc,CAAC,CAAC,CAAC,CAACkC,IAAI,CAAC,eAAe,CAAC;IACzDzD,UAAU,CAACiC,OAAO,CAAC;MAAE4E,MAAM,EAAE,UAAU;MAAEC,QAAQ,EAAE;IAAQ,CAAC,CAAC;IAC7D,IAAAtD,cAAM,EAAC5D,KAAK,CAACqC,OAAO,CAAC,CAACkC,oBAAoB,CAAC;MACzC0C,MAAM,EAAE,UAAU;MAClBC,QAAQ,EAAE;IACZ,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_vitest","require","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","mocks","vi","hoisted","globalThis","HotUpdater","SDK_VERSION","addListener","fn","checkForUpdate","clearCrashHistory","createHttpClient","baseURL","getActiveUpdateState","activeSelection","highestSeenCatalogs","stableSelection","verificationPending","getAppVersion","getBaseURL","getUpdateId","getChannel","getCohort","getCrashHistory","getDefaultChannel","getFingerprintHash","getInstallId","getManifest","getMinBundleId","configurePlugins","emitAfterAppReady","reportUpdateError","init","isChannelSwitched","notifyAppReady","status","reload","resetChannel","setCohort","setReloadBehavior","stageBundle","wrap","Component","mock","Platform","OS","getPublicActiveUpdateState","getBundleId","importHotUpdater","Promise","resolve","then","describe","beforeEach","resetModules","clearAllMocks","mockImplementation","mockResolvedValue","afterEach","unstubAllGlobals","restoreAllMocks","it","expect","toBe","not","toHaveProperty","client","createSession","mockReturnValue","requestHeaders","Authorization","requestTimeout","toHaveBeenCalledWith","resolveBaseURL","toHaveBeenCalled","plugin","id","setup","onError","mockImplementationOnce","toHaveBeenCalledOnce","plugins","updateStrategy","toHaveBeenNthCalledWith","undefined","objectContaining","anything","mockResolvedValueOnce","delivery","patchFallback","bundleId","channel","kind","releaseId","scopeKey","updateBundle","assets","manifestFileHash","manifestUrl","name","createPayload","calls","toEqual","fromBundleId","fromReleaseId","toBundleId","toReleaseId","error","assign","Error","code","userInfo","reason","stage","mockRejectedValueOnce","selection","rejects","targetBundleId","targetReleaseId","toThrow","resolver","initOptions","wrapOptions","assertRemovedInputsStayRejected","missingBaseURL","customResolver","clientCatalog","catalogId","toBeTypeOf","checkOnError","each","first","second","consoleError","spyOn","console","configure","api","stringContaining","mockRestore","updateMode"],"sourceRoot":"../../src","sources":["index.spec.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/native.js
CHANGED
|
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "HotUpdaterErrorCode", {
|
|
|
9
9
|
return _error.HotUpdaterErrorCode;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
-
exports.isChannelSwitched = exports.getUpdateId = exports.
|
|
12
|
+
exports.isChannelSwitched = exports.getUpdateId = exports.getStorageItem = exports.getPublicActiveUpdateState = exports.getMinBundleId = exports.getManifest = exports.getInstallId = exports.getFingerprintHash = exports.getDefaultChannel = exports.getCrashHistory = exports.getCohort = exports.getChannel = exports.getBundleId = exports.getBaseURL = exports.getAppVersion = exports.getActiveUpdateState = exports.commitReleaseSelection = exports.clearCrashHistory = exports.addListener = exports.acceptReleaseCatalog = void 0;
|
|
13
13
|
Object.defineProperty(exports, "isHotUpdaterError", {
|
|
14
14
|
enumerable: true,
|
|
15
15
|
get: function () {
|
|
@@ -18,7 +18,8 @@ Object.defineProperty(exports, "isHotUpdaterError", {
|
|
|
18
18
|
});
|
|
19
19
|
exports.setCohort = exports.resetChannel = exports.reload = exports.readNotifyAppReady = exports.notifyAppReady = exports.isReleaseSelectionCurrent = void 0;
|
|
20
20
|
exports.setReloadBehavior = setReloadBehavior;
|
|
21
|
-
exports.
|
|
21
|
+
exports.setStorageItem = void 0;
|
|
22
|
+
exports.stageBundle = stageBundle;
|
|
22
23
|
exports.updateBundle = updateBundle;
|
|
23
24
|
var _core = require("@hot-updater/core");
|
|
24
25
|
var _reactNative = require("react-native");
|
|
@@ -213,15 +214,31 @@ const commitReleaseSelection = async input => {
|
|
|
213
214
|
return ok;
|
|
214
215
|
};
|
|
215
216
|
|
|
217
|
+
/** How native delivered a staged bundle. */
|
|
218
|
+
exports.commitReleaseSelection = commitReleaseSelection;
|
|
219
|
+
const readBundleDelivery = value => {
|
|
220
|
+
if (typeof value !== "object" || value === null) return null;
|
|
221
|
+
const {
|
|
222
|
+
delivery,
|
|
223
|
+
patchFallback
|
|
224
|
+
} = value;
|
|
225
|
+
if (delivery !== "patch" && delivery !== "manifest" && delivery !== "archive") {
|
|
226
|
+
return null;
|
|
227
|
+
}
|
|
228
|
+
return {
|
|
229
|
+
delivery,
|
|
230
|
+
patchFallback: patchFallback === true
|
|
231
|
+
};
|
|
232
|
+
};
|
|
233
|
+
|
|
216
234
|
/**
|
|
217
|
-
*
|
|
235
|
+
* Stages a bundle for the next launch. Resolves with how native delivered
|
|
236
|
+
* it, or with null when this runtime had already staged it and nothing was
|
|
237
|
+
* downloaded; rejects when the download or install fails.
|
|
218
238
|
*
|
|
219
|
-
* @param {UpdateParams} params - Parameters object required for bundle update
|
|
220
|
-
* @returns {Promise<boolean>} Resolves with true if download was successful
|
|
221
239
|
* @throws {Error} Rejects with error.code from HotUpdaterErrorCode enum and error.message
|
|
222
240
|
*/
|
|
223
|
-
|
|
224
|
-
async function updateBundle(params) {
|
|
241
|
+
async function stageBundle(params) {
|
|
225
242
|
const updateBundleId = params.bundleId;
|
|
226
243
|
const status = params.status;
|
|
227
244
|
const currentBundleId = status === "UPDATE" ? getFreshBundleId() : undefined;
|
|
@@ -230,7 +247,7 @@ async function updateBundle(params) {
|
|
|
230
247
|
// skip re-download. Native state can move back to the built-in bundle after
|
|
231
248
|
// rollback/reset, so check a fresh native bundle id before using this guard.
|
|
232
249
|
if (status === "UPDATE" && sessionState.hasInstalledBundle(updateBundleId) && currentBundleId === updateBundleId) {
|
|
233
|
-
return
|
|
250
|
+
return null;
|
|
234
251
|
}
|
|
235
252
|
const shouldSkipCurrentBundleIdCheck = params.shouldSkipCurrentBundleIdCheck === true;
|
|
236
253
|
if (!shouldSkipCurrentBundleIdCheck && status === "UPDATE" && currentBundleId !== undefined && updateBundleId.localeCompare(currentBundleId) <= 0) {
|
|
@@ -247,7 +264,7 @@ async function updateBundle(params) {
|
|
|
247
264
|
const promise = (async () => {
|
|
248
265
|
try {
|
|
249
266
|
const selection = params.selection;
|
|
250
|
-
const
|
|
267
|
+
const staged = await _NativeHotUpdater.default.updateBundle({
|
|
251
268
|
bundleId: updateBundleId,
|
|
252
269
|
channel: targetChannel,
|
|
253
270
|
assets: targetAssets,
|
|
@@ -260,10 +277,8 @@ async function updateBundle(params) {
|
|
|
260
277
|
selection
|
|
261
278
|
})
|
|
262
279
|
});
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
}
|
|
266
|
-
return ok;
|
|
280
|
+
sessionState.markBundleInstalled(updateBundleId, targetChannel);
|
|
281
|
+
return readBundleDelivery(staged);
|
|
267
282
|
} finally {
|
|
268
283
|
sessionState.clearInflightUpdate(updateBundleId);
|
|
269
284
|
}
|
|
@@ -272,6 +287,18 @@ async function updateBundle(params) {
|
|
|
272
287
|
return promise;
|
|
273
288
|
}
|
|
274
289
|
|
|
290
|
+
/**
|
|
291
|
+
* Downloads files and applies them to the app.
|
|
292
|
+
*
|
|
293
|
+
* @param {UpdateParams} params - Parameters object required for bundle update
|
|
294
|
+
* @returns {Promise<boolean>} Resolves with true if download was successful
|
|
295
|
+
* @throws {Error} Rejects with error.code from HotUpdaterErrorCode enum and error.message
|
|
296
|
+
*/
|
|
297
|
+
async function updateBundle(params) {
|
|
298
|
+
await stageBundle(params);
|
|
299
|
+
return true;
|
|
300
|
+
}
|
|
301
|
+
|
|
275
302
|
/**
|
|
276
303
|
* Fetches the current app version.
|
|
277
304
|
*/
|
|
@@ -455,40 +482,32 @@ const getInstallId = () => {
|
|
|
455
482
|
return nativeModule.getInstallId();
|
|
456
483
|
};
|
|
457
484
|
exports.getInstallId = getInstallId;
|
|
458
|
-
const
|
|
459
|
-
const
|
|
460
|
-
if (typeof
|
|
461
|
-
throw new Error(
|
|
485
|
+
const requireStorageNativeMethod = name => {
|
|
486
|
+
const method = _NativeHotUpdater.default[name];
|
|
487
|
+
if (typeof method !== "function") {
|
|
488
|
+
throw new Error(`[HotUpdater] Native module is missing '${name}()'. This JS bundle requires a newer native @hot-updater/react-native SDK. Rebuild and release a new app version before delivering this OTA update.`);
|
|
462
489
|
}
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
490
|
+
return method.bind(_NativeHotUpdater.default);
|
|
491
|
+
};
|
|
492
|
+
|
|
493
|
+
/** Reads a value from the SDK's native key-value store. */
|
|
494
|
+
const getStorageItem = key => {
|
|
495
|
+
const value = requireStorageNativeMethod("getStorageItem")(key);
|
|
496
|
+
return typeof value === "string" ? value : null;
|
|
497
|
+
};
|
|
498
|
+
|
|
499
|
+
/** Writes a value to the SDK's native key-value store; null removes it. */
|
|
500
|
+
exports.getStorageItem = getStorageItem;
|
|
501
|
+
const setStorageItem = (key, value) => {
|
|
502
|
+
requireStorageNativeMethod("setStorageItem")(key, value);
|
|
473
503
|
};
|
|
474
|
-
exports.getPersistedUserIdentity = getPersistedUserIdentity;
|
|
475
|
-
function setUser(params) {
|
|
476
|
-
const nativeModule = _NativeHotUpdater.default;
|
|
477
|
-
if (typeof nativeModule.setUser !== "function") {
|
|
478
|
-
throw new Error("[HotUpdater] Native module is missing 'setUser()'. This JS bundle requires a newer native @hot-updater/react-native SDK. Rebuild and release a new app version before delivering this OTA update.");
|
|
479
|
-
}
|
|
480
|
-
if (params === null) {
|
|
481
|
-
nativeModule.setUser(null, null);
|
|
482
|
-
return;
|
|
483
|
-
}
|
|
484
|
-
const normalizedUserId = params.userId === null || params.userId === undefined ? null : String(params.userId);
|
|
485
|
-
nativeModule.setUser(normalizedUserId, params.username ?? null);
|
|
486
|
-
}
|
|
487
504
|
|
|
488
505
|
/**
|
|
489
506
|
* Result returned by notifyAppReady()
|
|
490
507
|
*/
|
|
491
508
|
|
|
509
|
+
/** An update applied or recovered at this launch, as native persisted it. */
|
|
510
|
+
exports.setStorageItem = setStorageItem;
|
|
492
511
|
const isPersistedUpdateStrategy = value => {
|
|
493
512
|
return value === "appVersion" || value === "fingerprint";
|
|
494
513
|
};
|
|
@@ -554,7 +573,7 @@ const getNotifyAppReadyTransition = result => {
|
|
|
554
573
|
}
|
|
555
574
|
return null;
|
|
556
575
|
};
|
|
557
|
-
const
|
|
576
|
+
const getLaunchTransition = result => {
|
|
558
577
|
const transition = getNotifyAppReadyTransition(result);
|
|
559
578
|
if (!transition || !isPersistedUpdateStrategy(result.updateStrategy)) {
|
|
560
579
|
return null;
|
|
@@ -563,12 +582,8 @@ const getNotifyAppReadyInsightsEvent = result => {
|
|
|
563
582
|
type: transition.status,
|
|
564
583
|
fromBundleId: transition.fromBundleId,
|
|
565
584
|
toBundleId: transition.toBundleId,
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
}),
|
|
569
|
-
...(transition.toReleaseId === null ? {} : {
|
|
570
|
-
toReleaseId: transition.toReleaseId
|
|
571
|
-
}),
|
|
585
|
+
fromReleaseId: transition.fromReleaseId,
|
|
586
|
+
toReleaseId: transition.toReleaseId,
|
|
572
587
|
updateStrategy: result.updateStrategy
|
|
573
588
|
};
|
|
574
589
|
};
|
|
@@ -593,9 +608,13 @@ const normalizeNotifyAppReadyResult = result => {
|
|
|
593
608
|
};
|
|
594
609
|
const readNotifyAppReady = () => {
|
|
595
610
|
const rawResult = readRawNotifyAppReadyResult();
|
|
611
|
+
const {
|
|
612
|
+
previousProcessExit
|
|
613
|
+
} = rawResult;
|
|
596
614
|
return {
|
|
597
615
|
result: normalizeNotifyAppReadyResult(rawResult),
|
|
598
|
-
|
|
616
|
+
transition: getLaunchTransition(rawResult),
|
|
617
|
+
previousProcessExit: typeof previousProcessExit === "string" && previousProcessExit !== "" ? previousProcessExit : null,
|
|
599
618
|
pending: rawResult.status === "PENDING"
|
|
600
619
|
};
|
|
601
620
|
};
|