123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- 'use strict';
- var colorspace = require('colorspace')
- , enabled = require('enabled')
- , kuler = require('kuler')
- , util = require('util');
- var tty = require('tty').isatty(1);
- var stream = process.stdout;
- function factory(name, options) {
- if (!enabled(name)) return function diagnopes() {};
- options = options || {};
- options.colors = 'colors' in options ? options.colors : tty;
- options.ansi = options.colors ? kuler(name, colorspace(name)) : name;
- options.stream = options.stream || stream;
-
-
-
-
- if (!Array.isArray(options.stream)) {
- options.stream = [options.stream];
- }
-
-
-
- return function debug(line) {
-
-
-
- if (line instanceof Error) line = line.stack || line.message || line;
- line = [
-
-
-
- options.ansi,
-
-
-
- ' ',
- line
- ].join('');
-
-
-
- line = util.format.apply(this, [line].concat(
- Array.prototype.slice.call(arguments, 1)
- )) + '\n';
- options.stream.forEach(function each(stream) {
- stream.write(line);
- });
- };
- }
- factory.to = function to(output) {
- stream = output;
- return factory;
- };
- module.exports = factory;
|