🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Book a DemoInstallSign in
Socket

cli-color

Package Overview
Dependencies
Maintainers
1
Versions
26
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cli-color - npm Package Compare versions

Comparing version

to
1.2.0

25

columns.js
'use strict';
var from = require('es5-ext/array/from')
, iterable = require('es5-ext/iterable/validate-object')
, stringifiable = require('es5-ext/object/validate-stringifiable')
, pad = require('es5-ext/string/#/pad');
var from = require('es5-ext/array/from')
, iterable = require('es5-ext/iterable/validate-object')
, stringifiable = require('es5-ext/object/validate-stringifiable')
, repeat = require('es5-ext/string/#/repeat')
, getStrippedLength = require('./get-stripped-length');
module.exports = function (rows/*, options*/) {
var options = Object(arguments[1]), cols = [];
var options = Object(arguments[1]), cols = []
, colsOptions = options.columns || [];
return from(iterable(rows), function (row, index) {
return from(iterable(row), function (str, index) {
var col = cols[index];
var col = cols[index], strLength;
if (!col) col = cols[index] = { width: 0 };
str = stringifiable(str);
if (str.length > col.width) col.width = str.length;
return str;
strLength = getStrippedLength(str);
if (strLength > col.width) col.width = strLength;
return { str: str, length: strLength };
});
}).map(function (row) {
return row.map(function (item, index) {
return pad.call(item, ' ', -cols[index].width);
var pad, align = 'left', colOptions = colsOptions && colsOptions[index];
align = (colOptions && (colOptions.align === 'right')) ? 'right' : 'left';
pad = repeat.call(' ', cols[index].width - item.length);
if (align === 'left') return item.str + pad;
return pad + item.str;
}).join((options.sep == null) ? ' | ' : options.sep);
}).join('\n') + '\n';
};
{
"name": "cli-color",
"version": "1.1.0",
"version": "1.2.0",
"description": "Colors, formatting and other tools for the console",

@@ -22,11 +22,11 @@ "author": "Mariusz Nowak <medyk@medikoo.com> (http://www.medikoo.com/)",

"dependencies": {
"ansi-regex": "2",
"d": "^0.1.1",
"es5-ext": "^0.10.8",
"ansi-regex": "^2.1.1",
"d": "1",
"es5-ext": "^0.10.12",
"es6-iterator": "2",
"memoizee": "^0.3.9",
"memoizee": "^0.4.3",
"timers-ext": "0.1"
},
"devDependencies": {
"tad": "^0.2.3",
"tad": "^0.2.7",
"xlint": "^0.2.2",

@@ -33,0 +33,0 @@ "xlint-jslint-medikoo": "^0.1.4"

@@ -595,3 +595,3 @@ # cli-color

```javascript
var clc = require('cli-color')
var clc = require('cli-color');

@@ -612,5 +612,5 @@ var str = clc.bold('foo') + 'bar' + clc.red('elo');

#### clc.getStrippedLength(str, begin, end)
#### clc.getStrippedLength(str)
Slice provided string with preservation of eventual ANSI formatting
Get actual length of ANSI-formatted string

@@ -637,2 +637,32 @@ ```javascript

#### clc.columns(data[, options])
Outputs aligned table of columns.
`data` is expected to be an array (or other iterable structure) of rows, where each row is also an array (or other iterable structure) of content to display.
Supported `options`:
- `sep`: Custom colums separator (defaults to `|`)
- `columns`: Per column customizations, as e.g. `[{ align: 'right' }, null, { align: 'left' }]`:
- `align`: Possible options: `'left'`, `'right` (efaults to `'left'`)
```javascript
var clc = require('cli-color');
process.stdout.write(clc.columns([
[clc.bold('First Name'), clc.bold('Last Name'), clc.bold('Age')],
['John', 'Doe', 34],
['Martha', 'Smith', 20],
['Jan', 'Kowalski', 30]
]));
/* Outputs:
First Name | Last Name | Age
John | Doe | 34
Martha | Smith | 20
Jan | Kowalski | 30
*/
```
##### throbber(write, interval[, format])

@@ -639,0 +669,0 @@

@@ -6,4 +6,4 @@ 'use strict';

a(typeof t.height, 'number', "Height");
a(t.width > 0, true);
a(t.height > 0, true);
a(t.width >= 0, true);
a(t.height >= 0, true);
};

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet