smartlog-destination-local/index.js

211 lines
7.6 KiB
JavaScript
Raw Normal View History

2015-11-01 21:00:07 +00:00
/// <reference path="./index.ts" />
2015-11-15 05:15:20 +00:00
var ConsoleTable = (function () {
function ConsoleTable(tableType) {
switch (tableType) {
case "checks":
this.tableHead = ['Check Item:'.cyan, 'Status:'.cyan];
break;
default:
break;
}
this.rows = [];
this.type = tableType;
}
ConsoleTable.prototype.push = function (row) {
this.rows.push(row);
};
ConsoleTable.prototype.print = function () {
var table = new BeautylogOsTable.cliTable({
head: this.tableHead,
colWidths: [20, 20]
});
for (var row in this.rows) {
if (this.rows[row][1] == "success") {
this.rows[row][1] = ' '.bgGreen + ' ' + this.rows[row][1];
}
else if (this.rows[row][1] == "error") {
this.rows[row][1] = ' '.bgRed + ' ' + this.rows[row][1];
}
table.push(this.rows[row]);
}
;
console.log(table.toString());
};
return ConsoleTable;
})();
/// <reference path="./index.ts" />
2015-11-01 21:00:07 +00:00
var BeautylogOS;
(function (BeautylogOS) {
function init() {
var colors = require("colors");
var clc = require("cli-color");
2015-11-15 05:15:20 +00:00
var beautylogOS = {}; //object to append to all public facing functions
var localBl; // object to append to all private params and functions
2015-11-01 21:00:07 +00:00
localBl = {};
localBl.dirPrefix = clc.bgXterm(39).xterm(231).bold(' DIR ') + ' ';
localBl.errorPrefix = ' Error: '.bgRed.white.bold + ' ';
localBl.infoPrefix = clc.bgXterm(198).xterm(231).bold(' INFO ') + ' ';
localBl.normalPrefix = ' Log: '.bgCyan.white.bold + ' ';
localBl.okPrefix = ' '.bgGreen + ' OK! '.bgBlack.green.bold + ' ';
localBl.successPrefix = ' Success: '.bgGreen.white.bold + ' ';
localBl.warnPrefix = ' '.bgYellow + ' Warn: '.bgBlack.yellow.bold + ' ';
/**
*
* @param logText
* @param logType
* @returns {boolean}
*/
beautylogOS.log = function (logText, logType) {
if (logText === void 0) { logText = 'empty log'; }
if (logType === void 0) { logType = 'normal'; }
try {
switch (logType) {
case 'dir':
logText = localBl.dirPrefix + clc.xterm(26)(logText);
break;
case 'error':
logText = localBl.errorPrefix + logText.red.bold;
break;
case 'info':
logText = localBl.infoPrefix + clc.xterm(198)(logText);
break;
case 'normal':
logText = localBl.normalPrefix + logText.cyan.bold;
break;
case 'ok':
logText = localBl.okPrefix + logText.bold;
break;
case 'success':
logText = localBl.successPrefix + logText.green.bold;
break;
case 'warn':
logText = localBl.warnPrefix + logText.bold;
break;
2015-12-02 15:23:39 +00:00
case 'log':
2015-11-01 21:00:07 +00:00
default:
logText.blue.bold;
console.log(('unknown logType for "' + logText + '"').red.bold);
2015-12-02 15:23:39 +00:00
break;
2015-11-01 21:00:07 +00:00
}
console.log(logText);
return true;
}
catch (error) {
console.log(localBl.errorPrefix + 'You seem to have tried logging something strange'.red.bold + error);
return false;
}
};
/**
* logs an directory to console
* @param logText
* @returns {boolean}
*/
beautylogOS.dir = function (logText) {
return beautylogOS.log(logText, 'dir');
};
/**
* logs an error to console
* @param logText
* @returns {boolean}
*/
beautylogOS.error = function (logText) {
return beautylogOS.log(logText, 'error');
};
/**
* logs an info to console
* @param logText
* @returns {boolean}
*/
beautylogOS.info = function (logText) {
return beautylogOS.log(logText, 'info');
};
/**
* logs an 'OK!' message to console
* @param logText
* @returns {boolean}
*/
beautylogOS.ok = function (logText) {
return beautylogOS.log(logText, 'ok');
};
/**
* logs a success to console
* @param logText string to log as error
* @returns {boolean}
*/
beautylogOS.success = function (logText) {
return beautylogOS.log(logText, 'success');
};
/**
* logs a 'warn:' message to console
* @param logText string to log as error
* @returns {boolean}
*/
beautylogOS.warn = function (logText) {
return beautylogOS.log(logText, 'warn');
};
2015-11-15 05:15:20 +00:00
beautylogOS.table = BeautylogOsTable.init();
2015-11-01 21:00:07 +00:00
return beautylogOS;
2015-09-20 19:45:37 +00:00
}
2015-11-01 21:00:07 +00:00
BeautylogOS.init = init;
})(BeautylogOS || (BeautylogOS = {}));
/// <reference path="./index.ts" />
2015-11-15 05:15:20 +00:00
var BeautylogOsTable;
(function (BeautylogOsTable) {
function init() {
BeautylogOsTable.cliTable = require("cli-table2");
var beautylogOsTable = {};
beautylogOsTable.new = function (type) {
var newConsoleTable = new ConsoleTable(type);
return newConsoleTable;
};
return beautylogOsTable;
}
BeautylogOsTable.init = init;
})(BeautylogOsTable || (BeautylogOsTable = {}));
/// <reference path="./index.ts" />
2015-11-01 21:00:07 +00:00
var BeautylogBrowser;
(function (BeautylogBrowser) {
function init() {
var beautylogBrowser = {};
beautylogBrowser.log = function (message) {
console.log('%c Log: %c ' + message, "background:#42A5F5;color:#ffffff", "color:#42A5F5;");
};
beautylogBrowser.info = function (message) {
console.log('%c Info: %c ' + message, 'background:#EC407A;color:#ffffff;', 'color:#EC407A;');
};
beautylogBrowser.ok = function (message) {
console.log('%c OK: %c ' + message, "background:#000000;color:#8BC34A;", "color:#000000;");
};
beautylogBrowser.success = function (message) {
console.log('%c Success: %c ' + message, "background:#8BC34A;color:#ffffff;", "color:#8BC34A;");
};
beautylogBrowser.warn = function (message) {
console.log('%c Warn: %c ' + message, "background:#000000;color:#FB8C00;", "color:#000000;");
};
2015-11-01 21:07:29 +00:00
return beautylogBrowser;
2015-11-01 21:00:07 +00:00
}
BeautylogBrowser.init = init;
})(BeautylogBrowser || (BeautylogBrowser = {}));
/// <reference path="./typings/tsd.d.ts" />
2015-11-15 05:15:20 +00:00
/// <reference path="./beautylog.classes.ts" />
/// <reference path="./beautylog.os.ts" />
/// <reference path="./beautylog.os.table.ts" />
/// <reference path="./beautylog.browser.ts" />
2015-11-01 21:00:07 +00:00
var beautylog = function (logPlatform) {
if (logPlatform === void 0) { logPlatform = "os"; }
switch (logPlatform) {
case "os":
var beautylogOs = BeautylogOS.init();
return beautylogOs;
break;
case "browser":
var beautylogBrowser = BeautylogBrowser.init();
return beautylogBrowser;
break;
default:
2015-12-02 15:23:39 +00:00
console.log("something is strange about the way you required beautylog");
2015-11-01 21:00:07 +00:00
break;
2015-09-21 19:50:52 +00:00
}
};
2015-11-01 21:00:07 +00:00
module.exports = beautylog;