UNPKG

acebase-core

Version:

Shared AceBase core components, no need to install manually

31 lines 1.94 kB
import process from './process/index.js'; // eslint-disable-next-line @typescript-eslint/no-empty-function const noop = () => { }; export class DebugLogger { constructor(level = 'log', prefix = '') { this.level = level; this.prefix = prefix; this.setLevel(level); } setLevel(level) { const prefix = this.prefix ? this.prefix + ' %s' : ''; this.verbose = ['verbose'].includes(level) ? prefix ? console.log.bind(console, prefix) : console.log.bind(console) : noop; this.trace = ['verbose'].includes(level) ? prefix ? console.log.bind(console, prefix) : console.log.bind(console) : noop; this.debug = ['verbose'].includes(level) ? prefix ? console.log.bind(console, prefix) : console.log.bind(console) : noop; this.log = ['verbose', 'log'].includes(level) ? prefix ? console.log.bind(console, prefix) : console.log.bind(console) : noop; this.info = ['verbose', 'log'].includes(level) ? prefix ? console.log.bind(console, prefix) : console.log.bind(console) : noop; this.warn = ['verbose', 'log', 'warn'].includes(level) ? prefix ? console.warn.bind(console, prefix) : console.warn.bind(console) : noop; this.error = ['verbose', 'log', 'warn', 'error'].includes(level) ? prefix ? console.error.bind(console, prefix) : console.error.bind(console) : noop; this.fatal = ['verbose', 'log', 'warn', 'error'].includes(level) ? prefix ? console.error.bind(console, prefix) : console.error.bind(console) : noop; this.write = (text) => { const isRunKit = typeof process !== 'undefined' && process.env && typeof process.env.RUNKIT_ENDPOINT_PATH === 'string'; if (text && isRunKit) { text.split('\n').forEach(line => console.log(line)); // Logs each line separately } else { console.log(text); } }; } } //# sourceMappingURL=debug.js.map