trm-client
Version:
TRM (Transport Request Manager) Client
71 lines (70 loc) • 3.86 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());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.list = list;
const trm_core_1 = require("trm-core");
const commons_1 = require("./commons");
const chalk_1 = __importDefault(require("chalk"));
const trm_commons_1 = require("trm-commons");
function list(commandArgs) {
return __awaiter(this, void 0, void 0, function* () {
trm_commons_1.Logger.loading(`Reading packages...`);
const dest = trm_core_1.SystemConnector.getDest();
var aPackages = yield commons_1.CommandContext.getSystemPackages();
var iLocals = aPackages.filter(o => o.registry.getRegistryType() === trm_core_1.RegistryType.LOCAL).length;
if (!commandArgs.locals) {
aPackages = aPackages.filter(o => o.registry.getRegistryType() !== trm_core_1.RegistryType.LOCAL);
}
if (aPackages.length > 0) {
const tableHead = [`Name`, `Version`, `Registry`, `Devclass`, `TRM transport`, `Landscape transport`];
var tableData = [];
for (const oPackage of aPackages) {
try {
const packageName = oPackage.packageName || '';
const version = oPackage.manifest.get().version || '';
const registry = oPackage.registry.getRegistryType() === trm_core_1.RegistryType.LOCAL ? chalk_1.default.bold(oPackage.registry.name) : oPackage.registry.name;
const devclass = oPackage.getDevclass() || '';
const linkedTransport = oPackage.manifest.getLinkedTransport();
const landscapeTransport = yield oPackage.getWbTransport();
var importTransport = '';
if (linkedTransport && (yield linkedTransport.isImported())) {
importTransport = linkedTransport.trkorr;
}
tableData.push([
packageName,
version,
registry,
devclass,
importTransport,
landscapeTransport ? landscapeTransport.trkorr : ''
]);
}
catch (e) {
trm_commons_1.Logger.error(e, true);
}
}
if (tableData.length < aPackages.length) {
trm_commons_1.Logger.warning(`${aPackages.length - tableData.length} packages couldn't be printed (check logs).`);
}
trm_commons_1.Logger.info(`${dest} has ${aPackages.length} packages.`);
trm_commons_1.Logger.table(tableHead, tableData);
if (iLocals > 0 && !commandArgs.locals) {
trm_commons_1.Logger.warning(`There ${iLocals === 1 ? 'is' : 'are'} ${iLocals} local package${iLocals === 1 ? '' : 's'}. Run with option -l (--locals) to list ${iLocals === 1 ? 'it' : 'them'}.`);
}
}
else {
trm_commons_1.Logger.info(`${dest} has 0 packages.`);
}
});
}