Adam Rensel b05888e79d Add the correct demo app 9 years ago
..
lib 0ad841a423 init commit 9 years ago
test 0ad841a423 init commit 9 years ago
.editorconfig 0ad841a423 init commit 9 years ago
.jshintrc 0ad841a423 init commit 9 years ago
.npmignore 0ad841a423 init commit 9 years ago
.travis.yml 0ad841a423 init commit 9 years ago
LICENSE 0ad841a423 init commit 9 years ago
README.md 0ad841a423 init commit 9 years ago
package.json b05888e79d Add the correct demo app 9 years ago

README.md

bower-logger Build Status

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) {
    // "prompts" is always an array of prompts
    // Call "callback" with an object of answers when done

    // In this example, we will use the inquirer module to do the
    // prompting for us
    inquirer(prompts, callback);
})

logger.prompt({
    type: 'input'  // Can be 'input', 'confirm' or 'password'
    message: 'Type something',
    validate: function (value) {
        if (value !== 'I am awesome') {
            return 'You must type "I am awesome"'
        }

        return true;
    }
}, function (err, answer) {
    // Error will only happen on unsupported 'type'
    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.