trm-core
Version:
TRM (Transport Request Manager) Core
56 lines (55 loc) • 2.74 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.setTransportTarget = void 0;
const logger_1 = require("../../logger");
const inquirer_1 = require("../../inquirer");
exports.setTransportTarget = {
name: 'set-transport-target',
run: (context) => __awaiter(void 0, void 0, void 0, function* () {
logger_1.Logger.log('Set transport target step', true);
var needsValidation;
var transportTarget = context.rawInput.systemData.transportTarget;
if (transportTarget === undefined) {
if (!context.rawInput.contextData.noInquirer) {
transportTarget = (yield inquirer_1.Inquirer.prompt({
type: "list",
message: "Publish transport target",
name: "transportTarget",
validate: (input) => __awaiter(void 0, void 0, void 0, function* () {
return yield (0, inquirer_1.validateTransportTarget)(input, context.runtime.systemData.transportTargets);
}),
choices: context.runtime.systemData.transportTargets.map(o => {
return {
name: `${o.sysnam} (${o.systxt})`,
value: o.sysnam
};
})
})).transportTarget;
}
else {
throw new Error(`Release transport target was not declared.`);
}
needsValidation = false;
}
else {
needsValidation = true;
}
if (needsValidation) {
const validate = yield (0, inquirer_1.validateTransportTarget)(transportTarget, context.runtime.systemData.transportTargets);
if (validate && validate !== true) {
throw new Error(validate);
}
logger_1.Logger.info(`Publish transport release target: ${transportTarget}`);
}
context.rawInput.systemData.transportTarget = transportTarget;
})
};