Package Exports
- as-table
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (as-table) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
as-table
A simple function that print objects and arrays as ASCII tables. Supports ANSI styling (escape codes won't break the layout), thanks to printable-characters.
npm install as-tablePrinting objects
asTable = require ('as-table')
asTable ([ { foo: true, string: 'abcde', num: 42 },
{ foo: false, string: 'qwertyuiop', num: 43 },
{ string: null, num: 44 } ])foo string num
----------------------
true abcde 42
false qwertyuiop 43
null 44 Printing arrays
asTable ([['qwe', '123456789', 'zxcvbnm'],
['qwerty', '12', 'zxcvb'],
['qwertyiop', '1234567', 'z']])qwe 123456789 zxcvbnm
qwerty 12 zxcvb
qwertyiop 1234567 zLimiting total width by proportionally trimming cells + setting columns delimiter
asTable.configure ({ maxTotalWidth: 22, delimiter: ' | ' }) (data)qwe | 1234… | zxc…
qwer… | 12 | zxc…
qwer… | 1234… | z Providing custom object printer
asTable.configure ({ print: obj => (typeof obj === 'boolean') ? (obj ? 'yes' : 'no') : String (obj) }) (data)foo string num
--------------------
yes abcde 42
no qwertyuiop 43
null 44 Obtaining pre-configured function
asTable = require ('as-table').configure ({ maxTotalWidth: 25, delimiter: ' | ' })
asTable (data)Customizing title rendering and header separator
With string coloring by ansicolor (just for the demo purposes, any library will fit):
asTable = require ('as-table').configure ({ title: x => x.bright, delimiter: ' | '.dim.cyan, dash: '-'.bright.cyan })
console.log (
asTable ([ { foo: true, string: 'abcde', num: 42 },
{ foo: false, string: 'qwertyuiop'.bgMagenta.green.bright, num: 43 } ])