better-npm-init
Version:
A better version of npm init, with templates and more. Usage: better-npm-init <template> [--yarn] [--install] [--git] [--yes] [--help]
47 lines (34 loc) • 4.87 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
require("source-map-support/register");
var _installerDarwin = _interopRequireDefault(require("@electron-forge/installer-darwin"));
var _crossSpawnPromise = require("@malept/cross-spawn-promise");
var _fsExtra = _interopRequireDefault(require("fs-extra"));
var _path = _interopRequireDefault(require("path"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
class InstallerZip extends _installerDarwin.default {
constructor(...args) {
super(...args);
_defineProperty(this, "name", 'zip');
}
async install({
filePath,
installSpinner
}) {
await (0, _crossSpawnPromise.spawn)('unzip', ['-q', '-o', _path.default.basename(filePath)], {
cwd: _path.default.dirname(filePath)
});
const appPath = (await _fsExtra.default.readdir(_path.default.dirname(filePath))).filter(file => file.endsWith('.app')).map(file => _path.default.resolve(_path.default.dirname(filePath), file)).sort((fA, fB) => _fsExtra.default.statSync(fA).ctime.getTime() - _fsExtra.default.statSync(fB).ctime.getTime())[0];
const targetApplicationPath = `/Applications/${_path.default.basename(appPath)}`;
await this.moveApp(appPath, targetApplicationPath, installSpinner);
await (0, _crossSpawnPromise.spawn)('open', ['-R', targetApplicationPath], {
detached: true
});
}
}
exports.default = InstallerZip;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9JbnN0YWxsZXJaaXAudHMiXSwibmFtZXMiOlsiSW5zdGFsbGVyWmlwIiwiSW5zdGFsbGVyRGFyd2luIiwiaW5zdGFsbCIsImZpbGVQYXRoIiwiaW5zdGFsbFNwaW5uZXIiLCJwYXRoIiwiYmFzZW5hbWUiLCJjd2QiLCJkaXJuYW1lIiwiYXBwUGF0aCIsImZzIiwicmVhZGRpciIsImZpbHRlciIsImZpbGUiLCJlbmRzV2l0aCIsIm1hcCIsInJlc29sdmUiLCJzb3J0IiwiZkEiLCJmQiIsInN0YXRTeW5jIiwiY3RpbWUiLCJnZXRUaW1lIiwidGFyZ2V0QXBwbGljYXRpb25QYXRoIiwibW92ZUFwcCIsImRldGFjaGVkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFFQTs7QUFDQTs7QUFDQTs7Ozs7O0FBRWUsTUFBTUEsWUFBTixTQUEyQkMsd0JBQTNCLENBQTJDO0FBQUE7QUFBQTs7QUFBQSxrQ0FDakQsS0FEaUQ7QUFBQTs7QUFHM0MsUUFBUEMsT0FBTyxDQUFDO0FBQUVDLElBQUFBLFFBQUY7QUFBWUMsSUFBQUE7QUFBWixHQUFELEVBQWdFO0FBQzNFLFVBQU0sOEJBQU0sT0FBTixFQUFlLENBQUMsSUFBRCxFQUFPLElBQVAsRUFBYUMsY0FBS0MsUUFBTCxDQUFjSCxRQUFkLENBQWIsQ0FBZixFQUFzRDtBQUMxREksTUFBQUEsR0FBRyxFQUFFRixjQUFLRyxPQUFMLENBQWFMLFFBQWI7QUFEcUQsS0FBdEQsQ0FBTjtBQUlBLFVBQU1NLE9BQU8sR0FBRyxDQUFDLE1BQU1DLGlCQUFHQyxPQUFILENBQVdOLGNBQUtHLE9BQUwsQ0FBYUwsUUFBYixDQUFYLENBQVAsRUFDYlMsTUFEYSxDQUNMQyxJQUFELElBQVVBLElBQUksQ0FBQ0MsUUFBTCxDQUFjLE1BQWQsQ0FESixFQUViQyxHQUZhLENBRVJGLElBQUQsSUFBVVIsY0FBS1csT0FBTCxDQUFhWCxjQUFLRyxPQUFMLENBQWFMLFFBQWIsQ0FBYixFQUFxQ1UsSUFBckMsQ0FGRCxFQUdiSSxJQUhhLENBR1IsQ0FBQ0MsRUFBRCxFQUFLQyxFQUFMLEtBQVlULGlCQUFHVSxRQUFILENBQVlGLEVBQVosRUFBZ0JHLEtBQWhCLENBQXNCQyxPQUF0QixLQUFrQ1osaUJBQUdVLFFBQUgsQ0FBWUQsRUFBWixFQUFnQkUsS0FBaEIsQ0FBc0JDLE9BQXRCLEVBSHRDLEVBR3VFLENBSHZFLENBQWhCO0FBS0EsVUFBTUMscUJBQXFCLEdBQUksaUJBQWdCbEIsY0FBS0MsUUFBTCxDQUFjRyxPQUFkLENBQXVCLEVBQXRFO0FBRUEsVUFBTSxLQUFLZSxPQUFMLENBQWFmLE9BQWIsRUFBc0JjLHFCQUF0QixFQUE2Q25CLGNBQTdDLENBQU47QUFFQSxVQUFNLDhCQUFNLE1BQU4sRUFBYyxDQUFDLElBQUQsRUFBT21CLHFCQUFQLENBQWQsRUFBNkM7QUFBRUUsTUFBQUEsUUFBUSxFQUFFO0FBQVosS0FBN0MsQ0FBTjtBQUNEOztBQWxCdUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgSW5zdGFsbGVyRGFyd2luLCB7IEluc3RhbGxlck9wdGlvbnMgfSBmcm9tICdAZWxlY3Ryb24tZm9yZ2UvaW5zdGFsbGVyLWRhcndpbic7XG5cbmltcG9ydCB7IHNwYXduIH0gZnJvbSAnQG1hbGVwdC9jcm9zcy1zcGF3bi1wcm9taXNlJztcbmltcG9ydCBmcyBmcm9tICdmcy1leHRyYSc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgSW5zdGFsbGVyWmlwIGV4dGVuZHMgSW5zdGFsbGVyRGFyd2luIHtcbiAgbmFtZSA9ICd6aXAnO1xuXG4gIGFzeW5jIGluc3RhbGwoeyBmaWxlUGF0aCwgaW5zdGFsbFNwaW5uZXIgfTogSW5zdGFsbGVyT3B0aW9ucyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHNwYXduKCd1bnppcCcsIFsnLXEnLCAnLW8nLCBwYXRoLmJhc2VuYW1lKGZpbGVQYXRoKV0sIHtcbiAgICAgIGN3ZDogcGF0aC5kaXJuYW1lKGZpbGVQYXRoKSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGFwcFBhdGggPSAoYXdhaXQgZnMucmVhZGRpcihwYXRoLmRpcm5hbWUoZmlsZVBhdGgpKSlcbiAgICAgIC5maWx0ZXIoKGZpbGUpID0+IGZpbGUuZW5kc1dpdGgoJy5hcHAnKSlcbiAgICAgIC5tYXAoKGZpbGUpID0+IHBhdGgucmVzb2x2ZShwYXRoLmRpcm5hbWUoZmlsZVBhdGgpLCBmaWxlKSlcbiAgICAgIC5zb3J0KChmQSwgZkIpID0+IGZzLnN0YXRTeW5jKGZBKS5jdGltZS5nZXRUaW1lKCkgLSBmcy5zdGF0U3luYyhmQikuY3RpbWUuZ2V0VGltZSgpKVswXTtcblxuICAgIGNvbnN0IHRhcmdldEFwcGxpY2F0aW9uUGF0aCA9IGAvQXBwbGljYXRpb25zLyR7cGF0aC5iYXNlbmFtZShhcHBQYXRoKX1gO1xuXG4gICAgYXdhaXQgdGhpcy5tb3ZlQXBwKGFwcFBhdGgsIHRhcmdldEFwcGxpY2F0aW9uUGF0aCwgaW5zdGFsbFNwaW5uZXIpO1xuXG4gICAgYXdhaXQgc3Bhd24oJ29wZW4nLCBbJy1SJywgdGFyZ2V0QXBwbGljYXRpb25QYXRoXSwgeyBkZXRhY2hlZDogdHJ1ZSB9KTtcbiAgfVxufVxuIl19