slf-debug
Version:
Surikat Log Facade, debug-js/debug driver
84 lines (83 loc) • 2.96 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function() {
return _default;
}
});
var _debug = /*#__PURE__*/ _interopRequireDefault(require("debug"));
function _arrayLikeToArray(arr, len) {
if (len == null || len > arr.length) len = arr.length;
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
return arr2;
}
function _arrayWithoutHoles(arr) {
if (Array.isArray(arr)) return _arrayLikeToArray(arr);
}
function _instanceof(left, right) {
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
return !!right[Symbol.hasInstance](left);
} else {
return left instanceof right;
}
}
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
function _iterableToArray(iter) {
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
}
function _nonIterableSpread() {
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}
function _toConsumableArray(arr) {
return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
}
function _unsupportedIterableToArray(o, minLen) {
if (!o) return;
if (typeof o === "string") return _arrayLikeToArray(o, minLen);
var n = Object.prototype.toString.call(o).slice(8, -1);
if (n === "Object" && o.constructor) n = o.constructor.name;
if (n === "Map" || n === "Set") return Array.from(n);
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
}
function paramFormatter(param) {
if (_instanceof(param, Error)) {
return param.stack || param.message;
}
return param;
}
function formatEventParams(event) {
var params = [];
var level = event.level.toUpperCase();
var date = new Date(event.timeStamp).toISOString();
event.params.forEach(function(param) {
return params.push(paramFormatter(param));
});
var firstParam = params[0];
return typeof firstParam === "string" ? [
"".concat(date, " ").concat(level, " ").concat(firstParam)
].concat(_toConsumableArray(params.slice(1))) : [
"".concat(date, " ").concat(level)
].concat(_toConsumableArray(params));
}
var loggers = {};
var getLogger = function(name) {
var logger = loggers[name];
if (logger) {
return logger;
}
var newLogger = (0, _debug.default)(name);
loggers[name] = newLogger;
return newLogger;
};
var slfDebugDriver = function(event) {
var log = getLogger(event.name);
log.apply(void 0, _toConsumableArray(formatEventParams(event)));
};
var _default = slfDebugDriver;