UNPKG

@electron-forge/installer-darwin

Version:
68 lines (67 loc) 6 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "InstallerOptions", { enumerable: true, get: function() { return _installerBase.InstallerOptions; } }); exports.default = void 0; var _installerBase = _interopRequireWildcard(require("@electron-forge/installer-base")); var _fsExtra = _interopRequireDefault(require("fs-extra")); var _path = _interopRequireDefault(require("path")); var _util = require("util"); var _sudoPrompt = _interopRequireDefault(require("sudo-prompt")); var _childProcess = require("child_process"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for(var key in obj){ if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } class InstallerDarwin extends _installerBase.default { async moveApp(appPath, targetApplicationPath, spinner, copyInstead = false) { let writeAccess = true; try { await _fsExtra.default.access('/Applications', _fsExtra.default.constants.W_OK); } catch (err) { writeAccess = false; } if (await _fsExtra.default.pathExists(targetApplicationPath)) { spinner.fail(); throw new Error(`The application "${_path.default.basename(targetApplicationPath)}" appears to already exist in /Applications.`); } const moveCommand = `${copyInstead ? 'cp -r' : 'mv'} "${appPath}" "${targetApplicationPath}"`; if (writeAccess) { await (0, _util).promisify(_childProcess.exec)(moveCommand); } else { await (0, _util).promisify(_sudoPrompt.default.exec)(moveCommand, { name: 'Electron Forge' }); } } } exports.default = InstallerDarwin; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9JbnN0YWxsZXJEYXJ3aW4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3JhSW1wbCB9IGZyb20gJ0BlbGVjdHJvbi1mb3JnZS9hc3luYy1vcmEnO1xuaW1wb3J0IEluc3RhbGxlckJhc2UsIHsgSW5zdGFsbGVyT3B0aW9ucyB9IGZyb20gJ0BlbGVjdHJvbi1mb3JnZS9pbnN0YWxsZXItYmFzZSc7XG5cbmltcG9ydCBmcyBmcm9tICdmcy1leHRyYSc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IHByb21pc2lmeSB9IGZyb20gJ3V0aWwnO1xuaW1wb3J0IHN1ZG8gZnJvbSAnc3Vkby1wcm9tcHQnO1xuaW1wb3J0IHsgZXhlYyB9IGZyb20gJ2NoaWxkX3Byb2Nlc3MnO1xuXG5leHBvcnQgeyBJbnN0YWxsZXJPcHRpb25zIH07XG5cbmV4cG9ydCBkZWZhdWx0IGFic3RyYWN0IGNsYXNzIEluc3RhbGxlckRhcndpbiBleHRlbmRzIEluc3RhbGxlckJhc2Uge1xuICBhc3luYyBtb3ZlQXBwKGFwcFBhdGg6IHN0cmluZywgdGFyZ2V0QXBwbGljYXRpb25QYXRoOiBzdHJpbmcsIHNwaW5uZXI6IE9yYUltcGwsIGNvcHlJbnN0ZWFkID0gZmFsc2UpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBsZXQgd3JpdGVBY2Nlc3MgPSB0cnVlO1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCBmcy5hY2Nlc3MoJy9BcHBsaWNhdGlvbnMnLCBmcy5jb25zdGFudHMuV19PSyk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICB3cml0ZUFjY2VzcyA9IGZhbHNlO1xuICAgIH1cblxuICAgIGlmIChhd2FpdCBmcy5wYXRoRXhpc3RzKHRhcmdldEFwcGxpY2F0aW9uUGF0aCkpIHtcbiAgICAgIHNwaW5uZXIuZmFpbCgpO1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgYXBwbGljYXRpb24gXCIke3BhdGguYmFzZW5hbWUodGFyZ2V0QXBwbGljYXRpb25QYXRoKX1cIiBhcHBlYXJzIHRvIGFscmVhZHkgZXhpc3QgaW4gL0FwcGxpY2F0aW9ucy5gKTtcbiAgICB9XG5cbiAgICBjb25zdCBtb3ZlQ29tbWFuZCA9IGAke2NvcHlJbnN0ZWFkID8gJ2NwIC1yJyA6ICdtdid9IFwiJHthcHBQYXRofVwiIFwiJHt0YXJnZXRBcHBsaWNhdGlvblBhdGh9XCJgO1xuICAgIGlmICh3cml0ZUFjY2Vzcykge1xuICAgICAgYXdhaXQgcHJvbWlzaWZ5KGV4ZWMpKG1vdmVDb21tYW5kKTtcbiAgICB9IGVsc2Uge1xuICAgICAgYXdhaXQgKHByb21pc2lmeShzdWRvLmV4ZWMpIGFzIChjbWQ6IHN0cmluZywgb3B0czogdW5rbm93bikgPT4gUHJvbWlzZTx1bmtub3duPikobW92ZUNvbW1hbmQsIHtcbiAgICAgICAgbmFtZTogJ0VsZWN0cm9uIEZvcmdlJyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbIkluc3RhbGxlck9wdGlvbnMiLCJJbnN0YWxsZXJEYXJ3aW4iLCJJbnN0YWxsZXJCYXNlIiwibW92ZUFwcCIsImFwcFBhdGgiLCJ0YXJnZXRBcHBsaWNhdGlvblBhdGgiLCJzcGlubmVyIiwiY29weUluc3RlYWQiLCJ3cml0ZUFjY2VzcyIsImZzIiwiYWNjZXNzIiwiY29uc3RhbnRzIiwiV19PSyIsImVyciIsInBhdGhFeGlzdHMiLCJmYWlsIiwiRXJyb3IiLCJwYXRoIiwiYmFzZW5hbWUiLCJtb3ZlQ29tbWFuZCIsInByb21pc2lmeSIsImV4ZWMiLCJzdWRvIiwibmFtZSJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFTU0EsQ0FBZ0I7OztlQUFoQkEsY0FBZ0I7Ozs7QUFSdUIsR0FBZ0MsQ0FBaEMsY0FBZ0M7QUFFakUsR0FBVSxDQUFWLFFBQVU7QUFDUixHQUFNLENBQU4sS0FBTTtBQUNHLEdBQU0sQ0FBTixLQUFNO0FBQ2YsR0FBYSxDQUFiLFdBQWE7QUFDVCxHQUFlLENBQWYsYUFBZTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BSU5DLGVBQWUsU0FBU0MsY0FBYTtVQUMzREMsT0FBTyxDQUFDQyxPQUFlLEVBQUVDLHFCQUE2QixFQUFFQyxPQUFnQixFQUFFQyxXQUFXLEdBQUcsS0FBSyxFQUFpQixDQUFDO1FBQ25ILEdBQUcsQ0FBQ0MsV0FBVyxHQUFHLElBQUk7UUFDdEIsR0FBRyxDQUFDLENBQUM7WUFDSCxLQUFLLENBQUNDLFFBQUUsU0FBQ0MsTUFBTSxDQUFDLENBQWUsZ0JBQUVELFFBQUUsU0FBQ0UsU0FBUyxDQUFDQyxJQUFJO1FBQ3BELENBQUMsQ0FBQyxLQUFLLEVBQUVDLEdBQUcsRUFBRSxDQUFDO1lBQ2JMLFdBQVcsR0FBRyxLQUFLO1FBQ3JCLENBQUM7UUFFRCxFQUFFLEVBQUUsS0FBSyxDQUFDQyxRQUFFLFNBQUNLLFVBQVUsQ0FBQ1QscUJBQXFCLEdBQUcsQ0FBQztZQUMvQ0MsT0FBTyxDQUFDUyxJQUFJO1lBQ1osS0FBSyxDQUFDLEdBQUcsQ0FBQ0MsS0FBSyxFQUFFLGlCQUFpQixFQUFFQyxLQUFJLFNBQUNDLFFBQVEsQ0FBQ2IscUJBQXFCLEVBQUUsNENBQTRDO1FBQ3ZILENBQUM7UUFFRCxLQUFLLENBQUNjLFdBQVcsTUFBTVosV0FBVyxHQUFHLENBQU8sU0FBRyxDQUFJLElBQUMsRUFBRSxFQUFFSCxPQUFPLENBQUMsR0FBRyxFQUFFQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQzVGLEVBQUUsRUFBRUcsV0FBVyxFQUFFLENBQUM7WUFDaEIsS0FBSyxLQUFDWSxLQUFTLFlBQUNDLGFBQUksT0FBRUYsV0FBVztRQUNuQyxDQUFDLE1BQU0sQ0FBQztZQUNOLEtBQUssS0FBRUMsS0FBUyxZQUFDRSxXQUFJLFNBQUNELElBQUksRUFBdURGLFdBQVcsRUFBRSxDQUFDO2dCQUM3RkksSUFBSSxFQUFFLENBQWdCO1lBQ3hCLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQzs7a0JBdEIyQnRCLGVBQWUifQ==