5 Commits

Author SHA1 Message Date
95c672f062 1.0.10 2017-08-16 12:14:54 +02:00
9043933be5 fix indention 2017-08-16 12:14:49 +02:00
166ae81795 update test 2017-08-16 10:49:38 +02:00
f16fe5a030 1.0.9 2017-08-16 10:47:22 +02:00
bbfabc7238 add npmextra.json 2017-08-16 10:47:18 +02:00
6 changed files with 56 additions and 49 deletions

2
dist/index.d.ts vendored
View File

@ -2,7 +2,7 @@ import 'typings-global';
/**
* all the color names that are available for proper xterm translation
*/
export declare type TColorName = 'black' | 'black' | 'blue' | 'brown' | 'cyan' | 'green' | 'orange' | 'pink' | 'red' | 'white';
export declare type TColorName = 'black' | 'blue' | 'brown' | 'cyan' | 'green' | 'orange' | 'pink' | 'red' | 'white';
export interface IRGB {
r: number;
b: number;

2
dist/index.js vendored
View File

@ -54,4 +54,4 @@ exports.coloredString = (stringArg, colorFontArg, colorBackgroundArg) => {
returnString = returnString + ansiColors.reset;
return returnString;
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDBCQUF1QjtBQUN2Qiw4Q0FBNkM7QUFzQjdDOztHQUVHO0FBQ0gsSUFBSSxlQUFlLEdBQUcsQ0FBQyxRQUFvQjtJQUN2QyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ2YsS0FBSyxPQUFPO1lBQ1IsTUFBTSxDQUFDLEVBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUMsQ0FBQTtRQUM3QixLQUFLLE1BQU07WUFDUCxNQUFNLENBQUMsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQyxDQUFBO1FBQzdCLEtBQUssT0FBTztZQUNSLE1BQU0sQ0FBQyxFQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRyxDQUFDLEVBQUUsQ0FBQyxFQUFDLENBQUE7UUFDOUIsS0FBSyxNQUFNO1lBQ1AsTUFBTSxDQUFDLEVBQUMsQ0FBQyxFQUFFLENBQUMsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUMsQ0FBQTtRQUM1QixLQUFLLE9BQU87WUFDUixNQUFNLENBQUMsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQyxDQUFBO1FBQzdCLEtBQUssUUFBUTtZQUNULE1BQU0sQ0FBQyxFQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFDLENBQUE7UUFDN0IsS0FBSyxNQUFNO1lBQ1AsTUFBTSxDQUFDLEVBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUMsQ0FBQTtRQUM3QixLQUFLLEtBQUs7WUFDTixNQUFNLENBQUMsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQyxDQUFBO1FBQzdCLEtBQUssT0FBTztZQUNSLE1BQU0sQ0FBQyxFQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFDLENBQUE7UUFDN0I7WUFDSSxNQUFNLENBQUMsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQyxDQUFBO0lBQ2pDLENBQUM7QUFDTCxDQUFDLENBQUE7QUFFRDs7R0FFRztBQUNILElBQUksV0FBVyxHQUFHLENBQUMsU0FBaUIsRUFBRSxRQUFvQjtJQUN0RCxJQUFJLE9BQU8sR0FBUyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDN0MsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFBO0FBQzVFLENBQUMsQ0FBQTtBQUVEOztHQUVHO0FBQ0gsSUFBSSxpQkFBaUIsR0FBRyxDQUFDLFNBQWlCLEVBQUUsUUFBb0I7SUFDNUQsSUFBSSxPQUFPLEdBQUcsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQ3ZDLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQTtBQUM1RSxDQUFDLENBQUE7QUFFRDs7R0FFRztBQUNRLFFBQUEsYUFBYSxHQUFHLENBQUMsU0FBaUIsRUFBRSxZQUF3QixFQUFFLGtCQUErQjtJQUNwRyxJQUFJLFlBQVksR0FBRyxXQUFXLENBQUMsU0FBUyxFQUFFLFlBQVksQ0FBQyxDQUFBO0lBQ3ZELEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQztRQUNyQixZQUFZLEdBQUcsaUJBQWlCLENBQUMsWUFBWSxFQUFFLGtCQUFrQixDQUFDLENBQUE7SUFDdEUsQ0FBQztJQUNELFlBQVksR0FBRyxZQUFZLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQTtJQUM5QyxNQUFNLENBQUMsWUFBWSxDQUFBO0FBQ3ZCLENBQUMsQ0FBQSJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDBCQUF1QjtBQUN2Qiw4Q0FBNkM7QUFzQjdDOztHQUVHO0FBQ0gsSUFBSSxlQUFlLEdBQUcsQ0FBQyxRQUFvQjtJQUN6QyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ2pCLEtBQUssT0FBTztZQUNWLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUE7UUFDN0IsS0FBSyxNQUFNO1lBQ1QsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQTtRQUM3QixLQUFLLE9BQU87WUFDVixNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFBO1FBQzdCLEtBQUssTUFBTTtZQUNULE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUE7UUFDN0IsS0FBSyxPQUFPO1lBQ1YsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQTtRQUM3QixLQUFLLFFBQVE7WUFDWCxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFBO1FBQzdCLEtBQUssTUFBTTtZQUNULE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUE7UUFDN0IsS0FBSyxLQUFLO1lBQ1IsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQTtRQUM3QixLQUFLLE9BQU87WUFDVixNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFBO1FBQzdCO1lBQ0UsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQTtJQUMvQixDQUFDO0FBQ0gsQ0FBQyxDQUFBO0FBRUQ7O0dBRUc7QUFDSCxJQUFJLFdBQVcsR0FBRyxDQUFDLFNBQWlCLEVBQUUsUUFBb0I7SUFDeEQsSUFBSSxPQUFPLEdBQVMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQzdDLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQTtBQUMxRSxDQUFDLENBQUE7QUFFRDs7R0FFRztBQUNILElBQUksaUJBQWlCLEdBQUcsQ0FBQyxTQUFpQixFQUFFLFFBQW9CO0lBQzlELElBQUksT0FBTyxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUN2QyxNQUFNLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUE7QUFDMUUsQ0FBQyxDQUFBO0FBRUQ7O0dBRUc7QUFDUSxRQUFBLGFBQWEsR0FBRyxDQUFDLFNBQWlCLEVBQUUsWUFBd0IsRUFBRSxrQkFBK0I7SUFDdEcsSUFBSSxZQUFZLEdBQUcsV0FBVyxDQUFDLFNBQVMsRUFBRSxZQUFZLENBQUMsQ0FBQTtJQUN2RCxFQUFFLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7UUFDdkIsWUFBWSxHQUFHLGlCQUFpQixDQUFDLFlBQVksRUFBRSxrQkFBa0IsQ0FBQyxDQUFBO0lBQ3BFLENBQUM7SUFDRCxZQUFZLEdBQUcsWUFBWSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUE7SUFDOUMsTUFBTSxDQUFDLFlBQVksQ0FBQTtBQUNyQixDQUFDLENBQUEifQ==

7
npmextra.json Normal file
View File

@ -0,0 +1,7 @@
{
"npmci": {
"globalNpmTools": [
"npmts"
]
}
}

View File

@ -1,6 +1,6 @@
{
"name": "beautycolor",
"version": "1.0.8",
"version": "1.0.10",
"description": "colors for beautylog",
"main": "dist/index.js",
"typings": "dist/index.d.ts",

View File

@ -22,7 +22,7 @@ tap.test('should produce different font colors', async () => {
)
})
tap.test('should produce different baclground colors', async () => {
tap.test('should produce different background colors', async () => {
console.log(
beautycolor.coloredString('blue', 'white', 'blue'),
beautycolor.coloredString('brown', 'white', 'brown'),

View File

@ -4,75 +4,75 @@ import * as ansiColors from 'ansi-256-colors'
/**
* all the color names that are available for proper xterm translation
*/
export type TColorName = 'black' |
'black' |
'blue' |
'brown' |
'cyan' |
'green' |
'orange' |
'pink' |
'red' |
'white'
export type TColorName =
'black' |
'blue' |
'brown' |
'cyan' |
'green' |
'orange' |
'pink' |
'red' |
'white'
export interface IRGB {
r: number,
b: number,
g: number
r: number,
b: number,
g: number
}
/**
* the color translator function
*/
let colorTranslator = (colorArg: TColorName): IRGB => {
switch (colorArg) {
case 'black':
return {r: 0, g: 0, b: 0}
case 'blue':
return {r: 0, g: 2, b: 5}
case 'brown':
return {r: 1, g: 0 , b: 0}
case 'cyan':
return {r: 2,g: 4, b: 4}
case 'green':
return {r: 2, g: 4, b: 1}
case 'orange':
return {r: 5, g: 3, b: 1}
case 'pink':
return {r: 3, g: 2, b: 4}
case 'red':
return {r: 5, g: 0, b: 0}
case 'white':
return {r: 5, g: 5, b: 5}
default:
return {r: 5, g: 5, b: 5}
}
switch (colorArg) {
case 'black':
return { r: 0, g: 0, b: 0 }
case 'blue':
return { r: 0, g: 2, b: 5 }
case 'brown':
return { r: 1, g: 0, b: 0 }
case 'cyan':
return { r: 2, g: 4, b: 4 }
case 'green':
return { r: 2, g: 4, b: 1 }
case 'orange':
return { r: 5, g: 3, b: 1 }
case 'pink':
return { r: 3, g: 2, b: 4 }
case 'red':
return { r: 5, 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: string, colorArg: TColorName) => {
let rgbCode: IRGB = colorTranslator(colorArg)
return ansiColors.fg.getRgb(rgbCode.r, rgbCode.g, rgbCode.b) + stringArg
let rgbCode: IRGB = colorTranslator(colorArg)
return ansiColors.fg.getRgb(rgbCode.r, rgbCode.g, rgbCode.b) + stringArg
}
/**
* colors the back of a string
*/
let coloredBackground = (stringArg: string, colorArg: TColorName) => {
let rgbCode = colorTranslator(colorArg)
return ansiColors.bg.getRgb(rgbCode.r, rgbCode.g, rgbCode.b) + stringArg
let rgbCode = colorTranslator(colorArg)
return ansiColors.bg.getRgb(rgbCode.r, rgbCode.g, rgbCode.b) + stringArg
}
/**
* color a string with xterm
*/
export let coloredString = (stringArg: string, colorFontArg: TColorName, colorBackgroundArg?: TColorName): string => {
let returnString = coloredFont(stringArg, colorFontArg)
if (colorBackgroundArg) {
returnString = coloredBackground(returnString, colorBackgroundArg)
}
returnString = returnString + ansiColors.reset
return returnString
let returnString = coloredFont(stringArg, colorFontArg)
if (colorBackgroundArg) {
returnString = coloredBackground(returnString, colorBackgroundArg)
}
returnString = returnString + ansiColors.reset
return returnString
}