1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- "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.
- */
- function getNodeArch(arch) {
- if (arch === 'arm') {
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
- switch (process.config.variables.arm_version) {
- case '6':
- return uname();
- case '7':
- default:
- return 'armv7l';
- }
- }
- return arch;
- }
- exports.getNodeArch = getNodeArch;
- /**
- * 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;
- 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
|