UNPKG

meteor-desktop

Version:

Build a Meteor's desktop client with hot code push.

61 lines (47 loc) 5.15 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _runtime = _interopRequireDefault(require("regenerator-runtime/runtime")); var _crossSpawn = _interopRequireDefault(require("cross-spawn")); var _log = _interopRequireDefault(require("./log")); var _defaultDependencies = _interopRequireDefault(require("./defaultDependencies")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * Simple Electron runner. Runs the project with the bin provided by the 'electron' package. * @class */ class Electron { constructor($) { this.log = new _log.default('electron'); this.$ = $; } async init() { this.electron = await this.$.getDependency('electron', _defaultDependencies.default.electron); } run() { // Until: https://github.com/electron-userland/electron-prebuilt/pull/118 const { env } = process; env.ELECTRON_ENV = 'development'; const cmd = []; if (this.$.env.options.debug) { cmd.push('--debug=5858'); } cmd.push('.'); const child = (0, _crossSpawn.default)(this.electron.dependency, cmd, { cwd: this.$.env.paths.electronApp.root, env }); // TODO: check if we can configure piping in spawn options child.stdout.on('data', chunk => { process.stdout.write(chunk); }); child.stderr.on('data', chunk => { process.stderr.write(chunk); }); } } exports.default = Electron; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL2xpYi9lbGVjdHJvbi5qcyJdLCJuYW1lcyI6WyJFbGVjdHJvbiIsImNvbnN0cnVjdG9yIiwiJCIsImxvZyIsIkxvZyIsImluaXQiLCJlbGVjdHJvbiIsImdldERlcGVuZGVuY3kiLCJkZWZhdWx0RGVwZW5kZW5jaWVzIiwicnVuIiwiZW52IiwicHJvY2VzcyIsIkVMRUNUUk9OX0VOViIsImNtZCIsIm9wdGlvbnMiLCJkZWJ1ZyIsInB1c2giLCJjaGlsZCIsImRlcGVuZGVuY3kiLCJjd2QiLCJwYXRocyIsImVsZWN0cm9uQXBwIiwicm9vdCIsInN0ZG91dCIsIm9uIiwiY2h1bmsiLCJ3cml0ZSIsInN0ZGVyciJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUNBOztBQUVBOztBQUNBOzs7O0FBRUE7Ozs7QUFJZSxNQUFNQSxRQUFOLENBQWU7QUFDMUJDLEVBQUFBLFdBQVcsQ0FBQ0MsQ0FBRCxFQUFJO0FBQ1gsU0FBS0MsR0FBTCxHQUFXLElBQUlDLFlBQUosQ0FBUSxVQUFSLENBQVg7QUFDQSxTQUFLRixDQUFMLEdBQVNBLENBQVQ7QUFDSDs7QUFFRCxRQUFNRyxJQUFOLEdBQWE7QUFDVCxTQUFLQyxRQUFMLEdBQWdCLE1BQU0sS0FBS0osQ0FBTCxDQUFPSyxhQUFQLENBQXFCLFVBQXJCLEVBQWlDQyw2QkFBb0JGLFFBQXJELENBQXRCO0FBQ0g7O0FBRURHLEVBQUFBLEdBQUcsR0FBRztBQUNGO0FBQ0EsVUFBTTtBQUFFQyxNQUFBQTtBQUFGLFFBQVVDLE9BQWhCO0FBQ0FELElBQUFBLEdBQUcsQ0FBQ0UsWUFBSixHQUFtQixhQUFuQjtBQUVBLFVBQU1DLEdBQUcsR0FBRyxFQUFaOztBQUVBLFFBQUksS0FBS1gsQ0FBTCxDQUFPUSxHQUFQLENBQVdJLE9BQVgsQ0FBbUJDLEtBQXZCLEVBQThCO0FBQzFCRixNQUFBQSxHQUFHLENBQUNHLElBQUosQ0FBUyxjQUFUO0FBQ0g7O0FBRURILElBQUFBLEdBQUcsQ0FBQ0csSUFBSixDQUFTLEdBQVQ7QUFFQSxVQUFNQyxLQUFLLEdBQUcseUJBQU0sS0FBS1gsUUFBTCxDQUFjWSxVQUFwQixFQUFnQ0wsR0FBaEMsRUFBcUM7QUFDL0NNLE1BQUFBLEdBQUcsRUFBRSxLQUFLakIsQ0FBTCxDQUFPUSxHQUFQLENBQVdVLEtBQVgsQ0FBaUJDLFdBQWpCLENBQTZCQyxJQURhO0FBRS9DWixNQUFBQTtBQUYrQyxLQUFyQyxDQUFkLENBYkUsQ0FrQkY7O0FBQ0FPLElBQUFBLEtBQUssQ0FBQ00sTUFBTixDQUFhQyxFQUFiLENBQWdCLE1BQWhCLEVBQXlCQyxLQUFELElBQVc7QUFDL0JkLE1BQUFBLE9BQU8sQ0FBQ1ksTUFBUixDQUFlRyxLQUFmLENBQXFCRCxLQUFyQjtBQUNILEtBRkQ7QUFHQVIsSUFBQUEsS0FBSyxDQUFDVSxNQUFOLENBQWFILEVBQWIsQ0FBZ0IsTUFBaEIsRUFBeUJDLEtBQUQsSUFBVztBQUMvQmQsTUFBQUEsT0FBTyxDQUFDZ0IsTUFBUixDQUFlRCxLQUFmLENBQXFCRCxLQUFyQjtBQUNILEtBRkQ7QUFHSDs7QUFuQ3lCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHJlZ2VuZXJhdG9yUnVudGltZSBmcm9tICdyZWdlbmVyYXRvci1ydW50aW1lL3J1bnRpbWUnO1xuaW1wb3J0IHNwYXduIGZyb20gJ2Nyb3NzLXNwYXduJztcblxuaW1wb3J0IExvZyBmcm9tICcuL2xvZyc7XG5pbXBvcnQgZGVmYXVsdERlcGVuZGVuY2llcyBmcm9tICcuL2RlZmF1bHREZXBlbmRlbmNpZXMnO1xuXG4vKipcbiAqIFNpbXBsZSBFbGVjdHJvbiBydW5uZXIuIFJ1bnMgdGhlIHByb2plY3Qgd2l0aCB0aGUgYmluIHByb3ZpZGVkIGJ5IHRoZSAnZWxlY3Ryb24nIHBhY2thZ2UuXG4gKiBAY2xhc3NcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRWxlY3Ryb24ge1xuICAgIGNvbnN0cnVjdG9yKCQpIHtcbiAgICAgICAgdGhpcy5sb2cgPSBuZXcgTG9nKCdlbGVjdHJvbicpO1xuICAgICAgICB0aGlzLiQgPSAkO1xuICAgIH1cblxuICAgIGFzeW5jIGluaXQoKSB7XG4gICAgICAgIHRoaXMuZWxlY3Ryb24gPSBhd2FpdCB0aGlzLiQuZ2V0RGVwZW5kZW5jeSgnZWxlY3Ryb24nLCBkZWZhdWx0RGVwZW5kZW5jaWVzLmVsZWN0cm9uKTtcbiAgICB9XG5cbiAgICBydW4oKSB7XG4gICAgICAgIC8vIFVudGlsOiBodHRwczovL2dpdGh1Yi5jb20vZWxlY3Ryb24tdXNlcmxhbmQvZWxlY3Ryb24tcHJlYnVpbHQvcHVsbC8xMThcbiAgICAgICAgY29uc3QgeyBlbnYgfSA9IHByb2Nlc3M7XG4gICAgICAgIGVudi5FTEVDVFJPTl9FTlYgPSAnZGV2ZWxvcG1lbnQnO1xuXG4gICAgICAgIGNvbnN0IGNtZCA9IFtdO1xuXG4gICAgICAgIGlmICh0aGlzLiQuZW52Lm9wdGlvbnMuZGVidWcpIHtcbiAgICAgICAgICAgIGNtZC5wdXNoKCctLWRlYnVnPTU4NTgnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNtZC5wdXNoKCcuJyk7XG5cbiAgICAgICAgY29uc3QgY2hpbGQgPSBzcGF3bih0aGlzLmVsZWN0cm9uLmRlcGVuZGVuY3ksIGNtZCwge1xuICAgICAgICAgICAgY3dkOiB0aGlzLiQuZW52LnBhdGhzLmVsZWN0cm9uQXBwLnJvb3QsXG4gICAgICAgICAgICBlbnZcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gVE9ETzogY2hlY2sgaWYgd2UgY2FuIGNvbmZpZ3VyZSBwaXBpbmcgaW4gc3Bhd24gb3B0aW9uc1xuICAgICAgICBjaGlsZC5zdGRvdXQub24oJ2RhdGEnLCAoY2h1bmspID0+IHtcbiAgICAgICAgICAgIHByb2Nlc3Muc3Rkb3V0LndyaXRlKGNodW5rKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNoaWxkLnN0ZGVyci5vbignZGF0YScsIChjaHVuaykgPT4ge1xuICAgICAgICAgICAgcHJvY2Vzcy5zdGRlcnIud3JpdGUoY2h1bmspO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=