1.0.0 • Published 3 years ago

fields-cli v1.0.0

Weekly downloads
24
License
MIT
Repository
github
Last release
3 years ago

fieldset-cli Build Status

Create boxes in the terminal

npm.io

This is temporary fork of boxen with posibility to set title of box

Example

Title

Install

$ npm install fieldset-cli

Usage

const fieldset = require('fieldset-cli');

console.log(fieldset('unicorn', {padding: 1}));
/*
┌─────────────┐
│             │
│   unicorn   │
│             │
└─────────────┘
*/

console.log(fieldset('unicorn', {padding: 1, margin: 1, borderStyle: 'double'}));
/*

   ╔═════════════╗
   ║             ║
   ║   unicorn   ║
   ║             ║
   ╚═════════════╝

*/

API

fieldset(text, options?)

text

Type: string

Text inside the box.

options

Type: object

title

Type: string Title of box

titleColor

Type: string Values: 'black' 'red' 'green' 'yellow' 'blue' 'magenta' 'cyan' 'white' 'gray' or a hex value like '#ff0000'

Color of the box title.

titleDim

Type: boolean Default: false

Reduce opacity of the box title.

borderColor

Type: string Values: 'black' 'red' 'green' 'yellow' 'blue' 'magenta' 'cyan' 'white' 'gray' or a hex value like '#ff0000'

Color of the box border.

borderStyle

Type: string | object Default: 'single' Values:

  • 'single'
┌───┐
│foo│
└───┘
  • 'double'
╔═══╗
║foo║
╚═══╝
  • 'round' ('single' sides with round corners)
╭───╮
│foo│
╰───╯
  • 'bold'
┏━━━┓
┃foo┃
┗━━━┛
  • 'singleDouble' ('single' on top and bottom, 'double' on right and left)
╓───╖
║foo║
╙───╜
  • 'doubleSingle' ('double' on top and bottom, 'single' on right and left)
╒═══╕
│foo│
╘═══╛
  • 'classic'
+---+
|foo|
+---+

Style of the box border.

Can be any of the above predefined styles or an object with the following keys:

{
	topLeft: '+',
	topRight: '+',
	bottomLeft: '+',
	bottomRight: '+',
	horizontal: '-',
	vertical: '|'
}
dimBorder

Type: boolean Default: false

Reduce opacity of the border.

padding

Type: number | object Default: 0

Space between the text and box border.

Accepts a number or an object with any of the top, right, bottom, left properties. When a number is specified, the left/right padding is 3 times the top/bottom to make it look nice.

margin

Type: number | object Default: 0

Space around the box.

Accepts a number or an object with any of the top, right, bottom, left properties. When a number is specified, the left/right margin is 3 times the top/bottom to make it look nice.

float

Type: string Default: 'left' Values: 'right' 'center' 'left'

Float the box on the available terminal screen space.

backgroundColor

Type: string Values: 'black' 'red' 'green' 'yellow' 'blue' 'magenta' 'cyan' 'white' 'gray' or a hex value like '#ff0000'

Color of the background.

align

Type: string Default: 'left' Values: 'left' 'center' 'right'

Align the text in the box based on the widest line.