@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
|
@@ -1,18 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _core = require("@hot-updater/core");
|
|
4
3
|
var _vitest = require("vitest");
|
|
5
4
|
var _fetchJSON = require("./fetchJSON.js");
|
|
6
5
|
var _httpClient = require("./httpClient.js");
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
fetchCatalog: _vitest.vi.fn(),
|
|
13
|
-
fetchJSON: _vitest.vi.fn()
|
|
14
|
-
};
|
|
15
|
-
});
|
|
6
|
+
var _updateError = require("./updateError.js");
|
|
7
|
+
const mocks = _vitest.vi.hoisted(() => ({
|
|
8
|
+
fetchCatalog: _vitest.vi.fn(),
|
|
9
|
+
fetchJSON: _vitest.vi.fn()
|
|
10
|
+
}));
|
|
16
11
|
_vitest.vi.mock("./releaseCatalogCache", () => ({
|
|
17
12
|
fetchReleaseCatalogWithCache: mocks.fetchCatalog
|
|
18
13
|
}));
|
|
@@ -148,197 +143,29 @@ const catalog = {
|
|
|
148
143
|
targetBundleId: "target"
|
|
149
144
|
})).rejects.toThrow("does not support artifact protocol 1");
|
|
150
145
|
});
|
|
146
|
+
_vitest.it.each([{
|
|
147
|
+
label: "a legacy response",
|
|
148
|
+
response: {
|
|
149
|
+
fileUrl: "/storage/a.zip"
|
|
150
|
+
}
|
|
151
|
+
}, {
|
|
152
|
+
label: "an invalid absolute URL",
|
|
153
|
+
response: {
|
|
154
|
+
...artifact,
|
|
155
|
+
manifestUrl: "https://"
|
|
156
|
+
}
|
|
157
|
+
}])("marks $label as an invalid update response", async ({
|
|
158
|
+
response
|
|
159
|
+
}) => {
|
|
160
|
+
mocks.fetchJSON.mockResolvedValue(response);
|
|
161
|
+
const session = await (0, _httpClient.createHttpClient)("https://updates.example.com").createSession();
|
|
162
|
+
await (0, _vitest.expect)(session.resolveArtifact({
|
|
163
|
+
currentBundleId: "current",
|
|
164
|
+
targetBundleId: "target"
|
|
165
|
+
})).rejects.toBeInstanceOf(_updateError.InvalidUpdateResponseError);
|
|
166
|
+
});
|
|
151
167
|
(0, _vitest.it)("requires a functional baseURL to resolve to a non-empty string", async () => {
|
|
152
168
|
await (0, _vitest.expect)((0, _httpClient.createHttpClient)(() => "").createSession()).rejects.toThrow("baseURL function must return a non-empty string");
|
|
153
169
|
});
|
|
154
170
|
});
|
|
155
|
-
const unchangedEvent = {
|
|
156
|
-
appVersion: "1.0.0",
|
|
157
|
-
channel: "production",
|
|
158
|
-
cohort: "123",
|
|
159
|
-
fingerprintHash: null,
|
|
160
|
-
fromBundleId: null,
|
|
161
|
-
installId: "install-id",
|
|
162
|
-
platform: "ios",
|
|
163
|
-
toBundleId: "bundle-id",
|
|
164
|
-
type: "UNCHANGED",
|
|
165
|
-
updateStrategy: null
|
|
166
|
-
};
|
|
167
|
-
|
|
168
|
-
/** Answers each POST /events with the next response, then 204. */
|
|
169
|
-
const stubEventsEndpoint = (...responses) => {
|
|
170
|
-
const fetchMock = _vitest.vi.fn(async () => {
|
|
171
|
-
const next = responses.shift() ?? 204;
|
|
172
|
-
if (next instanceof Error) throw next;
|
|
173
|
-
return typeof next === "number" ? new Response(null, {
|
|
174
|
-
status: next
|
|
175
|
-
}) : next;
|
|
176
|
-
});
|
|
177
|
-
_vitest.vi.stubGlobal("fetch", fetchMock);
|
|
178
|
-
const sentEvents = () => fetchMock.mock.calls.map(([, request]) => JSON.parse(String(request?.body)));
|
|
179
|
-
return {
|
|
180
|
-
fetchMock,
|
|
181
|
-
sentEvents
|
|
182
|
-
};
|
|
183
|
-
};
|
|
184
|
-
(0, _vitest.describe)("Insights event delivery", () => {
|
|
185
|
-
(0, _vitest.beforeEach)(() => {
|
|
186
|
-
_vitest.vi.useFakeTimers();
|
|
187
|
-
// No jitter: the first retry waits exactly 1 s and the second 2 s.
|
|
188
|
-
_vitest.vi.spyOn(Math, "random").mockReturnValue(0.5);
|
|
189
|
-
});
|
|
190
|
-
(0, _vitest.afterEach)(() => {
|
|
191
|
-
_vitest.vi.useRealTimers();
|
|
192
|
-
_vitest.vi.unstubAllGlobals();
|
|
193
|
-
_vitest.vi.restoreAllMocks();
|
|
194
|
-
});
|
|
195
|
-
const createSession = () => (0, _httpClient.createHttpClient)("https://updates.example.com").createSession();
|
|
196
|
-
(0, _vitest.it)("retries a 503 in the background under the same UUIDv7 eventId", async () => {
|
|
197
|
-
const {
|
|
198
|
-
fetchMock,
|
|
199
|
-
sentEvents
|
|
200
|
-
} = stubEventsEndpoint(503, 204);
|
|
201
|
-
const session = await createSession();
|
|
202
|
-
|
|
203
|
-
// Settles after the failed first attempt, without waiting for the retry.
|
|
204
|
-
await session.sendInsightsEvent(unchangedEvent);
|
|
205
|
-
(0, _vitest.expect)(fetchMock).toHaveBeenCalledOnce();
|
|
206
|
-
await _vitest.vi.advanceTimersByTimeAsync(1_000);
|
|
207
|
-
(0, _vitest.expect)(fetchMock).toHaveBeenCalledTimes(2);
|
|
208
|
-
const [first, second] = sentEvents();
|
|
209
|
-
(0, _vitest.expect)((0, _core.isUUIDv7)(first?.eventId)).toBe(true);
|
|
210
|
-
(0, _vitest.expect)(second?.eventId).toBe(first?.eventId);
|
|
211
|
-
});
|
|
212
|
-
(0, _vitest.it)("waits for a 429's Retry-After before the next attempt", async () => {
|
|
213
|
-
const {
|
|
214
|
-
fetchMock
|
|
215
|
-
} = stubEventsEndpoint(new Response(null, {
|
|
216
|
-
headers: {
|
|
217
|
-
"Retry-After": "7"
|
|
218
|
-
},
|
|
219
|
-
status: 429
|
|
220
|
-
}));
|
|
221
|
-
const session = await createSession();
|
|
222
|
-
await session.sendInsightsEvent(unchangedEvent);
|
|
223
|
-
await _vitest.vi.advanceTimersByTimeAsync(6_999);
|
|
224
|
-
(0, _vitest.expect)(fetchMock).toHaveBeenCalledOnce();
|
|
225
|
-
await _vitest.vi.advanceTimersByTimeAsync(1);
|
|
226
|
-
(0, _vitest.expect)(fetchMock).toHaveBeenCalledTimes(2);
|
|
227
|
-
});
|
|
228
|
-
(0, _vitest.it)("caps a server's Retry-After at 30 seconds", async () => {
|
|
229
|
-
const {
|
|
230
|
-
fetchMock
|
|
231
|
-
} = stubEventsEndpoint(new Response(null, {
|
|
232
|
-
headers: {
|
|
233
|
-
"Retry-After": "3600"
|
|
234
|
-
},
|
|
235
|
-
status: 503
|
|
236
|
-
}));
|
|
237
|
-
const session = await createSession();
|
|
238
|
-
await session.sendInsightsEvent(unchangedEvent);
|
|
239
|
-
await _vitest.vi.advanceTimersByTimeAsync(29_999);
|
|
240
|
-
(0, _vitest.expect)(fetchMock).toHaveBeenCalledOnce();
|
|
241
|
-
await _vitest.vi.advanceTimersByTimeAsync(1);
|
|
242
|
-
(0, _vitest.expect)(fetchMock).toHaveBeenCalledTimes(2);
|
|
243
|
-
});
|
|
244
|
-
(0, _vitest.it)("does not retry a 400", async () => {
|
|
245
|
-
const {
|
|
246
|
-
fetchMock
|
|
247
|
-
} = stubEventsEndpoint(400);
|
|
248
|
-
const session = await createSession();
|
|
249
|
-
await (0, _vitest.expect)(session.sendInsightsEvent(unchangedEvent)).rejects.toThrow("Expected HTTP 204 from /events, received 400");
|
|
250
|
-
await _vitest.vi.runAllTimersAsync();
|
|
251
|
-
(0, _vitest.expect)(fetchMock).toHaveBeenCalledOnce();
|
|
252
|
-
});
|
|
253
|
-
(0, _vitest.it)("stops after three attempts and warns once", async () => {
|
|
254
|
-
const warn = _vitest.vi.spyOn(console, "warn").mockImplementation(() => {});
|
|
255
|
-
const {
|
|
256
|
-
fetchMock
|
|
257
|
-
} = stubEventsEndpoint(500, new Error("network unavailable"), 503);
|
|
258
|
-
const session = await createSession();
|
|
259
|
-
await session.sendInsightsEvent(unchangedEvent);
|
|
260
|
-
await _vitest.vi.runAllTimersAsync();
|
|
261
|
-
(0, _vitest.expect)(fetchMock).toHaveBeenCalledTimes(3);
|
|
262
|
-
(0, _vitest.expect)(warn).toHaveBeenCalledExactlyOnceWith("[HotUpdater] Insights UNCHANGED event was not delivered:", _vitest.expect.objectContaining({
|
|
263
|
-
message: "Expected HTTP 204 from /events, received 503"
|
|
264
|
-
}));
|
|
265
|
-
});
|
|
266
|
-
(0, _vitest.it)("gives each attempt its own timeout", async () => {
|
|
267
|
-
const warn = _vitest.vi.spyOn(console, "warn").mockImplementation(() => {});
|
|
268
|
-
const fetchMock = _vitest.vi.fn((_input, request) => new Promise((_resolve, reject) => {
|
|
269
|
-
request?.signal?.addEventListener("abort", () => {
|
|
270
|
-
reject(Object.assign(new Error("aborted"), {
|
|
271
|
-
name: "AbortError"
|
|
272
|
-
}));
|
|
273
|
-
});
|
|
274
|
-
}));
|
|
275
|
-
_vitest.vi.stubGlobal("fetch", fetchMock);
|
|
276
|
-
const session = await createSession();
|
|
277
|
-
const sent = session.sendInsightsEvent({
|
|
278
|
-
...unchangedEvent,
|
|
279
|
-
requestTimeout: 2_000
|
|
280
|
-
});
|
|
281
|
-
await _vitest.vi.advanceTimersByTimeAsync(2_000);
|
|
282
|
-
await sent;
|
|
283
|
-
// The second attempt starts after a 1 s backoff and gets a full 2 s.
|
|
284
|
-
await _vitest.vi.advanceTimersByTimeAsync(1_000);
|
|
285
|
-
(0, _vitest.expect)(fetchMock).toHaveBeenCalledTimes(2);
|
|
286
|
-
const secondSignal = fetchMock.mock.calls[1]?.[1]?.signal;
|
|
287
|
-
await _vitest.vi.advanceTimersByTimeAsync(1_999);
|
|
288
|
-
(0, _vitest.expect)(secondSignal?.aborted).toBe(false);
|
|
289
|
-
await _vitest.vi.advanceTimersByTimeAsync(1);
|
|
290
|
-
(0, _vitest.expect)(secondSignal?.aborted).toBe(true);
|
|
291
|
-
await _vitest.vi.runAllTimersAsync();
|
|
292
|
-
(0, _vitest.expect)(fetchMock).toHaveBeenCalledTimes(3);
|
|
293
|
-
(0, _vitest.expect)(warn).toHaveBeenCalledExactlyOnceWith("[HotUpdater] Insights UNCHANGED event was not delivered:", _vitest.expect.objectContaining({
|
|
294
|
-
message: "Request timed out"
|
|
295
|
-
}));
|
|
296
|
-
});
|
|
297
|
-
(0, _vitest.it)("sends a later event after an earlier event's retries without holding its caller", async () => {
|
|
298
|
-
const {
|
|
299
|
-
fetchMock,
|
|
300
|
-
sentEvents
|
|
301
|
-
} = stubEventsEndpoint(503);
|
|
302
|
-
const session = await createSession();
|
|
303
|
-
await session.sendInsightsEvent(unchangedEvent);
|
|
304
|
-
await session.sendInsightsEvent({
|
|
305
|
-
...unchangedEvent,
|
|
306
|
-
fromBundleId: "bundle-id",
|
|
307
|
-
toBundleId: "next-bundle-id",
|
|
308
|
-
type: "UPDATE_DOWNLOADED",
|
|
309
|
-
updateStrategy: "appVersion"
|
|
310
|
-
});
|
|
311
|
-
(0, _vitest.expect)(fetchMock).toHaveBeenCalledOnce();
|
|
312
|
-
await _vitest.vi.runAllTimersAsync();
|
|
313
|
-
const [first, retry, later] = sentEvents();
|
|
314
|
-
(0, _vitest.expect)([first?.type, retry?.type, later?.type]).toEqual(["UNCHANGED", "UNCHANGED", "UPDATE_DOWNLOADED"]);
|
|
315
|
-
(0, _vitest.expect)(retry?.eventId).toBe(first?.eventId);
|
|
316
|
-
(0, _vitest.expect)(later?.eventId).not.toBe(first?.eventId);
|
|
317
|
-
});
|
|
318
|
-
(0, _vitest.it)("keeps sending events after one fails outside its requests", async () => {
|
|
319
|
-
_vitest.vi.spyOn(console, "warn").mockImplementation(() => {
|
|
320
|
-
throw new Error("console unavailable");
|
|
321
|
-
});
|
|
322
|
-
const {
|
|
323
|
-
fetchMock,
|
|
324
|
-
sentEvents
|
|
325
|
-
} = stubEventsEndpoint(500, 500, 500);
|
|
326
|
-
const session = await createSession();
|
|
327
|
-
await session.sendInsightsEvent(unchangedEvent);
|
|
328
|
-
await _vitest.vi.runAllTimersAsync();
|
|
329
|
-
(0, _vitest.expect)(fetchMock).toHaveBeenCalledTimes(3);
|
|
330
|
-
|
|
331
|
-
// A queue left rejected would never send this event or settle its caller.
|
|
332
|
-
await session.sendInsightsEvent({
|
|
333
|
-
...unchangedEvent,
|
|
334
|
-
fromBundleId: "bundle-id",
|
|
335
|
-
toBundleId: "next-bundle-id",
|
|
336
|
-
type: "UPDATE_DOWNLOADED",
|
|
337
|
-
updateStrategy: "appVersion"
|
|
338
|
-
});
|
|
339
|
-
(0, _vitest.expect)(sentEvents().map(({
|
|
340
|
-
type
|
|
341
|
-
}) => type)).toEqual(["UNCHANGED", "UNCHANGED", "UNCHANGED", "UPDATE_DOWNLOADED"]);
|
|
342
|
-
});
|
|
343
|
-
});
|
|
344
171
|
//# sourceMappingURL=httpClient.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_core","require","_vitest","_fetchJSON","_httpClient","mocks","vi","hoisted","Reflect","set","globalThis","SDK_VERSION","fetchCatalog","fn","fetchJSON","mock","fetchReleaseCatalogWithCache","FetchJSONResponseError","Error","constructor","status","statusText","artifact","artifactProtocolVersion","assets","file","url","fileHash","manifestFileHash","manifestUrl","archiveUrl","catalog","catalogId","catalogHash","repeat","fallbackPolicy","generation","releases","schemaVersion","scopeKey","describe","beforeEach","clearAllMocks","mockResolvedValue","it","session","createHttpClient","createSession","expect","fetchReleaseCatalog","appVersion","channel","fingerprintHash","platform","updateStrategy","resolves","toBe","toHaveBeenCalledWith","baseURL","expectedScope","channelKey","strategy","requestHeaders","undefined","requestTimeout","resolveBaseURL","mockResolvedValueOnce","client","firstSession","resolveArtifact","currentBundleId","targetBundleId","toEqual","toHaveBeenCalledOnce","toHaveBeenCalledTimes","rejects","toThrow","fileUrl","mockRejectedValue","unchangedEvent","cohort","fromBundleId","installId","toBundleId","type","stubEventsEndpoint","responses","fetchMock","next","shift","Response","stubGlobal","sentEvents","calls","map","request","JSON","parse","String","body","useFakeTimers","spyOn","Math","mockReturnValue","afterEach","useRealTimers","unstubAllGlobals","restoreAllMocks","sendInsightsEvent","advanceTimersByTimeAsync","first","second","isUUIDv7","eventId","headers","runAllTimersAsync","warn","console","mockImplementation","toHaveBeenCalledExactlyOnceWith","objectContaining","message","_input","Promise","_resolve","reject","signal","addEventListener","Object","assign","name","sent","secondSignal","aborted","retry","later","not"],"sourceRoot":"../../src","sources":["httpClient.spec.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_vitest","require","_fetchJSON","_httpClient","_updateError","mocks","vi","hoisted","fetchCatalog","fn","fetchJSON","mock","fetchReleaseCatalogWithCache","FetchJSONResponseError","Error","constructor","status","statusText","artifact","artifactProtocolVersion","assets","file","url","fileHash","manifestFileHash","manifestUrl","archiveUrl","catalog","catalogId","catalogHash","repeat","fallbackPolicy","generation","releases","schemaVersion","scopeKey","describe","beforeEach","clearAllMocks","mockResolvedValue","it","session","createHttpClient","createSession","expect","fetchReleaseCatalog","appVersion","channel","fingerprintHash","platform","updateStrategy","resolves","toBe","toHaveBeenCalledWith","baseURL","expectedScope","channelKey","strategy","requestHeaders","undefined","requestTimeout","resolveBaseURL","mockResolvedValueOnce","client","firstSession","resolveArtifact","currentBundleId","targetBundleId","toEqual","toHaveBeenCalledOnce","toHaveBeenCalledTimes","rejects","toThrow","fileUrl","mockRejectedValue","each","label","response","toBeInstanceOf","InvalidUpdateResponseError"],"sourceRoot":"../../src","sources":["httpClient.spec.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/index.js
CHANGED
|
@@ -5,10 +5,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
var _exportNames = {
|
|
7
7
|
HotUpdater: true,
|
|
8
|
+
defineClientPlugin: true,
|
|
8
9
|
extractSignatureFailure: true,
|
|
9
10
|
isSignatureVerificationError: true
|
|
10
11
|
};
|
|
11
12
|
exports.HotUpdater = void 0;
|
|
13
|
+
Object.defineProperty(exports, "defineClientPlugin", {
|
|
14
|
+
enumerable: true,
|
|
15
|
+
get: function () {
|
|
16
|
+
return _clientPlugin.defineClientPlugin;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
12
19
|
Object.defineProperty(exports, "extractSignatureFailure", {
|
|
13
20
|
enumerable: true,
|
|
14
21
|
get: function () {
|
|
@@ -21,10 +28,11 @@ Object.defineProperty(exports, "isSignatureVerificationError", {
|
|
|
21
28
|
return _types.isSignatureVerificationError;
|
|
22
29
|
}
|
|
23
30
|
});
|
|
31
|
+
var _appReady = require("./appReady.js");
|
|
24
32
|
var _checkForUpdate = require("./checkForUpdate.js");
|
|
25
33
|
var _httpClient = require("./httpClient.js");
|
|
26
34
|
var _native = require("./native.js");
|
|
27
|
-
var
|
|
35
|
+
var _pluginHost = require("./pluginHost.js");
|
|
28
36
|
var _store = require("./store.js");
|
|
29
37
|
Object.keys(_store).forEach(function (key) {
|
|
30
38
|
if (key === "default" || key === "__esModule") return;
|
|
@@ -38,6 +46,7 @@ Object.keys(_store).forEach(function (key) {
|
|
|
38
46
|
});
|
|
39
47
|
});
|
|
40
48
|
var _wrap = require("./wrap.js");
|
|
49
|
+
var _clientPlugin = require("./clientPlugin.js");
|
|
41
50
|
var _types = require("./types.js");
|
|
42
51
|
/**
|
|
43
52
|
* Register getBaseURL to global objects for use without imports.
|
|
@@ -56,17 +65,6 @@ const registerGlobalGetBaseURL = () => {
|
|
|
56
65
|
|
|
57
66
|
// Call registration immediately on module load
|
|
58
67
|
registerGlobalGetBaseURL();
|
|
59
|
-
/**
|
|
60
|
-
* Debug builds report only with `insights: { debug: true }`, so development
|
|
61
|
-
* sessions do not mix into production Insights. `__DEV__` is defined only in
|
|
62
|
-
* a React Native bundle; anywhere else, such as unit tests, counts as release.
|
|
63
|
-
*/
|
|
64
|
-
const resolveInsights = insights => {
|
|
65
|
-
if (insights === false) return false;
|
|
66
|
-
const isDebugBuild = typeof __DEV__ !== "undefined" && __DEV__;
|
|
67
|
-
return !isDebugBuild || typeof insights === "object" && insights?.debug === true;
|
|
68
|
-
};
|
|
69
|
-
|
|
70
68
|
/**
|
|
71
69
|
* Creates a HotUpdater client instance with all update management methods.
|
|
72
70
|
* This function is called once on module initialization to create a singleton instance.
|
|
@@ -77,7 +75,6 @@ function createHotUpdaterClient() {
|
|
|
77
75
|
|
|
78
76
|
// Global configuration stored from wrap
|
|
79
77
|
const globalConfig = {
|
|
80
|
-
insights: true,
|
|
81
78
|
client: null
|
|
82
79
|
};
|
|
83
80
|
const createMissingNetworkConfigError = apiName => {
|
|
@@ -96,11 +93,11 @@ function createHotUpdaterClient() {
|
|
|
96
93
|
if (autoOptions.baseURL) {
|
|
97
94
|
const {
|
|
98
95
|
baseURL,
|
|
96
|
+
plugins: _plugins,
|
|
99
97
|
...rest
|
|
100
98
|
} = autoOptions;
|
|
101
99
|
return {
|
|
102
100
|
...rest,
|
|
103
|
-
insights: resolveInsights(rest.insights),
|
|
104
101
|
client: (0, _httpClient.createHttpClient)(baseURL)
|
|
105
102
|
};
|
|
106
103
|
}
|
|
@@ -114,18 +111,24 @@ function createHotUpdaterClient() {
|
|
|
114
111
|
if (rest.baseURL) {
|
|
115
112
|
const {
|
|
116
113
|
baseURL,
|
|
114
|
+
plugins: _plugins,
|
|
117
115
|
...baseURLRest
|
|
118
116
|
} = rest;
|
|
119
117
|
return {
|
|
120
118
|
...baseURLRest,
|
|
121
|
-
insights: resolveInsights(baseURLRest.insights),
|
|
122
119
|
client: (0, _httpClient.createHttpClient)(baseURL)
|
|
123
120
|
};
|
|
124
121
|
}
|
|
125
122
|
throw createMissingNetworkConfigError("init");
|
|
126
123
|
};
|
|
127
124
|
const configureGlobal = (normalizedOptions, options) => {
|
|
128
|
-
|
|
125
|
+
// Plugins are set up before init or wrap reads the launch they observe.
|
|
126
|
+
(0, _pluginHost.configurePlugins)(options.plugins, {
|
|
127
|
+
baseURL: options.baseURL,
|
|
128
|
+
requestHeaders: options.requestHeaders,
|
|
129
|
+
requestTimeout: options.requestTimeout,
|
|
130
|
+
onError: options.onError
|
|
131
|
+
});
|
|
129
132
|
globalConfig.client = normalizedOptions.client;
|
|
130
133
|
globalConfig.requestHeaders = options.requestHeaders;
|
|
131
134
|
globalConfig.requestTimeout = options.requestTimeout;
|
|
@@ -338,7 +341,6 @@ function createHotUpdaterClient() {
|
|
|
338
341
|
const client = ensureGlobalClient("checkForUpdate");
|
|
339
342
|
const mergedConfig = {
|
|
340
343
|
...config,
|
|
341
|
-
insights: globalConfig.insights,
|
|
342
344
|
client,
|
|
343
345
|
requestHeaders: {
|
|
344
346
|
...globalConfig.requestHeaders,
|
|
@@ -378,26 +380,41 @@ function createHotUpdaterClient() {
|
|
|
378
380
|
* ```
|
|
379
381
|
*/
|
|
380
382
|
updateBundle: async params => {
|
|
381
|
-
|
|
383
|
+
ensureGlobalClient("updateBundle");
|
|
382
384
|
const fromBundleId = (0, _native.getBundleId)();
|
|
383
385
|
const state = (0, _native.getActiveUpdateState)();
|
|
384
386
|
const active = state.activeSelection;
|
|
385
|
-
const
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
updateStrategy: selection?.scopeKey
|
|
387
|
+
const fromReleaseId = active?.bundleId === fromBundleId ? active.releaseId : state.stableSelection?.bundleId === fromBundleId ? state.stableSelection.releaseId : null;
|
|
388
|
+
const channel = params.channel ?? (0, _native.getChannel)();
|
|
389
|
+
const strategyOf = scopeKey => scopeKey?.startsWith("v1:fingerprint:") ? "fingerprint" : "appVersion";
|
|
390
|
+
let delivery;
|
|
391
|
+
try {
|
|
392
|
+
delivery = await (0, _native.stageBundle)(params);
|
|
393
|
+
} catch (error) {
|
|
394
|
+
(0, _checkForUpdate.reportUpdateError)(error, "download", undefined, {
|
|
395
|
+
bundleId: fromBundleId,
|
|
396
|
+
channel,
|
|
397
|
+
targetBundleId: params.bundleId,
|
|
398
|
+
targetReleaseId: params.selection?.releaseId ?? null,
|
|
399
|
+
updateStrategy: strategyOf(params.selection?.scopeKey)
|
|
400
|
+
});
|
|
401
|
+
throw error;
|
|
402
|
+
}
|
|
403
|
+
if (delivery !== null && params.bundleId !== fromBundleId) {
|
|
404
|
+
(0, _appReady.emitAfterAppReady)("onBundleDownloaded", () => {
|
|
405
|
+
const selection = (0, _native.getActiveUpdateState)().activeSelection;
|
|
406
|
+
return {
|
|
407
|
+
channel,
|
|
408
|
+
fromBundleId,
|
|
409
|
+
fromReleaseId,
|
|
410
|
+
toBundleId: params.bundleId,
|
|
411
|
+
toReleaseId: selection?.releaseId ?? null,
|
|
412
|
+
updateStrategy: strategyOf(selection?.scopeKey),
|
|
413
|
+
...delivery
|
|
414
|
+
};
|
|
398
415
|
});
|
|
399
416
|
}
|
|
400
|
-
return
|
|
417
|
+
return true;
|
|
401
418
|
},
|
|
402
419
|
/**
|
|
403
420
|
* Clears the runtime channel override and restores the original bundle.
|
|
@@ -432,10 +449,6 @@ function createHotUpdaterClient() {
|
|
|
432
449
|
* Fetches the persisted install id for this app installation.
|
|
433
450
|
*/
|
|
434
451
|
getInstallId: _native.getInstallId,
|
|
435
|
-
/**
|
|
436
|
-
* Persists nullable user identity fields associated with this installation.
|
|
437
|
-
*/
|
|
438
|
-
setUser: _native.setUser,
|
|
439
452
|
/**
|
|
440
453
|
* Reads the native launch report for the current process.
|
|
441
454
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_appReady","require","_checkForUpdate","_httpClient","_native","_pluginHost","_store","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_wrap","_clientPlugin","_types","registerGlobalGetBaseURL","fn","getBaseURL","globalThis","HotUpdaterGetBaseURL","createHotUpdaterClient","configurationAPI","mixedConfigurationReported","globalConfig","client","createMissingNetworkConfigError","apiName","Error","baseURLExample","normalizeOptions","options","incoming","updateMode","autoOptions","baseURL","plugins","_plugins","rest","createHttpClient","normalizeInitOptions","_updateMode","baseURLRest","configureGlobal","normalizedOptions","configurePlugins","requestHeaders","requestTimeout","onError","reportMixedConfiguration","nextAPI","console","error","ensureGlobalClient","methodName","wrap","init","reload","setReloadBehavior","isUpdateDownloaded","hotUpdaterStore","getSnapshot","getAppVersion","getActiveUpdateState","getPublicActiveUpdateState","getBundleId","getUpdateId","getMinBundleId","getManifest","getChannel","getDefaultChannel","isChannelSwitched","setCohort","getCohort","addListener","checkForUpdate","config","mergedConfig","updateBundle","params","fromBundleId","state","active","activeSelection","fromReleaseId","bundleId","releaseId","stableSelection","channel","strategyOf","scopeKey","startsWith","delivery","stageBundle","reportUpdateError","undefined","targetBundleId","targetReleaseId","selection","updateStrategy","emitAfterAppReady","toBundleId","toReleaseId","resetChannel","ok","setState","artifactType","details","progress","getFingerprintHash","getInstallId","notifyAppReady","getCrashHistory","clearCrashHistory","HotUpdater"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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ACA;AACA;AACA;IACIY,IAAI,EAAGzB,OAA8B,IAAW;MAC9C,MAAMa,iBAAiB,GAAGJ,oBAAoB,CAACT,OAAO,CAAC;MAEvDkB,wBAAwB,CAAC,MAAM,CAAC;MAChCN,eAAe,CAACC,iBAAiB,EAAEb,OAAO,CAAC;MAE3C,IAAAyB,UAAI,EAACZ,iBAAiB,CAAC;IACzB,CAAC;IAED;AACJ;AACA;IACIa,MAAM,EAANA,cAAM;IAEN;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIC,iBAAiB,EAAjBA,yBAAiB;IAEjB;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIC,kBAAkB,EAAEA,CAAA,KAAMC,sBAAe,CAACC,WAAW,CAAC,CAAC,CAACF,kBAAkB;IAE1E;AACJ;AACA;IACIG,aAAa,EAAbA,qBAAa;IAEb;IACAC,oBAAoB,EAAE,MAAAA,CAAA,KAAY,IAAAC,kCAA0B,EAAC,CAAC;IAE9D;AACJ;AACA;AACA;IACIC,WAAW,EAAEC,mBAAW;IAExB;IACAC,cAAc,EAAdA,sBAAc;IAEd;AACJ;AACA;IACIC,WAAW,EAAXA,mBAAW;IAEX;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIC,UAAU,EAAVA,kBAAU;IAEV;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIC,iBAAiB,EAAjBA,yBAAiB;IAEjB;AACJ;AACA;AACA;AACA;IACIC,iBAAiB,EAAjBA,yBAAiB;IAEjB;AACJ;AACA;AACA;IACIC,SAAS,EAATA,iBAAS;IAET;AACJ;AACA;IACIC,SAAS,EAATA,iBAAS;IAET;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIC,WAAW,EAAXA,mBAAW;IAEX;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A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","ignoreList":[]}
|