Generates plain-text tables from JSON recordset input (array of objects). Useful for presenting text in column layout or data in table layout in text-based user interfaces. Also available as a command-line tool.
> const Table = require('table-layout')
> const issues = require('./example/issues')
> const table = new Table(issues, { maxWidth: 60 })
> console.log(table.toString())
15134 Coveralls has no source available ndelangen 0
15133 Fixing --preserve-symlinks. phestermcs 0
Enhancing node to exploit.
15131 Question - Confused about NPM's the1mills 0
local installation philosophy
15130 Question - global npm cache ORESoftware 0
directory if user is root?
15127 how to installa gulp fontfacegen aramgreat 0
on Windows 10
15097 Cannot install package from mastertinner 3
tarball out of package.json entry
generated by npm
15067 npm "SELF_SIGNED_CERT_IN_CHAIN" LegendsLyfe 3
error when installing discord.js
with .log
- table-layout
- Table ⏏
- new Table(data, [options])
- table.renderLines() ⇒
Array.<string>
- table.toString() ⇒
string
- Table~columnOption
- Table ⏏
Recordset data in (array of objects), text table out.
Params
- data
Array.<object>
- input data - [options]
object
- optional settings- [.maxWidth]
number
- maximum width of layout - [.noWrap]
boolean
- disable wrapping on all columns - [.noTrim]
boolean
- disable line-trimming - [.break]
boolean
- enable word-breaking on all columns - [.columns]
columnOption
- array of column-specific options - [.ignoreEmptyColumns]
boolean
- if set, empty columns or columns containing only whitespace are not rendered. - [.padding]
object
- Padding values to set on each column. Per-column overrides can be set in theoptions.columns
array.- [.left]
string
- Defaults to a single space. - [.right]
string
- Defaults to a single space.
- [.left]
- [.maxWidth]
Example
> Table = require('table-layout')
> jsonData = [{
col1: 'Some text you wish to read in table layout',
col2: 'And some more text in column two. '
}]
> table = new Table(jsonData, { maxWidth: 30 })
> console.log(table.toString())
Some text you And some more
wish to read text in
in table column two.
layout
Identical to .toString()
with the exception that the result will be an array of lines, rather than a single, multi-line string.
Kind: instance method of Table
Returns the input data as a text table.
Kind: instance method of Table
Kind: inner typedef of Table
Properties
Name | Type | Description |
---|---|---|
name | string |
column name, must match a property name in the input |
[width] | number |
A specific column width. Supply either this or a min and/or max width. |
[minWidth] | number |
column min width |
[maxWidth] | number |
column max width |
[nowrap] | boolean |
disable wrapping for this column |
[break] | boolean |
enable word-breaking for this columns |
[padding] | object |
padding options |
[padding.left] | string |
a string to pad the left of each cell (default: ' ' ) |
[padding.right] | string |
a string to pad the right of each cell (default: ' ' ) |
© 2015-19 Lloyd Brookes <[email protected]>. Documented by jsdoc-to-markdown.