diff options
Diffstat (limited to 'node_modules/@electron/get/dist/cjs')
27 files changed, 607 insertions, 0 deletions
diff --git a/node_modules/@electron/get/dist/cjs/Cache.d.ts b/node_modules/@electron/get/dist/cjs/Cache.d.ts new file mode 100644 index 0000000..a6adc32 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/Cache.d.ts @@ -0,0 +1,7 @@ +export declare class Cache { + private cacheRoot; + constructor(cacheRoot?: string); + getCachePath(downloadUrl: string, fileName: string): string; + getPathForFileInCache(url: string, fileName: string): Promise<string | null>; + putFileInCache(url: string, currentPath: string, fileName: string): Promise<string>; +} diff --git a/node_modules/@electron/get/dist/cjs/Cache.js b/node_modules/@electron/get/dist/cjs/Cache.js new file mode 100644 index 0000000..af2c11f --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/Cache.js @@ -0,0 +1,53 @@ +"use strict"; +var __rest = (this && this.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const debug_1 = require("debug"); +const env_paths_1 = require("env-paths"); +const fs = require("fs-extra"); +const path = require("path"); +const url = require("url"); +const sanitize = require("sanitize-filename"); +const d = debug_1.default('@electron/get:cache'); +const defaultCacheRoot = env_paths_1.default('electron', { + suffix: '', +}).cache; +class Cache { + constructor(cacheRoot = defaultCacheRoot) { + this.cacheRoot = cacheRoot; + } + getCachePath(downloadUrl, fileName) { + const _a = url.parse(downloadUrl), { search, hash } = _a, rest = __rest(_a, ["search", "hash"]); + const strippedUrl = url.format(rest); + const sanitizedUrl = sanitize(strippedUrl); + return path.resolve(this.cacheRoot, sanitizedUrl, fileName); + } + async getPathForFileInCache(url, fileName) { + const cachePath = this.getCachePath(url, fileName); + if (await fs.pathExists(cachePath)) { + return cachePath; + } + return null; + } + async putFileInCache(url, currentPath, fileName) { + const cachePath = this.getCachePath(url, fileName); + d(`Moving ${currentPath} to ${cachePath}`); + if (await fs.pathExists(cachePath)) { + d('* Replacing existing file'); + await fs.remove(cachePath); + } + await fs.move(currentPath, cachePath); + return cachePath; + } +} +exports.Cache = Cache; +//# sourceMappingURL=Cache.js.map
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/Cache.js.map b/node_modules/@electron/get/dist/cjs/Cache.js.map new file mode 100644 index 0000000..6a30dec --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/Cache.js.map @@ -0,0 +1 @@ +{"version":3,"file":"Cache.js","sourceRoot":"","sources":["../../src/Cache.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,iCAA0B;AAC1B,yCAAiC;AACjC,+BAA+B;AAC/B,6BAA6B;AAC7B,2BAA2B;AAC3B,8CAA8C;AAE9C,MAAM,CAAC,GAAG,eAAK,CAAC,qBAAqB,CAAC,CAAC;AAEvC,MAAM,gBAAgB,GAAG,mBAAQ,CAAC,UAAU,EAAE;IAC5C,MAAM,EAAE,EAAE;CACX,CAAC,CAAC,KAAK,CAAC;AAET,MAAa,KAAK;IAChB,YAAoB,YAAY,gBAAgB;QAA5B,cAAS,GAAT,SAAS,CAAmB;IAAG,CAAC;IAE7C,YAAY,CAAC,WAAmB,EAAE,QAAgB;QACvD,MAAM,2BAAkD,EAAlD,EAAE,MAAM,EAAE,IAAI,OAAoC,EAAlC,qCAAkC,CAAC;QACzD,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAErC,MAAM,YAAY,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAEM,KAAK,CAAC,qBAAqB,CAAC,GAAW,EAAE,QAAgB;QAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACnD,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;YAClC,OAAO,SAAS,CAAC;SAClB;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,GAAW,EAAE,WAAmB,EAAE,QAAgB;QAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACnD,CAAC,CAAC,UAAU,WAAW,OAAO,SAAS,EAAE,CAAC,CAAC;QAC3C,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;YAClC,CAAC,CAAC,2BAA2B,CAAC,CAAC;YAC/B,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;SAC5B;QAED,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAEtC,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAhCD,sBAgCC"}
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/Downloader.d.ts b/node_modules/@electron/get/dist/cjs/Downloader.d.ts new file mode 100644 index 0000000..8e5e40e --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/Downloader.d.ts @@ -0,0 +1,3 @@ +export interface Downloader<T> { + download(url: string, targetFilePath: string, options: T): Promise<void>; +} diff --git a/node_modules/@electron/get/dist/cjs/Downloader.js b/node_modules/@electron/get/dist/cjs/Downloader.js new file mode 100644 index 0000000..5940840 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/Downloader.js @@ -0,0 +1,3 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +//# sourceMappingURL=Downloader.js.map
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/Downloader.js.map b/node_modules/@electron/get/dist/cjs/Downloader.js.map new file mode 100644 index 0000000..c6199d5 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/Downloader.js.map @@ -0,0 +1 @@ +{"version":3,"file":"Downloader.js","sourceRoot":"","sources":["../../src/Downloader.ts"],"names":[],"mappings":""}
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/GotDownloader.d.ts b/node_modules/@electron/get/dist/cjs/GotDownloader.d.ts new file mode 100644 index 0000000..88686fd --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/GotDownloader.d.ts @@ -0,0 +1,19 @@ +import * as got from 'got'; +import { Downloader } from './Downloader'; +/** + * See [`got#options`](https://github.com/sindresorhus/got#options) for possible keys/values. + */ +export declare type GotDownloaderOptions = got.GotOptions<string | null> & { + /** + * if defined, triggers every time `got`'s `downloadProgress` event callback is triggered. + */ + getProgressCallback?: (progress: got.Progress) => Promise<void>; + /** + * if `true`, disables the console progress bar (setting the `ELECTRON_GET_NO_PROGRESS` + * environment variable to a non-empty value also does this). + */ + quiet?: boolean; +}; +export declare class GotDownloader implements Downloader<GotDownloaderOptions> { + download(url: string, targetFilePath: string, options?: GotDownloaderOptions): Promise<void>; +} diff --git a/node_modules/@electron/get/dist/cjs/GotDownloader.js b/node_modules/@electron/get/dist/cjs/GotDownloader.js new file mode 100644 index 0000000..19543de --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/GotDownloader.js @@ -0,0 +1,75 @@ +"use strict"; +var __rest = (this && this.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const fs = require("fs-extra"); +const got = require("got"); +const path = require("path"); +const ProgressBar = require("progress"); +const PROGRESS_BAR_DELAY_IN_SECONDS = 30; +class GotDownloader { + async download(url, targetFilePath, options) { + if (!options) { + options = {}; + } + const { quiet, getProgressCallback } = options, gotOptions = __rest(options, ["quiet", "getProgressCallback"]); + let downloadCompleted = false; + let bar; + let progressPercent; + let timeout = undefined; + await fs.mkdirp(path.dirname(targetFilePath)); + const writeStream = fs.createWriteStream(targetFilePath); + if (!quiet || !process.env.ELECTRON_GET_NO_PROGRESS) { + const start = new Date(); + timeout = setTimeout(() => { + if (!downloadCompleted) { + bar = new ProgressBar(`Downloading ${path.basename(url)}: [:bar] :percent ETA: :eta seconds `, { + curr: progressPercent, + total: 100, + }); + // https://github.com/visionmedia/node-progress/issues/159 + bar.start = start; + } + }, PROGRESS_BAR_DELAY_IN_SECONDS * 1000); + } + await new Promise((resolve, reject) => { + const downloadStream = got.stream(url, gotOptions); + downloadStream.on('downloadProgress', async (progress) => { + progressPercent = progress.percent; + if (bar) { + bar.update(progress.percent); + } + if (getProgressCallback) { + await getProgressCallback(progress); + } + }); + downloadStream.on('error', error => { + if (error.name === 'HTTPError' && error.statusCode === 404) { + error.message += ` for ${error.url}`; + } + if (writeStream.destroy) { + writeStream.destroy(error); + } + reject(error); + }); + writeStream.on('error', error => reject(error)); + writeStream.on('close', () => resolve()); + downloadStream.pipe(writeStream); + }); + downloadCompleted = true; + if (timeout) { + clearTimeout(timeout); + } + } +} +exports.GotDownloader = GotDownloader; +//# sourceMappingURL=GotDownloader.js.map
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/GotDownloader.js.map b/node_modules/@electron/get/dist/cjs/GotDownloader.js.map new file mode 100644 index 0000000..81f60d6 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/GotDownloader.js.map @@ -0,0 +1 @@ +{"version":3,"file":"GotDownloader.js","sourceRoot":"","sources":["../../src/GotDownloader.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,+BAA+B;AAC/B,2BAA2B;AAC3B,6BAA6B;AAC7B,wCAAwC;AAIxC,MAAM,6BAA6B,GAAG,EAAE,CAAC;AAiBzC,MAAa,aAAa;IACxB,KAAK,CAAC,QAAQ,CAAC,GAAW,EAAE,cAAsB,EAAE,OAA8B;QAChF,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,GAAG,EAAE,CAAC;SACd;QACD,MAAM,EAAE,KAAK,EAAE,mBAAmB,KAAoB,OAAO,EAAzB,8DAAyB,CAAC;QAC9D,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAC9B,IAAI,GAA4B,CAAC;QACjC,IAAI,eAAuB,CAAC;QAC5B,IAAI,OAAO,GAA+B,SAAS,CAAC;QACpD,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QAC9C,MAAM,WAAW,GAAG,EAAE,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAEzD,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE;YACnD,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;YACzB,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBACxB,IAAI,CAAC,iBAAiB,EAAE;oBACtB,GAAG,GAAG,IAAI,WAAW,CACnB,eAAe,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,sCAAsC,EACvE;wBACE,IAAI,EAAE,eAAe;wBACrB,KAAK,EAAE,GAAG;qBACX,CACF,CAAC;oBACF,0DAA0D;oBACzD,GAAW,CAAC,KAAK,GAAG,KAAK,CAAC;iBAC5B;YACH,CAAC,EAAE,6BAA6B,GAAG,IAAI,CAAC,CAAC;SAC1C;QACD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACpC,MAAM,cAAc,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YACnD,cAAc,CAAC,EAAE,CAAC,kBAAkB,EAAE,KAAK,EAAC,QAAQ,EAAC,EAAE;gBACrD,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC;gBACnC,IAAI,GAAG,EAAE;oBACP,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;iBAC9B;gBACD,IAAI,mBAAmB,EAAE;oBACvB,MAAM,mBAAmB,CAAC,QAAQ,CAAC,CAAC;iBACrC;YACH,CAAC,CAAC,CAAC;YACH,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjC,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,UAAU,KAAK,GAAG,EAAE;oBAC1D,KAAK,CAAC,OAAO,IAAI,QAAQ,KAAK,CAAC,GAAG,EAAE,CAAC;iBACtC;gBACD,IAAI,WAAW,CAAC,OAAO,EAAE;oBACvB,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;iBAC5B;gBAED,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;YACH,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAChD,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAEzC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,iBAAiB,GAAG,IAAI,CAAC;QACzB,IAAI,OAAO,EAAE;YACX,YAAY,CAAC,OAAO,CAAC,CAAC;SACvB;IACH,CAAC;CACF;AA7DD,sCA6DC"}
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/artifact-utils.d.ts b/node_modules/@electron/get/dist/cjs/artifact-utils.d.ts new file mode 100644 index 0000000..3426f60 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/artifact-utils.d.ts @@ -0,0 +1,3 @@ +import { ElectronArtifactDetails } from './types'; +export declare function getArtifactFileName(details: ElectronArtifactDetails): string; +export declare function getArtifactRemoteURL(details: ElectronArtifactDetails): Promise<string>; diff --git a/node_modules/@electron/get/dist/cjs/artifact-utils.js b/node_modules/@electron/get/dist/cjs/artifact-utils.js new file mode 100644 index 0000000..5387b18 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/artifact-utils.js @@ -0,0 +1,56 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const utils_1 = require("./utils"); +const BASE_URL = 'https://github.com/electron/electron/releases/download/'; +const NIGHTLY_BASE_URL = 'https://github.com/electron/nightlies/releases/download/'; +function getArtifactFileName(details) { + utils_1.ensureIsTruthyString(details, 'artifactName'); + if (details.isGeneric) { + return details.artifactName; + } + utils_1.ensureIsTruthyString(details, 'arch'); + utils_1.ensureIsTruthyString(details, 'platform'); + utils_1.ensureIsTruthyString(details, 'version'); + return `${[ + details.artifactName, + details.version, + details.platform, + details.arch, + ...(details.artifactSuffix ? [details.artifactSuffix] : []), + ].join('-')}.zip`; +} +exports.getArtifactFileName = getArtifactFileName; +function mirrorVar(name, options, defaultValue) { + // Convert camelCase to camel_case for env var reading + const lowerName = name.replace(/([a-z])([A-Z])/g, (_, a, b) => `${a}_${b}`).toLowerCase(); + return (process.env[`NPM_CONFIG_ELECTRON_${lowerName.toUpperCase()}`] || + process.env[`npm_config_electron_${lowerName}`] || + process.env[`npm_package_config_electron_${lowerName}`] || + process.env[`ELECTRON_${lowerName.toUpperCase()}`] || + options[name] || + defaultValue); +} +async function getArtifactRemoteURL(details) { + const opts = details.mirrorOptions || {}; + let base = mirrorVar('mirror', opts, BASE_URL); + if (details.version.includes('nightly')) { + const nightlyDeprecated = mirrorVar('nightly_mirror', opts, ''); + if (nightlyDeprecated) { + base = nightlyDeprecated; + console.warn(`nightly_mirror is deprecated, please use nightlyMirror`); + } + else { + base = mirrorVar('nightlyMirror', opts, NIGHTLY_BASE_URL); + } + } + const path = mirrorVar('customDir', opts, details.version).replace('{{ version }}', details.version.replace(/^v/, '')); + const file = mirrorVar('customFilename', opts, getArtifactFileName(details)); + // Allow customized download URL resolution. + if (opts.resolveAssetURL) { + const url = await opts.resolveAssetURL(details); + return url; + } + return `${base}${path}/${file}`; +} +exports.getArtifactRemoteURL = getArtifactRemoteURL; +//# sourceMappingURL=artifact-utils.js.map
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/artifact-utils.js.map b/node_modules/@electron/get/dist/cjs/artifact-utils.js.map new file mode 100644 index 0000000..d398002 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/artifact-utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"artifact-utils.js","sourceRoot":"","sources":["../../src/artifact-utils.ts"],"names":[],"mappings":"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"}
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/downloader-resolver.d.ts b/node_modules/@electron/get/dist/cjs/downloader-resolver.d.ts new file mode 100644 index 0000000..d18a6b3 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/downloader-resolver.d.ts @@ -0,0 +1,2 @@ +import { Downloader } from './Downloader'; +export declare function getDownloaderForSystem(): Promise<Downloader<any>>; diff --git a/node_modules/@electron/get/dist/cjs/downloader-resolver.js b/node_modules/@electron/get/dist/cjs/downloader-resolver.js new file mode 100644 index 0000000..52a51d3 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/downloader-resolver.js @@ -0,0 +1,12 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +async function getDownloaderForSystem() { + // TODO: Resolve the downloader or default to GotDownloader + // Current thoughts are a dot-file traversal for something like + // ".electron.downloader" which would be a text file with the name of the + // npm module to import() and use as the downloader + const { GotDownloader } = await Promise.resolve().then(() => require('./GotDownloader')); + return new GotDownloader(); +} +exports.getDownloaderForSystem = getDownloaderForSystem; +//# sourceMappingURL=downloader-resolver.js.map
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/downloader-resolver.js.map b/node_modules/@electron/get/dist/cjs/downloader-resolver.js.map new file mode 100644 index 0000000..47269c3 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/downloader-resolver.js.map @@ -0,0 +1 @@ +{"version":3,"file":"downloader-resolver.js","sourceRoot":"","sources":["../../src/downloader-resolver.ts"],"names":[],"mappings":";;AAEO,KAAK,UAAU,sBAAsB;IAC1C,2DAA2D;IAC3D,+DAA+D;IAC/D,yEAAyE;IACzE,mDAAmD;IACnD,MAAM,EAAE,aAAa,EAAE,GAAG,2CAAa,iBAAiB,EAAC,CAAC;IAC1D,OAAO,IAAI,aAAa,EAAE,CAAC;AAC7B,CAAC;AAPD,wDAOC"}
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/index.d.ts b/node_modules/@electron/get/dist/cjs/index.d.ts new file mode 100644 index 0000000..c203ff5 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/index.d.ts @@ -0,0 +1,18 @@ +import { ElectronDownloadRequestOptions, ElectronPlatformArtifactDetailsWithDefaults } from './types'; +export { getHostArch } from './utils'; +export { initializeProxy } from './proxy'; +export * from './types'; +/** + * Downloads a specific version of Electron and returns an absolute path to a + * ZIP file. + * + * @param version - The version of Electron you want to download + */ +export declare function download(version: string, options?: ElectronDownloadRequestOptions): Promise<string>; +/** + * Downloads an artifact from an Electron release and returns an absolute path + * to the downloaded file. + * + * @param artifactDetails - The information required to download the artifact + */ +export declare function downloadArtifact(_artifactDetails: ElectronPlatformArtifactDetailsWithDefaults): Promise<string>; diff --git a/node_modules/@electron/get/dist/cjs/index.js b/node_modules/@electron/get/dist/cjs/index.js new file mode 100644 index 0000000..6d30fe1 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/index.js @@ -0,0 +1,99 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const debug_1 = require("debug"); +const path = require("path"); +const sumchecker = require("sumchecker"); +const artifact_utils_1 = require("./artifact-utils"); +const Cache_1 = require("./Cache"); +const downloader_resolver_1 = require("./downloader-resolver"); +const proxy_1 = require("./proxy"); +const utils_1 = require("./utils"); +var utils_2 = require("./utils"); +exports.getHostArch = utils_2.getHostArch; +var proxy_2 = require("./proxy"); +exports.initializeProxy = proxy_2.initializeProxy; +const d = debug_1.default('@electron/get:index'); +if (process.env.ELECTRON_GET_USE_PROXY) { + proxy_1.initializeProxy(); +} +/** + * Downloads a specific version of Electron and returns an absolute path to a + * ZIP file. + * + * @param version - The version of Electron you want to download + */ +function download(version, options) { + return downloadArtifact(Object.assign(Object.assign({}, options), { version, platform: process.platform, arch: process.arch, artifactName: 'electron' })); +} +exports.download = download; +/** + * Downloads an artifact from an Electron release and returns an absolute path + * to the downloaded file. + * + * @param artifactDetails - The information required to download the artifact + */ +async function downloadArtifact(_artifactDetails) { + const artifactDetails = Object.assign({}, _artifactDetails); + if (!_artifactDetails.isGeneric) { + const platformArtifactDetails = artifactDetails; + if (!platformArtifactDetails.platform) { + d('No platform found, defaulting to the host platform'); + platformArtifactDetails.platform = process.platform; + } + if (platformArtifactDetails.arch) { + platformArtifactDetails.arch = utils_1.getNodeArch(platformArtifactDetails.arch); + } + else { + d('No arch found, defaulting to the host arch'); + platformArtifactDetails.arch = utils_1.getHostArch(); + } + } + utils_1.ensureIsTruthyString(artifactDetails, 'version'); + artifactDetails.version = utils_1.normalizeVersion(process.env.ELECTRON_CUSTOM_VERSION || artifactDetails.version); + const fileName = artifact_utils_1.getArtifactFileName(artifactDetails); + const url = await artifact_utils_1.getArtifactRemoteURL(artifactDetails); + const cache = new Cache_1.Cache(artifactDetails.cacheRoot); + // Do not check if the file exists in the cache when force === true + if (!artifactDetails.force) { + d(`Checking the cache (${artifactDetails.cacheRoot}) for ${fileName} (${url})`); + const cachedPath = await cache.getPathForFileInCache(url, fileName); + if (cachedPath === null) { + d('Cache miss'); + } + else { + d('Cache hit'); + return cachedPath; + } + } + if (!artifactDetails.isGeneric && + utils_1.isOfficialLinuxIA32Download(artifactDetails.platform, artifactDetails.arch, artifactDetails.version, artifactDetails.mirrorOptions)) { + console.warn('Official Linux/ia32 support is deprecated.'); + console.warn('For more info: https://electronjs.org/blog/linux-32bit-support'); + } + return await utils_1.withTempDirectoryIn(artifactDetails.tempDirectory, async (tempFolder) => { + const tempDownloadPath = path.resolve(tempFolder, artifact_utils_1.getArtifactFileName(artifactDetails)); + const downloader = artifactDetails.downloader || (await downloader_resolver_1.getDownloaderForSystem()); + d(`Downloading ${url} to ${tempDownloadPath} with options: ${JSON.stringify(artifactDetails.downloadOptions)}`); + await downloader.download(url, tempDownloadPath, artifactDetails.downloadOptions); + // Don't try to verify the hash of the hash file itself + if (!artifactDetails.artifactName.startsWith('SHASUMS256') && + !artifactDetails.unsafelyDisableChecksums) { + const shasumPath = await downloadArtifact({ + isGeneric: true, + version: artifactDetails.version, + artifactName: 'SHASUMS256.txt', + force: artifactDetails.force, + downloadOptions: artifactDetails.downloadOptions, + cacheRoot: artifactDetails.cacheRoot, + downloader: artifactDetails.downloader, + mirrorOptions: artifactDetails.mirrorOptions, + }); + await sumchecker('sha256', shasumPath, path.dirname(tempDownloadPath), [ + path.basename(tempDownloadPath), + ]); + } + return await cache.putFileInCache(url, tempDownloadPath, fileName); + }); +} +exports.downloadArtifact = downloadArtifact; +//# sourceMappingURL=index.js.map
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/index.js.map b/node_modules/@electron/get/dist/cjs/index.js.map new file mode 100644 index 0000000..6606ebe --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/proxy.d.ts b/node_modules/@electron/get/dist/cjs/proxy.d.ts new file mode 100644 index 0000000..df3e16a --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/proxy.d.ts @@ -0,0 +1,4 @@ +/** + * Initializes a third-party proxy module for HTTP(S) requests. + */ +export declare function initializeProxy(): void; diff --git a/node_modules/@electron/get/dist/cjs/proxy.js b/node_modules/@electron/get/dist/cjs/proxy.js new file mode 100644 index 0000000..a90d572 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/proxy.js @@ -0,0 +1,26 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const debug = require("debug"); +const d = debug('@electron/get:proxy'); +/** + * Initializes a third-party proxy module for HTTP(S) requests. + */ +function initializeProxy() { + try { + // Code originally from https://github.com/yeoman/yo/blob/b2eea87e/lib/cli.js#L19-L28 + const MAJOR_NODEJS_VERSION = parseInt(process.version.slice(1).split('.')[0], 10); + if (MAJOR_NODEJS_VERSION >= 10) { + // `global-agent` works with Node.js v10 and above. + require('global-agent').bootstrap(); + } + else { + // `global-tunnel-ng` works with Node.js v10 and below. + require('global-tunnel-ng').initialize(); + } + } + catch (e) { + d('Could not load either proxy modules, built-in proxy support not available:', e); + } +} +exports.initializeProxy = initializeProxy; +//# sourceMappingURL=proxy.js.map
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/proxy.js.map b/node_modules/@electron/get/dist/cjs/proxy.js.map new file mode 100644 index 0000000..728241e --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/proxy.js.map @@ -0,0 +1 @@ +{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/proxy.ts"],"names":[],"mappings":";;AAAA,+BAA+B;AAE/B,MAAM,CAAC,GAAG,KAAK,CAAC,qBAAqB,CAAC,CAAC;AAEvC;;GAEG;AACH,SAAgB,eAAe;IAC7B,IAAI;QACF,qFAAqF;QACrF,MAAM,oBAAoB,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAElF,IAAI,oBAAoB,IAAI,EAAE,EAAE;YAC9B,mDAAmD;YACnD,OAAO,CAAC,cAAc,CAAC,CAAC,SAAS,EAAE,CAAC;SACrC;aAAM;YACL,uDAAuD;YACvD,OAAO,CAAC,kBAAkB,CAAC,CAAC,UAAU,EAAE,CAAC;SAC1C;KACF;IAAC,OAAO,CAAC,EAAE;QACV,CAAC,CAAC,4EAA4E,EAAE,CAAC,CAAC,CAAC;KACpF;AACH,CAAC;AAfD,0CAeC"}
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/types.d.ts b/node_modules/@electron/get/dist/cjs/types.d.ts new file mode 100644 index 0000000..3f53c85 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/types.d.ts @@ -0,0 +1,114 @@ +import { Downloader } from './Downloader'; +export interface MirrorOptions { + /** + * DEPRECATED - see nightlyMirror. + */ + nightly_mirror?: string; + /** + * The Electron nightly-specific mirror URL. + */ + nightlyMirror?: string; + /** + * The base URL of the mirror to download from, + * e.g https://github.com/electron/electron/releases/download + */ + mirror?: string; + /** + * The name of the directory to download from, + * often scoped by version number e.g 'v4.0.4' + */ + customDir?: string; + /** + * The name of the asset to download, + * e.g 'electron-v4.0.4-linux-x64.zip' + */ + customFilename?: string; + /** + * A function allowing customization of the url returned + * from getArtifactRemoteURL(). + */ + resolveAssetURL?: (opts: DownloadOptions) => Promise<string>; +} +export interface ElectronDownloadRequest { + /** + * The version of Electron associated with the artifact. + */ + version: string; + /** + * The type of artifact. For example: + * * `electron` + * * `ffmpeg` + */ + artifactName: string; +} +export interface ElectronDownloadRequestOptions { + /** + * Whether to download an artifact regardless of whether it's in the cache directory. + * + * Defaults to `false`. + */ + force?: boolean; + /** + * When set to `true`, disables checking that the artifact download completed successfully + * with the correct payload. + * + * Defaults to `false`. + */ + unsafelyDisableChecksums?: boolean; + /** + * The directory that caches Electron artifact downloads. + * + * The default value is dependent upon the host platform: + * + * * Linux: `$XDG_CACHE_HOME` or `~/.cache/electron/` + * * MacOS: `~/Library/Caches/electron/` + * * Windows: `%LOCALAPPDATA%/electron/Cache` or `~/AppData/Local/electron/Cache/` + */ + cacheRoot?: string; + /** + * Options passed to the downloader module. + */ + downloadOptions?: DownloadOptions; + /** + * Options related to specifying an artifact mirror. + */ + mirrorOptions?: MirrorOptions; + /** + * The custom [[Downloader]] class used to download artifacts. Defaults to the + * built-in [[GotDownloader]]. + */ + downloader?: Downloader<any>; + /** + * A temporary directory for downloads. + * It is used before artifacts are put into cache. + */ + tempDirectory?: string; +} +export declare type ElectronPlatformArtifactDetails = { + /** + * The target artifact platform. These are Node-style platform names, for example: + * * `win32` + * * `darwin` + * * `linux` + */ + platform: string; + /** + * The target artifact architecture. These are Node-style architecture names, for example: + * * `ia32` + * * `x64` + * * `armv7l` + */ + arch: string; + artifactSuffix?: string; + isGeneric?: false; +} & ElectronDownloadRequest & ElectronDownloadRequestOptions; +export declare type ElectronGenericArtifactDetails = { + isGeneric: true; +} & ElectronDownloadRequest & ElectronDownloadRequestOptions; +export declare type ElectronArtifactDetails = ElectronPlatformArtifactDetails | ElectronGenericArtifactDetails; +export declare type Omit<T, K> = Pick<T, Exclude<keyof T, K>>; +export declare type ElectronPlatformArtifactDetailsWithDefaults = (Omit<ElectronPlatformArtifactDetails, 'platform' | 'arch'> & { + platform?: string; + arch?: string; +}) | ElectronGenericArtifactDetails; +export declare type DownloadOptions = any; diff --git a/node_modules/@electron/get/dist/cjs/types.js b/node_modules/@electron/get/dist/cjs/types.js new file mode 100644 index 0000000..11e638d --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/types.js @@ -0,0 +1,3 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +//# sourceMappingURL=types.js.map
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/types.js.map b/node_modules/@electron/get/dist/cjs/types.js.map new file mode 100644 index 0000000..7b5fff8 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":""}
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/utils.d.ts b/node_modules/@electron/get/dist/cjs/utils.d.ts new file mode 100644 index 0000000..6bc848a --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/utils.d.ts @@ -0,0 +1,19 @@ +export declare function withTempDirectoryIn<T>(parentDirectory: string | undefined, fn: (directory: string) => Promise<T>): Promise<T>; +export declare function withTempDirectory<T>(fn: (directory: string) => Promise<T>): Promise<T>; +export declare function normalizeVersion(version: string): string; +/** + * Runs the `uname` command and returns the trimmed output. + */ +export declare function uname(): string; +/** + * Generates an architecture name that would be used in an Electron or Node.js + * download file name, from the `process` module information. + */ +export declare function getHostArch(): string; +/** + * Generates an architecture name that would be used in an Electron or Node.js + * download file name. + */ +export declare function getNodeArch(arch: string): string; +export declare function ensureIsTruthyString<T, K extends keyof T>(obj: T, key: K): void; +export declare function isOfficialLinuxIA32Download(platform: string, arch: string, version: string, mirrorOptions?: object): boolean; diff --git a/node_modules/@electron/get/dist/cjs/utils.js b/node_modules/@electron/get/dist/cjs/utils.js new file mode 100644 index 0000000..21d9743 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/utils.js @@ -0,0 +1,82 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const childProcess = require("child_process"); +const fs = require("fs-extra"); +const os = require("os"); +const path = require("path"); +async function useAndRemoveDirectory(directory, fn) { + let result; + try { + result = await fn(directory); + } + finally { + await fs.remove(directory); + } + return result; +} +async function withTempDirectoryIn(parentDirectory = os.tmpdir(), fn) { + const tempDirectoryPrefix = 'electron-download-'; + const tempDirectory = await fs.mkdtemp(path.resolve(parentDirectory, tempDirectoryPrefix)); + return useAndRemoveDirectory(tempDirectory, fn); +} +exports.withTempDirectoryIn = withTempDirectoryIn; +async function withTempDirectory(fn) { + return withTempDirectoryIn(undefined, fn); +} +exports.withTempDirectory = withTempDirectory; +function normalizeVersion(version) { + if (!version.startsWith('v')) { + return `v${version}`; + } + return version; +} +exports.normalizeVersion = normalizeVersion; +/** + * Runs the `uname` command and returns the trimmed output. + */ +function uname() { + return childProcess + .execSync('uname -m') + .toString() + .trim(); +} +exports.uname = uname; +/** + * Generates an architecture name that would be used in an Electron or Node.js + * download file name, from the `process` module information. + */ +function getHostArch() { + return getNodeArch(process.arch); +} +exports.getHostArch = getHostArch; +/** + * Generates an architecture name that would be used in an Electron or Node.js + * download file name. + */ +function getNodeArch(arch) { + if (arch === 'arm') { + switch (process.config.variables.arm_version) { + case '6': + return uname(); + case '7': + default: + return 'armv7l'; + } + } + return arch; +} +exports.getNodeArch = getNodeArch; +function ensureIsTruthyString(obj, key) { + if (!obj[key] || typeof obj[key] !== 'string') { + throw new Error(`Expected property "${key}" to be provided as a string but it was not`); + } +} +exports.ensureIsTruthyString = ensureIsTruthyString; +function isOfficialLinuxIA32Download(platform, arch, version, mirrorOptions) { + return (platform === 'linux' && + arch === 'ia32' && + Number(version.slice(1).split('.')[0]) >= 4 && + typeof mirrorOptions === 'undefined'); +} +exports.isOfficialLinuxIA32Download = isOfficialLinuxIA32Download; +//# sourceMappingURL=utils.js.map
\ No newline at end of file diff --git a/node_modules/@electron/get/dist/cjs/utils.js.map b/node_modules/@electron/get/dist/cjs/utils.js.map new file mode 100644 index 0000000..e436940 --- /dev/null +++ b/node_modules/@electron/get/dist/cjs/utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";;AAAA,8CAA8C;AAC9C,+BAA+B;AAC/B,yBAAyB;AACzB,6BAA6B;AAE7B,KAAK,UAAU,qBAAqB,CAClC,SAAiB,EACjB,EAAqC;IAErC,IAAI,MAAS,CAAC;IACd,IAAI;QACF,MAAM,GAAG,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC;KAC9B;YAAS;QACR,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;KAC5B;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAEM,KAAK,UAAU,mBAAmB,CACvC,kBAA0B,EAAE,CAAC,MAAM,EAAE,EACrC,EAAqC;IAErC,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;IACjD,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAC3F,OAAO,qBAAqB,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;AAClD,CAAC;AAPD,kDAOC;AAEM,KAAK,UAAU,iBAAiB,CAAI,EAAqC;IAC9E,OAAO,mBAAmB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;AAC5C,CAAC;AAFD,8CAEC;AAED,SAAgB,gBAAgB,CAAC,OAAe;IAC9C,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;QAC5B,OAAO,IAAI,OAAO,EAAE,CAAC;KACtB;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AALD,4CAKC;AAED;;GAEG;AACH,SAAgB,KAAK;IACnB,OAAO,YAAY;SAChB,QAAQ,CAAC,UAAU,CAAC;SACpB,QAAQ,EAAE;SACV,IAAI,EAAE,CAAC;AACZ,CAAC;AALD,sBAKC;AAED;;;GAGG;AACH,SAAgB,WAAW;IACzB,OAAO,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAFD,kCAEC;AAED;;;GAGG;AACH,SAAgB,WAAW,CAAC,IAAY;IACtC,IAAI,IAAI,KAAK,KAAK,EAAE;QAClB,QAAS,OAAO,CAAC,MAAM,CAAC,SAAiB,CAAC,WAAW,EAAE;YACrD,KAAK,GAAG;gBACN,OAAO,KAAK,EAAE,CAAC;YACjB,KAAK,GAAG,CAAC;YACT;gBACE,OAAO,QAAQ,CAAC;SACnB;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAZD,kCAYC;AAED,SAAgB,oBAAoB,CAAuB,GAAM,EAAE,GAAM;IACvE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE;QAC7C,MAAM,IAAI,KAAK,CAAC,sBAAsB,GAAG,6CAA6C,CAAC,CAAC;KACzF;AACH,CAAC;AAJD,oDAIC;AAED,SAAgB,2BAA2B,CACzC,QAAgB,EAChB,IAAY,EACZ,OAAe,EACf,aAAsB;IAEtB,OAAO,CACL,QAAQ,KAAK,OAAO;QACpB,IAAI,KAAK,MAAM;QACf,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3C,OAAO,aAAa,KAAK,WAAW,CACrC,CAAC;AACJ,CAAC;AAZD,kEAYC"}
\ No newline at end of file |
