smartlog-destination-local/ts/beautylog.log.helpers.ts

117 lines
3.8 KiB
TypeScript

import * as plugins from './beautylog.plugins';
/**
*
* @param logText
* @param logType
* @returns {boolean}
*/
export let internalLog = function(logType: string = 'normal', logText: string = 'empty log') {
switch ((new plugins.smartenv.Smartenv()).runtimeEnv) {
case 'node':
logNode(logType, logText);
break;
case 'browser':
logBrowser(logText, logType);
break;
default:
console.log('something is strange about the platform in which you try to use beautylog');
break;
}
};
let coloredString = plugins.beautycolor.coloredString;
let localBl = {
dirPrefix: coloredString(' DIR ', 'white', 'blue') + ' ',
errorPrefix: coloredString(' ', 'red', 'red') + coloredString(' ERROR! ', 'red', 'black') + ' ',
infoPrefix: coloredString(' ', 'blue', 'blue') + coloredString(' INFO: ', 'blue', 'black') + ' ',
logPrefix: coloredString(' ', 'white', 'cyan') + coloredString(' LOG: ', 'cyan', 'black') + ' ',
notePrefix:
coloredString(' ', 'pink', 'pink') + coloredString(' NOTE -> ', 'pink', 'black') + ' ',
okPrefix: coloredString(' ', 'green', 'green') + coloredString(' OK! ', 'green', 'black') + ' ',
successPrefix:
coloredString(' ', 'green', 'green') + coloredString(' SUCCESS! ', 'green', 'black') + ' ',
warnPrefix:
coloredString(' ', 'orange', 'orange') + coloredString(' WARN: -> ', 'orange', 'black') + ' '
};
export let logNode = function(logType: string, logText: string) {
try {
switch (logType) {
case 'dir':
logText = localBl.dirPrefix + coloredString(logText, 'blue');
break;
case 'error':
logText = localBl.errorPrefix + coloredString(logText, 'red');
break;
case 'info':
logText = localBl.infoPrefix + coloredString(logText, 'blue');
break;
case 'normal':
logText = localBl.logPrefix + coloredString(logText, 'cyan');
break;
case 'note':
logText = localBl.notePrefix + coloredString(logText, 'pink');
break;
case 'ok':
logText = localBl.okPrefix + coloredString(logText, 'green');
break;
case 'success':
logText = localBl.successPrefix + coloredString(logText, 'green');
break;
case 'warn':
logText = localBl.warnPrefix + coloredString(logText, 'orange');
break;
case 'log':
logText = localBl.logPrefix + coloredString(logText, 'cyan');
break;
default:
coloredString(logText, 'blue');
console.log('unknown logType for "' + logText + '"');
break;
}
console.log(logText);
return true;
} catch (error) {
console.log(localBl.errorPrefix + 'You seem to have tried logging something strange' + error);
return false;
}
};
let logBrowser = function(logText, logType) {
switch (logType) {
case 'dir':
logText = localBl.dirPrefix + coloredString(logText, 'blue');
break;
case 'error':
logText = localBl.errorPrefix + logText.red.bold;
break;
case 'info':
console.log('%c Info: %c ' + logText, 'background:#EC407A;color:#ffffff;', 'color:#EC407A;');
break;
case 'normal':
logText = localBl.logPrefix + logText.cyan.bold;
break;
case 'ok':
console.log('%c OK: %c ' + logText, 'background:#000000;color:#8BC34A;', 'color:#000000;');
break;
case 'success':
console.log(
'%c Success: %c ' + logText,
'background:#8BC34A;color:#ffffff;',
'color:#8BC34A;'
);
break;
case 'warn':
console.log('%c Warn: %c ' + logText, 'background:#000000;color:#FB8C00;', 'color:#000000;');
break;
case 'log':
console.log('%c Log: %c ' + logText, 'background:#42A5F5;color:#ffffff', 'color:#42A5F5;');
break;
default:
console.log('unknown logType for "' + logText + '"');
break;
}
};