logify
Version:
Logging framework for node and the browser
32 lines (24 loc) • 939 B
JavaScript
;
var _Promise = require('babel-runtime/core-js/promise')['default'];
var _interopRequireDefault = require('babel-runtime/helpers/interop-require-default')['default'];
Object.defineProperty(exports, '__esModule', {
value: true
});
exports['default'] = create;
var _formatterConsole = require('../formatter/console');
var _formatterConsole2 = _interopRequireDefault(_formatterConsole);
function create() {
var layout = arguments.length <= 0 || arguments[0] === undefined ? _formatterConsole2['default'] : arguments[0];
return function log(entry) {
var target = entry.level && ['warn', 'error', 'critical'].indexOf(entry.level) > -1 ? process.stderr : process.stdout;
return new _Promise(function (resolve, reject) {
target.write(layout(entry), function (err) {
if (err) {
return reject(err);
}
resolve();
});
});
};
}
module.exports = exports['default'];