| 123456789101112131415161718192021222324252627282930313233343536 |
- function strpad(data, opts) {
- var max = 0;
- opts = opts || {};
- opts.marginLeft = opts.marginLeft || 0;
- opts.marginRight = opts.marginRight || 0;
- opts.padFnc = opts.padFnc || String.prototype.padEnd;
- data.forEach(i => {
- max = Math.max(i.length, max);
- });
- return data.map(i => {
- i = opts.padFnc.call(i, max);
- if (opts.marginLeft)
- i = (" ".repeat(opts.marginLeft)) +i;
- if (opts.marginRight)
- i = i +(" ".repeat(opts.marginRight));
- return i;
- });
- }
- function arrayPad(arr, opts) {
- var padded = [];
- for (var i =0, len = arr[0].length; i < len; ++i)
- padded.push(strpad(arr.map(arrItem => arrItem[i]), opts ? opts[i] : {}));
- var result = [];
- for (var i =0, len = padded[0].length; i < len; ++i)
- result.push(padded.map(arrItem => arrItem[i]).join(" "));
- return result;
- }
- module.exports = {
- arrayPad: arrayPad,
- strpad: strpad
- };
|