mya/node_modules/native-run/dist/utils/list.js
Fabio 82ccd023df
Some checks are pending
Build Android APK / build (push) Waiting to run
first commit
2026-01-21 15:08:14 +01:00

69 lines
2.3 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.formatTargets = void 0;
const utils_terminal_1 = require("@ionic/utils-terminal");
const errors_1 = require("../errors");
const json_1 = require("./json");
function formatTargets(args, targets) {
const { devices, virtualDevices, errors } = targets;
const virtualOnly = args.includes('--virtual');
const devicesOnly = args.includes('--device');
if (virtualOnly && devicesOnly) {
throw new errors_1.CLIException('Only one of --device or --virtual may be specified', errors_1.ERR_BAD_INPUT);
}
if (args.includes('--json')) {
let result;
if (virtualOnly) {
result = { virtualDevices, errors };
}
else if (devicesOnly) {
result = { devices, errors };
}
else {
result = { devices, virtualDevices, errors };
}
return (0, json_1.stringify)(result);
}
let output = '';
if (errors.length > 0) {
output += `Errors (!):\n\n${errors.map((e) => ` ${(0, errors_1.serializeError)(e)}`)}\n`;
}
if (!virtualOnly) {
output += printTargets('Connected Device', devices);
if (devicesOnly) {
return output;
}
output += '\n';
}
output += printTargets('Virtual Device', virtualDevices);
return output;
}
exports.formatTargets = formatTargets;
function printTargets(name, targets) {
let output = `${name}s:\n\n`;
if (targets.length === 0) {
output += ` No ${name.toLowerCase()}s found\n`;
}
else {
output += formatTargetTable(targets) + '\n';
}
return output;
}
function formatTargetTable(targets) {
const spacer = (0, utils_terminal_1.indent)(2);
return (spacer +
(0, utils_terminal_1.columnar)(targets.map(targetToRow), {
headers: ['Name', 'API', 'Target ID'],
vsep: ' ',
})
.split('\n')
.join(`\n${spacer}`));
}
function targetToRow(target) {
var _a, _b, _c, _d;
return [
(_c = (_b = (_a = target.name) !== null && _a !== void 0 ? _a : target.model) !== null && _b !== void 0 ? _b : target.id) !== null && _c !== void 0 ? _c : '?',
`${target.platform === 'ios' ? 'iOS' : 'API'} ${target.sdkVersion}`,
(_d = target.id) !== null && _d !== void 0 ? _d : '?',
];
}