UNPKG

electron-forge

Version:

A complete tool for building modern Electron applications

115 lines (89 loc) 7.17 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.isSupportedOnCurrentPlatform = undefined; var _assign = require('babel-runtime/core-js/object/assign'); var _assign2 = _interopRequireDefault(_assign); var _regenerator = require('babel-runtime/regenerator'); var _regenerator2 = _interopRequireDefault(_regenerator); var _bluebird = require('bluebird'); var _fsExtra = require('fs-extra'); var _fsExtra2 = _interopRequireDefault(_fsExtra); var _path = require('path'); var _path2 = _interopRequireDefault(_path); var _pify = require('pify'); var _pify2 = _interopRequireDefault(_pify); var _ensureOutput = require('../../util/ensure-output'); var _configFn = require('../../util/config-fn'); var _configFn2 = _interopRequireDefault(_configFn); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } // electron-installer-dmg doesn't set its 'os' field even though it depends on // appdmg, which is darwin-only var isSupportedOnCurrentPlatform = exports.isSupportedOnCurrentPlatform = function () { var _ref = (0, _bluebird.coroutine)(_regenerator2.default.mark(function _callee() { return _regenerator2.default.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: return _context.abrupt('return', process.platform === 'darwin'); case 1: case 'end': return _context.stop(); } } }, _callee, undefined); })); return function isSupportedOnCurrentPlatform() { return _ref.apply(this, arguments); }; }(); exports.default = function () { var _ref2 = (0, _bluebird.coroutine)(_regenerator2.default.mark(function _callee2(_ref3) { var dir = _ref3.dir, appName = _ref3.appName, targetArch = _ref3.targetArch, forgeConfig = _ref3.forgeConfig, packageJSON = _ref3.packageJSON; var electronDMG, userConfig, outPath, wantedOutPath, dmgConfig; return _regenerator2.default.wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: electronDMG = require('electron-installer-dmg'); userConfig = (0, _configFn2.default)(forgeConfig.electronInstallerDMG, targetArch); outPath = _path2.default.resolve(dir, '../make', (userConfig.name || appName) + '.dmg'); wantedOutPath = _path2.default.resolve(dir, '../make', appName + '-' + packageJSON.version + '.dmg'); _context2.next = 6; return (0, _ensureOutput.ensureFile)(outPath); case 6: dmgConfig = (0, _assign2.default)({ overwrite: true, name: appName }, userConfig, { appPath: _path2.default.resolve(dir, appName + '.app'), out: _path2.default.dirname(outPath) }); _context2.next = 9; return (0, _pify2.default)(electronDMG)(dmgConfig); case 9: if (userConfig.name) { _context2.next = 12; break; } _context2.next = 12; return _fsExtra2.default.rename(outPath, wantedOutPath); case 12: return _context2.abrupt('return', [wantedOutPath]); case 13: case 'end': return _context2.stop(); } } }, _callee2, undefined); })); return function (_x) { return _ref2.apply(this, arguments); }; }(); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1ha2Vycy9kYXJ3aW4vZG1nLmpzIl0sIm5hbWVzIjpbImlzU3VwcG9ydGVkT25DdXJyZW50UGxhdGZvcm0iLCJwcm9jZXNzIiwicGxhdGZvcm0iLCJkaXIiLCJhcHBOYW1lIiwidGFyZ2V0QXJjaCIsImZvcmdlQ29uZmlnIiwicGFja2FnZUpTT04iLCJlbGVjdHJvbkRNRyIsInJlcXVpcmUiLCJ1c2VyQ29uZmlnIiwiZWxlY3Ryb25JbnN0YWxsZXJETUciLCJvdXRQYXRoIiwicmVzb2x2ZSIsIm5hbWUiLCJ3YW50ZWRPdXRQYXRoIiwidmVyc2lvbiIsImRtZ0NvbmZpZyIsIm92ZXJ3cml0ZSIsImFwcFBhdGgiLCJvdXQiLCJkaXJuYW1lIiwicmVuYW1lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUVBOztBQUNBOzs7Ozs7QUFFQTtBQUNBO0FBQ08sSUFBTUE7QUFBQSxpRUFBK0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLDZDQUFZQyxRQUFRQyxRQUFSLEtBQXFCLFFBQWpDOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEdBQS9COztBQUFBO0FBQUE7QUFBQTtBQUFBLEdBQU47OztrRUFFUTtBQUFBLFFBQVNDLEdBQVQsU0FBU0EsR0FBVDtBQUFBLFFBQWNDLE9BQWQsU0FBY0EsT0FBZDtBQUFBLFFBQXVCQyxVQUF2QixTQUF1QkEsVUFBdkI7QUFBQSxRQUFtQ0MsV0FBbkMsU0FBbUNBLFdBQW5DO0FBQUEsUUFBZ0RDLFdBQWhELFNBQWdEQSxXQUFoRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDUEMsdUJBRE8sR0FDT0MsUUFBUSx3QkFBUixDQURQO0FBR1BDLHNCQUhPLEdBR00sd0JBQVNKLFlBQVlLLG9CQUFyQixFQUEyQ04sVUFBM0MsQ0FITjtBQUtQTyxtQkFMTyxHQUtHLGVBQUtDLE9BQUwsQ0FBYVYsR0FBYixFQUFrQixTQUFsQixHQUFnQ08sV0FBV0ksSUFBWCxJQUFtQlYsT0FBbkQsV0FMSDtBQU1QVyx5QkFOTyxHQU1TLGVBQUtGLE9BQUwsQ0FBYVYsR0FBYixFQUFrQixTQUFsQixFQUFnQ0MsT0FBaEMsU0FBMkNHLFlBQVlTLE9BQXZELFVBTlQ7QUFBQTtBQUFBLG1CQU9QLDhCQUFXSixPQUFYLENBUE87O0FBQUE7QUFRUEsscUJBUk8sR0FRSyxzQkFBYztBQUM5QkMseUJBQVcsSUFEbUI7QUFFOUJKLG9CQUFNVjtBQUZ3QixhQUFkLEVBR2ZNLFVBSGUsRUFHSDtBQUNiUyx1QkFBUyxlQUFLTixPQUFMLENBQWFWLEdBQWIsRUFBcUJDLE9BQXJCLFVBREk7QUFFYmdCLG1CQUFLLGVBQUtDLE9BQUwsQ0FBYVQsT0FBYjtBQUZRLGFBSEcsQ0FSTDtBQUFBO0FBQUEsbUJBZVAsb0JBQUtKLFdBQUwsRUFBa0JTLFNBQWxCLENBZk87O0FBQUE7QUFBQSxnQkFnQlJQLFdBQVdJLElBaEJIO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUEsbUJBaUJMLGtCQUFHUSxNQUFILENBQVVWLE9BQVYsRUFBbUJHLGFBQW5CLENBakJLOztBQUFBO0FBQUEsOENBbUJOLENBQUNBLGFBQUQsQ0FuQk07O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRyIsImZpbGUiOiJtYWtlcnMvZGFyd2luL2RtZy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBmcyBmcm9tICdmcy1leHRyYSc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCBwaWZ5IGZyb20gJ3BpZnknO1xuXG5pbXBvcnQgeyBlbnN1cmVGaWxlIH0gZnJvbSAnLi4vLi4vdXRpbC9lbnN1cmUtb3V0cHV0JztcbmltcG9ydCBjb25maWdGbiBmcm9tICcuLi8uLi91dGlsL2NvbmZpZy1mbic7XG5cbi8vIGVsZWN0cm9uLWluc3RhbGxlci1kbWcgZG9lc24ndCBzZXQgaXRzICdvcycgZmllbGQgZXZlbiB0aG91Z2ggaXQgZGVwZW5kcyBvblxuLy8gYXBwZG1nLCB3aGljaCBpcyBkYXJ3aW4tb25seVxuZXhwb3J0IGNvbnN0IGlzU3VwcG9ydGVkT25DdXJyZW50UGxhdGZvcm0gPSBhc3luYyAoKSA9PiBwcm9jZXNzLnBsYXRmb3JtID09PSAnZGFyd2luJztcblxuZXhwb3J0IGRlZmF1bHQgYXN5bmMgKHsgZGlyLCBhcHBOYW1lLCB0YXJnZXRBcmNoLCBmb3JnZUNvbmZpZywgcGFja2FnZUpTT04gfSkgPT4ge1xuICBjb25zdCBlbGVjdHJvbkRNRyA9IHJlcXVpcmUoJ2VsZWN0cm9uLWluc3RhbGxlci1kbWcnKTtcblxuICBjb25zdCB1c2VyQ29uZmlnID0gY29uZmlnRm4oZm9yZ2VDb25maWcuZWxlY3Ryb25JbnN0YWxsZXJETUcsIHRhcmdldEFyY2gpO1xuXG4gIGNvbnN0IG91dFBhdGggPSBwYXRoLnJlc29sdmUoZGlyLCAnLi4vbWFrZScsIGAke3VzZXJDb25maWcubmFtZSB8fCBhcHBOYW1lfS5kbWdgKTtcbiAgY29uc3Qgd2FudGVkT3V0UGF0aCA9IHBhdGgucmVzb2x2ZShkaXIsICcuLi9tYWtlJywgYCR7YXBwTmFtZX0tJHtwYWNrYWdlSlNPTi52ZXJzaW9ufS5kbWdgKTtcbiAgYXdhaXQgZW5zdXJlRmlsZShvdXRQYXRoKTtcbiAgY29uc3QgZG1nQ29uZmlnID0gT2JqZWN0LmFzc2lnbih7XG4gICAgb3ZlcndyaXRlOiB0cnVlLFxuICAgIG5hbWU6IGFwcE5hbWUsXG4gIH0sIHVzZXJDb25maWcsIHtcbiAgICBhcHBQYXRoOiBwYXRoLnJlc29sdmUoZGlyLCBgJHthcHBOYW1lfS5hcHBgKSxcbiAgICBvdXQ6IHBhdGguZGlybmFtZShvdXRQYXRoKSxcbiAgfSk7XG4gIGF3YWl0IHBpZnkoZWxlY3Ryb25ETUcpKGRtZ0NvbmZpZyk7XG4gIGlmICghdXNlckNvbmZpZy5uYW1lKSB7XG4gICAgYXdhaXQgZnMucmVuYW1lKG91dFBhdGgsIHdhbnRlZE91dFBhdGgpO1xuICB9XG4gIHJldHVybiBbd2FudGVkT3V0UGF0aF07XG59O1xuIl19