merged util.format branch (fixes a lint error and simplifies the code)
This commit is contained in:
@@ -26,40 +26,19 @@ var dateFormat = require('./date_format')
|
||||
OFF: "grey"
|
||||
};
|
||||
|
||||
function formatLogData(logData) {
|
||||
var output = ""
|
||||
, data = Array.isArray(logData) ? logData.slice() : Array.prototype.slice.call(arguments)
|
||||
, format = data.shift();
|
||||
|
||||
if (typeof format === "string") {
|
||||
output = format.replace(replacementRegExp, function(match) {
|
||||
switch (match) {
|
||||
case "%s":
|
||||
return data.shift().toString();
|
||||
case "%d":
|
||||
return new Number(data.shift());
|
||||
case "%j":
|
||||
return JSON.stringify(data.shift());
|
||||
default:
|
||||
return match;
|
||||
}
|
||||
});
|
||||
} else {
|
||||
//put it back, it's not a format string
|
||||
data.unshift(format);
|
||||
}
|
||||
|
||||
data.forEach(function (item) {
|
||||
if (output) {
|
||||
output += ' ';
|
||||
}
|
||||
output += util.inspect(item);
|
||||
if (item && item.stack) {
|
||||
output += "\n" + item.stack;
|
||||
function wrapErrorsWithInspect(items) {
|
||||
return items.map(function(item) {
|
||||
if ((item instanceof Error) && item.stack) {
|
||||
return { inspect: function() { return util.format(item) + '\n' + item.stack; } };
|
||||
} else {
|
||||
return item;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
return output;
|
||||
function formatLogData(logData) {
|
||||
var data = Array.isArray(logData) ? logData : Array.prototype.slice.call(arguments);
|
||||
return util.format.apply(util, wrapErrorsWithInspect(data));
|
||||
}
|
||||
|
||||
var styles = {
|
||||
|
||||
Reference in New Issue
Block a user