better-npm-init
Version:
A better version of npm init, with templates and more. Usage: better-npm-init <template> [--yarn] [--install] [--git] [--yes] [--help]
63 lines (45 loc) • 5.92 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "InstallerOptions", {
enumerable: true,
get: function () {
return _installerBase.InstallerOptions;
}
});
exports.default = void 0;
require("source-map-support/register");
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 _child_process = require("child_process");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } 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)(_child_process.exec)(moveCommand);
} else {
await (0, _util.promisify)(_sudoPrompt.default.exec)(moveCommand, {
name: 'Electron Forge'
});
}
}
}
exports.default = InstallerDarwin;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9JbnN0YWxsZXJEYXJ3aW4udHMiXSwibmFtZXMiOlsiSW5zdGFsbGVyRGFyd2luIiwiSW5zdGFsbGVyQmFzZSIsIm1vdmVBcHAiLCJhcHBQYXRoIiwidGFyZ2V0QXBwbGljYXRpb25QYXRoIiwic3Bpbm5lciIsImNvcHlJbnN0ZWFkIiwid3JpdGVBY2Nlc3MiLCJmcyIsImFjY2VzcyIsImNvbnN0YW50cyIsIldfT0siLCJlcnIiLCJwYXRoRXhpc3RzIiwiZmFpbCIsIkVycm9yIiwicGF0aCIsImJhc2VuYW1lIiwibW92ZUNvbW1hbmQiLCJleGVjIiwic3VkbyIsIm5hbWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUNBOztBQUVBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7OztBQUllLE1BQWVBLGVBQWYsU0FBdUNDLHNCQUF2QyxDQUFxRDtBQUNyRCxRQUFQQyxPQUFPLENBQUNDLE9BQUQsRUFBa0JDLHFCQUFsQixFQUFpREMsT0FBakQsRUFBbUVDLFdBQVcsR0FBRyxLQUFqRixFQUF1RztBQUNsSCxRQUFJQyxXQUFXLEdBQUcsSUFBbEI7O0FBQ0EsUUFBSTtBQUNGLFlBQU1DLGlCQUFHQyxNQUFILENBQVUsZUFBVixFQUEyQkQsaUJBQUdFLFNBQUgsQ0FBYUMsSUFBeEMsQ0FBTjtBQUNELEtBRkQsQ0FFRSxPQUFPQyxHQUFQLEVBQVk7QUFDWkwsTUFBQUEsV0FBVyxHQUFHLEtBQWQ7QUFDRDs7QUFFRCxRQUFJLE1BQU1DLGlCQUFHSyxVQUFILENBQWNULHFCQUFkLENBQVYsRUFBZ0Q7QUFDOUNDLE1BQUFBLE9BQU8sQ0FBQ1MsSUFBUjtBQUNBLFlBQU0sSUFBSUMsS0FBSixDQUFXLG9CQUFtQkMsY0FBS0MsUUFBTCxDQUFjYixxQkFBZCxDQUFxQyw4Q0FBbkUsQ0FBTjtBQUNEOztBQUVELFVBQU1jLFdBQVcsR0FBSSxHQUFFWixXQUFXLEdBQUcsT0FBSCxHQUFhLElBQUssS0FBSUgsT0FBUSxNQUFLQyxxQkFBc0IsR0FBM0Y7O0FBQ0EsUUFBSUcsV0FBSixFQUFpQjtBQUNmLFlBQU0scUJBQVVZLG1CQUFWLEVBQWdCRCxXQUFoQixDQUFOO0FBQ0QsS0FGRCxNQUVPO0FBQ0wsWUFBTSxxQkFBVUUsb0JBQUtELElBQWYsRUFBcUJELFdBQXJCLEVBQWtDO0FBQ3RDRyxRQUFBQSxJQUFJLEVBQUU7QUFEZ0MsT0FBbEMsQ0FBTjtBQUdEO0FBQ0Y7O0FBdEJpRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9yYUltcGwgfSBmcm9tICdAZWxlY3Ryb24tZm9yZ2UvYXN5bmMtb3JhJztcbmltcG9ydCBJbnN0YWxsZXJCYXNlLCB7IEluc3RhbGxlck9wdGlvbnMgfSBmcm9tICdAZWxlY3Ryb24tZm9yZ2UvaW5zdGFsbGVyLWJhc2UnO1xuXG5pbXBvcnQgZnMgZnJvbSAnZnMtZXh0cmEnO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBwcm9taXNpZnkgfSBmcm9tICd1dGlsJztcbmltcG9ydCBzdWRvIGZyb20gJ3N1ZG8tcHJvbXB0JztcbmltcG9ydCB7IGV4ZWMgfSBmcm9tICdjaGlsZF9wcm9jZXNzJztcblxuZXhwb3J0IHsgSW5zdGFsbGVyT3B0aW9ucyB9O1xuXG5leHBvcnQgZGVmYXVsdCBhYnN0cmFjdCBjbGFzcyBJbnN0YWxsZXJEYXJ3aW4gZXh0ZW5kcyBJbnN0YWxsZXJCYXNlIHtcbiAgYXN5bmMgbW92ZUFwcChhcHBQYXRoOiBzdHJpbmcsIHRhcmdldEFwcGxpY2F0aW9uUGF0aDogc3RyaW5nLCBzcGlubmVyOiBPcmFJbXBsLCBjb3B5SW5zdGVhZCA9IGZhbHNlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgbGV0IHdyaXRlQWNjZXNzID0gdHJ1ZTtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgZnMuYWNjZXNzKCcvQXBwbGljYXRpb25zJywgZnMuY29uc3RhbnRzLldfT0spO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgd3JpdGVBY2Nlc3MgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAoYXdhaXQgZnMucGF0aEV4aXN0cyh0YXJnZXRBcHBsaWNhdGlvblBhdGgpKSB7XG4gICAgICBzcGlubmVyLmZhaWwoKTtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVGhlIGFwcGxpY2F0aW9uIFwiJHtwYXRoLmJhc2VuYW1lKHRhcmdldEFwcGxpY2F0aW9uUGF0aCl9XCIgYXBwZWFycyB0byBhbHJlYWR5IGV4aXN0IGluIC9BcHBsaWNhdGlvbnMuYCk7XG4gICAgfVxuXG4gICAgY29uc3QgbW92ZUNvbW1hbmQgPSBgJHtjb3B5SW5zdGVhZCA/ICdjcCAtcicgOiAnbXYnfSBcIiR7YXBwUGF0aH1cIiBcIiR7dGFyZ2V0QXBwbGljYXRpb25QYXRofVwiYDtcbiAgICBpZiAod3JpdGVBY2Nlc3MpIHtcbiAgICAgIGF3YWl0IHByb21pc2lmeShleGVjKShtb3ZlQ29tbWFuZCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGF3YWl0IHByb21pc2lmeShzdWRvLmV4ZWMpKG1vdmVDb21tYW5kLCB7XG4gICAgICAgIG5hbWU6ICdFbGVjdHJvbiBGb3JnZScsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==