npm and error messages

This commit is contained in:
2018-10-27 03:51:47 -05:00
parent 692ab70565
commit 025a403027
29601 changed files with 2759363 additions and 14 deletions

View File

@@ -0,0 +1,38 @@
'use strict';
const chalk = require('chalk');
function formatTitle(severity, message) {
return chalk[bgColor(severity)].black('', message, '');
}
function formatText(severity, message) {
return chalk[textColor(severity)](message);
}
function bgColor(severity) {
const color = textColor(severity);
return 'bg'+ capitalizeFirstLetter(color)
}
function textColor(serverity) {
switch (serverity.toLowerCase()) {
case 'success': return 'green';
case 'info': return 'blue';
case 'note': return 'white';
case 'warning': return 'yellow';
case 'error': return 'red';
default: return 'red';
}
}
function capitalizeFirstLetter(string) {
return string.charAt(0).toUpperCase() + string.slice(1);
}
module.exports = {
bgColor: bgColor,
textColor: textColor,
formatTitle: formatTitle,
formatText: formatText
};

View File

@@ -0,0 +1,31 @@
'use strict';
/**
* Concat and flattens non-null values.
* Ex: concat(1, undefined, 2, [3, 4]) = [1, 2, 3, 4]
*/
function concat() {
const args = Array.from(arguments).filter(e => e != null);
const baseArray = Array.isArray(args[0]) ? args[0] : [args[0]];
return Array.prototype.concat.apply(baseArray, args.slice(1));
}
/**
* Dedupes array based on criterion returned from iteratee function.
* Ex: uniqueBy(
* [{ id: 1 }, { id: 1 }, { id: 2 }],
* val => val.id
* ) = [{ id: 1 }, { id: 2 }]
*/
function uniqueBy(arr, fun) {
const seen = {};
return arr.filter(el => {
const e = fun(el);
return !(e in seen) && (seen[e] = 1);
})
}
module.exports = {
concat: concat,
uniqueBy: uniqueBy
};