table-master

1.0.3 • Public • Published

table-master

deepsource crafted

Brings extended log.table functionality to command line interfaces. This module supports alignment, colours, and pre processors.

The basic console.table

After requiring the module, the extended console.table functionality will be available. console.table will accept the following paramters: console.table(array, alignment, preProcessors):

  • array, the array containing the JSON objects to be printed out
  • alignment, the string, indication the alignment of each row
  • preProcessors, an array of pre processor functions
var tab = require('table-master');
 
var employees = [
    { "first name": "John", "last name": "Doe", "id": "2843650281034552", value: true },
    { "first name": "Anna", "last name": "Smith", "id": "0948736125247932", value: true },
    { "first name": "Peter", "last name": "Jones", "id": "7524535987721431", value: true }
];
 
console.table(employees);

Example 1

Colour support

table-master supports colour modules like chalk.

var tab = require('table-master');
 
var employees = [
    { "first name": chalk.red("John"), "last name": "Doe", "id": "2843650281034552", value: true },
    { "first name": "Anna", "last name": "Smith", "id": "0948736125247932", value: true },
    { "first name": "Peter", "last name": "Jones", "id": "7524535987721431", value: true }
];
 
console.table(employees);

Example 2

Alignment

You can align the values of the table. Available options are (r)ight, (l)eft or (c)enter.

var tab = require('table-master');
 
var employees = [
    { "first name": chalk.red("John"), "last name": "Doe", "id": "2843650281034552", value: true },
    { "first name": "Anna", "last name": "Smith", "id": "0948736125247932", value: true },
    { "first name": "Peter", "last name": "Jones", "id": "7524535987721431", value: true }
];
 
console.table(employees, "lclr"); // Yes, I'm a LaTeX guy :)

Example 3

Pre processors

You can use powerful pre processors to modify the result/look of your table output.

var tab   = require('table-master');
var chalk = require('chalk');
 
var employees = [
    { "first name": "John", "last name": "Doe", active: true },
    { "first name": "Anna", "last name": "Smith", active: false },
    { "first name": "Peter", "last name": "Jones", active: true }
];
 
console.table(employees, "llr", [
    chalk.gray, // make first names gray
    chalk.bold, // make last names bold
    function (value) { 
        // Print Yes/No if employee is active
        return value ? "Yes" : "No"
    }
]);

Example 4

Default settings

You can modify the spacing of the output by overriding the default settings:

  • indent, indentation at the begin of each line
  • rowSpace, spacing between the columns
var tab   = require('table-master');
 
tab.setDefaults({
   indent  : 3, // indentation at the begin of each line
   rowSpace: 1  // spacing between the columns
}); 

Package Sidebar

Install

npm i table-master

Weekly Downloads

2

Version

1.0.3

License

MIT

Last publish

Collaborators

  • sullrich84