/**
 * Print to console.
 * @function apeman._print
 * @protected
 * @ignore
 * @author Taka Okunishi
 *
 */

var color = require('cli-color');

function join(iteratable) {
    return Array.prototype.slice.call(iteratable, 0).join(' ');
}

exports = module.exports = function () {
    var enabled = !process.env.APEMAN_PRINT_DISABLED;
    enabled && exports._log.apply(exports, arguments);
};

exports._log = function () {
    console.log(join(arguments));
};
exports.info = function (msg) {
    msg = color.magenta(join(arguments));
    exports(msg);
};

exports.ng = function (msg) {
    msg = color.red.bold(join(arguments));
    exports(msg);
};

exports.ng.detail = function (msg) {
    msg = color.red(join(arguments));
    exports(msg);
};


exports.ok = function (msg) {
    msg = color.green.bold(join(arguments));
    exports(msg);
};
