amos-tool
Version:
amos ui tool
40 lines (38 loc) • 1.9 kB
JavaScript
;
var Logger = function() {
var o = this, n = 0, i = 1, t = 2, r = 3, c = 4, f = 5, g = console, a = [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "FATAL" ];
function l(n, i) {
var t = [];
for (var r in t.push(n), i) t.push(i[r]);
o.log.apply(o, t);
}
this.log = function() {
var o = arguments[0], n = o === c;
if (o = arguments[0] = "[" + a[o] + "] ", window.LogConfig && window.LogConfig.isDebug && (g.log.apply(g, arguments),
n)) try {
var i = Array.prototype.slice.call(arguments);
throw i = i.slice(1), new Error(i.join(","));
} catch (o) {}
}, this.trace = function() {
this.log && l(n, arguments);
}, this.debug = function() {
this.log && l(i, arguments);
}, this.info = function() {
this.log && l(t, arguments);
}, this.warn = function() {
this.log && l(r, arguments);
}, this.error = function() {
this.log && l(c, arguments);
}, this.fatal = function() {
this.log && l(f, arguments);
}, this.clear = function() {
g.clear();
}, this.pkgInfo = function(o) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "1.0.0", i = "%c " + (o = o || "unknown") + " %c v".concat(n = n || "1.0.0", " ");
g.log(i, "padding: 2px 1px; border-radius: 3px 0 0 3px; color: #fff; background: #4e5950; font-weight: bold;", "padding: 2px 1px; border-radius: 0 3px 3px 0; color: #fff; background: #49c31b; font-weight: bold;");
}, this.pkgWarn = function(o) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "1.0.0", i = "%c " + (o = o || "unknown") + " %c ".concat(n = n || "1.0.0", " ");
g.log(i, "padding: 2px 1px; border-radius: 3px 0 0 3px; color: #fff; background: #ff8000; font-weight: bold;", "padding: 2px 1px; border-radius: 0 3px 3px 0; color: #fff; background: #878f99; font-weight: bold;");
};
};
module.exports = new Logger;