@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.
Files changed (316) hide show
  1. package/android/src/main/java/com/hotupdater/BundleFileStorageService.kt +491 -388
  2. package/android/src/main/java/com/hotupdater/BundleMetadata.kt +5 -11
  3. package/android/src/main/java/com/hotupdater/FileManagerService.kt +45 -0
  4. package/android/src/main/java/com/hotupdater/HotUpdaterException.kt +290 -12
  5. package/android/src/main/java/com/hotupdater/HotUpdaterImpl.kt +35 -19
  6. package/android/src/main/java/com/hotupdater/InstallIdentityService.kt +37 -0
  7. package/android/src/main/java/com/hotupdater/KeyValueStorageService.kt +86 -0
  8. package/android/src/main/java/com/hotupdater/NetworkState.kt +31 -0
  9. package/android/src/main/java/com/hotupdater/NoBackupStorage.kt +17 -0
  10. package/android/src/main/java/com/hotupdater/OkHttpDownloadService.kt +110 -52
  11. package/android/src/main/java/com/hotupdater/PreviousProcessExit.kt +89 -0
  12. package/android/src/main/java/com/hotupdater/ReactNativeValueConverters.kt +34 -0
  13. package/android/src/newarch/HotUpdaterModule.kt +74 -69
  14. package/android/src/oldarch/HotUpdaterModule.kt +63 -59
  15. package/android/src/oldarch/HotUpdaterSpec.kt +4 -6
  16. package/android/src/test/java/com/hotupdater/BsdiffPatchTest.kt +1 -1
  17. package/android/src/test/java/com/hotupdater/BundleFileStorageServiceTest.kt +446 -61
  18. package/android/src/test/java/com/hotupdater/HotUpdaterExceptionTest.kt +220 -0
  19. package/android/src/test/java/com/hotupdater/HotUpdaterImplTest.kt +19 -27
  20. package/android/src/test/java/com/hotupdater/InstallIdentityServiceTest.kt +71 -0
  21. package/android/src/test/java/com/hotupdater/KeyValueStorageServiceTest.kt +106 -0
  22. package/android/src/test/java/com/hotupdater/NoBackupContext.kt +11 -0
  23. package/android/src/test/java/com/hotupdater/OkHttpDownloadServiceTest.kt +309 -23
  24. package/android/src/test/java/com/hotupdater/PreviousProcessExitTest.kt +57 -0
  25. package/ios/HotUpdater/Internal/BundleFileStorageService.swift +238 -157
  26. package/ios/HotUpdater/Internal/BundleMetadata.swift +3 -53
  27. package/ios/HotUpdater/Internal/FileManagerService.swift +48 -0
  28. package/ios/HotUpdater/Internal/HotUpdater.mm +8 -18
  29. package/ios/HotUpdater/Internal/HotUpdaterImpl.swift +48 -29
  30. package/ios/HotUpdater/Internal/KeyValueStorageService.swift +71 -0
  31. package/ios/HotUpdater/Internal/URLSessionDownloadService.swift +108 -1
  32. package/ios/HotUpdater/Internal/UpdateFailure.swift +390 -0
  33. package/lib/commonjs/appReady.js +111 -0
  34. package/lib/commonjs/appReady.js.map +1 -0
  35. package/lib/commonjs/appReady.spec.js +360 -0
  36. package/lib/commonjs/appReady.spec.js.map +1 -0
  37. package/lib/commonjs/{notifyAppReadyInsights.test-utils.js → appReady.test-utils.js} +4 -3
  38. package/lib/commonjs/appReady.test-utils.js.map +1 -0
  39. package/lib/commonjs/baseURL.js +16 -0
  40. package/lib/commonjs/baseURL.js.map +1 -0
  41. package/lib/commonjs/checkForUpdate.js +104 -56
  42. package/lib/commonjs/checkForUpdate.js.map +1 -1
  43. package/lib/commonjs/checkForUpdate.releaseCatalog.spec.js +337 -74
  44. package/lib/commonjs/checkForUpdate.releaseCatalog.spec.js.map +1 -1
  45. package/lib/commonjs/clientPlugin.js +49 -0
  46. package/lib/commonjs/clientPlugin.js.map +1 -0
  47. package/lib/commonjs/entryImportGraph.spec.js +50 -0
  48. package/lib/commonjs/entryImportGraph.spec.js.map +1 -0
  49. package/lib/commonjs/fetchJSON.js +2 -6
  50. package/lib/commonjs/fetchJSON.js.map +1 -1
  51. package/lib/commonjs/httpClient.js +18 -165
  52. package/lib/commonjs/httpClient.js.map +1 -1
  53. package/lib/commonjs/httpClient.spec.js +26 -199
  54. package/lib/commonjs/httpClient.spec.js.map +1 -1
  55. package/lib/commonjs/index.js +49 -36
  56. package/lib/commonjs/index.js.map +1 -1
  57. package/lib/commonjs/index.spec.js +108 -123
  58. package/lib/commonjs/index.spec.js.map +1 -1
  59. package/lib/commonjs/native.js +67 -48
  60. package/lib/commonjs/native.js.map +1 -1
  61. package/lib/commonjs/native.spec.js +80 -58
  62. package/lib/commonjs/native.spec.js.map +1 -1
  63. package/lib/commonjs/pluginHost.js +208 -0
  64. package/lib/commonjs/pluginHost.js.map +1 -0
  65. package/lib/commonjs/pluginHost.spec.js +292 -0
  66. package/lib/commonjs/pluginHost.spec.js.map +1 -0
  67. package/lib/commonjs/plugins/insights/eventId.js +129 -0
  68. package/lib/commonjs/plugins/insights/eventId.js.map +1 -0
  69. package/lib/commonjs/plugins/insights/eventId.spec.js +47 -0
  70. package/lib/commonjs/plugins/insights/eventId.spec.js.map +1 -0
  71. package/lib/commonjs/plugins/insights/index.js +272 -0
  72. package/lib/commonjs/plugins/insights/index.js.map +1 -0
  73. package/lib/commonjs/plugins/insights/insights.spec.js +640 -0
  74. package/lib/commonjs/plugins/insights/insights.spec.js.map +1 -0
  75. package/lib/commonjs/plugins/insights/sender.js +128 -0
  76. package/lib/commonjs/plugins/insights/sender.js.map +1 -0
  77. package/lib/commonjs/plugins/insights/sender.spec.js +265 -0
  78. package/lib/commonjs/plugins/insights/sender.spec.js.map +1 -0
  79. package/lib/commonjs/plugins/insights/state.js +145 -0
  80. package/lib/commonjs/plugins/insights/state.js.map +1 -0
  81. package/lib/commonjs/releaseCatalogCache.js +13 -2
  82. package/lib/commonjs/releaseCatalogCache.js.map +1 -1
  83. package/lib/commonjs/releaseCatalogCache.spec.js +18 -0
  84. package/lib/commonjs/releaseCatalogCache.spec.js.map +1 -1
  85. package/lib/commonjs/sdkVersion.js +1 -1
  86. package/lib/commonjs/specs/NativeHotUpdater.js.map +1 -1
  87. package/lib/commonjs/updateError.js +132 -0
  88. package/lib/commonjs/updateError.js.map +1 -0
  89. package/lib/commonjs/updateError.spec.js +149 -0
  90. package/lib/commonjs/updateError.spec.js.map +1 -0
  91. package/lib/commonjs/wrap.js +43 -25
  92. package/lib/commonjs/wrap.js.map +1 -1
  93. package/lib/commonjs/wrap.progress.spec.js +195 -0
  94. package/lib/commonjs/wrap.progress.spec.js.map +1 -0
  95. package/lib/commonjs/wrap.spec.js +94 -230
  96. package/lib/commonjs/wrap.spec.js.map +1 -1
  97. package/lib/module/appReady.js +103 -0
  98. package/lib/module/appReady.js.map +1 -0
  99. package/lib/module/appReady.spec.js +359 -0
  100. package/lib/module/appReady.spec.js.map +1 -0
  101. package/lib/module/{notifyAppReadyInsights.test-utils.js → appReady.test-utils.js} +4 -3
  102. package/lib/module/appReady.test-utils.js.map +1 -0
  103. package/lib/module/baseURL.js +11 -0
  104. package/lib/module/baseURL.js.map +1 -0
  105. package/lib/module/checkForUpdate.js +103 -57
  106. package/lib/module/checkForUpdate.js.map +1 -1
  107. package/lib/module/checkForUpdate.releaseCatalog.spec.js +337 -74
  108. package/lib/module/checkForUpdate.releaseCatalog.spec.js.map +1 -1
  109. package/lib/module/clientPlugin.js +44 -0
  110. package/lib/module/clientPlugin.js.map +1 -0
  111. package/lib/module/entryImportGraph.spec.js +50 -0
  112. package/lib/module/entryImportGraph.spec.js.map +1 -0
  113. package/lib/module/fetchJSON.js +2 -6
  114. package/lib/module/fetchJSON.js.map +1 -1
  115. package/lib/module/httpClient.js +18 -165
  116. package/lib/module/httpClient.js.map +1 -1
  117. package/lib/module/httpClient.spec.js +27 -200
  118. package/lib/module/httpClient.spec.js.map +1 -1
  119. package/lib/module/index.js +44 -38
  120. package/lib/module/index.js.map +1 -1
  121. package/lib/module/index.spec.js +108 -123
  122. package/lib/module/index.spec.js.map +1 -1
  123. package/lib/module/native.js +63 -44
  124. package/lib/module/native.js.map +1 -1
  125. package/lib/module/native.spec.js +80 -58
  126. package/lib/module/native.spec.js.map +1 -1
  127. package/lib/module/pluginHost.js +200 -0
  128. package/lib/module/pluginHost.js.map +1 -0
  129. package/lib/module/pluginHost.spec.js +291 -0
  130. package/lib/module/pluginHost.spec.js.map +1 -0
  131. package/lib/module/plugins/insights/eventId.js +122 -0
  132. package/lib/module/plugins/insights/eventId.js.map +1 -0
  133. package/lib/module/plugins/insights/eventId.spec.js +47 -0
  134. package/lib/module/plugins/insights/eventId.spec.js.map +1 -0
  135. package/lib/module/plugins/insights/index.js +268 -0
  136. package/lib/module/plugins/insights/index.js.map +1 -0
  137. package/lib/module/plugins/insights/insights.spec.js +639 -0
  138. package/lib/module/plugins/insights/insights.spec.js.map +1 -0
  139. package/lib/module/plugins/insights/sender.js +123 -0
  140. package/lib/module/plugins/insights/sender.js.map +1 -0
  141. package/lib/module/plugins/insights/sender.spec.js +265 -0
  142. package/lib/module/plugins/insights/sender.spec.js.map +1 -0
  143. package/lib/module/plugins/insights/state.js +139 -0
  144. package/lib/module/plugins/insights/state.js.map +1 -0
  145. package/lib/module/releaseCatalogCache.js +13 -2
  146. package/lib/module/releaseCatalogCache.js.map +1 -1
  147. package/lib/module/releaseCatalogCache.spec.js +18 -0
  148. package/lib/module/releaseCatalogCache.spec.js.map +1 -1
  149. package/lib/module/sdkVersion.js +1 -1
  150. package/lib/module/specs/NativeHotUpdater.js.map +1 -1
  151. package/lib/module/updateError.js +126 -0
  152. package/lib/module/updateError.js.map +1 -0
  153. package/lib/module/updateError.spec.js +149 -0
  154. package/lib/module/updateError.spec.js.map +1 -0
  155. package/lib/module/wrap.js +43 -25
  156. package/lib/module/wrap.js.map +1 -1
  157. package/lib/module/wrap.progress.spec.js +196 -0
  158. package/lib/module/wrap.progress.spec.js.map +1 -0
  159. package/lib/module/wrap.spec.js +93 -229
  160. package/lib/module/wrap.spec.js.map +1 -1
  161. package/lib/typescript/commonjs/appReady.d.ts +23 -0
  162. package/lib/typescript/commonjs/appReady.d.ts.map +1 -0
  163. package/lib/typescript/commonjs/appReady.test-utils.d.ts +9 -0
  164. package/lib/typescript/commonjs/appReady.test-utils.d.ts.map +1 -0
  165. package/lib/typescript/commonjs/baseURL.d.ts +4 -0
  166. package/lib/typescript/commonjs/baseURL.d.ts.map +1 -0
  167. package/lib/typescript/commonjs/checkForUpdate.d.ts +15 -2
  168. package/lib/typescript/commonjs/checkForUpdate.d.ts.map +1 -1
  169. package/lib/typescript/commonjs/clientPlugin.d.ts +185 -0
  170. package/lib/typescript/commonjs/clientPlugin.d.ts.map +1 -0
  171. package/lib/typescript/commonjs/fetchJSON.d.ts +2 -3
  172. package/lib/typescript/commonjs/fetchJSON.d.ts.map +1 -1
  173. package/lib/typescript/commonjs/httpClient.d.ts +2 -36
  174. package/lib/typescript/commonjs/httpClient.d.ts.map +1 -1
  175. package/lib/typescript/commonjs/index.d.ts +3 -6
  176. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  177. package/lib/typescript/commonjs/native.d.ts +29 -15
  178. package/lib/typescript/commonjs/native.d.ts.map +1 -1
  179. package/lib/typescript/commonjs/pluginHost.d.ts +29 -0
  180. package/lib/typescript/commonjs/pluginHost.d.ts.map +1 -0
  181. package/lib/typescript/commonjs/plugins/insights/eventId.d.ts +18 -0
  182. package/lib/typescript/commonjs/plugins/insights/eventId.d.ts.map +1 -0
  183. package/lib/typescript/commonjs/plugins/insights/index.d.ts +40 -0
  184. package/lib/typescript/commonjs/plugins/insights/index.d.ts.map +1 -0
  185. package/lib/typescript/commonjs/plugins/insights/sender.d.ts +74 -0
  186. package/lib/typescript/commonjs/plugins/insights/sender.d.ts.map +1 -0
  187. package/lib/typescript/commonjs/plugins/insights/state.d.ts +46 -0
  188. package/lib/typescript/commonjs/plugins/insights/state.d.ts.map +1 -0
  189. package/lib/typescript/commonjs/releaseCatalogCache.d.ts +5 -1
  190. package/lib/typescript/commonjs/releaseCatalogCache.d.ts.map +1 -1
  191. package/lib/typescript/commonjs/sdkVersion.d.ts +1 -1
  192. package/lib/typescript/commonjs/specs/NativeHotUpdater.d.ts +34 -12
  193. package/lib/typescript/commonjs/specs/NativeHotUpdater.d.ts.map +1 -1
  194. package/lib/typescript/commonjs/updateError.d.ts +26 -0
  195. package/lib/typescript/commonjs/updateError.d.ts.map +1 -0
  196. package/lib/typescript/commonjs/wrap.d.ts.map +1 -1
  197. package/lib/typescript/commonjs/wrap.types.d.ts +6 -10
  198. package/lib/typescript/commonjs/wrap.types.d.ts.map +1 -1
  199. package/lib/typescript/module/appReady.d.ts +23 -0
  200. package/lib/typescript/module/appReady.d.ts.map +1 -0
  201. package/lib/typescript/module/appReady.test-utils.d.ts +9 -0
  202. package/lib/typescript/module/appReady.test-utils.d.ts.map +1 -0
  203. package/lib/typescript/module/baseURL.d.ts +4 -0
  204. package/lib/typescript/module/baseURL.d.ts.map +1 -0
  205. package/lib/typescript/module/checkForUpdate.d.ts +15 -2
  206. package/lib/typescript/module/checkForUpdate.d.ts.map +1 -1
  207. package/lib/typescript/module/clientPlugin.d.ts +185 -0
  208. package/lib/typescript/module/clientPlugin.d.ts.map +1 -0
  209. package/lib/typescript/module/fetchJSON.d.ts +2 -3
  210. package/lib/typescript/module/fetchJSON.d.ts.map +1 -1
  211. package/lib/typescript/module/httpClient.d.ts +2 -36
  212. package/lib/typescript/module/httpClient.d.ts.map +1 -1
  213. package/lib/typescript/module/index.d.ts +3 -6
  214. package/lib/typescript/module/index.d.ts.map +1 -1
  215. package/lib/typescript/module/native.d.ts +29 -15
  216. package/lib/typescript/module/native.d.ts.map +1 -1
  217. package/lib/typescript/module/pluginHost.d.ts +29 -0
  218. package/lib/typescript/module/pluginHost.d.ts.map +1 -0
  219. package/lib/typescript/module/plugins/insights/eventId.d.ts +18 -0
  220. package/lib/typescript/module/plugins/insights/eventId.d.ts.map +1 -0
  221. package/lib/typescript/module/plugins/insights/index.d.ts +40 -0
  222. package/lib/typescript/module/plugins/insights/index.d.ts.map +1 -0
  223. package/lib/typescript/module/plugins/insights/sender.d.ts +74 -0
  224. package/lib/typescript/module/plugins/insights/sender.d.ts.map +1 -0
  225. package/lib/typescript/module/plugins/insights/state.d.ts +46 -0
  226. package/lib/typescript/module/plugins/insights/state.d.ts.map +1 -0
  227. package/lib/typescript/module/releaseCatalogCache.d.ts +5 -1
  228. package/lib/typescript/module/releaseCatalogCache.d.ts.map +1 -1
  229. package/lib/typescript/module/sdkVersion.d.ts +1 -1
  230. package/lib/typescript/module/specs/NativeHotUpdater.d.ts +34 -12
  231. package/lib/typescript/module/specs/NativeHotUpdater.d.ts.map +1 -1
  232. package/lib/typescript/module/updateError.d.ts +26 -0
  233. package/lib/typescript/module/updateError.d.ts.map +1 -0
  234. package/lib/typescript/module/wrap.d.ts.map +1 -1
  235. package/lib/typescript/module/wrap.types.d.ts +6 -10
  236. package/lib/typescript/module/wrap.types.d.ts.map +1 -1
  237. package/package.json +14 -2
  238. package/plugins/insights/package.json +8 -0
  239. package/src/appReady.spec.ts +393 -0
  240. package/src/{notifyAppReadyInsights.test-utils.ts → appReady.test-utils.ts} +7 -7
  241. package/src/appReady.ts +149 -0
  242. package/src/baseURL.ts +15 -0
  243. package/src/checkForUpdate.releaseCatalog.spec.ts +370 -76
  244. package/src/checkForUpdate.ts +135 -80
  245. package/src/clientPlugin.ts +231 -0
  246. package/src/entryImportGraph.spec.ts +65 -0
  247. package/src/fetchJSON.ts +3 -10
  248. package/src/httpClient.spec.ts +30 -227
  249. package/src/httpClient.ts +20 -256
  250. package/src/index.spec.ts +117 -93
  251. package/src/index.ts +67 -52
  252. package/src/native.spec.ts +98 -72
  253. package/src/native.ts +93 -77
  254. package/src/pluginHost.spec.ts +297 -0
  255. package/src/pluginHost.ts +262 -0
  256. package/src/plugins/insights/eventId.spec.ts +60 -0
  257. package/src/plugins/insights/eventId.ts +171 -0
  258. package/src/plugins/insights/index.ts +367 -0
  259. package/src/plugins/insights/insights.spec.ts +732 -0
  260. package/src/plugins/insights/sender.spec.ts +287 -0
  261. package/src/plugins/insights/sender.ts +221 -0
  262. package/src/plugins/insights/state.ts +184 -0
  263. package/src/releaseCatalogCache.spec.ts +22 -0
  264. package/src/releaseCatalogCache.ts +19 -4
  265. package/src/sdkVersion.ts +1 -1
  266. package/src/specs/NativeHotUpdater.ts +34 -13
  267. package/src/updateError.spec.ts +144 -0
  268. package/src/updateError.ts +153 -0
  269. package/src/wrap.progress.spec.ts +232 -0
  270. package/src/wrap.spec.ts +100 -283
  271. package/src/wrap.tsx +57 -26
  272. package/src/wrap.types.ts +6 -12
  273. package/lib/commonjs/notifyAppReadyInsights.boundary.spec.js +0 -225
  274. package/lib/commonjs/notifyAppReadyInsights.boundary.spec.js.map +0 -1
  275. package/lib/commonjs/notifyAppReadyInsights.js +0 -188
  276. package/lib/commonjs/notifyAppReadyInsights.js.map +0 -1
  277. package/lib/commonjs/notifyAppReadyInsights.spec.js +0 -378
  278. package/lib/commonjs/notifyAppReadyInsights.spec.js.map +0 -1
  279. package/lib/commonjs/notifyAppReadyInsights.test-utils.js.map +0 -1
  280. package/lib/commonjs/notifyAppReadyInsights.transport.spec.js +0 -171
  281. package/lib/commonjs/notifyAppReadyInsights.transport.spec.js.map +0 -1
  282. package/lib/commonjs/uuidv7.js +0 -41
  283. package/lib/commonjs/uuidv7.js.map +0 -1
  284. package/lib/commonjs/uuidv7.spec.js +0 -30
  285. package/lib/commonjs/uuidv7.spec.js.map +0 -1
  286. package/lib/module/notifyAppReadyInsights.boundary.spec.js +0 -224
  287. package/lib/module/notifyAppReadyInsights.boundary.spec.js.map +0 -1
  288. package/lib/module/notifyAppReadyInsights.js +0 -181
  289. package/lib/module/notifyAppReadyInsights.js.map +0 -1
  290. package/lib/module/notifyAppReadyInsights.spec.js +0 -377
  291. package/lib/module/notifyAppReadyInsights.spec.js.map +0 -1
  292. package/lib/module/notifyAppReadyInsights.test-utils.js.map +0 -1
  293. package/lib/module/notifyAppReadyInsights.transport.spec.js +0 -170
  294. package/lib/module/notifyAppReadyInsights.transport.spec.js.map +0 -1
  295. package/lib/module/uuidv7.js +0 -36
  296. package/lib/module/uuidv7.js.map +0 -1
  297. package/lib/module/uuidv7.spec.js +0 -30
  298. package/lib/module/uuidv7.spec.js.map +0 -1
  299. package/lib/typescript/commonjs/notifyAppReadyInsights.d.ts +0 -25
  300. package/lib/typescript/commonjs/notifyAppReadyInsights.d.ts.map +0 -1
  301. package/lib/typescript/commonjs/notifyAppReadyInsights.test-utils.d.ts +0 -8
  302. package/lib/typescript/commonjs/notifyAppReadyInsights.test-utils.d.ts.map +0 -1
  303. package/lib/typescript/commonjs/uuidv7.d.ts +0 -10
  304. package/lib/typescript/commonjs/uuidv7.d.ts.map +0 -1
  305. package/lib/typescript/module/notifyAppReadyInsights.d.ts +0 -25
  306. package/lib/typescript/module/notifyAppReadyInsights.d.ts.map +0 -1
  307. package/lib/typescript/module/notifyAppReadyInsights.test-utils.d.ts +0 -8
  308. package/lib/typescript/module/notifyAppReadyInsights.test-utils.d.ts.map +0 -1
  309. package/lib/typescript/module/uuidv7.d.ts +0 -10
  310. package/lib/typescript/module/uuidv7.d.ts.map +0 -1
  311. package/src/notifyAppReadyInsights.boundary.spec.ts +0 -242
  312. package/src/notifyAppReadyInsights.spec.ts +0 -362
  313. package/src/notifyAppReadyInsights.transport.spec.ts +0 -196
  314. package/src/notifyAppReadyInsights.ts +0 -293
  315. package/src/uuidv7.spec.ts +0 -25
  316. package/src/uuidv7.ts +0 -38
@@ -1,18 +1,13 @@
1
1
  "use strict";
2
2
 
3
- import { isUUIDv7 } from "@hot-updater/core";
4
- import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
3
+ import { beforeEach, describe, expect, it, vi } from "vitest";
5
4
  import { FetchJSONResponseError } from "./fetchJSON.js";
6
5
  import { createHttpClient } from "./httpClient.js";
7
- const mocks = vi.hoisted(() => {
8
- Reflect.set(globalThis, "HotUpdater", {
9
- SDK_VERSION: "test-sdk-version"
10
- });
11
- return {
12
- fetchCatalog: vi.fn(),
13
- fetchJSON: vi.fn()
14
- };
15
- });
6
+ import { InvalidUpdateResponseError } from "./updateError.js";
7
+ const mocks = vi.hoisted(() => ({
8
+ fetchCatalog: vi.fn(),
9
+ fetchJSON: vi.fn()
10
+ }));
16
11
  vi.mock("./releaseCatalogCache", () => ({
17
12
  fetchReleaseCatalogWithCache: mocks.fetchCatalog
18
13
  }));
@@ -148,197 +143,29 @@ describe("private HotUpdater HTTP client", () => {
148
143
  targetBundleId: "target"
149
144
  })).rejects.toThrow("does not support artifact protocol 1");
150
145
  });
146
+ 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 createHttpClient("https://updates.example.com").createSession();
162
+ await expect(session.resolveArtifact({
163
+ currentBundleId: "current",
164
+ targetBundleId: "target"
165
+ })).rejects.toBeInstanceOf(InvalidUpdateResponseError);
166
+ });
151
167
  it("requires a functional baseURL to resolve to a non-empty string", async () => {
152
168
  await expect(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 = 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
- 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
- describe("Insights event delivery", () => {
185
- beforeEach(() => {
186
- vi.useFakeTimers();
187
- // No jitter: the first retry waits exactly 1 s and the second 2 s.
188
- vi.spyOn(Math, "random").mockReturnValue(0.5);
189
- });
190
- afterEach(() => {
191
- vi.useRealTimers();
192
- vi.unstubAllGlobals();
193
- vi.restoreAllMocks();
194
- });
195
- const createSession = () => createHttpClient("https://updates.example.com").createSession();
196
- 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
- expect(fetchMock).toHaveBeenCalledOnce();
206
- await vi.advanceTimersByTimeAsync(1_000);
207
- expect(fetchMock).toHaveBeenCalledTimes(2);
208
- const [first, second] = sentEvents();
209
- expect(isUUIDv7(first?.eventId)).toBe(true);
210
- expect(second?.eventId).toBe(first?.eventId);
211
- });
212
- 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 vi.advanceTimersByTimeAsync(6_999);
224
- expect(fetchMock).toHaveBeenCalledOnce();
225
- await vi.advanceTimersByTimeAsync(1);
226
- expect(fetchMock).toHaveBeenCalledTimes(2);
227
- });
228
- 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 vi.advanceTimersByTimeAsync(29_999);
240
- expect(fetchMock).toHaveBeenCalledOnce();
241
- await vi.advanceTimersByTimeAsync(1);
242
- expect(fetchMock).toHaveBeenCalledTimes(2);
243
- });
244
- it("does not retry a 400", async () => {
245
- const {
246
- fetchMock
247
- } = stubEventsEndpoint(400);
248
- const session = await createSession();
249
- await expect(session.sendInsightsEvent(unchangedEvent)).rejects.toThrow("Expected HTTP 204 from /events, received 400");
250
- await vi.runAllTimersAsync();
251
- expect(fetchMock).toHaveBeenCalledOnce();
252
- });
253
- it("stops after three attempts and warns once", async () => {
254
- const warn = 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 vi.runAllTimersAsync();
261
- expect(fetchMock).toHaveBeenCalledTimes(3);
262
- expect(warn).toHaveBeenCalledExactlyOnceWith("[HotUpdater] Insights UNCHANGED event was not delivered:", expect.objectContaining({
263
- message: "Expected HTTP 204 from /events, received 503"
264
- }));
265
- });
266
- it("gives each attempt its own timeout", async () => {
267
- const warn = vi.spyOn(console, "warn").mockImplementation(() => {});
268
- const fetchMock = 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
- vi.stubGlobal("fetch", fetchMock);
276
- const session = await createSession();
277
- const sent = session.sendInsightsEvent({
278
- ...unchangedEvent,
279
- requestTimeout: 2_000
280
- });
281
- await 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 vi.advanceTimersByTimeAsync(1_000);
285
- expect(fetchMock).toHaveBeenCalledTimes(2);
286
- const secondSignal = fetchMock.mock.calls[1]?.[1]?.signal;
287
- await vi.advanceTimersByTimeAsync(1_999);
288
- expect(secondSignal?.aborted).toBe(false);
289
- await vi.advanceTimersByTimeAsync(1);
290
- expect(secondSignal?.aborted).toBe(true);
291
- await vi.runAllTimersAsync();
292
- expect(fetchMock).toHaveBeenCalledTimes(3);
293
- expect(warn).toHaveBeenCalledExactlyOnceWith("[HotUpdater] Insights UNCHANGED event was not delivered:", expect.objectContaining({
294
- message: "Request timed out"
295
- }));
296
- });
297
- 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
- expect(fetchMock).toHaveBeenCalledOnce();
312
- await vi.runAllTimersAsync();
313
- const [first, retry, later] = sentEvents();
314
- expect([first?.type, retry?.type, later?.type]).toEqual(["UNCHANGED", "UNCHANGED", "UPDATE_DOWNLOADED"]);
315
- expect(retry?.eventId).toBe(first?.eventId);
316
- expect(later?.eventId).not.toBe(first?.eventId);
317
- });
318
- it("keeps sending events after one fails outside its requests", async () => {
319
- 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 vi.runAllTimersAsync();
329
- 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
- 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":["isUUIDv7","afterEach","beforeEach","describe","expect","it","vi","FetchJSONResponseError","createHttpClient","mocks","hoisted","Reflect","set","globalThis","SDK_VERSION","fetchCatalog","fn","fetchJSON","mock","fetchReleaseCatalogWithCache","Error","constructor","status","statusText","artifact","artifactProtocolVersion","assets","file","url","fileHash","manifestFileHash","manifestUrl","archiveUrl","catalog","catalogId","catalogHash","repeat","fallbackPolicy","generation","releases","schemaVersion","scopeKey","clearAllMocks","mockResolvedValue","session","createSession","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","useRealTimers","unstubAllGlobals","restoreAllMocks","sendInsightsEvent","advanceTimersByTimeAsync","first","second","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":["beforeEach","describe","expect","it","vi","FetchJSONResponseError","createHttpClient","InvalidUpdateResponseError","mocks","hoisted","fetchCatalog","fn","fetchJSON","mock","fetchReleaseCatalogWithCache","Error","constructor","status","statusText","artifact","artifactProtocolVersion","assets","file","url","fileHash","manifestFileHash","manifestUrl","archiveUrl","catalog","catalogId","catalogHash","repeat","fallbackPolicy","generation","releases","schemaVersion","scopeKey","clearAllMocks","mockResolvedValue","session","createSession","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"],"sourceRoot":"../../src","sources":["httpClient.spec.ts"],"mappings":"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","ignoreList":[]}
@@ -1,11 +1,13 @@
1
1
  "use strict";
2
2
 
3
- import { checkForUpdate } from "./checkForUpdate.js";
3
+ import { emitAfterAppReady } from "./appReady.js";
4
+ import { checkForUpdate, reportUpdateError } from "./checkForUpdate.js";
4
5
  import { createHttpClient } from "./httpClient.js";
5
- import { addListener, getPublicActiveUpdateState, getActiveUpdateState, getBundleId, clearCrashHistory, getAppVersion, getBaseURL, getUpdateId, getChannel, getCohort, getCrashHistory, getDefaultChannel, getFingerprintHash, getInstallId, getManifest, getMinBundleId, isChannelSwitched, notifyAppReady, reload, resetChannel, setCohort, setReloadBehavior, setUser, updateBundle } from "./native.js";
6
- import { reportBundleDownloaded } from "./notifyAppReadyInsights.js";
6
+ import { addListener, getPublicActiveUpdateState, getActiveUpdateState, getBundleId, clearCrashHistory, getAppVersion, getBaseURL, getUpdateId, getChannel, getCohort, getCrashHistory, getDefaultChannel, getFingerprintHash, getInstallId, getManifest, getMinBundleId, isChannelSwitched, notifyAppReady, reload, resetChannel, setCohort, setReloadBehavior, stageBundle } from "./native.js";
7
+ import { configurePlugins } from "./pluginHost.js";
7
8
  import { hotUpdaterStore } from "./store.js";
8
9
  import { init, wrap } from "./wrap.js";
10
+ export { defineClientPlugin } from "./clientPlugin.js";
9
11
  export * from "./store.js";
10
12
  export { extractSignatureFailure, isSignatureVerificationError } from "./types.js";
11
13
  /**
@@ -25,17 +27,6 @@ const registerGlobalGetBaseURL = () => {
25
27
 
26
28
  // Call registration immediately on module load
27
29
  registerGlobalGetBaseURL();
28
- /**
29
- * Debug builds report only with `insights: { debug: true }`, so development
30
- * sessions do not mix into production Insights. `__DEV__` is defined only in
31
- * a React Native bundle; anywhere else, such as unit tests, counts as release.
32
- */
33
- const resolveInsights = insights => {
34
- if (insights === false) return false;
35
- const isDebugBuild = typeof __DEV__ !== "undefined" && __DEV__;
36
- return !isDebugBuild || typeof insights === "object" && insights?.debug === true;
37
- };
38
-
39
30
  /**
40
31
  * Creates a HotUpdater client instance with all update management methods.
41
32
  * This function is called once on module initialization to create a singleton instance.
@@ -46,7 +37,6 @@ function createHotUpdaterClient() {
46
37
 
47
38
  // Global configuration stored from wrap
48
39
  const globalConfig = {
49
- insights: true,
50
40
  client: null
51
41
  };
52
42
  const createMissingNetworkConfigError = apiName => {
@@ -65,11 +55,11 @@ function createHotUpdaterClient() {
65
55
  if (autoOptions.baseURL) {
66
56
  const {
67
57
  baseURL,
58
+ plugins: _plugins,
68
59
  ...rest
69
60
  } = autoOptions;
70
61
  return {
71
62
  ...rest,
72
- insights: resolveInsights(rest.insights),
73
63
  client: createHttpClient(baseURL)
74
64
  };
75
65
  }
@@ -83,18 +73,24 @@ function createHotUpdaterClient() {
83
73
  if (rest.baseURL) {
84
74
  const {
85
75
  baseURL,
76
+ plugins: _plugins,
86
77
  ...baseURLRest
87
78
  } = rest;
88
79
  return {
89
80
  ...baseURLRest,
90
- insights: resolveInsights(baseURLRest.insights),
91
81
  client: createHttpClient(baseURL)
92
82
  };
93
83
  }
94
84
  throw createMissingNetworkConfigError("init");
95
85
  };
96
86
  const configureGlobal = (normalizedOptions, options) => {
97
- globalConfig.insights = normalizedOptions.insights ?? true;
87
+ // Plugins are set up before init or wrap reads the launch they observe.
88
+ configurePlugins(options.plugins, {
89
+ baseURL: options.baseURL,
90
+ requestHeaders: options.requestHeaders,
91
+ requestTimeout: options.requestTimeout,
92
+ onError: options.onError
93
+ });
98
94
  globalConfig.client = normalizedOptions.client;
99
95
  globalConfig.requestHeaders = options.requestHeaders;
100
96
  globalConfig.requestTimeout = options.requestTimeout;
@@ -307,7 +303,6 @@ function createHotUpdaterClient() {
307
303
  const client = ensureGlobalClient("checkForUpdate");
308
304
  const mergedConfig = {
309
305
  ...config,
310
- insights: globalConfig.insights,
311
306
  client,
312
307
  requestHeaders: {
313
308
  ...globalConfig.requestHeaders,
@@ -347,26 +342,41 @@ function createHotUpdaterClient() {
347
342
  * ```
348
343
  */
349
344
  updateBundle: async params => {
350
- const client = ensureGlobalClient("updateBundle");
345
+ ensureGlobalClient("updateBundle");
351
346
  const fromBundleId = getBundleId();
352
347
  const state = getActiveUpdateState();
353
348
  const active = state.activeSelection;
354
- const downloaded = await updateBundle(params);
355
- if (downloaded) {
356
- const selection = getActiveUpdateState().activeSelection;
357
- await reportBundleDownloaded({
358
- ...globalConfig,
359
- client
360
- }, {
361
- fromBundleId,
362
- fromReleaseId: active?.bundleId === fromBundleId ? active.releaseId : state.stableSelection?.bundleId === fromBundleId ? state.stableSelection.releaseId : null,
363
- toBundleId: params.bundleId,
364
- toReleaseId: selection?.releaseId ?? null,
365
- channel: params.channel ?? getChannel(),
366
- updateStrategy: selection?.scopeKey?.startsWith("v1:fingerprint:") ? "fingerprint" : "appVersion"
349
+ const fromReleaseId = active?.bundleId === fromBundleId ? active.releaseId : state.stableSelection?.bundleId === fromBundleId ? state.stableSelection.releaseId : null;
350
+ const channel = params.channel ?? getChannel();
351
+ const strategyOf = scopeKey => scopeKey?.startsWith("v1:fingerprint:") ? "fingerprint" : "appVersion";
352
+ let delivery;
353
+ try {
354
+ delivery = await stageBundle(params);
355
+ } catch (error) {
356
+ reportUpdateError(error, "download", undefined, {
357
+ bundleId: fromBundleId,
358
+ channel,
359
+ targetBundleId: params.bundleId,
360
+ targetReleaseId: params.selection?.releaseId ?? null,
361
+ updateStrategy: strategyOf(params.selection?.scopeKey)
367
362
  });
363
+ throw error;
368
364
  }
369
- return downloaded;
365
+ if (delivery !== null && params.bundleId !== fromBundleId) {
366
+ emitAfterAppReady("onBundleDownloaded", () => {
367
+ const selection = getActiveUpdateState().activeSelection;
368
+ return {
369
+ channel,
370
+ fromBundleId,
371
+ fromReleaseId,
372
+ toBundleId: params.bundleId,
373
+ toReleaseId: selection?.releaseId ?? null,
374
+ updateStrategy: strategyOf(selection?.scopeKey),
375
+ ...delivery
376
+ };
377
+ });
378
+ }
379
+ return true;
370
380
  },
371
381
  /**
372
382
  * Clears the runtime channel override and restores the original bundle.
@@ -401,10 +411,6 @@ function createHotUpdaterClient() {
401
411
  * Fetches the persisted install id for this app installation.
402
412
  */
403
413
  getInstallId,
404
- /**
405
- * Persists nullable user identity fields associated with this installation.
406
- */
407
- setUser,
408
414
  /**
409
415
  * Reads the native launch report for the current process.
410
416
  */
@@ -1 +1 @@
1
- {"version":3,"names":["checkForUpdate","createHttpClient","addListener","getPublicActiveUpdateState","getActiveUpdateState","getBundleId","clearCrashHistory","getAppVersion","getBaseURL","getUpdateId","getChannel","getCohort","getCrashHistory","getDefaultChannel","getFingerprintHash","getInstallId","getManifest","getMinBundleId","isChannelSwitched","notifyAppReady","reload","resetChannel","setCohort","setReloadBehavior","setUser","updateBundle","reportBundleDownloaded","hotUpdaterStore","init","wrap","extractSignatureFailure","isSignatureVerificationError","registerGlobalGetBaseURL","fn","globalThis","HotUpdaterGetBaseURL","resolveInsights","insights","isDebugBuild","__DEV__","debug","createHotUpdaterClient","configurationAPI","mixedConfigurationReported","globalConfig","client","createMissingNetworkConfigError","apiName","Error","baseURLExample","normalizeOptions","options","incoming","updateMode","autoOptions","baseURL","rest","normalizeInitOptions","_updateMode","baseURLRest","configureGlobal","normalizedOptions","requestHeaders","requestTimeout","onError","reportMixedConfiguration","nextAPI","console","error","ensureGlobalClient","methodName","isUpdateDownloaded","getSnapshot","config","mergedConfig","params","fromBundleId","state","active","activeSelection","downloaded","selection","fromReleaseId","bundleId","releaseId","stableSelection","toBundleId","toReleaseId","channel","updateStrategy","scopeKey","startsWith","ok","setState","artifactType","details","progress","HotUpdater"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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;IAED;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIjC,IAAI,EAAGuB,OAA8B,IAAW;MAC9C,MAAMU,iBAAiB,GAAGJ,oBAAoB,CAACN,OAAO,CAAC;MAEvDc,wBAAwB,CAAC,MAAM,CAAC;MAChCL,eAAe,CAACC,iBAAiB,EAAEV,OAAO,CAAC;MAE3CvB,IAAI,CAACiC,iBAAiB,CAAC;IACzB,CAAC;IAED;AACJ;AACA;IACIzC,MAAM;IAEN;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIG,iBAAiB;IAEjB;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIgD,kBAAkB,EAAEA,CAAA,KAAM5C,eAAe,CAAC6C,WAAW,CAAC,CAAC,CAACD,kBAAkB;IAE1E;AACJ;AACA;IACIhE,aAAa;IAEb;IACAH,oBAAoB,EAAE,MAAAA,CAAA,KAAYD,0BAA0B,CAAC,CAAC;IAE9D;AACJ;AACA;AACA;IACIE,WAAW,EAAEI,WAAW;IAExB;IACAQ,cAAc;IAEd;AACJ;AACA;IACID,WAAW;IAEX;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIN,UAAU;IAEV;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIG,iBAAiB;IAEjB;AACJ;AACA;AACA;AACA;IACIK,iBAAiB;IAEjB;AACJ;AACA;AACA;IACII,SAAS;IAET;AACJ;AACA;IACIX,SAAS;IAET;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIT,WAAW;IAEX;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIF,cAAc,EAAGyE,MAA6B,IAAK;MACjD,MAAM5B,MAAM,GAAGwB,kBAAkB,CAAC,gBAAgB,CAAC;MAEnD,MAAMK,YAA2C,GAAG;QAClD,GAAGD,MAAM;QACTpC,QAAQ,EAAEO,YAAY,CAACP,QAAQ;QAC/BQ,MAAM;QACNiB,cAAc,EAAE;UACd,GAAGlB,YAAY,CAACkB,cAAc;UAC9B,GAAGW,MAAM,CAACX;QACZ,CAAC;QACDC,cAAc,EAAEU,MAAM,CAACV,cAAc,IAAInB,YAAY,CAACmB,cAAc;QACpEC,OAAO,EAAES,MAAM,CAACT,OAAO,IAAIpB,YAAY,CAACoB;MAC1C,CAAC;MAED,OAAOhE,cAAc,CAAC0E,YAAY,CAAC;IACrC,CAAC;IAED;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIjD,YAAY,EAAE,MAAOkD,MAAoB,IAAK;MAC5C,MAAM9B,MAAM,GAAGwB,kBAAkB,CAAC,cAAc,CAAC;MACjD,MAAMO,YAAY,GAAGvE,WAAW,CAAC,CAAC;MAClC,MAAMwE,KAAK,GAAGzE,oBAAoB,CAAC,CAAC;MACpC,MAAM0E,MAAM,GAAGD,KAAK,CAACE,eAAe;MACpC,MAAMC,UAAU,GAAG,MAAMvD,YAAY,CAACkD,MAAM,CAAC;MAC7C,IAAIK,UAAU,EAAE;QACd,MAAMC,SAAS,GAAG7E,oBAAoB,CAAC,CAAC,CAAC2E,eAAe;QACxD,MAAMrD,sBAAsB,CAC1B;UAAE,GAAGkB,YAAY;UAAEC;QAAO,CAAC,EAC3B;UACE+B,YAAY;UACZM,aAAa,EACXJ,MAAM,EAAEK,QAAQ,KAAKP,YAAY,GAC7BE,MAAM,CAACM,SAAS,GAChBP,KAAK,CAACQ,eAAe,EAAEF,QAAQ,KAAKP,YAAY,GAC9CC,KAAK,CAACQ,eAAe,CAACD,SAAS,GAC/B,IAAI;UACZE,UAAU,EAAEX,MAAM,CAACQ,QAAQ;UAC3BI,WAAW,EAAEN,SAAS,EAAEG,SAAS,IAAI,IAAI;UACzCI,OAAO,EAAEb,MAAM,CAACa,OAAO,IAAI9E,UAAU,CAAC,CAAC;UACvC+E,cAAc,EAAER,SAAS,EAAES,QAAQ,EAAEC,UAAU,CAAC,iBAAiB,CAAC,GAC9D,aAAa,GACb;QACN,CACF,CAAC;MACH;MACA,OAAOX,UAAU;IACnB,CAAC;IAED;AACJ;AACA;AACA;AACA;IACI3D,YAAY,EAAE,MAAAA,CAAA,KAAY;MACxB,MAAMuE,EAAE,GAAG,MAAMvE,YAAY,CAAC,CAAC;MAC/B,IAAIuE,EAAE,EAAE;QACNjE,eAAe,CAACkE,QAAQ,CAAC;UACvBC,YAAY,EAAE,IAAI;UAClBC,OAAO,EAAE,IAAI;UACbxB,kBAAkB,EAAE,KAAK;UACzByB,QAAQ,EAAE;QACZ,CAAC,CAAC;MACJ;MACA,OAAOJ,EAAE;IACX,CAAC;IAED;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACI9E,kBAAkB;IAElB;AACJ;AACA;IACIC,YAAY;IAEZ;AACJ;AACA;IACIS,OAAO;IAEP;AACJ;AACA;IACIL,cAAc;IAEd;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIP,eAAe;IAEf;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIN;EACF,CAAC;AACH;AASA,OAAO,MAAM2F,UAA4B,GAAGxD,sBAAsB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["emitAfterAppReady","checkForUpdate","reportUpdateError","createHttpClient","addListener","getPublicActiveUpdateState","getActiveUpdateState","getBundleId","clearCrashHistory","getAppVersion","getBaseURL","getUpdateId","getChannel","getCohort","getCrashHistory","getDefaultChannel","getFingerprintHash","getInstallId","getManifest","getMinBundleId","isChannelSwitched","notifyAppReady","reload","resetChannel","setCohort","setReloadBehavior","stageBundle","configurePlugins","hotUpdaterStore","init","wrap","defineClientPlugin","extractSignatureFailure","isSignatureVerificationError","registerGlobalGetBaseURL","fn","globalThis","HotUpdaterGetBaseURL","createHotUpdaterClient","configurationAPI","mixedConfigurationReported","globalConfig","client","createMissingNetworkConfigError","apiName","Error","baseURLExample","normalizeOptions","options","incoming","updateMode","autoOptions","baseURL","plugins","_plugins","rest","normalizeInitOptions","_updateMode","baseURLRest","configureGlobal","normalizedOptions","requestHeaders","requestTimeout","onError","reportMixedConfiguration","nextAPI","console","error","ensureGlobalClient","methodName","isUpdateDownloaded","getSnapshot","config","mergedConfig","updateBundle","params","fromBundleId","state","active","activeSelection","fromReleaseId","bundleId","releaseId","stableSelection","channel","strategyOf","scopeKey","startsWith","delivery","undefined","targetBundleId","targetReleaseId","selection","updateStrategy","toBundleId","toReleaseId","ok","setState","artifactType","details","progress","HotUpdater"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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oBAAoB,CAACR,OAAO,CAAC;MAEvDgB,wBAAwB,CAAC,MAAM,CAAC;MAChCL,eAAe,CAACC,iBAAiB,EAAEZ,OAAO,CAAC;MAE3CnB,IAAI,CAAC+B,iBAAiB,CAAC;IACzB,CAAC;IAED;AACJ;AACA;IACItC,MAAM;IAEN;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIG,iBAAiB;IAEjB;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACI6C,kBAAkB,EAAEA,CAAA,KAAM1C,eAAe,CAAC2C,WAAW,CAAC,CAAC,CAACD,kBAAkB;IAE1E;AACJ;AACA;IACI7D,aAAa;IAEb;IACAH,oBAAoB,EAAE,MAAAA,CAAA,KAAYD,0BAA0B,CAAC,CAAC;IAE9D;AACJ;AACA;AACA;IACIE,WAAW,EAAEI,WAAW;IAExB;IACAQ,cAAc;IAEd;AACJ;AACA;IACID,WAAW;IAEX;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIN,UAAU;IAEV;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIG,iBAAiB;IAEjB;AACJ;AACA;AACA;AACA;IACIK,iBAAiB;IAEjB;AACJ;AACA;AACA;IACII,SAAS;IAET;AACJ;AACA;IACIX,SAAS;IAET;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIT,WAAW;IAEX;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIH,cAAc,EAAGuE,MAA6B,IAAK;MACjD,MAAM9B,MAAM,GAAG0B,kBAAkB,CAAC,gBAAgB,CAAC;MAEnD,MAAMK,YAA2C,GAAG;QAClD,GAAGD,MAAM;QACT9B,MAAM;QACNmB,cAAc,EAAE;UACd,GAAGpB,YAAY,CAACoB,cAAc;UAC9B,GAAGW,MAAM,CAACX;QACZ,CAAC;QACDC,cAAc,EAAEU,MAAM,CAACV,cAAc,IAAIrB,YAAY,CAACqB,cAAc;QACpEC,OAAO,EAAES,MAAM,CAACT,OAAO,IAAItB,YAAY,CAACsB;MAC1C,CAAC;MAED,OAAO9D,cAAc,CAACwE,YAAY,CAAC;IACrC,CAAC;IAED;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIC,YAAY,EAAE,MAAOC,MAAoB,IAAK;MAC5CP,kBAAkB,CAAC,cAAc,CAAC;MAClC,MAAMQ,YAAY,GAAGrE,WAAW,CAAC,CAAC;MAClC,MAAMsE,KAAK,GAAGvE,oBAAoB,CAAC,CAAC;MACpC,MAAMwE,MAAM,GAAGD,KAAK,CAACE,eAAe;MACpC,MAAMC,aAAa,GACjBF,MAAM,EAAEG,QAAQ,KAAKL,YAAY,GAC7BE,MAAM,CAACI,SAAS,GAChBL,KAAK,CAACM,eAAe,EAAEF,QAAQ,KAAKL,YAAY,GAC9CC,KAAK,CAACM,eAAe,CAACD,SAAS,GAC/B,IAAI;MACZ,MAAME,OAAO,GAAGT,MAAM,CAACS,OAAO,IAAIxE,UAAU,CAAC,CAAC;MAC9C,MAAMyE,UAAU,GAAIC,QAAmC,IACrDA,QAAQ,EAAEC,UAAU,CAAC,iBAAiB,CAAC,GAAG,aAAa,GAAG,YAAY;MACxE,IAAIC,QAAiD;MACrD,IAAI;QACFA,QAAQ,GAAG,MAAM9D,WAAW,CAACiD,MAAM,CAAC;MACtC,CAAC,CAAC,OAAOR,KAAK,EAAE;QACdjE,iBAAiB,CAACiE,KAAK,EAAE,UAAU,EAAEsB,SAAS,EAAE;UAC9CR,QAAQ,EAAEL,YAAY;UACtBQ,OAAO;UACPM,cAAc,EAAEf,MAAM,CAACM,QAAQ;UAC/BU,eAAe,EACZhB,MAAM,CAACiB,SAAS,EACbV,SAAS,IAAI,IAAI;UACvBW,cAAc,EAAER,UAAU,CACvBV,MAAM,CAACiB,SAAS,EACbN,QACN;QACF,CAAC,CAAC;QACF,MAAMnB,KAAK;MACb;MACA,IAAIqB,QAAQ,KAAK,IAAI,IAAIb,MAAM,CAACM,QAAQ,KAAKL,YAAY,EAAE;QACzD5E,iBAAiB,CAAC,oBAAoB,EAAE,MAAM;UAC5C,MAAM4F,SAAS,GAAGtF,oBAAoB,CAAC,CAAC,CAACyE,eAAe;UACxD,OAAO;YACLK,OAAO;YACPR,YAAY;YACZI,aAAa;YACbc,UAAU,EAAEnB,MAAM,CAACM,QAAQ;YAC3Bc,WAAW,EAAEH,SAAS,EAAEV,SAAS,IAAI,IAAI;YACzCW,cAAc,EAAER,UAAU,CAACO,SAAS,EAAEN,QAAQ,CAAC;YAC/C,GAAGE;UACL,CAAC;QACH,CAAC,CAAC;MACJ;MACA,OAAO,IAAI;IACb,CAAC;IAED;AACJ;AACA;AACA;AACA;IACIjE,YAAY,EAAE,MAAAA,CAAA,KAAY;MACxB,MAAMyE,EAAE,GAAG,MAAMzE,YAAY,CAAC,CAAC;MAC/B,IAAIyE,EAAE,EAAE;QACNpE,eAAe,CAACqE,QAAQ,CAAC;UACvBC,YAAY,EAAE,IAAI;UAClBC,OAAO,EAAE,IAAI;UACb7B,kBAAkB,EAAE,KAAK;UACzB8B,QAAQ,EAAE;QACZ,CAAC,CAAC;MACJ;MACA,OAAOJ,EAAE;IACX,CAAC;IAED;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIhF,kBAAkB;IAElB;AACJ;AACA;IACIC,YAAY;IAEZ;AACJ;AACA;IACII,cAAc;IAEd;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIP,eAAe;IAEf;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIN;EACF,CAAC;AACH;AASA,OAAO,MAAM6F,UAA4B,GAAG/D,sBAAsB,CAAC,CAAC","ignoreList":[]}