| 1234567891011121314151617181920212223242526272829303132333435363738 | "use strict";const LEVELS = ['debug', 'info', 'warn', 'error', 'silent'];const LEVEL_TO_CONSOLE_METHOD = new Map([['debug', 'log'], ['info', 'log'], ['warn', 'log']]);class Logger {  constructor(level = Logger.defaultLevel) {    this.activeLevels = new Set();    this.setLogLevel(level);  }  setLogLevel(level) {    const levelIndex = LEVELS.indexOf(level);    if (levelIndex === -1) throw new Error(`Invalid log level "${level}". Use one of these: ${LEVELS.join(', ')}`);    this.activeLevels.clear();    for (const [i, level] of LEVELS.entries()) {      if (i >= levelIndex) this.activeLevels.add(level);    }  }  _log(level, ...args) {    console[LEVEL_TO_CONSOLE_METHOD.get(level) || level](...args);  }}Logger.levels = LEVELS;Logger.defaultLevel = 'info';;LEVELS.forEach(level => {  if (level === 'silent') return;  Logger.prototype[level] = function (...args) {    if (this.activeLevels.has(level)) this._log(level, ...args);  };});module.exports = Logger;
 |