UNPKG

near-protocol-rewards

Version:

A transparent, metric-based rewards system for NEAR projects

42 lines (41 loc) 1.16 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.defaultLogger = exports.ConsoleLogger = void 0; // Implement the interface class ConsoleLogger { constructor(level = "info") { this.level = level; } shouldLog(level) { const levels = ["error", "warn", "info", "debug"]; return levels.indexOf(level) <= levels.indexOf(this.level); } debug(message, context) { if (this.shouldLog("debug")) { console.debug(message, context); } } info(message, context) { if (this.shouldLog("info")) { if (context) { console.info(message, context); } else { console.info(message); } } } warn(message, context) { if (this.shouldLog("warn")) { console.warn(message, context); } } error(message, context) { if (this.shouldLog("error")) { console.error(message, context); } } } exports.ConsoleLogger = ConsoleLogger; // Export a default logger instance exports.defaultLogger = new ConsoleLogger();