tablature
Will Display Data In A Table In CLI.
yarn add tablature
The package is available by importing its default function:
import tablature from 'tablature'
Returns a string representation of data as a table.
(value: string) => {value: string, length: number}
Replacement
: The function to use to replace values for display.
Config
: Options for the program.
Name | Type & Description |
---|---|
keys* | !Array<string> |
Keys to print as columns. | |
data* | !Array<!Object<string, string>> |
The array of data items to prints as rows. | |
headings | !Object<string, string> |
The display names for each column. | |
replacements | !Object<string, Replacement> |
The map of replacement functions which will run against data items. | |
centerValues | !Array<string> |
Centre values of these column (use original keys, not headings). | |
centerHeadings | !Array<string> |
Center headings of these column (use original keys, not headings). |
Source | Output |
---|---|
import tablature from 'tablature'
const DATA = [
{
name: 'hello',
when: 'yesterday',
},
{
name: 'world',
when: 'now',
},
]
const res = tablature({
keys: ['name', 'when'],
data: DATA,
centerValues: ['when'],
centerHeadings: ['when'],
headings: {
name: 'Name',
when: 'When',
},
})
console.log(res) |
|
A replacement function must return an object containing value
and length
property. When replacements are not given, the ANSI codes are removed by Tablature, however, the replacement must always return the value along with its length.
const isEnabled = (value) => {
if (value == 'ENABLED') return { value: `\x1b[32mOK\x1b[0m`, length: 2 }
if (value == 'NOTPRESENT') return { value: `\x1b[31m--\x1b[0m`, length: 2 }
return { value, length: value.length }
}
const replacements = {
enabled: isEnabled,
}
© Art Deco 2019 | Tech Nation Visa Sucks |
---|