1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.renderList = void 0;
|
4 | const screen_1 = require("./screen");
|
5 | const util_1 = require("./util");
|
6 | function linewrap(length, s) {
|
7 | const lw = require('@oclif/linewrap');
|
8 | return lw(length, screen_1.stdtermwidth, {
|
9 | skipScheme: 'ansi-color',
|
10 | })(s).trim();
|
11 | }
|
12 | function renderList(items) {
|
13 | if (items.length === 0) {
|
14 | return '';
|
15 | }
|
16 | const maxLength = (util_1.maxBy(items, i => i[0].length))[0].length;
|
17 | const lines = items.map(i => {
|
18 | let left = i[0];
|
19 | let right = i[1];
|
20 | if (!right) {
|
21 | return left;
|
22 | }
|
23 | left = left.padEnd(maxLength);
|
24 | right = linewrap(maxLength + 2, right);
|
25 | return `${left} ${right}`;
|
26 | });
|
27 | return lines.join('\n');
|
28 | }
|
29 | exports.renderList = renderList;
|