UNPKG

spartan-logger

Version:
133 lines (115 loc) 3.77 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } (function (LogLevel) { LogLevel[LogLevel["DEBUG"] = 0] = "DEBUG"; LogLevel[LogLevel["INFO"] = 1] = "INFO"; LogLevel[LogLevel["WARN"] = 2] = "WARN"; LogLevel[LogLevel["ERROR"] = 3] = "ERROR"; LogLevel[LogLevel["SILENT"] = 4] = "SILENT"; })(exports.LogLevel || (exports.LogLevel = {})); var DEBUG = exports.LogLevel.DEBUG; var INFO = exports.LogLevel.INFO; var WARN = exports.LogLevel.WARN; var ERROR = exports.LogLevel.ERROR; var SILENT = exports.LogLevel.SILENT; (function (LogMode) { LogMode[LogMode["WEB"] = 0] = "WEB"; LogMode[LogMode["SERVER"] = 1] = "SERVER"; })(exports.LogMode || (exports.LogMode = {})); var Logger = /*#__PURE__*/function () { function Logger(logLevel, mode) { this.logLevel = logLevel; this.mode = mode; } var _proto = Logger.prototype; _proto.getLevel = function getLevel() { return this.logLevel; }; _proto.setLevel = function setLevel(level) { this.logLevel = level; }; _proto.doNothing = function doNothing() {// do not log }; _proto.bindToFunc = function bindToFunc(config) { var methodName = this.mode === exports.LogMode.WEB ? "%c" + config.name + "%c" : "[" + config.name + "]"; var style = this.mode === exports.LogMode.WEB ? "font-size:10px;background:" + config.background + ";color:white;padding:3px 6px" : ""; return Function.prototype.bind.call(config.method, console, methodName, style, ""); }; _createClass(Logger, [{ key: "debug", get: function get() { return this.logLevel <= exports.LogLevel.DEBUG ? this.bindToFunc({ name: "DEBUG", method: console.log, background: "rgba(0,0,0,0.1)" }) : this.doNothing; } }, { key: "info", get: function get() { return this.logLevel <= exports.LogLevel.INFO ? this.bindToFunc({ name: "INFO", method: console.log, background: "rgba(0,0,0,0.1)" }) : this.doNothing; } }, { key: "warn", get: function get() { return this.logLevel <= exports.LogLevel.WARN ? this.bindToFunc({ name: "WARN", method: console.warn, background: "#FB8C00" }) : this.doNothing; } }, { key: "error", get: function get() { return this.logLevel <= exports.LogLevel.ERROR ? this.bindToFunc({ name: "ERROR", method: console.error, background: "red" }) : this.doNothing; } }]); return Logger; }(); var defaultConfig = { level: exports.LogLevel.INFO, mode: exports.LogMode.WEB }; var nodeConfig = { level: exports.LogLevel.INFO, mode: exports.LogMode.SERVER }; var createLogger = function createLogger(config) { if (config === void 0) { config = defaultConfig; } return new Logger(config.level, config.mode); }; var createNodeLogger = function createNodeLogger() { return new Logger(nodeConfig.level, nodeConfig.mode); }; exports.DEBUG = DEBUG; exports.ERROR = ERROR; exports.INFO = INFO; exports.SILENT = SILENT; exports.WARN = WARN; exports.createLogger = createLogger; exports.createNodeLogger = createNodeLogger; //# sourceMappingURL=spartan-logger.cjs.development.js.map