UNPKG

@sssx/logger

Version:

Logger for SSSX

56 lines 1.69 kB
import colors from 'chalk'; export var LogLevel; (function (LogLevel) { LogLevel["SILENT"] = "SILENT"; LogLevel["VERBOSE"] = "VERBOSE"; LogLevel["INFO"] = "INFO"; LogLevel["DEBUG"] = "DEBUG"; LogLevel["WARN"] = "WARN"; LogLevel["ERROR"] = "ERROR"; })(LogLevel || (LogLevel = {})); class Logger { static instance; prefix = 'SSSX:'; _level; constructor() { this._level = LogLevel.INFO; } static getInstance() { if (!Logger.instance) { Logger.instance = new Logger(); } return Logger.instance; } set level(l) { this._level = l; } get level() { return this._level; } clear = () => { console.clear(); }; log = (...data) => { this.level != LogLevel.SILENT && (this.level == LogLevel.INFO || this.level == LogLevel.VERBOSE || this.level == LogLevel.DEBUG) && console.log(colors.bgBlue.whiteBright(this.prefix), ...data); }; info = this.log; verbose = (...data) => { this.level === LogLevel.VERBOSE && console.log(colors.bgBlack.whiteBright(this.prefix), ...data); }; debug = (...data) => { this.level === LogLevel.DEBUG && console.log(colors.bgBlack.whiteBright(this.prefix), ...data); }; warn = (...data) => { this.level != LogLevel.SILENT && console.warn(colors.bgYellow.black(this.prefix), ...data); }; error = (...data) => { this.level != LogLevel.SILENT && console.error(colors.bgRed.whiteBright(this.prefix), ...data); }; } export default Logger.getInstance(); //# sourceMappingURL=index.js.map