PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB` export default class BrowserReporter { constructor (options) { this.options = Object.assign({}, options) this.defaultColor = '#7f8c8d' // Gray this.levelColorMap = { 0: '#c0392b', // Red 1: '#f39c12', // Yellow 3: '#00BCD4' // Cyan } this.typeColorMap = { success: '#2ecc71' // Green } } log (logObj) { const consoleLogFn = logObj.level < 1 // eslint-disable-next-line no-console ? (console.__error || console.error) // eslint-disable-next-line no-console : logObj.level === 1 && console.warn ? (console.__warn || console.warn) : (console.__log || console.log) // Type const type = logObj.type !== 'log' ? logObj.type : '' // Tag const tag = logObj.tag ? logObj.tag : '' // Styles const color = this.typeColorMap[logObj.type] || this.levelColorMap[logObj.level] || this.defaultColor const style = ` background: ${color}; border-radius: 0.5em; color: white; font-weight: bold; padding: 2px 0.5em; ` const badge = `%c${[tag, type].filter(Boolean).join(':')}` // Log to the console if (typeof logObj.args[0] === 'string') { consoleLogFn( `${badge}%c ${logObj.args[0]}`, style, // Empty string as style resets to default console style '', ...logObj.args.slice(1) ) } else { consoleLogFn(badge, style, ...logObj.args) } } }