UNPKG

pot-js

Version:

Process management module

85 lines (59 loc) 2.28 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _homeOrTmp = require('home-or-tmp'); var _homeOrTmp2 = _interopRequireDefault(_homeOrTmp); var _lodash = require('lodash'); var _config = require('../Schemas/config'); var _config2 = _interopRequireDefault(_config); var _fsExtra = require('fs-extra'); var _path = require('path'); var _package = require('../../package.json'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; } const base = (0, _path.join)(_homeOrTmp2.default, '.config', _package.name); const workspace = { default: process.env.POT_WORKSPACE || _config2.default.properties.workspace.default, _getDir() { var _arguments = arguments, _this = this; return _asyncToGenerator(function* () { for (var _len = _arguments.length, paths = Array(_len), _key = 0; _key < _len; _key++) { paths[_key] = _arguments[_key]; } const dir = (0, _path.join)(base, _this._name || _this.default, ...paths.filter(Boolean)); yield (0, _fsExtra.ensureDir)(dir); return dir; })(); }, DEPRECATED_getPidsDir() { var _this2 = this; return _asyncToGenerator(function* () { return _this2._getDir('pids'); })(); }, DEPRECATED_getSocketsDir() { var _this3 = this; return _asyncToGenerator(function* () { return _this3._getDir('sockets'); })(); }, getRunDir() { var _this4 = this; return _asyncToGenerator(function* () { return _this4._getDir('pot-run'); })(); }, getLogsDir(name) { var _this5 = this; return _asyncToGenerator(function* () { return _this5._getDir('logs', name); })(); }, set(options) { this._name = (0, _lodash.isObject)(options) ? options.workspace : options; if (!this._name) this._name = this.default; } }; exports.default = workspace;