UNPKG

peezy-cli

Version:

Production-ready CLI for scaffolding modern applications with curated full-stack templates, intelligent migrations, and enterprise security.

48 lines 1.34 kB
/** * Logger utility for the Version Scrubbing Plugin */ const LOG_LEVELS = { SILENT: -1, ERROR: 0, WARN: 1, INFO: 2, DEBUG: 3, }; class Logger { level; prefix; constructor(level = "INFO", prefix = "[VersionScrubbing]") { this.level = LOG_LEVELS[level]; this.prefix = prefix; } log(level, message, ...args) { // If configured SILENT, never log if (this.level < 0) return; if (LOG_LEVELS[level] <= this.level) { const timestamp = new Date().toISOString(); const levelStr = level.padEnd(6); console.log(`${timestamp} ${levelStr} ${this.prefix} ${message}`, ...args); } } error(message, ...args) { this.log("ERROR", message, ...args); } warn(message, ...args) { this.log("WARN", message, ...args); } info(message, ...args) { this.log("INFO", message, ...args); } debug(message, ...args) { this.log("DEBUG", message, ...args); } setLevel(level) { this.level = LOG_LEVELS[level]; } } // Create default logger instance const resolvedDefaultLevel = process.env.LOG_LEVEL || (process.env.NODE_ENV === "test" ? "SILENT" : "WARN"); export const logger = new Logger(resolvedDefaultLevel); //# sourceMappingURL=logger.js.map