implementation ready
This commit is contained in:
14
dist/index.d.ts
vendored
Normal file
14
dist/index.d.ts
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
import 'typings-global';
|
||||
/**
|
||||
* all the color names that are available for proper xterm translation
|
||||
*/
|
||||
export declare type TColorName = 'black' | 'blue' | 'brown' | 'cyan' | 'green' | 'red' | 'orange' | 'white';
|
||||
export interface IRGB {
|
||||
r: number;
|
||||
b: number;
|
||||
g: number;
|
||||
}
|
||||
/**
|
||||
* color a string with xterm
|
||||
*/
|
||||
export declare let coloredString: (stringArg: string, colorFontArg: TColorName, colorBackgroundArg?: TColorName) => string;
|
54
dist/index.js
vendored
Normal file
54
dist/index.js
vendored
Normal file
@@ -0,0 +1,54 @@
|
||||
"use strict";
|
||||
require("typings-global");
|
||||
const ansiColors = require("ansi-256-colors");
|
||||
/**
|
||||
* the color translator function
|
||||
*/
|
||||
let colorTranslator = (colorArg) => {
|
||||
switch (colorArg) {
|
||||
case 'blue':
|
||||
return { r: 0, g: 1, b: 5 };
|
||||
case 'cyan':
|
||||
return { r: 0, g: 4, b: 4 };
|
||||
case 'green':
|
||||
return { r: 2, g: 5, b: 0 };
|
||||
case 'red':
|
||||
return { r: 5, g: 0, b: 0 };
|
||||
case 'orange':
|
||||
return { r: 5, g: 3, b: 0 };
|
||||
case 'brown':
|
||||
return { r: 1, g: 0, b: 0 };
|
||||
case 'black':
|
||||
return { r: 0, g: 0, b: 0 };
|
||||
case 'white':
|
||||
return { r: 5, g: 5, b: 5 };
|
||||
default:
|
||||
return { r: 5, g: 5, b: 5 };
|
||||
}
|
||||
};
|
||||
/**
|
||||
* colors the font of a string
|
||||
*/
|
||||
let coloredFont = (stringArg, colorArg) => {
|
||||
let rgbCode = colorTranslator(colorArg);
|
||||
return ansiColors.fg.getRgb(rgbCode.r, rgbCode.g, rgbCode.b) + stringArg;
|
||||
};
|
||||
/**
|
||||
* colors the back of a string
|
||||
*/
|
||||
let coloredBackground = (stringArg, colorArg) => {
|
||||
let rgbCode = colorTranslator(colorArg);
|
||||
return ansiColors.bg.getRgb(rgbCode.r, rgbCode.g, rgbCode.b) + stringArg;
|
||||
};
|
||||
/**
|
||||
* color a string with xterm
|
||||
*/
|
||||
exports.coloredString = (stringArg, colorFontArg, colorBackgroundArg) => {
|
||||
let returnString = coloredFont(stringArg, colorFontArg);
|
||||
if (colorBackgroundArg) {
|
||||
returnString = coloredBackground(returnString, colorBackgroundArg);
|
||||
}
|
||||
returnString = returnString + ansiColors.reset;
|
||||
return returnString;
|
||||
};
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsMEJBQXVCO0FBQ3ZCLDhDQUE2QztBQW9CN0M7O0dBRUc7QUFDSCxJQUFJLGVBQWUsR0FBRyxDQUFDLFFBQW9CO0lBQ3ZDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDZixLQUFLLE1BQU07WUFDUCxNQUFNLENBQUMsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQyxDQUFBO1FBQzdCLEtBQUssTUFBTTtZQUNQLE1BQU0sQ0FBQyxFQUFDLENBQUMsRUFBRSxDQUFDLEVBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFDLENBQUE7UUFDNUIsS0FBSyxPQUFPO1lBQ1IsTUFBTSxDQUFDLEVBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUMsQ0FBQTtRQUM3QixLQUFLLEtBQUs7WUFDTixNQUFNLENBQUMsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQyxDQUFBO1FBQzdCLEtBQUssUUFBUTtZQUNULE1BQU0sQ0FBQyxFQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFDLENBQUE7UUFDN0IsS0FBSyxPQUFPO1lBQ1IsTUFBTSxDQUFDLEVBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFHLENBQUMsRUFBRSxDQUFDLEVBQUMsQ0FBQTtRQUM5QixLQUFLLE9BQU87WUFDUixNQUFNLENBQUMsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQyxDQUFBO1FBQzdCLEtBQUssT0FBTztZQUNSLE1BQU0sQ0FBQyxFQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFDLENBQUE7UUFDN0I7WUFDSSxNQUFNLENBQUMsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQyxDQUFBO0lBQ2pDLENBQUM7QUFDTCxDQUFDLENBQUE7QUFFRDs7R0FFRztBQUNILElBQUksV0FBVyxHQUFHLENBQUMsU0FBaUIsRUFBRSxRQUFvQjtJQUN0RCxJQUFJLE9BQU8sR0FBUyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDN0MsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFBO0FBQzVFLENBQUMsQ0FBQTtBQUVEOztHQUVHO0FBQ0gsSUFBSSxpQkFBaUIsR0FBRyxDQUFDLFNBQWlCLEVBQUUsUUFBb0I7SUFDNUQsSUFBSSxPQUFPLEdBQUcsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQ3ZDLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQTtBQUM1RSxDQUFDLENBQUE7QUFFRDs7R0FFRztBQUNRLFFBQUEsYUFBYSxHQUFHLENBQUMsU0FBaUIsRUFBRSxZQUF3QixFQUFFLGtCQUErQjtJQUNwRyxJQUFJLFlBQVksR0FBRyxXQUFXLENBQUMsU0FBUyxFQUFFLFlBQVksQ0FBQyxDQUFBO0lBQ3ZELEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQztRQUNyQixZQUFZLEdBQUcsaUJBQWlCLENBQUMsWUFBWSxFQUFFLGtCQUFrQixDQUFDLENBQUE7SUFDdEUsQ0FBQztJQUNELFlBQVksR0FBRyxZQUFZLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQTtJQUM5QyxNQUFNLENBQUMsWUFBWSxDQUFBO0FBQ3ZCLENBQUMsQ0FBQSJ9
|
Reference in New Issue
Block a user