зеркало из https://github.com/mozilla/gecko-dev.git
49 строки
938 B
JavaScript
49 строки
938 B
JavaScript
/* globals buildSettings */
|
|
/* eslint-disable no-console */
|
|
|
|
"use strict";
|
|
|
|
this.log = (function() {
|
|
const exports = {};
|
|
|
|
const levels = ["debug", "info", "warn", "error"];
|
|
if (!levels.includes(buildSettings.logLevel)) {
|
|
console.warn("Invalid buildSettings.logLevel:", buildSettings.logLevel);
|
|
}
|
|
const shouldLog = {};
|
|
|
|
{
|
|
let startLogging = false;
|
|
for (const level of levels) {
|
|
if (buildSettings.logLevel === level) {
|
|
startLogging = true;
|
|
}
|
|
if (startLogging) {
|
|
shouldLog[level] = true;
|
|
}
|
|
}
|
|
}
|
|
|
|
function stub() {}
|
|
exports.debug = exports.info = exports.warn = exports.error = stub;
|
|
|
|
if (shouldLog.debug) {
|
|
exports.debug = console.debug;
|
|
}
|
|
|
|
if (shouldLog.info) {
|
|
exports.info = console.info;
|
|
}
|
|
|
|
if (shouldLog.warn) {
|
|
exports.warn = console.warn;
|
|
}
|
|
|
|
if (shouldLog.error) {
|
|
exports.error = console.error;
|
|
}
|
|
|
|
return exports;
|
|
})();
|
|
null;
|