bower-logger 
The logger used in the various architecture components of Bower.
Usage
.error(id, message, data)
Alias to .log('error', id. message, data)
.conflict(id, message, data)
Alias to .log('conflict', id. message, data)
.warn(id, message, data)
Alias to .log('warn', id. message, data)
.action(id, message, data)
Alias to .log('action', id. message, data)
.info(id, message, data)
Alias to .log('info', id. message, data)
.debug(id, message, data)
Alias to .log('debug', id. message, data)
.log(level, id, message, data)
Emits a log
event, with an object like so:
logger.log('warn', 'foo', 'bar', { dog: 'loves cat' })
{
level: 'warn',
id: 'foo',
message: 'bar',
data: {
dog: 'loves cat'
}
}
.prompt(prompts, callback)
Emits a prompt
event with an array of prompts
with a callback
.
prompts
can be an object or an array of objects. The callback
will be called with an
the answer or an object of answers (if prompts was only one or an array respectively).
The callback
is guaranteed to run only once.
logger.on('prompt', function (prompts, callback) {
inquirer(prompts, callback);
})
logger.prompt({
type: 'input'
message: 'Type something',
validate: function (value) {
if (value !== 'I am awesome') {
return 'You must type "I am awesome"'
}
return true;
}
}, function (err, answer) {
if (err) {
return console.error(err.message);
}
console.log(answer);
});
.pipe(logger)
Pipes all logger events to another logger.
Basically all events emitted with .emit()
will get piped.
.geminate()
Creates a new logger that pipes events to the parent logger.
Alias for (new Logger()).pipe(logger)
.
.intercept(fn)
Intercepts log
events, calling fn
before listeners of the instance.
#LEVELS
A static property that contains an object where keys are the recognized log levels and values their importance.
The higher the importance, the more important the level is.
License
Released under the MIT License.