"use strict";constLEVELS=['debug','info','warn','error','silent'];constLEVEL_TO_CONSOLE_METHOD=newMap([['debug','log'],['info','log'],['warn','log']]);classLogger{constructor(level=Logger.defaultLevel){this.activeLevels=newSet();this.setLogLevel(level);}setLogLevel(level){constlevelIndex=LEVELS.indexOf(level);if(levelIndex===-1)thrownewError(`Invalid log level "${level}". Use one of these: ${LEVELS.join(', ')}`);this.activeLevels.clear();for(const[i,level]ofLEVELS.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;