@rnv/engine-core
Version:
ReNative Engine Core
78 lines • 4.12 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var core_1 = require("@rnv/core");
var sdk_utils_1 = require("@rnv/sdk-utils");
var kill_port_1 = tslib_1.__importDefault(require("kill-port"));
exports.default = (0, core_1.createTask)({
description: 'Kills all the processes related to this project',
fn: function (_a) {
var ctx = _a.ctx, taskName = _a.taskName, originTaskName = _a.originTaskName;
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
var usedPorts, platArray, results, ports, i, plat, port, usedPortsArr, confirm_1, killPromise_1;
var _b, _c;
return tslib_1.__generator(this, function (_d) {
switch (_d.label) {
case 0:
usedPorts = [];
platArray = [];
results = [];
ports = {};
return [4 /*yield*/, (0, core_1.configureRuntimeDefaults)()];
case 1:
_d.sent();
if (!ctx.paths.project.configExists) return [3 /*break*/, 4];
return [4 /*yield*/, (0, core_1.executeTask)({ taskName: core_1.RnvTaskName.appConfigure, parentTaskName: taskName, originTaskName: originTaskName })];
case 2:
_d.sent();
return [4 /*yield*/, (0, core_1.configureRuntimeDefaults)()];
case 3:
_d.sent();
platArray = Object.values(ctx.runtime.supportedPlatforms);
ports = ((_c = (_b = ctx.buildConfig) === null || _b === void 0 ? void 0 : _b.defaults) === null || _c === void 0 ? void 0 : _c.ports) || {};
_d.label = 4;
case 4:
for (i = 0; i < platArray.length; i++) {
plat = platArray[i];
port = ports === null || ports === void 0 ? void 0 : ports[plat.platform];
plat.port = port;
if (port) {
results.push((0, sdk_utils_1.checkPortInUse)(port));
}
}
return [4 /*yield*/, Promise.all(results)];
case 5:
usedPortsArr = _d.sent();
usedPortsArr.forEach(function (isInUse, i) {
if (isInUse) {
usedPorts.push(platArray[i]);
}
});
if (!usedPorts.length) return [3 /*break*/, 8];
return [4 /*yield*/, (0, core_1.inquirerPrompt)({
type: 'confirm',
message: 'Processes attached to the ports will be killed. Continue?',
warningMessage: "Found active ports:\n".concat(usedPorts.map(function (v) { return (0, core_1.chalk)().bold.white("> ".concat(v.port, " (").concat(v.platform, ")")); }).join('\n')),
})];
case 6:
confirm_1 = (_d.sent()).confirm;
if (!confirm_1) return [3 /*break*/, 8];
killPromise_1 = [];
usedPorts.forEach(function (v) {
if (v.port)
killPromise_1.push((0, kill_port_1.default)(v.port));
});
return [4 /*yield*/, Promise.all(usedPorts)];
case 7:
_d.sent();
(0, core_1.logSuccess)('Processes KILLED');
_d.label = 8;
case 8: return [2 /*return*/, true];
}
});
});
},
task: core_1.RnvTaskName.kill,
isGlobalScope: true,
});
//# sourceMappingURL=taskKill.js.map
;