@hot-updater/react-native 1.0.0-rc.28 → 1.0.0-rc.29
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/lib/commonjs/fetchJSON.js +12 -26
- package/lib/commonjs/fetchJSON.js.map +1 -1
- package/lib/commonjs/fetchUpdateResponse.js +54 -0
- package/lib/commonjs/fetchUpdateResponse.js.map +1 -0
- package/lib/commonjs/httpClient.js +9 -3
- package/lib/commonjs/httpClient.js.map +1 -1
- package/lib/commonjs/index.js +6 -2
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/releaseCatalogCache.js +17 -27
- package/lib/commonjs/releaseCatalogCache.js.map +1 -1
- package/lib/commonjs/sdkVersion.js +1 -1
- package/lib/module/clientPlugin.js.map +1 -1
- package/lib/module/fetchJSON.js +12 -26
- package/lib/module/fetchJSON.js.map +1 -1
- package/lib/module/fetchUpdateResponse.js +49 -0
- package/lib/module/fetchUpdateResponse.js.map +1 -0
- package/lib/module/httpClient.js +9 -3
- package/lib/module/httpClient.js.map +1 -1
- package/lib/module/index.js +6 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/releaseCatalogCache.js +17 -27
- package/lib/module/releaseCatalogCache.js.map +1 -1
- package/lib/module/sdkVersion.js +1 -1
- package/lib/typescript/commonjs/clientPlugin.d.ts +1 -1
- package/lib/typescript/commonjs/clientPlugin.d.ts.map +1 -1
- package/lib/typescript/commonjs/fetchJSON.d.ts +2 -5
- package/lib/typescript/commonjs/fetchJSON.d.ts.map +1 -1
- package/lib/typescript/commonjs/fetchUpdateResponse.d.ts +14 -0
- package/lib/typescript/commonjs/fetchUpdateResponse.d.ts.map +1 -0
- package/lib/typescript/commonjs/httpClient.d.ts +2 -2
- package/lib/typescript/commonjs/httpClient.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +1 -1
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/releaseCatalogCache.d.ts +2 -0
- package/lib/typescript/commonjs/releaseCatalogCache.d.ts.map +1 -1
- package/lib/typescript/commonjs/sdkVersion.d.ts +1 -1
- package/lib/typescript/module/clientPlugin.d.ts +1 -1
- package/lib/typescript/module/clientPlugin.d.ts.map +1 -1
- package/lib/typescript/module/fetchJSON.d.ts +2 -5
- package/lib/typescript/module/fetchJSON.d.ts.map +1 -1
- package/lib/typescript/module/fetchUpdateResponse.d.ts +14 -0
- package/lib/typescript/module/fetchUpdateResponse.d.ts.map +1 -0
- package/lib/typescript/module/httpClient.d.ts +2 -2
- package/lib/typescript/module/httpClient.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +1 -1
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/releaseCatalogCache.d.ts +2 -0
- package/lib/typescript/module/releaseCatalogCache.d.ts.map +1 -1
- package/lib/typescript/module/sdkVersion.d.ts +1 -1
- package/package.json +3 -3
- package/src/clientPlugin.ts +1 -0
- package/src/fetchJSON.ts +11 -31
- package/src/fetchUpdateResponse.ts +54 -0
- package/src/httpClient.ts +10 -2
- package/src/index.ts +7 -2
- package/src/releaseCatalogCache.ts +23 -38
- package/src/sdkVersion.ts +1 -1
|
@@ -4,36 +4,22 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.fetchJSON = exports.FetchJSONResponseError = void 0;
|
|
7
|
+
var _fetchUpdateResponse = require("./fetchUpdateResponse.js");
|
|
7
8
|
var _updateError = require("./updateError.js");
|
|
8
9
|
class FetchJSONResponseError extends _updateError.UpdateHttpError {}
|
|
9
10
|
exports.FetchJSONResponseError = FetchJSONResponseError;
|
|
10
|
-
const fetchJSON = async
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
Accept: "application/json",
|
|
21
|
-
...requestHeaders
|
|
22
|
-
},
|
|
23
|
-
signal: controller.signal
|
|
24
|
-
});
|
|
25
|
-
if (response.status !== 200) {
|
|
26
|
-
throw new FetchJSONResponseError(response.status, response.statusText);
|
|
27
|
-
}
|
|
28
|
-
return await response.json();
|
|
29
|
-
} catch (error) {
|
|
30
|
-
if (error instanceof Error && error.name === "AbortError") {
|
|
31
|
-
throw new Error("Request timed out");
|
|
32
|
-
}
|
|
33
|
-
throw error;
|
|
34
|
-
} finally {
|
|
35
|
-
clearTimeout(timeoutId);
|
|
11
|
+
const fetchJSON = async input => {
|
|
12
|
+
const {
|
|
13
|
+
response,
|
|
14
|
+
body
|
|
15
|
+
} = await (0, _fetchUpdateResponse.fetchUpdateResponse)({
|
|
16
|
+
...input,
|
|
17
|
+
resource: "artifact"
|
|
18
|
+
});
|
|
19
|
+
if (response.status !== 200) {
|
|
20
|
+
throw new FetchJSONResponseError(response.status, response.statusText);
|
|
36
21
|
}
|
|
22
|
+
return JSON.parse(body);
|
|
37
23
|
};
|
|
38
24
|
exports.fetchJSON = fetchJSON;
|
|
39
25
|
//# sourceMappingURL=fetchJSON.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_fetchUpdateResponse","require","_updateError","FetchJSONResponseError","UpdateHttpError","exports","fetchJSON","input","response","body","fetchUpdateResponse","resource","status","statusText","JSON","parse"],"sourceRoot":"../../src","sources":["fetchJSON.ts"],"mappings":";;;;;;AAAA,IAAAA,oBAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEO,MAAME,sBAAsB,SAASC,4BAAe,CAAC;AAAEC,OAAA,CAAAF,sBAAA,GAAAA,sBAAA;AAEvD,MAAMG,SAAS,GAAG,MACvBC,KAAsC,IACvB;EACf,MAAM;IAAEC,QAAQ;IAAEC;EAAK,CAAC,GAAG,MAAM,IAAAC,wCAAmB,EAAC;IACnD,GAAGH,KAAK;IACRI,QAAQ,EAAE;EACZ,CAAC,CAAC;EACF,IAAIH,QAAQ,CAACI,MAAM,KAAK,GAAG,EAAE;IAC3B,MAAM,IAAIT,sBAAsB,CAACK,QAAQ,CAACI,MAAM,EAAEJ,QAAQ,CAACK,UAAU,CAAC;EACxE;EACA,OAAOC,IAAI,CAACC,KAAK,CAACN,IAAK,CAAC;AAC1B,CAAC;AAACJ,OAAA,CAAAC,SAAA,GAAAA,SAAA","ignoreList":[]}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.fetchUpdateResponse = void 0;
|
|
7
|
+
/** Read once for parsing and diagnostics, under the same request timeout. */
|
|
8
|
+
const fetchUpdateResponse = async ({
|
|
9
|
+
url,
|
|
10
|
+
resource,
|
|
11
|
+
requestHeaders,
|
|
12
|
+
requestTimeout = 5000,
|
|
13
|
+
onResponse
|
|
14
|
+
}) => {
|
|
15
|
+
const controller = new AbortController();
|
|
16
|
+
const timeoutId = setTimeout(() => controller.abort(), requestTimeout);
|
|
17
|
+
try {
|
|
18
|
+
const headers = new Headers(requestHeaders);
|
|
19
|
+
if (!headers.has("Accept")) headers.set("Accept", "application/json");
|
|
20
|
+
const response = await fetch(url, {
|
|
21
|
+
headers,
|
|
22
|
+
signal: controller.signal
|
|
23
|
+
});
|
|
24
|
+
let body = null;
|
|
25
|
+
try {
|
|
26
|
+
body = await response.text();
|
|
27
|
+
} catch (error) {
|
|
28
|
+
// A broken error body must not hide an HTTP error already received.
|
|
29
|
+
if (response.status === 200) throw error;
|
|
30
|
+
} finally {
|
|
31
|
+
onResponse?.({
|
|
32
|
+
resource,
|
|
33
|
+
// React Native URL implementations do not all expose pathname.
|
|
34
|
+
path: url.replace(/^https?:\/\/[^/?#]*/i, "").split(/[?#]/, 1)[0] || "/",
|
|
35
|
+
status: response.status,
|
|
36
|
+
body,
|
|
37
|
+
bodyTruncated: false
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
response,
|
|
42
|
+
body
|
|
43
|
+
};
|
|
44
|
+
} catch (error) {
|
|
45
|
+
if (error instanceof Error && error.name === "AbortError") {
|
|
46
|
+
throw new Error("Request timed out");
|
|
47
|
+
}
|
|
48
|
+
throw error;
|
|
49
|
+
} finally {
|
|
50
|
+
clearTimeout(timeoutId);
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
exports.fetchUpdateResponse = fetchUpdateResponse;
|
|
54
|
+
//# sourceMappingURL=fetchUpdateResponse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["fetchUpdateResponse","url","resource","requestHeaders","requestTimeout","onResponse","controller","AbortController","timeoutId","setTimeout","abort","headers","Headers","has","set","response","fetch","signal","body","text","error","status","path","replace","split","bodyTruncated","Error","name","clearTimeout","exports"],"sourceRoot":"../../src","sources":["fetchUpdateResponse.ts"],"mappings":";;;;;;AAUA;AACO,MAAMA,mBAAmB,GAAG,MAAAA,CAAO;EACxCC,GAAG;EACHC,QAAQ;EACRC,cAAc;EACdC,cAAc,GAAG,IAAI;EACrBC;AACa,CAAC,KAA2D;EACzE,MAAMC,UAAU,GAAG,IAAIC,eAAe,CAAC,CAAC;EACxC,MAAMC,SAAS,GAAGC,UAAU,CAAC,MAAMH,UAAU,CAACI,KAAK,CAAC,CAAC,EAAEN,cAAc,CAAC;EACtE,IAAI;IACF,MAAMO,OAAO,GAAG,IAAIC,OAAO,CAACT,cAAc,CAAC;IAC3C,IAAI,CAACQ,OAAO,CAACE,GAAG,CAAC,QAAQ,CAAC,EAAEF,OAAO,CAACG,GAAG,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACrE,MAAMC,QAAQ,GAAG,MAAMC,KAAK,CAACf,GAAG,EAAE;MAChCU,OAAO;MACPM,MAAM,EAAEX,UAAU,CAACW;IACrB,CAAC,CAAC;IACF,IAAIC,IAAmB,GAAG,IAAI;IAC9B,IAAI;MACFA,IAAI,GAAG,MAAMH,QAAQ,CAACI,IAAI,CAAC,CAAC;IAC9B,CAAC,CAAC,OAAOC,KAAK,EAAE;MACd;MACA,IAAIL,QAAQ,CAACM,MAAM,KAAK,GAAG,EAAE,MAAMD,KAAK;IAC1C,CAAC,SAAS;MACRf,UAAU,GAAG;QACXH,QAAQ;QACR;QACAoB,IAAI,EACFrB,GAAG,CAACsB,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAACC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG;QACpEH,MAAM,EAAEN,QAAQ,CAACM,MAAM;QACvBH,IAAI;QACJO,aAAa,EAAE;MACjB,CAAC,CAAC;IACJ;IACA,OAAO;MAAEV,QAAQ;MAAEG;IAAK,CAAC;EAC3B,CAAC,CAAC,OAAOE,KAAc,EAAE;IACvB,IAAIA,KAAK,YAAYM,KAAK,IAAIN,KAAK,CAACO,IAAI,KAAK,YAAY,EAAE;MACzD,MAAM,IAAID,KAAK,CAAC,mBAAmB,CAAC;IACtC;IACA,MAAMN,KAAK;EACb,CAAC,SAAS;IACRQ,YAAY,CAACpB,SAAS,CAAC;EACzB;AACF,CAAC;AAACqB,OAAA,CAAA7B,mBAAA,GAAAA,mBAAA","ignoreList":[]}
|
|
@@ -55,7 +55,7 @@ const requireArtifactProtocolV1 = info => {
|
|
|
55
55
|
}
|
|
56
56
|
return info;
|
|
57
57
|
};
|
|
58
|
-
const createSession = baseURL => ({
|
|
58
|
+
const createSession = (baseURL, onResponse) => ({
|
|
59
59
|
fetchReleaseCatalog: async params => {
|
|
60
60
|
const channelKey = (0, _protocol.encodeChannelKey)(params.channel);
|
|
61
61
|
let strategyValue;
|
|
@@ -73,6 +73,9 @@ const createSession = baseURL => ({
|
|
|
73
73
|
const url = `${baseURL}/release-catalogs/${strategyPath}/${params.platform}/${channelKey}/${encodeURIComponent(strategyValue)}`;
|
|
74
74
|
return (0, _releaseCatalogCache.fetchReleaseCatalogWithCache)({
|
|
75
75
|
baseURL,
|
|
76
|
+
...(onResponse ? {
|
|
77
|
+
onResponse
|
|
78
|
+
} : {}),
|
|
76
79
|
expectedScope: params.updateStrategy === "fingerprint" ? {
|
|
77
80
|
channelKey,
|
|
78
81
|
fingerprintHash: strategyValue,
|
|
@@ -92,6 +95,9 @@ const createSession = baseURL => ({
|
|
|
92
95
|
let info;
|
|
93
96
|
try {
|
|
94
97
|
info = await (0, _fetchJSON.fetchJSON)({
|
|
98
|
+
...(onResponse ? {
|
|
99
|
+
onResponse
|
|
100
|
+
} : {}),
|
|
95
101
|
requestHeaders: params.requestHeaders,
|
|
96
102
|
requestTimeout: params.requestTimeout,
|
|
97
103
|
url: `${baseURL}/artifacts/v1/${encodeURIComponent(params.targetBundleId)}/from/${encodeURIComponent(params.currentBundleId)}`
|
|
@@ -109,8 +115,8 @@ const createSession = baseURL => ({
|
|
|
109
115
|
});
|
|
110
116
|
|
|
111
117
|
/** Creates the private HTTP client used by HotUpdater.init and HotUpdater.wrap. */
|
|
112
|
-
const createHttpClient = baseURL => ({
|
|
113
|
-
createSession: async () => createSession(await (0, _protocol.resolveBaseURL)(baseURL))
|
|
118
|
+
const createHttpClient = (baseURL, onResponse) => ({
|
|
119
|
+
createSession: async () => createSession(await (0, _protocol.resolveBaseURL)(baseURL), onResponse)
|
|
114
120
|
});
|
|
115
121
|
exports.createHttpClient = createHttpClient;
|
|
116
122
|
//# sourceMappingURL=httpClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_protocol","require","_fetchJSON","_releaseCatalogCache","_updateError","resolveArtifactUrl","baseURL","value","test","URL","error","InvalidUpdateResponseError","cause","startsWith","slice","resolveArtifactUrls","info","manifestUrl","archiveUrl","assets","Object","fromEntries","entries","map","path","asset","file","url","patch","patchUrl","requireArtifactProtocolV1","artifactProtocolVersion","ARTIFACT_PROTOCOL_VERSION","manifestFileHash","undefined","values","fileHash","createSession","fetchReleaseCatalog","params","channelKey","encodeChannelKey","channel","strategyValue","updateStrategy","fingerprintHash","Error","appVersion","canonicalizeAppVersion","strategyPath","platform","encodeURIComponent","fetchReleaseCatalogWithCache","expectedScope","strategy","requestHeaders","requestTimeout","resolveArtifact","fetchJSON","targetBundleId","currentBundleId","FetchJSONResponseError","status","createHttpClient","resolveBaseURL","exports"],"sourceRoot":"../../src","sources":["httpClient.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;
|
|
1
|
+
{"version":3,"names":["_protocol","require","_fetchJSON","_releaseCatalogCache","_updateError","resolveArtifactUrl","baseURL","value","test","URL","error","InvalidUpdateResponseError","cause","startsWith","slice","resolveArtifactUrls","info","manifestUrl","archiveUrl","assets","Object","fromEntries","entries","map","path","asset","file","url","patch","patchUrl","requireArtifactProtocolV1","artifactProtocolVersion","ARTIFACT_PROTOCOL_VERSION","manifestFileHash","undefined","values","fileHash","createSession","onResponse","fetchReleaseCatalog","params","channelKey","encodeChannelKey","channel","strategyValue","updateStrategy","fingerprintHash","Error","appVersion","canonicalizeAppVersion","strategyPath","platform","encodeURIComponent","fetchReleaseCatalogWithCache","expectedScope","strategy","requestHeaders","requestTimeout","resolveArtifact","fetchJSON","targetBundleId","currentBundleId","FetchJSONResponseError","status","createHttpClient","resolveBaseURL","exports"],"sourceRoot":"../../src","sources":["httpClient.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/index.js
CHANGED
|
@@ -108,7 +108,9 @@ function createHotUpdaterClient() {
|
|
|
108
108
|
} = autoOptions;
|
|
109
109
|
return {
|
|
110
110
|
...rest,
|
|
111
|
-
client: (0, _httpClient.createHttpClient)(baseURL
|
|
111
|
+
client: (0, _httpClient.createHttpClient)(baseURL, response => {
|
|
112
|
+
(0, _appReady.emitAfterAppReady)("onHttpResponse", () => response);
|
|
113
|
+
})
|
|
112
114
|
};
|
|
113
115
|
}
|
|
114
116
|
throw createMissingNetworkConfigError("wrap");
|
|
@@ -126,7 +128,9 @@ function createHotUpdaterClient() {
|
|
|
126
128
|
} = rest;
|
|
127
129
|
return {
|
|
128
130
|
...baseURLRest,
|
|
129
|
-
client: (0, _httpClient.createHttpClient)(baseURL
|
|
131
|
+
client: (0, _httpClient.createHttpClient)(baseURL, response => {
|
|
132
|
+
(0, _appReady.emitAfterAppReady)("onHttpResponse", () => response);
|
|
133
|
+
})
|
|
130
134
|
};
|
|
131
135
|
}
|
|
132
136
|
throw createMissingNetworkConfigError("init");
|
|
@@ -1 +1 @@
|
|
|
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","_client","_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","
|
|
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","_client","_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","response","emitAfterAppReady","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","toBundleId","toReleaseId","resetChannel","ok","setState","artifactType","details","progress","getFingerprintHash","getInstallId","notifyAppReady","getCrashHistory","clearCrashHistory","HotUpdater"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.fetchReleaseCatalogWithCache = exports.createReleaseCatalogCachePartition = exports.MAX_RELEASE_CATALOG_CACHE_ENTRY_BYTES = void 0;
|
|
7
7
|
var _protocol = require("@hot-updater/protocol");
|
|
8
|
+
var _fetchUpdateResponse = require("./fetchUpdateResponse.js");
|
|
8
9
|
var _updateError = require("./updateError.js");
|
|
9
10
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
10
11
|
const CACHE_FORMAT_VERSION = "1";
|
|
@@ -50,29 +51,16 @@ const createReleaseCatalogCachePartition = input => JSON.stringify({
|
|
|
50
51
|
version: 2
|
|
51
52
|
});
|
|
52
53
|
exports.createReleaseCatalogCachePartition = createReleaseCatalogCachePartition;
|
|
53
|
-
const
|
|
54
|
-
|
|
55
|
-
const
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
}
|
|
64
|
-
return await fetch(input.url, {
|
|
65
|
-
headers,
|
|
66
|
-
signal: controller.signal
|
|
67
|
-
});
|
|
68
|
-
} catch (error) {
|
|
69
|
-
if (error instanceof Error && error.name === "AbortError") {
|
|
70
|
-
throw new Error("Request timed out");
|
|
71
|
-
}
|
|
72
|
-
throw error;
|
|
73
|
-
} finally {
|
|
74
|
-
clearTimeout(timeoutId);
|
|
75
|
-
}
|
|
54
|
+
const isEmptyCatalogResponse = response => response.status === 404 && response.headers.get("x-hot-updater-catalog")?.trim().toLowerCase() === "none";
|
|
55
|
+
const fetchCatalogResponse = (input, etag) => {
|
|
56
|
+
const headers = new Headers(input.requestHeaders);
|
|
57
|
+
headers.set("Accept", "application/json");
|
|
58
|
+
if (etag === undefined) headers.delete("If-None-Match");else headers.set("If-None-Match", etag);
|
|
59
|
+
return (0, _fetchUpdateResponse.fetchUpdateResponse)({
|
|
60
|
+
...input,
|
|
61
|
+
resource: "catalog",
|
|
62
|
+
requestHeaders: Object.fromEntries(headers.entries())
|
|
63
|
+
});
|
|
76
64
|
};
|
|
77
65
|
const readValidatedCache = async (partition, expectedScope) => {
|
|
78
66
|
const value = await readNativeReleaseCatalogCache(partition);
|
|
@@ -83,16 +71,18 @@ const readValidatedCache = async (partition, expectedScope) => {
|
|
|
83
71
|
}
|
|
84
72
|
return cached;
|
|
85
73
|
};
|
|
86
|
-
const consumeSuccessfulResponse = async (
|
|
74
|
+
const consumeSuccessfulResponse = async ({
|
|
75
|
+
response,
|
|
76
|
+
body
|
|
77
|
+
}, input, partition) => {
|
|
87
78
|
// The server marks the 404 of a scope that has no catalog yet: no update,
|
|
88
79
|
// not a failure. Any other 404 is a wrong baseURL or route.
|
|
89
|
-
if (response
|
|
80
|
+
if (isEmptyCatalogResponse(response)) {
|
|
90
81
|
return null;
|
|
91
82
|
}
|
|
92
83
|
if (response.status !== 200) {
|
|
93
84
|
throw new _updateError.UpdateHttpError(response.status, response.statusText);
|
|
94
85
|
}
|
|
95
|
-
const body = await response.text();
|
|
96
86
|
const catalog = (0, _protocol.parseReleaseCatalog)(body, input.expectedScope);
|
|
97
87
|
if (catalog === null) {
|
|
98
88
|
await removeNativeReleaseCatalogCache(partition);
|
|
@@ -127,7 +117,7 @@ const fetchReleaseCatalogWithCache = async input => {
|
|
|
127
117
|
const partition = createReleaseCatalogCachePartition(input);
|
|
128
118
|
const cached = await readValidatedCache(partition, input.expectedScope);
|
|
129
119
|
const response = await fetchCatalogResponse(input, cached?.etag);
|
|
130
|
-
if (response.status === 304) {
|
|
120
|
+
if (response.response.status === 304) {
|
|
131
121
|
if (cached !== null) return cached.catalog;
|
|
132
122
|
const repairResponse = await fetchCatalogResponse(input);
|
|
133
123
|
return consumeSuccessfulResponse(repairResponse, input, partition);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_protocol","require","_updateError","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","CACHE_FORMAT_VERSION","MAX_ETAG_BYTES","MAX_RELEASE_CATALOG_CACHE_ENTRY_BYTES","exports","MAX_RELEASE_CATALOG_WIRE_BYTES","readNativeReleaseCatalogCache","partition","Promise","resolve","then","writeNativeReleaseCatalogCache","payload","removeNativeReleaseCatalogCache","lastParsedCache","isValidETag","value","length","includes","getUtf8ByteLength","serializeCache","etag","body","parseCache","expectedScope","serialized","versionEnd","indexOf","etagEnd","slice","catalog","parseReleaseCatalog","parsed","normalizedHeaders","requestHeaders","headers","Headers","entries","map","name","toLowerCase","sort","firstName","secondName","localeCompare","createReleaseCatalogCachePartition","input","JSON","stringify","baseURL","url","version","
|
|
1
|
+
{"version":3,"names":["_protocol","require","_fetchUpdateResponse","_updateError","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","CACHE_FORMAT_VERSION","MAX_ETAG_BYTES","MAX_RELEASE_CATALOG_CACHE_ENTRY_BYTES","exports","MAX_RELEASE_CATALOG_WIRE_BYTES","readNativeReleaseCatalogCache","partition","Promise","resolve","then","writeNativeReleaseCatalogCache","payload","removeNativeReleaseCatalogCache","lastParsedCache","isValidETag","value","length","includes","getUtf8ByteLength","serializeCache","etag","body","parseCache","expectedScope","serialized","versionEnd","indexOf","etagEnd","slice","catalog","parseReleaseCatalog","parsed","normalizedHeaders","requestHeaders","headers","Headers","entries","map","name","toLowerCase","sort","firstName","secondName","localeCompare","createReleaseCatalogCachePartition","input","JSON","stringify","baseURL","url","version","isEmptyCatalogResponse","response","status","trim","fetchCatalogResponse","undefined","delete","fetchUpdateResponse","resource","fromEntries","readValidatedCache","cached","consumeSuccessfulResponse","UpdateHttpError","statusText","InvalidUpdateResponseError","fetchReleaseCatalogWithCache","repairResponse"],"sourceRoot":"../../src","sources":["releaseCatalogCache.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,5 +4,5 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.HOT_UPDATER_SDK_VERSION = void 0;
|
|
7
|
-
const HOT_UPDATER_SDK_VERSION = exports.HOT_UPDATER_SDK_VERSION = "1.0.0-rc.
|
|
7
|
+
const HOT_UPDATER_SDK_VERSION = exports.HOT_UPDATER_SDK_VERSION = "1.0.0-rc.29";
|
|
8
8
|
//# sourceMappingURL=sdkVersion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["defineClientPlugin"],"sourceRoot":"../../src","sources":["clientPlugin.ts"],"mappings":";;AAAA,SACEA,kBAAkB,
|
|
1
|
+
{"version":3,"names":["defineClientPlugin"],"sourceRoot":"../../src","sources":["clientPlugin.ts"],"mappings":";;AAAA,SACEA,kBAAkB,QAgBb,uBAAuB","ignoreList":[]}
|
package/lib/module/fetchJSON.js
CHANGED
|
@@ -1,33 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
import { fetchUpdateResponse } from "./fetchUpdateResponse.js";
|
|
3
4
|
import { UpdateHttpError } from "./updateError.js";
|
|
4
5
|
export class FetchJSONResponseError extends UpdateHttpError {}
|
|
5
|
-
export const fetchJSON = async
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
Accept: "application/json",
|
|
16
|
-
...requestHeaders
|
|
17
|
-
},
|
|
18
|
-
signal: controller.signal
|
|
19
|
-
});
|
|
20
|
-
if (response.status !== 200) {
|
|
21
|
-
throw new FetchJSONResponseError(response.status, response.statusText);
|
|
22
|
-
}
|
|
23
|
-
return await response.json();
|
|
24
|
-
} catch (error) {
|
|
25
|
-
if (error instanceof Error && error.name === "AbortError") {
|
|
26
|
-
throw new Error("Request timed out");
|
|
27
|
-
}
|
|
28
|
-
throw error;
|
|
29
|
-
} finally {
|
|
30
|
-
clearTimeout(timeoutId);
|
|
6
|
+
export const fetchJSON = async input => {
|
|
7
|
+
const {
|
|
8
|
+
response,
|
|
9
|
+
body
|
|
10
|
+
} = await fetchUpdateResponse({
|
|
11
|
+
...input,
|
|
12
|
+
resource: "artifact"
|
|
13
|
+
});
|
|
14
|
+
if (response.status !== 200) {
|
|
15
|
+
throw new FetchJSONResponseError(response.status, response.statusText);
|
|
31
16
|
}
|
|
17
|
+
return JSON.parse(body);
|
|
32
18
|
};
|
|
33
19
|
//# sourceMappingURL=fetchJSON.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["UpdateHttpError","FetchJSONResponseError","fetchJSON","
|
|
1
|
+
{"version":3,"names":["fetchUpdateResponse","UpdateHttpError","FetchJSONResponseError","fetchJSON","input","response","body","resource","status","statusText","JSON","parse"],"sourceRoot":"../../src","sources":["fetchJSON.ts"],"mappings":";;AAAA,SAASA,mBAAmB,QAA4B,0BAAuB;AAC/E,SAASC,eAAe,QAAQ,kBAAe;AAE/C,OAAO,MAAMC,sBAAsB,SAASD,eAAe,CAAC;AAE5D,OAAO,MAAME,SAAS,GAAG,MACvBC,KAAsC,IACvB;EACf,MAAM;IAAEC,QAAQ;IAAEC;EAAK,CAAC,GAAG,MAAMN,mBAAmB,CAAC;IACnD,GAAGI,KAAK;IACRG,QAAQ,EAAE;EACZ,CAAC,CAAC;EACF,IAAIF,QAAQ,CAACG,MAAM,KAAK,GAAG,EAAE;IAC3B,MAAM,IAAIN,sBAAsB,CAACG,QAAQ,CAACG,MAAM,EAAEH,QAAQ,CAACI,UAAU,CAAC;EACxE;EACA,OAAOC,IAAI,CAACC,KAAK,CAACL,IAAK,CAAC;AAC1B,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/** Read once for parsing and diagnostics, under the same request timeout. */
|
|
4
|
+
export const fetchUpdateResponse = async ({
|
|
5
|
+
url,
|
|
6
|
+
resource,
|
|
7
|
+
requestHeaders,
|
|
8
|
+
requestTimeout = 5000,
|
|
9
|
+
onResponse
|
|
10
|
+
}) => {
|
|
11
|
+
const controller = new AbortController();
|
|
12
|
+
const timeoutId = setTimeout(() => controller.abort(), requestTimeout);
|
|
13
|
+
try {
|
|
14
|
+
const headers = new Headers(requestHeaders);
|
|
15
|
+
if (!headers.has("Accept")) headers.set("Accept", "application/json");
|
|
16
|
+
const response = await fetch(url, {
|
|
17
|
+
headers,
|
|
18
|
+
signal: controller.signal
|
|
19
|
+
});
|
|
20
|
+
let body = null;
|
|
21
|
+
try {
|
|
22
|
+
body = await response.text();
|
|
23
|
+
} catch (error) {
|
|
24
|
+
// A broken error body must not hide an HTTP error already received.
|
|
25
|
+
if (response.status === 200) throw error;
|
|
26
|
+
} finally {
|
|
27
|
+
onResponse?.({
|
|
28
|
+
resource,
|
|
29
|
+
// React Native URL implementations do not all expose pathname.
|
|
30
|
+
path: url.replace(/^https?:\/\/[^/?#]*/i, "").split(/[?#]/, 1)[0] || "/",
|
|
31
|
+
status: response.status,
|
|
32
|
+
body,
|
|
33
|
+
bodyTruncated: false
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
return {
|
|
37
|
+
response,
|
|
38
|
+
body
|
|
39
|
+
};
|
|
40
|
+
} catch (error) {
|
|
41
|
+
if (error instanceof Error && error.name === "AbortError") {
|
|
42
|
+
throw new Error("Request timed out");
|
|
43
|
+
}
|
|
44
|
+
throw error;
|
|
45
|
+
} finally {
|
|
46
|
+
clearTimeout(timeoutId);
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=fetchUpdateResponse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["fetchUpdateResponse","url","resource","requestHeaders","requestTimeout","onResponse","controller","AbortController","timeoutId","setTimeout","abort","headers","Headers","has","set","response","fetch","signal","body","text","error","status","path","replace","split","bodyTruncated","Error","name","clearTimeout"],"sourceRoot":"../../src","sources":["fetchUpdateResponse.ts"],"mappings":";;AAUA;AACA,OAAO,MAAMA,mBAAmB,GAAG,MAAAA,CAAO;EACxCC,GAAG;EACHC,QAAQ;EACRC,cAAc;EACdC,cAAc,GAAG,IAAI;EACrBC;AACa,CAAC,KAA2D;EACzE,MAAMC,UAAU,GAAG,IAAIC,eAAe,CAAC,CAAC;EACxC,MAAMC,SAAS,GAAGC,UAAU,CAAC,MAAMH,UAAU,CAACI,KAAK,CAAC,CAAC,EAAEN,cAAc,CAAC;EACtE,IAAI;IACF,MAAMO,OAAO,GAAG,IAAIC,OAAO,CAACT,cAAc,CAAC;IAC3C,IAAI,CAACQ,OAAO,CAACE,GAAG,CAAC,QAAQ,CAAC,EAAEF,OAAO,CAACG,GAAG,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACrE,MAAMC,QAAQ,GAAG,MAAMC,KAAK,CAACf,GAAG,EAAE;MAChCU,OAAO;MACPM,MAAM,EAAEX,UAAU,CAACW;IACrB,CAAC,CAAC;IACF,IAAIC,IAAmB,GAAG,IAAI;IAC9B,IAAI;MACFA,IAAI,GAAG,MAAMH,QAAQ,CAACI,IAAI,CAAC,CAAC;IAC9B,CAAC,CAAC,OAAOC,KAAK,EAAE;MACd;MACA,IAAIL,QAAQ,CAACM,MAAM,KAAK,GAAG,EAAE,MAAMD,KAAK;IAC1C,CAAC,SAAS;MACRf,UAAU,GAAG;QACXH,QAAQ;QACR;QACAoB,IAAI,EACFrB,GAAG,CAACsB,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAACC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG;QACpEH,MAAM,EAAEN,QAAQ,CAACM,MAAM;QACvBH,IAAI;QACJO,aAAa,EAAE;MACjB,CAAC,CAAC;IACJ;IACA,OAAO;MAAEV,QAAQ;MAAEG;IAAK,CAAC;EAC3B,CAAC,CAAC,OAAOE,KAAc,EAAE;IACvB,IAAIA,KAAK,YAAYM,KAAK,IAAIN,KAAK,CAACO,IAAI,KAAK,YAAY,EAAE;MACzD,MAAM,IAAID,KAAK,CAAC,mBAAmB,CAAC;IACtC;IACA,MAAMN,KAAK;EACb,CAAC,SAAS;IACRQ,YAAY,CAACpB,SAAS,CAAC;EACzB;AACF,CAAC","ignoreList":[]}
|
package/lib/module/httpClient.js
CHANGED
|
@@ -51,7 +51,7 @@ const requireArtifactProtocolV1 = info => {
|
|
|
51
51
|
}
|
|
52
52
|
return info;
|
|
53
53
|
};
|
|
54
|
-
const createSession = baseURL => ({
|
|
54
|
+
const createSession = (baseURL, onResponse) => ({
|
|
55
55
|
fetchReleaseCatalog: async params => {
|
|
56
56
|
const channelKey = encodeChannelKey(params.channel);
|
|
57
57
|
let strategyValue;
|
|
@@ -69,6 +69,9 @@ const createSession = baseURL => ({
|
|
|
69
69
|
const url = `${baseURL}/release-catalogs/${strategyPath}/${params.platform}/${channelKey}/${encodeURIComponent(strategyValue)}`;
|
|
70
70
|
return fetchReleaseCatalogWithCache({
|
|
71
71
|
baseURL,
|
|
72
|
+
...(onResponse ? {
|
|
73
|
+
onResponse
|
|
74
|
+
} : {}),
|
|
72
75
|
expectedScope: params.updateStrategy === "fingerprint" ? {
|
|
73
76
|
channelKey,
|
|
74
77
|
fingerprintHash: strategyValue,
|
|
@@ -88,6 +91,9 @@ const createSession = baseURL => ({
|
|
|
88
91
|
let info;
|
|
89
92
|
try {
|
|
90
93
|
info = await fetchJSON({
|
|
94
|
+
...(onResponse ? {
|
|
95
|
+
onResponse
|
|
96
|
+
} : {}),
|
|
91
97
|
requestHeaders: params.requestHeaders,
|
|
92
98
|
requestTimeout: params.requestTimeout,
|
|
93
99
|
url: `${baseURL}/artifacts/v1/${encodeURIComponent(params.targetBundleId)}/from/${encodeURIComponent(params.currentBundleId)}`
|
|
@@ -105,7 +111,7 @@ const createSession = baseURL => ({
|
|
|
105
111
|
});
|
|
106
112
|
|
|
107
113
|
/** Creates the private HTTP client used by HotUpdater.init and HotUpdater.wrap. */
|
|
108
|
-
export const createHttpClient = baseURL => ({
|
|
109
|
-
createSession: async () => createSession(await resolveBaseURL(baseURL))
|
|
114
|
+
export const createHttpClient = (baseURL, onResponse) => ({
|
|
115
|
+
createSession: async () => createSession(await resolveBaseURL(baseURL), onResponse)
|
|
110
116
|
});
|
|
111
117
|
//# sourceMappingURL=httpClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ARTIFACT_PROTOCOL_VERSION","canonicalizeAppVersion","encodeChannelKey","resolveBaseURL","fetchJSON","FetchJSONResponseError","fetchReleaseCatalogWithCache","InvalidUpdateResponseError","resolveArtifactUrl","baseURL","value","test","URL","error","cause","startsWith","slice","resolveArtifactUrls","info","manifestUrl","archiveUrl","assets","Object","fromEntries","entries","map","path","asset","file","url","patch","patchUrl","requireArtifactProtocolV1","artifactProtocolVersion","manifestFileHash","undefined","values","fileHash","createSession","fetchReleaseCatalog","params","channelKey","channel","strategyValue","updateStrategy","fingerprintHash","Error","appVersion","strategyPath","platform","encodeURIComponent","expectedScope","strategy","requestHeaders","requestTimeout","resolveArtifact","targetBundleId","currentBundleId","status","createHttpClient"],"sourceRoot":"../../src","sources":["httpClient.ts"],"mappings":";;AAAA,SACEA,yBAAyB,EACzBC,sBAAsB,EACtBC,gBAAgB,EAChBC,cAAc,
|
|
1
|
+
{"version":3,"names":["ARTIFACT_PROTOCOL_VERSION","canonicalizeAppVersion","encodeChannelKey","resolveBaseURL","fetchJSON","FetchJSONResponseError","fetchReleaseCatalogWithCache","InvalidUpdateResponseError","resolveArtifactUrl","baseURL","value","test","URL","error","cause","startsWith","slice","resolveArtifactUrls","info","manifestUrl","archiveUrl","assets","Object","fromEntries","entries","map","path","asset","file","url","patch","patchUrl","requireArtifactProtocolV1","artifactProtocolVersion","manifestFileHash","undefined","values","fileHash","createSession","onResponse","fetchReleaseCatalog","params","channelKey","channel","strategyValue","updateStrategy","fingerprintHash","Error","appVersion","strategyPath","platform","encodeURIComponent","expectedScope","strategy","requestHeaders","requestTimeout","resolveArtifact","targetBundleId","currentBundleId","status","createHttpClient"],"sourceRoot":"../../src","sources":["httpClient.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -62,7 +62,9 @@ function createHotUpdaterClient() {
|
|
|
62
62
|
} = autoOptions;
|
|
63
63
|
return {
|
|
64
64
|
...rest,
|
|
65
|
-
client: createHttpClient(baseURL
|
|
65
|
+
client: createHttpClient(baseURL, response => {
|
|
66
|
+
emitAfterAppReady("onHttpResponse", () => response);
|
|
67
|
+
})
|
|
66
68
|
};
|
|
67
69
|
}
|
|
68
70
|
throw createMissingNetworkConfigError("wrap");
|
|
@@ -80,7 +82,9 @@ function createHotUpdaterClient() {
|
|
|
80
82
|
} = rest;
|
|
81
83
|
return {
|
|
82
84
|
...baseURLRest,
|
|
83
|
-
client: createHttpClient(baseURL
|
|
85
|
+
client: createHttpClient(baseURL, response => {
|
|
86
|
+
emitAfterAppReady("onHttpResponse", () => response);
|
|
87
|
+
})
|
|
84
88
|
};
|
|
85
89
|
}
|
|
86
90
|
throw createMissingNetworkConfigError("init");
|