electron-incremental-update 2.4.3 → 3.0.0-beta.3
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/README.md +48 -40
- package/dist/download-BN4uMS4_.d.mts +39 -0
- package/dist/download-DO7iuxEJ.d.cts +39 -0
- package/dist/electron-DH-Uyikp.cjs +321 -0
- package/dist/electron-OKQIYbcw.mjs +181 -0
- package/dist/index.cjs +261 -331
- package/dist/index.d.cts +179 -169
- package/dist/index.d.mts +204 -0
- package/dist/index.mjs +273 -0
- package/dist/provider.cjs +142 -330
- package/dist/provider.d.cts +113 -114
- package/dist/provider.d.mts +133 -0
- package/dist/provider.mjs +152 -0
- package/dist/types-BM9Jfu7q.d.cts +154 -0
- package/dist/types-DASqEPXE.d.mts +154 -0
- package/dist/utils.cjs +43 -381
- package/dist/utils.d.cts +120 -85
- package/dist/utils.d.mts +164 -0
- package/dist/utils.mjs +5 -0
- package/dist/version--eVB2A7n.mjs +72 -0
- package/dist/version-aPrLuz_-.cjs +129 -0
- package/dist/vite.d.mts +521 -0
- package/dist/vite.mjs +1094 -0
- package/dist/zip-BCC7FAQ_.cjs +264 -0
- package/dist/zip-Dwm7s1C9.mjs +185 -0
- package/package.json +66 -64
- package/dist/chunk-AAAM44NW.js +0 -70
- package/dist/chunk-IVHNGRZY.js +0 -122
- package/dist/chunk-PD4EV4MM.js +0 -147
- package/dist/index.d.ts +0 -194
- package/dist/index.js +0 -309
- package/dist/provider.d.ts +0 -134
- package/dist/provider.js +0 -152
- package/dist/types-CU7GyVez.d.cts +0 -151
- package/dist/types-CU7GyVez.d.ts +0 -151
- package/dist/utils.d.ts +0 -129
- package/dist/utils.js +0 -3
- package/dist/vite.d.ts +0 -533
- package/dist/vite.js +0 -945
- package/dist/zip-Blmn2vzE.d.cts +0 -71
- package/dist/zip-CnSv_Njj.d.ts +0 -71
- package/provider.d.ts +0 -1
- package/provider.js +0 -1
- package/utils.d.ts +0 -1
- package/utils.js +0 -1
- package/vite.d.ts +0 -1
- package/vite.js +0 -1
package/dist/provider.cjs
CHANGED
|
@@ -1,350 +1,162 @@
|
|
|
1
|
-
|
|
1
|
+
const require_version = require('./version-aPrLuz_-.cjs');
|
|
2
|
+
const require_zip = require('./zip-BCC7FAQ_.cjs');
|
|
3
|
+
let node_url = require("node:url");
|
|
2
4
|
|
|
3
|
-
|
|
4
|
-
var crypto = require('crypto');
|
|
5
|
-
var zlib = require('zlib');
|
|
6
|
-
var url = require('url');
|
|
7
|
-
|
|
8
|
-
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
-
|
|
10
|
-
var electron__default = /*#__PURE__*/_interopDefault(electron);
|
|
11
|
-
var crypto__default = /*#__PURE__*/_interopDefault(crypto);
|
|
12
|
-
var zlib__default = /*#__PURE__*/_interopDefault(zlib);
|
|
13
|
-
|
|
14
|
-
// src/utils/download.ts
|
|
15
|
-
|
|
16
|
-
// src/utils/version.ts
|
|
17
|
-
function parseVersion(version) {
|
|
18
|
-
const match = /^(\d+)\.(\d+)\.(\d+)(?:-([a-z0-9.-]+))?/i.exec(version);
|
|
19
|
-
if (!match) {
|
|
20
|
-
throw new TypeError(`invalid version: ${version}`);
|
|
21
|
-
}
|
|
22
|
-
const [major, minor, patch] = match.slice(1, 4).map(Number);
|
|
23
|
-
const ret = {
|
|
24
|
-
major,
|
|
25
|
-
minor,
|
|
26
|
-
patch,
|
|
27
|
-
stage: "",
|
|
28
|
-
stageVersion: -1
|
|
29
|
-
};
|
|
30
|
-
if (match[4]) {
|
|
31
|
-
let [stage, _v] = match[4].split(".");
|
|
32
|
-
ret.stage = stage;
|
|
33
|
-
ret.stageVersion = Number(_v) || -1;
|
|
34
|
-
}
|
|
35
|
-
if (Number.isNaN(major) || Number.isNaN(minor) || Number.isNaN(patch) || Number.isNaN(ret.stageVersion)) {
|
|
36
|
-
throw new TypeError(`Invalid version: ${version}`);
|
|
37
|
-
}
|
|
38
|
-
return ret;
|
|
39
|
-
}
|
|
40
|
-
function compareStrings(str1, str2) {
|
|
41
|
-
if (str1 === "") {
|
|
42
|
-
return str2 !== "";
|
|
43
|
-
} else if (str2 === "") {
|
|
44
|
-
return true;
|
|
45
|
-
}
|
|
46
|
-
return str1 < str2;
|
|
47
|
-
}
|
|
48
|
-
function defaultIsLowerVersion(oldVer, newVer) {
|
|
49
|
-
const oldV = parseVersion(oldVer);
|
|
50
|
-
const newV = parseVersion(newVer);
|
|
51
|
-
for (let key of Object.keys(oldV)) {
|
|
52
|
-
if (key === "stage" && compareStrings(oldV[key], newV[key])) {
|
|
53
|
-
return true;
|
|
54
|
-
} else if (oldV[key] !== newV[key]) {
|
|
55
|
-
return oldV[key] < newV[key];
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
return false;
|
|
59
|
-
}
|
|
60
|
-
var is = (j) => !!(j && j.minimumVersion && j.signature && j.version);
|
|
61
|
-
function isUpdateJSON(json) {
|
|
62
|
-
return is(json) && is(json?.beta);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
// src/utils/download.ts
|
|
66
|
-
function getHeader(headers, key) {
|
|
67
|
-
const value = headers[key];
|
|
68
|
-
if (Array.isArray(value)) {
|
|
69
|
-
return value.length === 0 ? null : value[value.length - 1];
|
|
70
|
-
} else {
|
|
71
|
-
return value;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
async function downloadUtil(url, headers, onResponse) {
|
|
75
|
-
await electron__default.default.app.whenReady();
|
|
76
|
-
return new Promise((resolve, reject) => {
|
|
77
|
-
const request = electron__default.default.net.request({
|
|
78
|
-
cache: "no-cache",
|
|
79
|
-
headers,
|
|
80
|
-
method: "GET",
|
|
81
|
-
redirect: "follow",
|
|
82
|
-
url
|
|
83
|
-
});
|
|
84
|
-
request.on("response", (resp) => {
|
|
85
|
-
resp.on("aborted", () => reject(new Error("Aborted")));
|
|
86
|
-
resp.on("error", reject);
|
|
87
|
-
onResponse(request, resp, resolve, reject);
|
|
88
|
-
});
|
|
89
|
-
request.on("error", reject);
|
|
90
|
-
request.end();
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
function trimData(data) {
|
|
94
|
-
return data.trim().slice(0, 5e3).replace(/\s+/g, " ");
|
|
95
|
-
}
|
|
96
|
-
var resolveJson = (data, resolve, reject) => {
|
|
97
|
-
try {
|
|
98
|
-
resolve(JSON.parse(data));
|
|
99
|
-
} catch {
|
|
100
|
-
reject(new Error(`Invalid json, "${trimData(data)}"`));
|
|
101
|
-
}
|
|
102
|
-
};
|
|
103
|
-
async function defaultDownloadText(url, headers, signal, resolveData) {
|
|
104
|
-
return await downloadUtil(
|
|
105
|
-
url,
|
|
106
|
-
headers,
|
|
107
|
-
(request, resp, resolve, reject) => {
|
|
108
|
-
let data = "";
|
|
109
|
-
resp.on("data", (chunk) => data += chunk);
|
|
110
|
-
resp.on("end", () => resolveData(data, resolve, reject));
|
|
111
|
-
signal.addEventListener("abort", () => {
|
|
112
|
-
request.abort();
|
|
113
|
-
data = null;
|
|
114
|
-
}, { once: true });
|
|
115
|
-
}
|
|
116
|
-
);
|
|
117
|
-
}
|
|
118
|
-
async function defaultDownloadUpdateJSON(url, headers, signal) {
|
|
119
|
-
return await defaultDownloadText(
|
|
120
|
-
url,
|
|
121
|
-
headers,
|
|
122
|
-
signal,
|
|
123
|
-
(data, resolve, reject) => {
|
|
124
|
-
try {
|
|
125
|
-
const json = JSON.parse(data);
|
|
126
|
-
if (isUpdateJSON(json)) {
|
|
127
|
-
resolve(json);
|
|
128
|
-
} else {
|
|
129
|
-
throw Error;
|
|
130
|
-
}
|
|
131
|
-
} catch {
|
|
132
|
-
reject(new Error(`Invalid update json, "${trimData(data)}"`));
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
);
|
|
136
|
-
}
|
|
137
|
-
async function defaultDownloadAsar(url, headers, signal, onDownloading) {
|
|
138
|
-
let transferred = 0;
|
|
139
|
-
let time = Date.now();
|
|
140
|
-
return await downloadUtil(
|
|
141
|
-
url,
|
|
142
|
-
headers,
|
|
143
|
-
(request, resp, resolve) => {
|
|
144
|
-
const total = +getHeader(resp.headers, "content-length") || -1;
|
|
145
|
-
let data = [];
|
|
146
|
-
resp.on("data", (chunk) => {
|
|
147
|
-
const delta = chunk.length;
|
|
148
|
-
transferred += delta;
|
|
149
|
-
const current = Date.now();
|
|
150
|
-
onDownloading?.({
|
|
151
|
-
bps: delta / (current - time),
|
|
152
|
-
delta,
|
|
153
|
-
percent: total > 0 ? +(transferred / total).toFixed(2) * 100 : -1,
|
|
154
|
-
total,
|
|
155
|
-
transferred
|
|
156
|
-
});
|
|
157
|
-
time = current;
|
|
158
|
-
data.push(chunk);
|
|
159
|
-
});
|
|
160
|
-
resp.on("end", () => resolve(Buffer.concat(data)));
|
|
161
|
-
signal.addEventListener("abort", () => {
|
|
162
|
-
request.abort();
|
|
163
|
-
data.length = 0;
|
|
164
|
-
data = null;
|
|
165
|
-
}, { once: true });
|
|
166
|
-
}
|
|
167
|
-
);
|
|
168
|
-
}
|
|
169
|
-
function hashBuffer(data, length) {
|
|
170
|
-
const hash = crypto__default.default.createHash("SHA256").update(data).digest("binary");
|
|
171
|
-
return Buffer.from(hash).subarray(0, length);
|
|
172
|
-
}
|
|
173
|
-
function aesDecrypt(encryptedText, key, iv) {
|
|
174
|
-
const decipher = crypto__default.default.createDecipheriv("aes-256-cbc", key, iv);
|
|
175
|
-
return decipher.update(encryptedText, "base64url", "utf8") + decipher.final("utf8");
|
|
176
|
-
}
|
|
177
|
-
function defaultVerifySignature(buffer, version, signature, cert) {
|
|
178
|
-
try {
|
|
179
|
-
const [sig, ver] = aesDecrypt(signature, hashBuffer(cert, 32), hashBuffer(buffer, 16)).split("%");
|
|
180
|
-
if (ver !== version) {
|
|
181
|
-
return false;
|
|
182
|
-
}
|
|
183
|
-
return crypto__default.default.createVerify("RSA-SHA256").update(buffer).verify(cert, sig, "base64");
|
|
184
|
-
} catch {
|
|
185
|
-
return false;
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
async function defaultUnzipFile(buffer) {
|
|
189
|
-
return new Promise((resolve, reject) => {
|
|
190
|
-
zlib__default.default.brotliDecompress(buffer, (err, buffer2) => err ? reject(err) : resolve(buffer2));
|
|
191
|
-
});
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
// src/provider/base.ts
|
|
5
|
+
//#region src/provider/base.ts
|
|
195
6
|
var BaseProvider = class {
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
7
|
+
name = "BaseProvider";
|
|
8
|
+
/**
|
|
9
|
+
* @inheritdoc
|
|
10
|
+
*/
|
|
11
|
+
isLowerVersion = require_version.defaultIsLowerVersion;
|
|
12
|
+
/**
|
|
13
|
+
* @inheritdoc
|
|
14
|
+
*/
|
|
15
|
+
verifySignaure = require_zip.defaultVerifySignature;
|
|
16
|
+
/**
|
|
17
|
+
* @inheritdoc
|
|
18
|
+
*/
|
|
19
|
+
unzipFile = require_zip.defaultUnzipFile;
|
|
209
20
|
};
|
|
21
|
+
|
|
22
|
+
//#endregion
|
|
23
|
+
//#region src/provider/github/base.ts
|
|
210
24
|
var BaseGitHubProvider = class extends BaseProvider {
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
}
|
|
245
|
-
};
|
|
246
|
-
}
|
|
247
|
-
/**
|
|
248
|
-
* @inheritdoc
|
|
249
|
-
*/
|
|
250
|
-
async downloadAsar(info, signal, onDownloading) {
|
|
251
|
-
return await defaultDownloadAsar(
|
|
252
|
-
info.url,
|
|
253
|
-
this.getHeaders("octet-stream"),
|
|
254
|
-
signal,
|
|
255
|
-
onDownloading
|
|
256
|
-
);
|
|
257
|
-
}
|
|
25
|
+
constructor(options) {
|
|
26
|
+
super();
|
|
27
|
+
this.options = options;
|
|
28
|
+
}
|
|
29
|
+
get urlHandler() {
|
|
30
|
+
return this.options.urlHandler;
|
|
31
|
+
}
|
|
32
|
+
set urlHandler(handler) {
|
|
33
|
+
this.options.urlHandler = handler;
|
|
34
|
+
}
|
|
35
|
+
async parseURL(extraPath) {
|
|
36
|
+
const url = new node_url.URL(`/${this.options.user}/${this.options.repo}/${extraPath}`, "https://github.com");
|
|
37
|
+
return (await this.urlHandler?.(url) || url).toString();
|
|
38
|
+
}
|
|
39
|
+
async downloadJSON(name, versionPath, signal) {
|
|
40
|
+
const { beta, version, ...info } = await require_zip.defaultDownloadUpdateJSON(await this.parseURL(await this.getVersionURL(versionPath, signal)), this.getHeaders("json"), signal);
|
|
41
|
+
const getURL = (ver) => this.parseURL(`releases/download/v${ver}/${name}-${ver}.asar.gz`);
|
|
42
|
+
return {
|
|
43
|
+
...info,
|
|
44
|
+
version,
|
|
45
|
+
url: await getURL(version),
|
|
46
|
+
beta: {
|
|
47
|
+
...beta,
|
|
48
|
+
url: await getURL(beta.version)
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* @inheritdoc
|
|
54
|
+
*/
|
|
55
|
+
async downloadAsar(info, signal, onDownloading) {
|
|
56
|
+
return await require_zip.defaultDownloadAsar(info.url, this.getHeaders("octet-stream"), signal, onDownloading);
|
|
57
|
+
}
|
|
258
58
|
};
|
|
259
59
|
|
|
260
|
-
|
|
261
|
-
|
|
60
|
+
//#endregion
|
|
61
|
+
//#region src/provider/github/api.ts
|
|
62
|
+
const ERROR_MSG = "Cannot find UpdateJSON in latest release";
|
|
63
|
+
/**
|
|
64
|
+
* Update Provider for Github API, you need to upload `version.json` to release as well
|
|
65
|
+
* - check update from `https://api.github.com/repos/{user}/{repo}/releases?per_page=1`
|
|
66
|
+
* - download update json and get version and download url
|
|
67
|
+
* - download update asar from update info
|
|
68
|
+
*
|
|
69
|
+
* you can setup `urlHandler` in options to modify url before request
|
|
70
|
+
* @param options provider options
|
|
71
|
+
*/
|
|
262
72
|
var GitHubApiProvider = class extends BaseGitHubProvider {
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
this.getHeaders("vnd.github.v3+json"),
|
|
282
|
-
signal,
|
|
283
|
-
resolveJson
|
|
284
|
-
);
|
|
285
|
-
const versionAssets = data[0]?.assets.find((asset) => asset.name === basename);
|
|
286
|
-
if (!versionAssets) {
|
|
287
|
-
throw new Error(`${ERROR_MSG}, ${"message" in data ? data.message : "please check the release assets"}`);
|
|
288
|
-
}
|
|
289
|
-
return versionAssets.browser_download_url;
|
|
290
|
-
}
|
|
73
|
+
name = "GithubApiProvider";
|
|
74
|
+
getHeaders(accept) {
|
|
75
|
+
return {
|
|
76
|
+
Accept: `application/${accept}`,
|
|
77
|
+
...this.options.token ? { Authorization: `token ${this.options.token}` } : {},
|
|
78
|
+
...this.options.extraHeaders
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* @inheritdoc
|
|
83
|
+
*/
|
|
84
|
+
async getVersionURL(versionPath, signal) {
|
|
85
|
+
const basename = versionPath.slice(versionPath.lastIndexOf("/") + 1);
|
|
86
|
+
const data = await require_zip.defaultDownloadText(await this.parseURL(`https://api.github.com/repos/${this.options.user}/${this.options.repo}/releases?per_page=1`), this.getHeaders("vnd.github.v3+json"), signal, require_zip.resolveJson);
|
|
87
|
+
const versionAssets = data[0]?.assets.find((asset) => asset.name === basename);
|
|
88
|
+
if (!versionAssets) throw new Error(`${ERROR_MSG}, ${"message" in data ? data.message : "please check the release assets"}`);
|
|
89
|
+
return versionAssets.browser_download_url;
|
|
90
|
+
}
|
|
291
91
|
};
|
|
292
92
|
|
|
293
|
-
|
|
93
|
+
//#endregion
|
|
94
|
+
//#region src/provider/github/atom.ts
|
|
95
|
+
/**
|
|
96
|
+
* Update Provider for Github repo
|
|
97
|
+
* - check update from `https://github.com/{user}/{repo}/releases.atom`
|
|
98
|
+
* - download update json from `https://github.com/{user}/{repo}/releases/download/v{version}/{versionPath}`
|
|
99
|
+
* - download update asar from `https://github.com/{user}/{repo}/releases/download/v{version}/{name}-{version}.asar.gz`
|
|
100
|
+
*
|
|
101
|
+
* you can setup `urlHandler` in options to modify url before request
|
|
102
|
+
* @param options provider options
|
|
103
|
+
*/
|
|
294
104
|
var GitHubAtomProvider = class extends BaseGitHubProvider {
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
if (result) {
|
|
313
|
-
resolve(result);
|
|
314
|
-
} else {
|
|
315
|
-
reject("No tag matched");
|
|
316
|
-
}
|
|
317
|
-
}
|
|
318
|
-
);
|
|
319
|
-
return `releases/download/v${tag}/${versionPath}`;
|
|
320
|
-
}
|
|
105
|
+
name = "GithubAtomProvider";
|
|
106
|
+
getHeaders(accept) {
|
|
107
|
+
return {
|
|
108
|
+
Accept: `application/${accept}`,
|
|
109
|
+
...this.options.extraHeaders
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* @inheritdoc
|
|
114
|
+
*/
|
|
115
|
+
async getVersionURL(versionPath, signal) {
|
|
116
|
+
return `releases/download/v${await require_zip.defaultDownloadText(await this.parseURL(`releases.atom`), this.getHeaders("xml"), signal, (data, resolve, reject) => {
|
|
117
|
+
const result = data.match(/<entry>\s*<id>([^<]*\/)?([^/<]+)<\/id>/)?.[2];
|
|
118
|
+
if (result) resolve(result);
|
|
119
|
+
else reject("No tag matched");
|
|
120
|
+
})}/${versionPath}`;
|
|
121
|
+
}
|
|
321
122
|
};
|
|
322
123
|
|
|
323
|
-
|
|
124
|
+
//#endregion
|
|
125
|
+
//#region src/provider/github/file.ts
|
|
126
|
+
/**
|
|
127
|
+
* Update Provider for Github repo
|
|
128
|
+
* - download update json from `https://github.com/{user}/{repo}/raw/HEAD/{versionPath}`
|
|
129
|
+
* - download update asar from `https://github.com/{user}/{repo}/releases/download/v{version}/{name}-{version}.asar.gz`
|
|
130
|
+
*
|
|
131
|
+
* you can setup `urlHandler` in options to modify url before request
|
|
132
|
+
* @param options provider options
|
|
133
|
+
*/
|
|
324
134
|
var GitHubProvider = class extends BaseGitHubProvider {
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
135
|
+
name = "GithubProvider";
|
|
136
|
+
constructor(options) {
|
|
137
|
+
super(options);
|
|
138
|
+
if (!options.branch) this.options.branch = "HEAD";
|
|
139
|
+
}
|
|
140
|
+
getHeaders(accept) {
|
|
141
|
+
return {
|
|
142
|
+
Accept: `application/${accept}`,
|
|
143
|
+
...this.options.extraHeaders
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
getVersionURL(versionPath) {
|
|
147
|
+
return `raw/${this.options.branch}/${versionPath}`;
|
|
148
|
+
}
|
|
338
149
|
};
|
|
339
150
|
|
|
151
|
+
//#endregion
|
|
340
152
|
exports.BaseGitHubProvider = BaseGitHubProvider;
|
|
341
153
|
exports.BaseProvider = BaseProvider;
|
|
342
154
|
exports.GitHubApiProvider = GitHubApiProvider;
|
|
343
155
|
exports.GitHubAtomProvider = GitHubAtomProvider;
|
|
344
156
|
exports.GitHubProvider = GitHubProvider;
|
|
345
|
-
exports.defaultDownloadAsar = defaultDownloadAsar;
|
|
346
|
-
exports.defaultDownloadText = defaultDownloadText;
|
|
347
|
-
exports.defaultDownloadUpdateJSON = defaultDownloadUpdateJSON;
|
|
348
|
-
exports.downloadUtil = downloadUtil;
|
|
349
|
-
exports.getHeader = getHeader;
|
|
350
|
-
exports.resolveJson = resolveJson;
|
|
157
|
+
exports.defaultDownloadAsar = require_zip.defaultDownloadAsar;
|
|
158
|
+
exports.defaultDownloadText = require_zip.defaultDownloadText;
|
|
159
|
+
exports.defaultDownloadUpdateJSON = require_zip.defaultDownloadUpdateJSON;
|
|
160
|
+
exports.downloadUtil = require_zip.downloadUtil;
|
|
161
|
+
exports.getHeader = require_zip.getHeader;
|
|
162
|
+
exports.resolveJson = require_zip.resolveJson;
|