UNPKG

serialport-v5

Version:

fork with electron support of Node.js package to access serial ports. Linux, OSX and Windows. Welcome your robotic JavaScript overlords. Better yet, program them!

126 lines (104 loc) 2.34 kB
'use strict' // These tables borrowed from `ansi` var prefix = '\x1b[' exports.up = function up (num) { return prefix + (num || '') + 'A' } exports.down = function down (num) { return prefix + (num || '') + 'B' } exports.forward = function forward (num) { return prefix + (num || '') + 'C' } exports.back = function back (num) { return prefix + (num || '') + 'D' } exports.nextLine = function nextLine (num) { return prefix + (num || '') + 'E' } exports.previousLine = function previousLine (num) { return prefix + (num || '') + 'F' } exports.horizontalAbsolute = function horizontalAbsolute (num) { if (num == null) throw new Error('horizontalAboslute requires a column to position to') return prefix + num + 'G' } exports.eraseData = function eraseData () { return prefix + 'J' } exports.eraseLine = function eraseLine () { return prefix + 'K' } exports.goto = function (x, y) { return prefix + y + ';' + x + 'H' } exports.gotoSOL = function () { return '\r' } exports.beep = function () { return '\x07' } exports.hideCursor = function hideCursor () { return prefix + '?25l' } exports.showCursor = function showCursor () { return prefix + '?25h' } var colors = { reset: 0, // styles bold: 1, italic: 3, underline: 4, inverse: 7, // resets stopBold: 22, stopItalic: 23, stopUnderline: 24, stopInverse: 27, // colors white: 37, black: 30, blue: 34, cyan: 36, green: 32, magenta: 35, red: 31, yellow: 33, bgWhite: 47, bgBlack: 40, bgBlue: 44, bgCyan: 46, bgGreen: 42, bgMagenta: 45, bgRed: 41, bgYellow: 43, grey: 90, brightBlack: 90, brightRed: 91, brightGreen: 92, brightYellow: 93, brightBlue: 94, brightMagenta: 95, brightCyan: 96, brightWhite: 97, bgGrey: 100, bgBrightBlack: 100, bgBrightRed: 101, bgBrightGreen: 102, bgBrightYellow: 103, bgBrightBlue: 104, bgBrightMagenta: 105, bgBrightCyan: 106, bgBrightWhite: 107 } exports.color = function color (colorWith) { if (arguments.length !== 1 || !Array.isArray(colorWith)) { colorWith = Array.prototype.slice.call(arguments) } return prefix + colorWith.map(colorNameToCode).join(';') + 'm' } function colorNameToCode (color) { if (colors[color] != null) return colors[color] throw new Error('Unknown color or style name: ' + color) }