Comparing version 2.0.3 to 2.1.0
@@ -0,0 +0,0 @@ { |
/** | ||
* logdown - Debug utility with markdown support that runs on browser and server | ||
* | ||
* @version v2.0.3 | ||
* @version v2.1.0 | ||
* @link https://github.com/caiogondim/logdown | ||
@@ -14,3 +14,2 @@ * @author Caio Gondim <me@caiogondim.com> (http://caiogondim.com) | ||
var instances = [] | ||
var lastUsedColorIndex = 0 | ||
@@ -65,38 +64,25 @@ // Solarized accent colors http://ethanschoonover.com/solarized | ||
function Logdown (opts) { | ||
// Enforces new. | ||
function Logdown (prefix, opts) { | ||
if (!(this instanceof Logdown)) { | ||
return new Logdown(opts) | ||
return new Logdown(prefix, opts) | ||
} | ||
opts = opts || {} | ||
this.opts = normalizeOpts(prefix, opts) | ||
var prefix = opts.prefix === undefined ? '' : opts.prefix | ||
prefix = sanitizeStringToBrowser(prefix) | ||
if (prefix && isPrefixAlreadyInUse(prefix, instances)) { | ||
return getInstanceByPrefix(prefix, instances) | ||
if (isPrefixAlreadyInUse(this.opts.prefix, Logdown._instances)) { | ||
return getInstanceByPrefix(this.opts.prefix, Logdown._instances) | ||
} | ||
// | ||
this.alignOutput = Boolean(opts.alignOutput) | ||
this.markdown = opts.markdown === undefined ? true : opts.markdown | ||
this.prefix = prefix | ||
Logdown._instances.push(this) | ||
alignPrefixes(Logdown._instances) | ||
// | ||
instances.push(this) | ||
alignPrefixes(instances) | ||
if (isBrowser()) { | ||
this.prefixColor = colors[lastUsedColorIndex % colors.length] | ||
lastUsedColorIndex += 1 | ||
} else if (isNode()) { | ||
this.prefixColor = getNextPrefixColor() | ||
} | ||
return this | ||
} | ||
// | ||
// Static | ||
// ------ | ||
// | ||
Logdown._instances = [] | ||
Logdown.enable = function () { | ||
@@ -143,4 +129,5 @@ Array.prototype.forEach.call(arguments, function (str) { | ||
// | ||
// Public | ||
// ------ | ||
// | ||
@@ -170,3 +157,2 @@ var methods = ['debug', 'log', 'info', 'warn', 'error'] | ||
preparedOutput = prepareOutputToNode(args, method, this) | ||
;(console[method] || console.log).apply( | ||
@@ -180,14 +166,41 @@ console, | ||
// | ||
// Private | ||
// ------- | ||
// | ||
function normalizeOpts (prefix, opts) { | ||
if (typeof prefix === 'object') opts = prefix | ||
opts = opts || {} | ||
if (typeof prefix !== 'string') prefix = opts.prefix || '' | ||
prefix = sanitizeStringToBrowser(prefix) | ||
var alignOutput = Boolean(opts.alignOutput) | ||
var markdown = opts.markdown === undefined ? true : Boolean(opts.markdown) | ||
var prefixColor | ||
if (isBrowser()) { | ||
prefixColor = colors[lastUsedColorIndex % colors.length] | ||
lastUsedColorIndex += 1 | ||
} else if (isNode()) { | ||
prefixColor = getNextPrefixColor() | ||
} | ||
return { | ||
prefix: prefix, | ||
alignOutput: alignOutput, | ||
markdown: markdown, | ||
prefixColor: prefixColor | ||
} | ||
} | ||
function alignPrefixes (instances) { | ||
var longest = instances.sort(function (a, b) { | ||
return b.prefix.length - a.prefix.length | ||
return b.opts.prefix.length - a.opts.prefix.length | ||
})[0] | ||
instances.forEach(function (instance) { | ||
if (instance.alignOutput) { | ||
var padding = new Array(Math.max(longest.prefix.length - instance.prefix.length + 1, 0)).join(' ') | ||
instance.prefix = instance.prefix + padding | ||
if (instance.opts.alignOutput) { | ||
var padding = new Array(Math.max(longest.opts.prefix.length - instance.opts.prefix.length + 1, 0)).join(' ') | ||
instance.opts.prefix = instance.opts.prefix + padding | ||
} | ||
@@ -303,7 +316,7 @@ }) | ||
if (instance.prefix) { | ||
if (instance.opts.prefix) { | ||
if (isColorSupported()) { | ||
preparedOutput.push('%c' + instance.prefix + '%c ') | ||
preparedOutput.push('%c' + instance.opts.prefix + '%c ') | ||
preparedOutput.push( | ||
'color:' + instance.prefixColor + '; font-weight:bold;', | ||
'color:' + instance.opts.prefixColor + '; font-weight:bold;', | ||
'' // Empty string resets style. | ||
@@ -320,3 +333,3 @@ ) | ||
if (typeof args[0] === 'string') { | ||
if (instance.markdown && isColorSupported()) { | ||
if (instance.opts.markdown && isColorSupported()) { | ||
parsedMarkdown = parseMarkdown(args[0]) | ||
@@ -342,12 +355,12 @@ preparedOutput[0] = preparedOutput[0] + parsedMarkdown.text | ||
if (instance.prefix) { | ||
if (instance.opts.prefix) { | ||
if (isColorSupported()) { | ||
preparedOutput[0] = | ||
'\u001b[' + instance.prefixColor[0] + 'm' + | ||
'\u001b[' + instance.opts.prefixColor[0] + 'm' + | ||
'\u001b[' + ansiColors.modifiers.bold[0] + 'm' + | ||
instance.prefix + | ||
instance.opts.prefix + | ||
'\u001b[' + ansiColors.modifiers.bold[1] + 'm' + | ||
'\u001b[' + instance.prefixColor[1] + 'm' | ||
'\u001b[' + instance.opts.prefixColor[1] + 'm' | ||
} else { | ||
preparedOutput[0] = '[' + instance.prefix + ']' | ||
preparedOutput[0] = '[' + instance.opts.prefix + ']' | ||
} | ||
@@ -384,3 +397,3 @@ } | ||
if (typeof arg === 'string') { | ||
if (instance.markdown) { | ||
if (instance.opts.markdown) { | ||
preparedOutput.push(parseMarkdown(arg).text) | ||
@@ -428,6 +441,6 @@ } else { | ||
filterRegExps.forEach(function (filter) { | ||
if (filter.type === 'enable' && filter.regExp.test(instance.prefix)) { | ||
if (filter.type === 'enable' && filter.regExp.test(instance.opts.prefix)) { | ||
isDisabled_ = false | ||
} else if (filter.type === 'disable' && | ||
filter.regExp.test(instance.prefix)) { | ||
filter.regExp.test(instance.opts.prefix)) { | ||
isDisabled_ = true | ||
@@ -448,3 +461,3 @@ } | ||
instances.forEach(function (instance) { | ||
if (instance.prefix === prefix) { | ||
if (instance.opts.prefix === prefix) { | ||
isPrefixAlreadyInUse_ = true | ||
@@ -454,3 +467,2 @@ return | ||
}) | ||
return isPrefixAlreadyInUse_ | ||
@@ -463,3 +475,3 @@ } | ||
instances.forEach(function (instanceCur) { | ||
if (instanceCur.prefix === prefix) { | ||
if (instanceCur.opts.prefix === prefix) { | ||
instance = instanceCur | ||
@@ -556,3 +568,4 @@ return | ||
return function () { | ||
return nodePrefixColors[(lastUsed += 1) % nodePrefixColors.length] | ||
lastUsed += 1 | ||
return nodePrefixColors[lastUsed % nodePrefixColors.length] | ||
} | ||
@@ -559,0 +572,0 @@ })() |
/** | ||
* logdown - Debug utility with markdown support that runs on browser and server | ||
* | ||
* @version v2.0.3 | ||
* @version v2.1.0 | ||
* @link https://github.com/caiogondim/logdown | ||
@@ -9,3 +9,3 @@ * @author Caio Gondim <me@caiogondim.com> (http://caiogondim.com) | ||
*/ | ||
!function(){"use strict";function e(o){if(!(this instanceof e))return new e(o);o=o||{};var n=void 0===o.prefix?"":o.prefix;return n=p(n),n&&s(n,g)?u(n,g):(this.alignOutput=Boolean(o.alignOutput),this.markdown=void 0===o.markdown||o.markdown,this.prefix=n,g.push(this),r(g),d()?(this.prefixColor=x[h%x.length],h+=1):f()&&(this.prefixColor=v()),this)}function r(e){var r=e.sort(function(e,r){return r.prefix.length-e.prefix.length})[0];e.forEach(function(e){if(e.alignOutput){var o=new Array(Math.max(r.prefix.length-e.prefix.length+1,0)).join(" ");e.prefix=e.prefix+o}})}function o(e){for(var r=[],o=n(e);o;)e=e.replace(o.rule.regexp,o.rule.replacer),d()&&(r.push(o.rule.style),r.push("")),o=n(e);return{text:e,styles:r}}function n(e){var r=[],o=[];return d()?o=[{regexp:/\*([^\*]+)\*/,replacer:function(e,r){return"%c"+r+"%c"},style:"font-weight:bold;"},{regexp:/_([^_]+)_/,replacer:function(e,r){return"%c"+r+"%c"},style:"font-style:italic;"},{regexp:/`([^`]+)`/,replacer:function(e,r){return"%c"+r+"%c"},style:"background:#FDF6E3; color:#586E75; padding:1px 5px; border-radius:4px;"}]:f()&&(o=[{regexp:/\*([^\*]+)\*/,replacer:function(e,r){return"["+m.modifiers.bold[0]+"m"+r+"["+m.modifiers.bold[1]+"m"}},{regexp:/_([^_]+)_/,replacer:function(e,r){return"["+m.modifiers.italic[0]+"m"+r+"["+m.modifiers.italic[1]+"m"}},{regexp:/`([^`]+)`/,replacer:function(e,r){return"["+m.bgColors.bgYellow[0]+"m["+m.colors.black[0]+"m "+r+" ["+m.colors.black[1]+"m["+m.bgColors.bgYellow[1]+"m"}}]),o.forEach(function(o){var n=e.match(o.regexp);n&&r.push({rule:o,match:n})}),0===r.length?null:(r.sort(function(e,r){return e.match.index-r.match.index}),r[0])}function t(e,r){var n,t=[];return r.prefix?a()?(t.push("%c"+r.prefix+"%c "),t.push("color:"+r.prefixColor+"; font-weight:bold;","")):t.push("["+r.prefix+"] "):t.push(""),"string"==typeof e[0]?r.markdown&&a()?(n=o(e[0]),t[0]=t[0]+n.text,t=t.concat(n.styles)):t[0]=t[0]+e[0]:t[0]=e[0],e.length>1&&(t=t.concat(e.splice(1))),t}function i(e,r,n){var t=[];return n.prefix&&(a()?t[0]="["+n.prefixColor[0]+"m["+m.modifiers.bold[0]+"m"+n.prefix+"["+m.modifiers.bold[1]+"m["+n.prefixColor[1]+"m":t[0]="["+n.prefix+"]"),"warn"===r?t[0]="["+m.colors.yellow[0]+"m⚠["+m.colors.yellow[1]+"m "+(t[0]||""):"error"===r?t[0]="["+m.colors.red[0]+"m✖["+m.colors.red[1]+"m "+(t[0]||""):"info"===r?t[0]="["+m.colors.blue[0]+"mℹ["+m.colors.blue[1]+"m "+(t[0]||""):"debug"===r&&(t[0]="["+m.colors.gray[0]+"m🐛["+m.colors.gray[1]+"m "+(t[0]||"")),e.forEach(function(e){"string"==typeof e&&n.markdown?t.push(o(e).text):t.push(e)}),t}function c(r){var o=null;"undefined"!=typeof process&&void 0!==process.env&&0===b.length&&(void 0!==process.env.NODE_DEBUG&&""!==process.env.NODE_DEBUG?o="NODE_DEBUG":void 0!==process.env.DEBUG&&""!==process.env.DEBUG&&(o="DEBUG"),o&&(e.disable("*"),process.env[o].split(",").forEach(function(r){e.enable(r)})));var n=!1;return b.forEach(function(e){"enable"===e.type&&e.regExp.test(r.prefix)?n=!1:"disable"===e.type&&e.regExp.test(r.prefix)&&(n=!0)}),n}function l(e){return new RegExp("^"+e.replace(/\*/g,".*?")+"$")}function s(e,r){var o=!1;return r.forEach(function(r){if(r.prefix===e)return void(o=!0)}),o}function u(e,r){var o;return r.forEach(function(r){if(r.prefix===e)return void(o=r)}),o}function p(e){return"string"==typeof e?e.replace(/%c/g,""):e}function a(){if(d()){var e="WebkitAppearance"in document.documentElement.style,r=window.console&&(console.firebug||console.exception&&console.table),o=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31;return e||r||o}if(f())return!(process.stdout&&!process.stdout.isTTY)&&("win32"===process.platform||("COLORTERM"in process.env||"dumb"!==process.env.TERM&&!!/^screen|^xterm|^vt100|color|ansi|cygwin|linux/i.test(process.env.TERM)))}function f(){return"undefined"!=typeof module&&"undefined"!=typeof module.exports}function d(){return"undefined"!=typeof window}var g=[],h=0,x=["#B58900","#CB4B16","#DC322F","#D33682","#6C71C4","#268BD2","#2AA198","#859900"],m={modifiers:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},colors:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39]},bgColors:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49]}},b=[];e.enable=function(){Array.prototype.forEach.call(arguments,function(r){"-"===r[0]&&e.disable(r.substr(1));var o=l(r);"*"===r?b=[]:b.push({type:"enable",regExp:o})})},e.disable=function(){Array.prototype.forEach.call(arguments,function(r){"-"===r[0]&&e.enable(r.substr(1));var o=l(r);"*"===r?b=[{type:"disable",regExp:o}]:b.push({type:"disable",regExp:o})})};var y=["debug","log","info","warn","error"];y.forEach(function(r){e.prototype[r]=function(){if(!c(this)){var e,o=Array.prototype.slice.call(arguments,0);d()?(e=t(o,this),Function.prototype.apply.call(console[r]||console.log,console,e)):f()&&(e=i(o,r,this),(console[r]||console.log).apply(console,e))}}});var v=function(){var e=0,r=[[31,39],[32,39],[33,39],[34,39],[35,39],[36,39]];return function(){return r[(e+=1)%r.length]}}();f()?module.exports=e:d()&&(window.Logdown=e)}(); | ||
!function(){"use strict";function e(n,t){return this instanceof e?(this.opts=r(n,t),l(this.opts.prefix,e._instances)?u(this.opts.prefix,e._instances):(e._instances.push(this),o(e._instances),this)):new e(n,t)}function r(e,r){"object"==typeof e&&(r=e),r=r||{},"string"!=typeof e&&(e=r.prefix||""),e=a(e);var o,n=Boolean(r.alignOutput),t=void 0===r.markdown||Boolean(r.markdown);return g()?(o=h[x%h.length],x+=1):d()&&(o=v()),{prefix:e,alignOutput:n,markdown:t,prefixColor:o}}function o(e){var r=e.sort(function(e,r){return r.opts.prefix.length-e.opts.prefix.length})[0];e.forEach(function(e){if(e.opts.alignOutput){var o=new Array(Math.max(r.opts.prefix.length-e.opts.prefix.length+1,0)).join(" ");e.opts.prefix=e.opts.prefix+o}})}function n(e){for(var r=[],o=t(e);o;)e=e.replace(o.rule.regexp,o.rule.replacer),g()&&(r.push(o.rule.style),r.push("")),o=t(e);return{text:e,styles:r}}function t(e){var r=[],o=[];return g()?o=[{regexp:/\*([^\*]+)\*/,replacer:function(e,r){return"%c"+r+"%c"},style:"font-weight:bold;"},{regexp:/_([^_]+)_/,replacer:function(e,r){return"%c"+r+"%c"},style:"font-style:italic;"},{regexp:/`([^`]+)`/,replacer:function(e,r){return"%c"+r+"%c"},style:"background:#FDF6E3; color:#586E75; padding:1px 5px; border-radius:4px;"}]:d()&&(o=[{regexp:/\*([^\*]+)\*/,replacer:function(e,r){return"["+m.modifiers.bold[0]+"m"+r+"["+m.modifiers.bold[1]+"m"}},{regexp:/_([^_]+)_/,replacer:function(e,r){return"["+m.modifiers.italic[0]+"m"+r+"["+m.modifiers.italic[1]+"m"}},{regexp:/`([^`]+)`/,replacer:function(e,r){return"["+m.bgColors.bgYellow[0]+"m["+m.colors.black[0]+"m "+r+" ["+m.colors.black[1]+"m["+m.bgColors.bgYellow[1]+"m"}}]),o.forEach(function(o){var n=e.match(o.regexp);n&&r.push({rule:o,match:n})}),0===r.length?null:(r.sort(function(e,r){return e.match.index-r.match.index}),r[0])}function i(e,r){var o,t=[];return r.opts.prefix?f()?(t.push("%c"+r.opts.prefix+"%c "),t.push("color:"+r.opts.prefixColor+"; font-weight:bold;","")):t.push("["+r.prefix+"] "):t.push(""),"string"==typeof e[0]?r.opts.markdown&&f()?(o=n(e[0]),t[0]=t[0]+o.text,t=t.concat(o.styles)):t[0]=t[0]+e[0]:t[0]=e[0],e.length>1&&(t=t.concat(e.splice(1))),t}function s(e,r,o){var t=[];return o.opts.prefix&&(f()?t[0]="["+o.opts.prefixColor[0]+"m["+m.modifiers.bold[0]+"m"+o.opts.prefix+"["+m.modifiers.bold[1]+"m["+o.opts.prefixColor[1]+"m":t[0]="["+o.opts.prefix+"]"),"warn"===r?t[0]="["+m.colors.yellow[0]+"m⚠["+m.colors.yellow[1]+"m "+(t[0]||""):"error"===r?t[0]="["+m.colors.red[0]+"m✖["+m.colors.red[1]+"m "+(t[0]||""):"info"===r?t[0]="["+m.colors.blue[0]+"mℹ["+m.colors.blue[1]+"m "+(t[0]||""):"debug"===r&&(t[0]="["+m.colors.gray[0]+"m🐛["+m.colors.gray[1]+"m "+(t[0]||"")),e.forEach(function(e){"string"==typeof e&&o.opts.markdown?t.push(n(e).text):t.push(e)}),t}function c(r){var o=null;"undefined"!=typeof process&&void 0!==process.env&&0===b.length&&(void 0!==process.env.NODE_DEBUG&&""!==process.env.NODE_DEBUG?o="NODE_DEBUG":void 0!==process.env.DEBUG&&""!==process.env.DEBUG&&(o="DEBUG"),o&&(e.disable("*"),process.env[o].split(",").forEach(function(r){e.enable(r)})));var n=!1;return b.forEach(function(e){"enable"===e.type&&e.regExp.test(r.opts.prefix)?n=!1:"disable"===e.type&&e.regExp.test(r.opts.prefix)&&(n=!0)}),n}function p(e){return new RegExp("^"+e.replace(/\*/g,".*?")+"$")}function l(e,r){var o=!1;return r.forEach(function(r){if(r.opts.prefix===e)return void(o=!0)}),o}function u(e,r){var o;return r.forEach(function(r){if(r.opts.prefix===e)return void(o=r)}),o}function a(e){return"string"==typeof e?e.replace(/%c/g,""):e}function f(){if(g()){var e="WebkitAppearance"in document.documentElement.style,r=window.console&&(console.firebug||console.exception&&console.table),o=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31;return e||r||o}if(d())return!(process.stdout&&!process.stdout.isTTY)&&("win32"===process.platform||("COLORTERM"in process.env||"dumb"!==process.env.TERM&&!!/^screen|^xterm|^vt100|color|ansi|cygwin|linux/i.test(process.env.TERM)))}function d(){return"undefined"!=typeof module&&"undefined"!=typeof module.exports}function g(){return"undefined"!=typeof window}var x=0,h=["#B58900","#CB4B16","#DC322F","#D33682","#6C71C4","#268BD2","#2AA198","#859900"],m={modifiers:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},colors:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39]},bgColors:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49]}},b=[];e._instances=[],e.enable=function(){Array.prototype.forEach.call(arguments,function(r){"-"===r[0]&&e.disable(r.substr(1));var o=p(r);"*"===r?b=[]:b.push({type:"enable",regExp:o})})},e.disable=function(){Array.prototype.forEach.call(arguments,function(r){"-"===r[0]&&e.enable(r.substr(1));var o=p(r);"*"===r?b=[{type:"disable",regExp:o}]:b.push({type:"disable",regExp:o})})};var y=["debug","log","info","warn","error"];y.forEach(function(r){e.prototype[r]=function(){if(!c(this)){var e,o=Array.prototype.slice.call(arguments,0);g()?(e=i(o,this),Function.prototype.apply.call(console[r]||console.log,console,e)):d()&&(e=s(o,r,this),(console[r]||console.log).apply(console,e))}}});var v=function(){var e=0,r=[[31,39],[32,39],[33,39],[34,39],[35,39],[36,39]];return function(){return e+=1,r[e%r.length]}}();d()?module.exports=e:g()&&(window.Logdown=e)}(); | ||
//# sourceMappingURL=logdown.min.js.map |
@@ -0,0 +0,0 @@ /* eslint-disable spaced-comment */ |
/** | ||
* logdown - Debug utility with markdown support that runs on browser and server | ||
* | ||
* @version v2.0.3 | ||
* @version v2.1.0 | ||
* @link https://github.com/caiogondim/logdown | ||
@@ -9,2 +9,2 @@ * @author Caio Gondim <me@caiogondim.com> (http://caiogondim.com) | ||
*/ | ||
!function(){"use strict";function e(o){if(!(this instanceof e))return new e(o);o=o||{};var n=void 0===o.prefix?"":o.prefix;return n=p(n),n&&s(n,g)?u(n,g):(this.alignOutput=Boolean(o.alignOutput),this.markdown=void 0===o.markdown||o.markdown,this.prefix=n,g.push(this),r(g),d()?(this.prefixColor=x[h%x.length],h+=1):f()&&(this.prefixColor=v()),this)}function r(e){var r=e.sort(function(e,r){return r.prefix.length-e.prefix.length})[0];e.forEach(function(e){if(e.alignOutput){var o=new Array(Math.max(r.prefix.length-e.prefix.length+1,0)).join(" ");e.prefix=e.prefix+o}})}function o(e){for(var r=[],o=n(e);o;)e=e.replace(o.rule.regexp,o.rule.replacer),d()&&(r.push(o.rule.style),r.push("")),o=n(e);return{text:e,styles:r}}function n(e){var r=[],o=[];return d()?o=[{regexp:/\*([^\*]+)\*/,replacer:function(e,r){return"%c"+r+"%c"},style:"font-weight:bold;"},{regexp:/_([^_]+)_/,replacer:function(e,r){return"%c"+r+"%c"},style:"font-style:italic;"},{regexp:/`([^`]+)`/,replacer:function(e,r){return"%c"+r+"%c"},style:"background:#FDF6E3; color:#586E75; padding:1px 5px; border-radius:4px;"}]:f()&&(o=[{regexp:/\*([^\*]+)\*/,replacer:function(e,r){return"["+m.modifiers.bold[0]+"m"+r+"["+m.modifiers.bold[1]+"m"}},{regexp:/_([^_]+)_/,replacer:function(e,r){return"["+m.modifiers.italic[0]+"m"+r+"["+m.modifiers.italic[1]+"m"}},{regexp:/`([^`]+)`/,replacer:function(e,r){return"["+m.bgColors.bgYellow[0]+"m["+m.colors.black[0]+"m "+r+" ["+m.colors.black[1]+"m["+m.bgColors.bgYellow[1]+"m"}}]),o.forEach(function(o){var n=e.match(o.regexp);n&&r.push({rule:o,match:n})}),0===r.length?null:(r.sort(function(e,r){return e.match.index-r.match.index}),r[0])}function t(e,r){var n,t=[];return r.prefix?a()?(t.push("%c"+r.prefix+"%c "),t.push("color:"+r.prefixColor+"; font-weight:bold;","")):t.push("["+r.prefix+"] "):t.push(""),"string"==typeof e[0]?r.markdown&&a()?(n=o(e[0]),t[0]=t[0]+n.text,t=t.concat(n.styles)):t[0]=t[0]+e[0]:t[0]=e[0],e.length>1&&(t=t.concat(e.splice(1))),t}function i(e,r,n){var t=[];return n.prefix&&(a()?t[0]="["+n.prefixColor[0]+"m["+m.modifiers.bold[0]+"m"+n.prefix+"["+m.modifiers.bold[1]+"m["+n.prefixColor[1]+"m":t[0]="["+n.prefix+"]"),"warn"===r?t[0]="["+m.colors.yellow[0]+"m⚠["+m.colors.yellow[1]+"m "+(t[0]||""):"error"===r?t[0]="["+m.colors.red[0]+"m✖["+m.colors.red[1]+"m "+(t[0]||""):"info"===r?t[0]="["+m.colors.blue[0]+"mℹ["+m.colors.blue[1]+"m "+(t[0]||""):"debug"===r&&(t[0]="["+m.colors.gray[0]+"m🐛["+m.colors.gray[1]+"m "+(t[0]||"")),e.forEach(function(e){"string"==typeof e&&n.markdown?t.push(o(e).text):t.push(e)}),t}function c(r){var o=null;"undefined"!=typeof process&&void 0!==process.env&&0===b.length&&(void 0!==process.env.NODE_DEBUG&&""!==process.env.NODE_DEBUG?o="NODE_DEBUG":void 0!==process.env.DEBUG&&""!==process.env.DEBUG&&(o="DEBUG"),o&&(e.disable("*"),process.env[o].split(",").forEach(function(r){e.enable(r)})));var n=!1;return b.forEach(function(e){"enable"===e.type&&e.regExp.test(r.prefix)?n=!1:"disable"===e.type&&e.regExp.test(r.prefix)&&(n=!0)}),n}function l(e){return new RegExp("^"+e.replace(/\*/g,".*?")+"$")}function s(e,r){var o=!1;return r.forEach(function(r){if(r.prefix===e)return void(o=!0)}),o}function u(e,r){var o;return r.forEach(function(r){if(r.prefix===e)return void(o=r)}),o}function p(e){return"string"==typeof e?e.replace(/%c/g,""):e}function a(){if(d()){var e="WebkitAppearance"in document.documentElement.style,r=window.console&&(console.firebug||console.exception&&console.table),o=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31;return e||r||o}if(f())return!(process.stdout&&!process.stdout.isTTY)&&("win32"===process.platform||("COLORTERM"in process.env||"dumb"!==process.env.TERM&&!!/^screen|^xterm|^vt100|color|ansi|cygwin|linux/i.test(process.env.TERM)))}function f(){return"undefined"!=typeof module&&"undefined"!=typeof module.exports}function d(){return"undefined"!=typeof window}var g=[],h=0,x=["#B58900","#CB4B16","#DC322F","#D33682","#6C71C4","#268BD2","#2AA198","#859900"],m={modifiers:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},colors:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39]},bgColors:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49]}},b=[];e.enable=function(){Array.prototype.forEach.call(arguments,function(r){"-"===r[0]&&e.disable(r.substr(1));var o=l(r);"*"===r?b=[]:b.push({type:"enable",regExp:o})})},e.disable=function(){Array.prototype.forEach.call(arguments,function(r){"-"===r[0]&&e.enable(r.substr(1));var o=l(r);"*"===r?b=[{type:"disable",regExp:o}]:b.push({type:"disable",regExp:o})})};var y=["debug","log","info","warn","error"];y.forEach(function(r){e.prototype[r]=function(){if(!c(this)){var e,o=Array.prototype.slice.call(arguments,0);d()?(e=t(o,this),Function.prototype.apply.call(console[r]||console.log,console,e)):f()&&(e=i(o,r,this),(console[r]||console.log).apply(console,e))}}});var v=function(){var e=0,r=[[31,39],[32,39],[33,39],[34,39],[35,39],[36,39]];return function(){return r[(e+=1)%r.length]}}();f()?module.exports=e:d()&&(window.Logdown=e)}(); | ||
!function(){"use strict";function e(n,t){return this instanceof e?(this.opts=r(n,t),l(this.opts.prefix,e._instances)?u(this.opts.prefix,e._instances):(e._instances.push(this),o(e._instances),this)):new e(n,t)}function r(e,r){"object"==typeof e&&(r=e),r=r||{},"string"!=typeof e&&(e=r.prefix||""),e=a(e);var o,n=Boolean(r.alignOutput),t=void 0===r.markdown||Boolean(r.markdown);return g()?(o=h[x%h.length],x+=1):d()&&(o=v()),{prefix:e,alignOutput:n,markdown:t,prefixColor:o}}function o(e){var r=e.sort(function(e,r){return r.opts.prefix.length-e.opts.prefix.length})[0];e.forEach(function(e){if(e.opts.alignOutput){var o=new Array(Math.max(r.opts.prefix.length-e.opts.prefix.length+1,0)).join(" ");e.opts.prefix=e.opts.prefix+o}})}function n(e){for(var r=[],o=t(e);o;)e=e.replace(o.rule.regexp,o.rule.replacer),g()&&(r.push(o.rule.style),r.push("")),o=t(e);return{text:e,styles:r}}function t(e){var r=[],o=[];return g()?o=[{regexp:/\*([^\*]+)\*/,replacer:function(e,r){return"%c"+r+"%c"},style:"font-weight:bold;"},{regexp:/_([^_]+)_/,replacer:function(e,r){return"%c"+r+"%c"},style:"font-style:italic;"},{regexp:/`([^`]+)`/,replacer:function(e,r){return"%c"+r+"%c"},style:"background:#FDF6E3; color:#586E75; padding:1px 5px; border-radius:4px;"}]:d()&&(o=[{regexp:/\*([^\*]+)\*/,replacer:function(e,r){return"["+m.modifiers.bold[0]+"m"+r+"["+m.modifiers.bold[1]+"m"}},{regexp:/_([^_]+)_/,replacer:function(e,r){return"["+m.modifiers.italic[0]+"m"+r+"["+m.modifiers.italic[1]+"m"}},{regexp:/`([^`]+)`/,replacer:function(e,r){return"["+m.bgColors.bgYellow[0]+"m["+m.colors.black[0]+"m "+r+" ["+m.colors.black[1]+"m["+m.bgColors.bgYellow[1]+"m"}}]),o.forEach(function(o){var n=e.match(o.regexp);n&&r.push({rule:o,match:n})}),0===r.length?null:(r.sort(function(e,r){return e.match.index-r.match.index}),r[0])}function i(e,r){var o,t=[];return r.opts.prefix?f()?(t.push("%c"+r.opts.prefix+"%c "),t.push("color:"+r.opts.prefixColor+"; font-weight:bold;","")):t.push("["+r.prefix+"] "):t.push(""),"string"==typeof e[0]?r.opts.markdown&&f()?(o=n(e[0]),t[0]=t[0]+o.text,t=t.concat(o.styles)):t[0]=t[0]+e[0]:t[0]=e[0],e.length>1&&(t=t.concat(e.splice(1))),t}function s(e,r,o){var t=[];return o.opts.prefix&&(f()?t[0]="["+o.opts.prefixColor[0]+"m["+m.modifiers.bold[0]+"m"+o.opts.prefix+"["+m.modifiers.bold[1]+"m["+o.opts.prefixColor[1]+"m":t[0]="["+o.opts.prefix+"]"),"warn"===r?t[0]="["+m.colors.yellow[0]+"m⚠["+m.colors.yellow[1]+"m "+(t[0]||""):"error"===r?t[0]="["+m.colors.red[0]+"m✖["+m.colors.red[1]+"m "+(t[0]||""):"info"===r?t[0]="["+m.colors.blue[0]+"mℹ["+m.colors.blue[1]+"m "+(t[0]||""):"debug"===r&&(t[0]="["+m.colors.gray[0]+"m🐛["+m.colors.gray[1]+"m "+(t[0]||"")),e.forEach(function(e){"string"==typeof e&&o.opts.markdown?t.push(n(e).text):t.push(e)}),t}function c(r){var o=null;"undefined"!=typeof process&&void 0!==process.env&&0===b.length&&(void 0!==process.env.NODE_DEBUG&&""!==process.env.NODE_DEBUG?o="NODE_DEBUG":void 0!==process.env.DEBUG&&""!==process.env.DEBUG&&(o="DEBUG"),o&&(e.disable("*"),process.env[o].split(",").forEach(function(r){e.enable(r)})));var n=!1;return b.forEach(function(e){"enable"===e.type&&e.regExp.test(r.opts.prefix)?n=!1:"disable"===e.type&&e.regExp.test(r.opts.prefix)&&(n=!0)}),n}function p(e){return new RegExp("^"+e.replace(/\*/g,".*?")+"$")}function l(e,r){var o=!1;return r.forEach(function(r){if(r.opts.prefix===e)return void(o=!0)}),o}function u(e,r){var o;return r.forEach(function(r){if(r.opts.prefix===e)return void(o=r)}),o}function a(e){return"string"==typeof e?e.replace(/%c/g,""):e}function f(){if(g()){var e="WebkitAppearance"in document.documentElement.style,r=window.console&&(console.firebug||console.exception&&console.table),o=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31;return e||r||o}if(d())return!(process.stdout&&!process.stdout.isTTY)&&("win32"===process.platform||("COLORTERM"in process.env||"dumb"!==process.env.TERM&&!!/^screen|^xterm|^vt100|color|ansi|cygwin|linux/i.test(process.env.TERM)))}function d(){return"undefined"!=typeof module&&"undefined"!=typeof module.exports}function g(){return"undefined"!=typeof window}var x=0,h=["#B58900","#CB4B16","#DC322F","#D33682","#6C71C4","#268BD2","#2AA198","#859900"],m={modifiers:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},colors:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39]},bgColors:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49]}},b=[];e._instances=[],e.enable=function(){Array.prototype.forEach.call(arguments,function(r){"-"===r[0]&&e.disable(r.substr(1));var o=p(r);"*"===r?b=[]:b.push({type:"enable",regExp:o})})},e.disable=function(){Array.prototype.forEach.call(arguments,function(r){"-"===r[0]&&e.enable(r.substr(1));var o=p(r);"*"===r?b=[{type:"disable",regExp:o}]:b.push({type:"disable",regExp:o})})};var y=["debug","log","info","warn","error"];y.forEach(function(r){e.prototype[r]=function(){if(!c(this)){var e,o=Array.prototype.slice.call(arguments,0);g()?(e=i(o,this),Function.prototype.apply.call(console[r]||console.log,console,e)):d()&&(e=s(o,r,this),(console[r]||console.log).apply(console,e))}}});var v=function(){var e=0,r=[[31,39],[32,39],[33,39],[34,39],[35,39],[36,39]];return function(){return e+=1,r[e%r.length]}}();d()?module.exports=e:g()&&(window.Logdown=e)}(); |
'use strict' | ||
var Logdown = require('../src') | ||
var Logdown = require('../src/logdown') | ||
var demo = new Logdown({prefix: 'demo'}) | ||
// var demo = new Logdown({prefix: 'demo'}) | ||
var demo = Logdown('demo') | ||
@@ -7,0 +8,0 @@ demo.log('one', '*foo*', 'bar') |
@@ -27,3 +27,3 @@ 'use strict' | ||
gulp.task('karma', ['mocha'], function(done) { | ||
gulp.task('karma', function(done) { | ||
karma.start({ | ||
@@ -30,0 +30,0 @@ configFile: __dirname + '/test/karma.conf.js', |
@@ -0,0 +0,0 @@ Copyright (c) 2016 [Caio Gondim](https://caiogondim.com) |
{ | ||
"name": "logdown", | ||
"version": "2.0.3", | ||
"version": "2.1.0", | ||
"description": "Debug utility with markdown support that runs on browser and server", | ||
@@ -13,2 +13,3 @@ "main": "dist/logdown.js", | ||
"test:server": "gulp mocha", | ||
"test:client": "gulp karma", | ||
"test:lint": "standard './src/**/*.js' './test/**/*.js'", | ||
@@ -15,0 +16,0 @@ "test:lint:fix": "standard './src/**/*.js' './test/**/*.js' --fix", |
@@ -6,3 +6,3 @@ <img src="http://rawgit.com/caiogondim/logdown.js/master/img/icon.svg"> | ||
<div align="center"> | ||
<img src="http://travis-ci.org/caiogondim/logdown.js.svg?branch=master" alt="Travis CI"> <img src="http://img.badgesize.io/caiogondim/logdown.js/master/dist/logdown.js?compression=gzip" alt="lib size"> <img src="http://img.shields.io/npm/dm/logdown.svg" alt="Downloads per month"> | ||
<img src="http://travis-ci.org/caiogondim/logdown.js.svg?branch=master" alt="Travis CI"> <img src="http://img.badgesize.io/caiogondim/logdown.js/master/dist/logdown.min.js?compression=gzip" alt="lib size"> <img src="http://img.shields.io/npm/dm/logdown.svg" alt="Downloads per month"> | ||
</div> | ||
@@ -39,6 +39,12 @@ | ||
```js | ||
var Logdown = require('logdown') | ||
var logger = new Logdown({prefix: 'foo'}) | ||
const Logdown = require('logdown') | ||
const logger = logdown('foo') | ||
``` | ||
Or as a more idiomatic way: | ||
```js | ||
const logger = require('logdown')('foo') | ||
``` | ||
### Bower | ||
@@ -53,3 +59,3 @@ | ||
```js | ||
var logger = new Logdown({prefix: 'foo'}) | ||
const logger = require('logdown')('foo') | ||
``` | ||
@@ -80,3 +86,3 @@ | ||
System.import('logdown').then(function(Logdown) { | ||
var logger = new Logdown({prefix: 'foo'} | ||
const logger = logdown('foo') | ||
}); | ||
@@ -88,7 +94,7 @@ ``` | ||
```ts | ||
import Logdown = require("logdown"); | ||
import Logdown = require('logdown'); | ||
``` | ||
```ts | ||
let logger: Logdown = new Logdown({prefix: 'foo'}; | ||
const logger: Logdown = new Logdown('foo'); | ||
``` | ||
@@ -125,4 +131,4 @@ | ||
```js | ||
var options = {alignOutput: true, prefix: 'foo'} | ||
var logger = new Logdown(options) | ||
const options = {alignOutput: true, prefix: 'foo'} | ||
const logger = new Logdown(options) | ||
``` | ||
@@ -138,6 +144,12 @@ | ||
```js | ||
var logger = new Logdown({prefix: 'foo'}) | ||
const logger = logdown({ prefix: 'foo' }) | ||
logger.log('Lorem ipsum') // Will use console.log with a prefix | ||
``` | ||
The above code is the same as: | ||
```js | ||
const logger = logdown('foo') | ||
logger.log('Lorem ipsum') | ||
``` | ||
You should use the name of your module. | ||
@@ -147,6 +159,6 @@ You can, also, use `:` to separate modules inside one big module. | ||
```js | ||
var fooBarLogger = new Logdown({prefix: 'foo:bar'}) | ||
var fooBarLogger = Logdown('foo:bar') | ||
fooBarLogger.log('Lorem ipsum') | ||
var fooQuzLogger = new Logdown({prefix: 'foo:quz'}) | ||
var fooQuzLogger = Logdown('foo:quz') | ||
fooQuzLogger.log('Lorem Ipsum') | ||
@@ -163,3 +175,3 @@ ``` | ||
```js | ||
var logger = new Logdown({markdown: false}) | ||
var logger = Logdown({markdown: false}) | ||
logger.log('Lorem *ipsum*') // Will not parse the markdown | ||
@@ -166,0 +178,0 @@ ``` |
@@ -6,3 +6,2 @@ /* global console, module, window, document, navigator, process */ | ||
var instances = [] | ||
var lastUsedColorIndex = 0 | ||
@@ -57,38 +56,25 @@ // Solarized accent colors http://ethanschoonover.com/solarized | ||
function Logdown (opts) { | ||
// Enforces new. | ||
function Logdown (prefix, opts) { | ||
if (!(this instanceof Logdown)) { | ||
return new Logdown(opts) | ||
return new Logdown(prefix, opts) | ||
} | ||
opts = opts || {} | ||
this.opts = normalizeOpts(prefix, opts) | ||
var prefix = opts.prefix === undefined ? '' : opts.prefix | ||
prefix = sanitizeStringToBrowser(prefix) | ||
if (prefix && isPrefixAlreadyInUse(prefix, instances)) { | ||
return getInstanceByPrefix(prefix, instances) | ||
if (isPrefixAlreadyInUse(this.opts.prefix, Logdown._instances)) { | ||
return getInstanceByPrefix(this.opts.prefix, Logdown._instances) | ||
} | ||
// | ||
this.alignOutput = Boolean(opts.alignOutput) | ||
this.markdown = opts.markdown === undefined ? true : opts.markdown | ||
this.prefix = prefix | ||
Logdown._instances.push(this) | ||
alignPrefixes(Logdown._instances) | ||
// | ||
instances.push(this) | ||
alignPrefixes(instances) | ||
if (isBrowser()) { | ||
this.prefixColor = colors[lastUsedColorIndex % colors.length] | ||
lastUsedColorIndex += 1 | ||
} else if (isNode()) { | ||
this.prefixColor = getNextPrefixColor() | ||
} | ||
return this | ||
} | ||
// | ||
// Static | ||
// ------ | ||
// | ||
Logdown._instances = [] | ||
Logdown.enable = function () { | ||
@@ -135,4 +121,5 @@ Array.prototype.forEach.call(arguments, function (str) { | ||
// | ||
// Public | ||
// ------ | ||
// | ||
@@ -162,3 +149,2 @@ var methods = ['debug', 'log', 'info', 'warn', 'error'] | ||
preparedOutput = prepareOutputToNode(args, method, this) | ||
;(console[method] || console.log).apply( | ||
@@ -172,14 +158,41 @@ console, | ||
// | ||
// Private | ||
// ------- | ||
// | ||
function normalizeOpts (prefix, opts) { | ||
if (typeof prefix === 'object') opts = prefix | ||
opts = opts || {} | ||
if (typeof prefix !== 'string') prefix = opts.prefix || '' | ||
prefix = sanitizeStringToBrowser(prefix) | ||
var alignOutput = Boolean(opts.alignOutput) | ||
var markdown = opts.markdown === undefined ? true : Boolean(opts.markdown) | ||
var prefixColor | ||
if (isBrowser()) { | ||
prefixColor = colors[lastUsedColorIndex % colors.length] | ||
lastUsedColorIndex += 1 | ||
} else if (isNode()) { | ||
prefixColor = getNextPrefixColor() | ||
} | ||
return { | ||
prefix: prefix, | ||
alignOutput: alignOutput, | ||
markdown: markdown, | ||
prefixColor: prefixColor | ||
} | ||
} | ||
function alignPrefixes (instances) { | ||
var longest = instances.sort(function (a, b) { | ||
return b.prefix.length - a.prefix.length | ||
return b.opts.prefix.length - a.opts.prefix.length | ||
})[0] | ||
instances.forEach(function (instance) { | ||
if (instance.alignOutput) { | ||
var padding = new Array(Math.max(longest.prefix.length - instance.prefix.length + 1, 0)).join(' ') | ||
instance.prefix = instance.prefix + padding | ||
if (instance.opts.alignOutput) { | ||
var padding = new Array(Math.max(longest.opts.prefix.length - instance.opts.prefix.length + 1, 0)).join(' ') | ||
instance.opts.prefix = instance.opts.prefix + padding | ||
} | ||
@@ -295,7 +308,7 @@ }) | ||
if (instance.prefix) { | ||
if (instance.opts.prefix) { | ||
if (isColorSupported()) { | ||
preparedOutput.push('%c' + instance.prefix + '%c ') | ||
preparedOutput.push('%c' + instance.opts.prefix + '%c ') | ||
preparedOutput.push( | ||
'color:' + instance.prefixColor + '; font-weight:bold;', | ||
'color:' + instance.opts.prefixColor + '; font-weight:bold;', | ||
'' // Empty string resets style. | ||
@@ -312,3 +325,3 @@ ) | ||
if (typeof args[0] === 'string') { | ||
if (instance.markdown && isColorSupported()) { | ||
if (instance.opts.markdown && isColorSupported()) { | ||
parsedMarkdown = parseMarkdown(args[0]) | ||
@@ -334,12 +347,12 @@ preparedOutput[0] = preparedOutput[0] + parsedMarkdown.text | ||
if (instance.prefix) { | ||
if (instance.opts.prefix) { | ||
if (isColorSupported()) { | ||
preparedOutput[0] = | ||
'\u001b[' + instance.prefixColor[0] + 'm' + | ||
'\u001b[' + instance.opts.prefixColor[0] + 'm' + | ||
'\u001b[' + ansiColors.modifiers.bold[0] + 'm' + | ||
instance.prefix + | ||
instance.opts.prefix + | ||
'\u001b[' + ansiColors.modifiers.bold[1] + 'm' + | ||
'\u001b[' + instance.prefixColor[1] + 'm' | ||
'\u001b[' + instance.opts.prefixColor[1] + 'm' | ||
} else { | ||
preparedOutput[0] = '[' + instance.prefix + ']' | ||
preparedOutput[0] = '[' + instance.opts.prefix + ']' | ||
} | ||
@@ -376,3 +389,3 @@ } | ||
if (typeof arg === 'string') { | ||
if (instance.markdown) { | ||
if (instance.opts.markdown) { | ||
preparedOutput.push(parseMarkdown(arg).text) | ||
@@ -420,6 +433,6 @@ } else { | ||
filterRegExps.forEach(function (filter) { | ||
if (filter.type === 'enable' && filter.regExp.test(instance.prefix)) { | ||
if (filter.type === 'enable' && filter.regExp.test(instance.opts.prefix)) { | ||
isDisabled_ = false | ||
} else if (filter.type === 'disable' && | ||
filter.regExp.test(instance.prefix)) { | ||
filter.regExp.test(instance.opts.prefix)) { | ||
isDisabled_ = true | ||
@@ -440,3 +453,3 @@ } | ||
instances.forEach(function (instance) { | ||
if (instance.prefix === prefix) { | ||
if (instance.opts.prefix === prefix) { | ||
isPrefixAlreadyInUse_ = true | ||
@@ -446,3 +459,2 @@ return | ||
}) | ||
return isPrefixAlreadyInUse_ | ||
@@ -455,3 +467,3 @@ } | ||
instances.forEach(function (instanceCur) { | ||
if (instanceCur.prefix === prefix) { | ||
if (instanceCur.opts.prefix === prefix) { | ||
instance = instanceCur | ||
@@ -548,3 +560,4 @@ return | ||
return function () { | ||
return nodePrefixColors[(lastUsed += 1) % nodePrefixColors.length] | ||
lastUsed += 1 | ||
return nodePrefixColors[lastUsed % nodePrefixColors.length] | ||
} | ||
@@ -551,0 +564,0 @@ })() |
@@ -9,7 +9,7 @@ /* global describe, console, it, require, window, Logdown, chai, sinon */ | ||
describe('new Logdown()', function () { | ||
describe('Logdown()', function () { | ||
it('should return an existing instance if the prefix is already in use', | ||
function () { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var foo2 = new Logdown({prefix: 'foo'}) | ||
var foo = Logdown('foo') | ||
var foo2 = Logdown('foo') | ||
assert.equal(foo, foo2) | ||
@@ -19,19 +19,25 @@ }) | ||
it('should give a new prefix color for each instance', function () { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var quz = new Logdown({prefix: 'quz'}) | ||
var baz = new Logdown({prefix: 'baz'}) | ||
assert.notEqual(foo.prefixColor, bar.prefixColor) | ||
assert.notEqual(foo.prefixColor, quz.prefixColor) | ||
assert.notEqual(foo.prefixColor, baz.prefixColor) | ||
var foo = Logdown('foo') | ||
var bar = Logdown('bar') | ||
var quz = Logdown('quz') | ||
var baz = Logdown('baz') | ||
assert.notEqual(foo.opts.prefixColor, bar.opts.prefixColor) | ||
assert.notEqual(foo.opts.prefixColor, quz.opts.prefixColor) | ||
assert.notEqual(foo.opts.prefixColor, baz.opts.prefixColor) | ||
}) | ||
it('should sanitize prefixes name', function () { | ||
var log1 = new Logdown({prefix: '%cfoo%c'}) | ||
assert.equal(log1.prefix, 'foo') | ||
var log1 = Logdown('%cfoo%c') | ||
assert.equal(log1.opts.prefix, 'foo') | ||
var log2 = new Logdown({prefix: '%cba%cr'}) | ||
assert.equal(log2.prefix, 'bar') | ||
var log2 = Logdown('%cba%cr') | ||
assert.equal(log2.opts.prefix, 'bar') | ||
}) | ||
// For compatibiltiy with debug | ||
it('should set prefix if string is passed as only argument', function () { | ||
var log1 = Logdown('foo') | ||
assert.equal(log1.opts.prefix, 'foo') | ||
}) | ||
}) | ||
}()) |
@@ -11,6 +11,6 @@ /* global describe, beforeEach, console, it, require, window, Logdown, chai, sinon */ | ||
return [ | ||
new Logdown({prefix: 'foo'}), | ||
new Logdown({prefix: 'bar'}), | ||
new Logdown({prefix: 'quz'}), | ||
new Logdown({prefix: 'baz'}) | ||
new Logdown('foo'), | ||
new Logdown('bar'), | ||
new Logdown('quz'), | ||
new Logdown('baz') | ||
] | ||
@@ -44,6 +44,6 @@ } | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var quz = new Logdown({prefix: 'quz'}) | ||
var baz = new Logdown({prefix: 'baz'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var quz = new Logdown('quz') | ||
var baz = new Logdown('baz') | ||
@@ -70,6 +70,6 @@ Logdown.enable('*') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var foobar = new Logdown('foobar') | ||
var barfoo = new Logdown('barfoo') | ||
@@ -96,6 +96,6 @@ Logdown.enable('*') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var foobar = new Logdown('foobar') | ||
var barfoo = new Logdown('barfoo') | ||
@@ -140,6 +140,6 @@ Logdown.enable('*') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var quz = new Logdown({prefix: 'quz'}) | ||
var baz = new Logdown({prefix: 'baz'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var quz = new Logdown('quz') | ||
var baz = new Logdown('baz') | ||
@@ -166,6 +166,6 @@ Logdown.enable('*') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var foobar = new Logdown('foobar') | ||
var barfoo = new Logdown('barfoo') | ||
@@ -191,6 +191,6 @@ Logdown.disable('*', '-*foo') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var foobar = new Logdown('foobar') | ||
var barfoo = new Logdown('barfoo') | ||
@@ -232,6 +232,6 @@ Logdown.disable('*', '-foo*') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var quz = new Logdown({prefix: 'quz'}) | ||
var baz = new Logdown({prefix: 'baz'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var quz = new Logdown('quz') | ||
var baz = new Logdown('baz') | ||
@@ -256,6 +256,6 @@ Logdown.disable('*', '-foo') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var foobar = new Logdown('foobar') | ||
var barfoo = new Logdown('barfoo') | ||
@@ -262,0 +262,0 @@ Logdown.enable('*') |
@@ -11,6 +11,6 @@ /* global describe, afterEach, beforeEach, console, it, require, window, Logdown, chai, sinon */ | ||
return [ | ||
new Logdown({prefix: 'foo'}), | ||
new Logdown({prefix: 'bar'}), | ||
new Logdown({prefix: 'quz'}), | ||
new Logdown({prefix: 'baz'}) | ||
new Logdown('foo'), | ||
new Logdown('bar'), | ||
new Logdown('quz'), | ||
new Logdown('baz') | ||
] | ||
@@ -55,6 +55,6 @@ } | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var quz = new Logdown({prefix: 'quz'}) | ||
var baz = new Logdown({prefix: 'baz'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var quz = new Logdown('quz') | ||
var baz = new Logdown('baz') | ||
@@ -85,6 +85,6 @@ Logdown.disable('*') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var foobar = new Logdown('foobar') | ||
var barfoo = new Logdown('barfoo') | ||
@@ -113,6 +113,6 @@ Logdown.disable('*') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var foobar = new Logdown('foobar') | ||
var barfoo = new Logdown('barfoo') | ||
@@ -140,6 +140,6 @@ Logdown.disable('*') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var foobar = new Logdown('foobar') | ||
var barfoo = new Logdown('barfoo') | ||
@@ -164,6 +164,6 @@ Logdown.enable('-*') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var quz = new Logdown({prefix: 'quz'}) | ||
var baz = new Logdown({prefix: 'baz'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var quz = new Logdown('quz') | ||
var baz = new Logdown('baz') | ||
@@ -189,6 +189,6 @@ Logdown.enable('*', '-foo') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var foobar = new Logdown('foobar') | ||
var barfoo = new Logdown('barfoo') | ||
@@ -214,6 +214,6 @@ Logdown.enable('*', '-*foo') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var foobar = new Logdown('foobar') | ||
var barfoo = new Logdown('barfoo') | ||
@@ -238,6 +238,6 @@ Logdown.enable('*', '-foo*') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = new Logdown('foo') | ||
var bar = new Logdown('bar') | ||
var foobar = new Logdown('foobar') | ||
var barfoo = new Logdown('barfoo') | ||
@@ -244,0 +244,0 @@ Logdown.disable('*') |
@@ -28,3 +28,4 @@ /* global describe, afterEach, beforeEach, console, it, require, window, | ||
try { | ||
var foo = new Logdown({markdown: true}) | ||
Logdown._instances = [] | ||
var foo = Logdown({markdown: true}) | ||
@@ -78,3 +79,4 @@ foo[method]('lorem *ipsum*') | ||
try { | ||
var foo = new Logdown({markdown: false}) | ||
Logdown._instances = [] | ||
var foo = Logdown({markdown: false}) | ||
@@ -111,3 +113,3 @@ foo[method]('lorem *ipsum*') | ||
it('should print prefix if present', function () { | ||
// var foo = new Logdown({prefix: 'foo'}) | ||
// var foo = Logdown({prefix: 'foo'}) | ||
@@ -132,26 +134,26 @@ // foo[method]('lorem ipsum') | ||
try { | ||
var abc = new Logdown({prefix: 'abc'}) | ||
var text = new Logdown({prefix: 'text', alignOutput: 'yes'}) | ||
var demo = new Logdown({prefix: 'demo', alignOutput: true}) | ||
var longDemo = new Logdown({prefix: 'longDemo', alignOutput: true}) | ||
var demoFalse = new Logdown({prefix: 'demoFalse', alignOutput: false}) | ||
var longerDemo = new Logdown({prefix: 'longerDemo', alignOutput: true}) | ||
var abc = Logdown('abc') | ||
var text = Logdown('text', {alignOutput: 'yes'}) | ||
var demo = Logdown('demo', {alignOutput: true}) | ||
var longDemo = Logdown('longDemo', {alignOutput: true}) | ||
var demoFalse = Logdown('demoFalse', {alignOutput: false}) | ||
var longerDemo = Logdown('longerDemo', {alignOutput: true}) | ||
assert.equal(abc.prefix.length, 3, 'Skipping \'alignOutput\' will not add whitespace characters') | ||
assert.equal(abc.alignOutput, false) | ||
assert.equal(abc.opts.prefix.length, 3, 'Skipping \'alignOutput\' will not add whitespace characters') | ||
assert.equal(abc.opts.alignOutput, false) | ||
assert.equal(text.prefix.length, 10, 'Inputs will be converted into Boolean values') | ||
assert.equal(text.alignOutput, true) | ||
assert.equal(text.opts.prefix.length, 10, 'Inputs will be converted into Boolean values') | ||
assert.equal(text.opts.alignOutput, true) | ||
assert.equal(demo.prefix.length, 10, 'Padding will be added to make short names as long as the longest') | ||
assert.equal(demo.alignOutput, true) | ||
assert.equal(demo.opts.prefix.length, 10, 'Padding will be added to make short names as long as the longest') | ||
assert.equal(demo.opts.alignOutput, true) | ||
assert.equal(longDemo.prefix.length, 10, 'Padding will be added to make long names as long as the longest') | ||
assert.equal(longDemo.alignOutput, true) | ||
assert.equal(longDemo.opts.prefix.length, 10, 'Padding will be added to make long names as long as the longest') | ||
assert.equal(longDemo.opts.alignOutput, true) | ||
assert.equal(demoFalse.prefix.length, 9, 'Padding will be skipped if set to \'false\'') | ||
assert.equal(demoFalse.alignOutput, false) | ||
assert.equal(demoFalse.opts.prefix.length, 9, 'Padding will be skipped if set to \'false\'') | ||
assert.equal(demoFalse.opts.alignOutput, false) | ||
assert.equal(longerDemo.prefix.length, 10, 'The longest name will set the width for every other logger name') | ||
assert.equal(longerDemo.alignOutput, true) | ||
assert.equal(longerDemo.opts.prefix.length, 10, 'The longest name will set the width for every other logger name') | ||
assert.equal(longerDemo.opts.alignOutput, true) | ||
} catch (error) { | ||
@@ -167,3 +169,3 @@ sandbox.restore() | ||
try { | ||
var foo = new Logdown() | ||
var foo = Logdown() | ||
var obj = {foo: 1, bar: 2} | ||
@@ -185,3 +187,3 @@ foo[method](obj) | ||
// var bar = new Logdown() | ||
// var bar = Logdown() | ||
// bar[method]('lorem *ipsum* dolor sit _amet_') | ||
@@ -193,3 +195,3 @@ // assert.calledWith( | ||
// var foo = new Logdown({prefix: 'foo'}) | ||
// var foo = Logdown({prefix: 'foo'}) | ||
// foo[method]('lorem *ipsum* dolor sit _amet_ foo bar `var foo = 1`') | ||
@@ -214,3 +216,3 @@ // assert.calledWith( | ||
// var bar = new Logdown() | ||
// var bar = Logdown() | ||
// bar[method]('lorem *ipsum* dolor sit _amet_') | ||
@@ -217,0 +219,0 @@ // assert.calledWith( |
@@ -0,0 +0,0 @@ /* global module */ |
@@ -0,0 +0,0 @@ /* global module */ |
@@ -7,3 +7,3 @@ /* global describe, it */ | ||
var sinon = require('sinon') | ||
var Logdown = require('../../src/logdown') | ||
var logdown = require('../../src/logdown') | ||
@@ -13,27 +13,33 @@ sinon.assert.expose(chai.assert, {prefix: ''}) | ||
describe('new Logdown()', function () { | ||
it('should return an existing instance if the prefix is already in use', | ||
function () { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var foo2 = new Logdown({prefix: 'foo'}) | ||
assert.equal(foo, foo2) | ||
}) | ||
describe('logdown()', function () { | ||
it('should return an existing instance if the prefix is already in use', function () { | ||
var foo = logdown('foo') | ||
var foo2 = logdown('foo') | ||
assert.equal(foo, foo2) | ||
}) | ||
it('should give a new prefix color for each instance', function () { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var quz = new Logdown({prefix: 'quz'}) | ||
var baz = new Logdown({prefix: 'baz'}) | ||
assert.notEqual(foo.prefixColor, bar.prefixColor) | ||
assert.notEqual(foo.prefixColor, quz.prefixColor) | ||
assert.notEqual(foo.prefixColor, baz.prefixColor) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var quz = logdown('quz') | ||
var baz = logdown('baz') | ||
assert.notEqual(foo.opts.prefixColor, bar.opts.prefixColor) | ||
assert.notEqual(foo.opts.prefixColor, quz.opts.prefixColor) | ||
assert.notEqual(foo.opts.prefixColor, baz.opts.prefixColor) | ||
}) | ||
it('should sanitize prefixes name', function () { | ||
var log1 = new Logdown({prefix: '%cfoo%c'}) | ||
assert.equal(log1.prefix, 'foo') | ||
var log1 = logdown('%cfoo%c') | ||
assert.equal(log1.opts.prefix, 'foo') | ||
var log2 = new Logdown({prefix: '%cba%cr'}) | ||
assert.equal(log2.prefix, 'bar') | ||
var log2 = logdown('%cba%cr') | ||
assert.equal(log2.opts.prefix, 'bar') | ||
}) | ||
// For compatibiltiy with debug | ||
it('should set prefix if string is passed as only argument', function () { | ||
var log1 = logdown('foo') | ||
assert.equal(log1.opts.prefix, 'foo') | ||
}) | ||
}) |
@@ -7,3 +7,3 @@ /* global describe, it, beforeEach */ | ||
var sinon = require('sinon') | ||
var Logdown = require('../../src/logdown') | ||
var logdown = require('../../src/logdown') | ||
@@ -15,10 +15,10 @@ sinon.assert.expose(chai.assert, {prefix: ''}) | ||
return [ | ||
new Logdown({prefix: 'foo'}), | ||
new Logdown({prefix: 'bar'}), | ||
new Logdown({prefix: 'quz'}), | ||
new Logdown({prefix: 'baz'}) | ||
logdown('foo'), | ||
logdown('bar'), | ||
logdown('quz'), | ||
logdown('baz') | ||
] | ||
} | ||
describe('Logdown.disable', function () { | ||
describe('logdown.disable', function () { | ||
var sandbox | ||
@@ -30,8 +30,8 @@ | ||
Logdown.enable('*') | ||
logdown.enable('*') | ||
}) | ||
it('`(\'*\')` should disable all instances', function () { | ||
Logdown.enable('*') | ||
Logdown.disable('*') | ||
logdown.enable('*') | ||
logdown.disable('*') | ||
var instances = createInstances() | ||
@@ -50,9 +50,9 @@ instances.forEach(function (instance) { | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var quz = new Logdown({prefix: 'quz'}) | ||
var baz = new Logdown({prefix: 'baz'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var quz = logdown('quz') | ||
var baz = logdown('baz') | ||
Logdown.enable('*') | ||
Logdown.disable('foo') | ||
logdown.enable('*') | ||
logdown.disable('foo') | ||
@@ -76,9 +76,9 @@ foo.log('lorem') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var foobar = logdown('foobar') | ||
var barfoo = logdown('barfoo') | ||
Logdown.enable('*') | ||
Logdown.disable('*foo') | ||
logdown.enable('*') | ||
logdown.disable('*foo') | ||
@@ -102,9 +102,9 @@ foo.log('lorem') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var foobar = logdown('foobar') | ||
var barfoo = logdown('barfoo') | ||
Logdown.enable('*') | ||
Logdown.disable('foo*') | ||
logdown.enable('*') | ||
logdown.disable('foo*') | ||
@@ -127,4 +127,4 @@ foobar.log('lorem') | ||
try { | ||
Logdown.enable('*') | ||
Logdown.disable('*') | ||
logdown.enable('*') | ||
logdown.disable('*') | ||
var instances = createInstances() | ||
@@ -147,9 +147,9 @@ instances.forEach(function (instance) { | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var quz = new Logdown({prefix: 'quz'}) | ||
var baz = new Logdown({prefix: 'baz'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var quz = logdown('quz') | ||
var baz = logdown('baz') | ||
Logdown.enable('*') | ||
Logdown.disable('foo') | ||
logdown.enable('*') | ||
logdown.disable('foo') | ||
@@ -173,8 +173,8 @@ foo.log('lorem') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var foobar = logdown('foobar') | ||
var barfoo = logdown('barfoo') | ||
Logdown.disable('*', '-*foo') | ||
logdown.disable('*', '-*foo') | ||
@@ -198,8 +198,8 @@ bar.log('lorem') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var foobar = logdown('foobar') | ||
var barfoo = logdown('barfoo') | ||
Logdown.disable('*', '-foo*') | ||
logdown.disable('*', '-foo*') | ||
@@ -222,3 +222,3 @@ bar.log('lorem') | ||
try { | ||
Logdown.disable('-*') | ||
logdown.disable('-*') | ||
var instances = createInstances() | ||
@@ -240,8 +240,8 @@ instances.forEach(function (instance) { | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var quz = new Logdown({prefix: 'quz'}) | ||
var baz = new Logdown({prefix: 'baz'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var quz = logdown('quz') | ||
var baz = logdown('baz') | ||
Logdown.disable('*', '-foo') | ||
logdown.disable('*', '-foo') | ||
@@ -264,9 +264,9 @@ bar.log('lorem') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var foobar = logdown('foobar') | ||
var barfoo = logdown('barfoo') | ||
Logdown.enable('*') | ||
Logdown.disable('foo', 'barfoo') | ||
logdown.enable('*') | ||
logdown.disable('foo', 'barfoo') | ||
@@ -273,0 +273,0 @@ foo.log('lorem') |
@@ -7,3 +7,3 @@ /* global describe, it, beforeEach, afterEach */ | ||
var sinon = require('sinon') | ||
var Logdown = require('../../src/logdown') | ||
var logdown = require('../../src/logdown') | ||
@@ -15,10 +15,10 @@ sinon.assert.expose(chai.assert, {prefix: ''}) | ||
return [ | ||
new Logdown({prefix: 'foo'}), | ||
new Logdown({prefix: 'bar'}), | ||
new Logdown({prefix: 'quz'}), | ||
new Logdown({prefix: 'baz'}) | ||
logdown('foo'), | ||
logdown('bar'), | ||
logdown('quz'), | ||
logdown('baz') | ||
] | ||
} | ||
describe('Logdown.enable', function () { | ||
describe('logdown.enable', function () { | ||
var sandbox | ||
@@ -30,3 +30,3 @@ | ||
Logdown.enable('*') | ||
logdown.enable('*') | ||
}) | ||
@@ -40,4 +40,4 @@ | ||
try { | ||
Logdown.disable('*') | ||
Logdown.enable('*') | ||
logdown.disable('*') | ||
logdown.enable('*') | ||
var instances = createInstances() | ||
@@ -61,9 +61,9 @@ instances.forEach(function (instance) { | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var quz = new Logdown({prefix: 'quz'}) | ||
var baz = new Logdown({prefix: 'baz'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var quz = logdown('quz') | ||
var baz = logdown('baz') | ||
Logdown.disable('*') | ||
Logdown.enable('foo') | ||
logdown.disable('*') | ||
logdown.enable('foo') | ||
@@ -91,9 +91,9 @@ bar.log('lorem') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var foobar = logdown('foobar') | ||
var barfoo = logdown('barfoo') | ||
Logdown.disable('*') | ||
Logdown.enable('*foo') | ||
logdown.disable('*') | ||
logdown.enable('*foo') | ||
@@ -119,9 +119,9 @@ bar.log('lorem') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var foobar = logdown('foobar') | ||
var barfoo = logdown('barfoo') | ||
Logdown.disable('*') | ||
Logdown.enable('foo*') | ||
logdown.disable('*') | ||
logdown.enable('foo*') | ||
@@ -146,8 +146,8 @@ bar.log('lorem') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var foobar = logdown('foobar') | ||
var barfoo = logdown('barfoo') | ||
Logdown.enable('-*') | ||
logdown.enable('-*') | ||
@@ -170,8 +170,8 @@ foobar.log('lorem') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var quz = new Logdown({prefix: 'quz'}) | ||
var baz = new Logdown({prefix: 'baz'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var quz = logdown('quz') | ||
var baz = logdown('baz') | ||
Logdown.enable('*', '-foo') | ||
logdown.enable('*', '-foo') | ||
@@ -195,8 +195,8 @@ foo.log('lorem') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var foobar = logdown('foobar') | ||
var barfoo = logdown('barfoo') | ||
Logdown.enable('*', '-*foo') | ||
logdown.enable('*', '-*foo') | ||
@@ -220,8 +220,8 @@ foo.log('lorem') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var foobar = logdown('foobar') | ||
var barfoo = logdown('barfoo') | ||
Logdown.enable('*', '-foo*') | ||
logdown.enable('*', '-foo*') | ||
@@ -244,9 +244,9 @@ foobar.log('lorem') | ||
try { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var bar = new Logdown({prefix: 'bar'}) | ||
var foobar = new Logdown({prefix: 'foobar'}) | ||
var barfoo = new Logdown({prefix: 'barfoo'}) | ||
var foo = logdown('foo') | ||
var bar = logdown('bar') | ||
var foobar = logdown('foobar') | ||
var barfoo = logdown('barfoo') | ||
Logdown.disable('*') | ||
Logdown.enable('foo', 'barfoo') | ||
logdown.disable('*') | ||
logdown.enable('foo', 'barfoo') | ||
@@ -253,0 +253,0 @@ bar.log('lorem') |
@@ -7,3 +7,3 @@ /* global describe, it, beforeEach, afterEach, xit */ | ||
var sinon = require('sinon') | ||
var Logdown = require('../../src/logdown') | ||
var logdown = require('../../src/logdown') | ||
@@ -49,3 +49,3 @@ sinon.assert.expose(chai.assert, {prefix: ''}) | ||
methods.forEach(function (method) { | ||
describe('Logdown::' + method, function () { | ||
describe('logdown::' + method, function () { | ||
var sandbox | ||
@@ -81,3 +81,3 @@ var symbol = '' | ||
Logdown.enable('*') | ||
logdown.enable('*') | ||
process.env.NODE_DEBUG = '' | ||
@@ -92,3 +92,3 @@ }) | ||
try { | ||
var foo = new Logdown({markdown: true}) | ||
var foo = logdown({markdown: true}) | ||
@@ -130,3 +130,3 @@ foo[method]('one', 'two', 'three') | ||
try { | ||
var foo = new Logdown({markdown: true}) | ||
var foo = logdown({markdown: true}) | ||
@@ -166,3 +166,4 @@ var args = [ | ||
try { | ||
const foo = new Logdown({markdown: true}) | ||
logdown._instances = [] | ||
const foo = logdown({ markdown: true }) | ||
@@ -249,3 +250,4 @@ const args1 = [ | ||
try { | ||
const foo = new Logdown({markdown: false}) | ||
logdown._instances = [] | ||
const foo = logdown({ markdown: false }) | ||
@@ -306,3 +308,3 @@ const args1 = [ | ||
xit('should print prefix if present', function () { | ||
var foo = new Logdown({prefix: 'foo'}) | ||
var foo = logdown('foo') | ||
@@ -331,26 +333,26 @@ foo[method]('lorem ipsum') | ||
try { | ||
var abc = new Logdown({prefix: 'abc'}) | ||
var text = new Logdown({prefix: 'text', alignOutput: 'yes'}) | ||
var demo = new Logdown({prefix: 'demo', alignOutput: true}) | ||
var longDemo = new Logdown({prefix: 'longDemo', alignOutput: true}) | ||
var demoFalse = new Logdown({prefix: 'demoFalse', alignOutput: false}) | ||
var longerDemo = new Logdown({prefix: 'longerDemo', alignOutput: true}) | ||
var abc = logdown('abc') | ||
var text = logdown('text', { alignOutput: 'yes' }) | ||
var demo = logdown('demo', { alignOutput: true }) | ||
var longDemo = logdown('longDemo', { alignOutput: true }) | ||
var demoFalse = logdown('demoFalse', { alignOutput: false }) | ||
var longerDemo = logdown('longerDemo', { alignOutput: true }) | ||
assert.equal(abc.prefix.length, 3, 'Skipping \'alignOutput\' will not add whitespace characters') | ||
assert.equal(abc.alignOutput, false) | ||
assert.equal(abc.opts.prefix.length, 3, 'Skipping \'alignOutput\' will not add whitespace characters') | ||
assert.equal(abc.opts.alignOutput, false) | ||
assert.equal(text.prefix.length, 10, 'Inputs will be converted into Boolean values') | ||
assert.equal(text.alignOutput, true) | ||
assert.equal(text.opts.prefix.length, 10, 'Inputs will be converted into Boolean values') | ||
assert.equal(text.opts.alignOutput, true) | ||
assert.equal(demo.prefix.length, 10, 'Padding will be added to make short names as long as the longest') | ||
assert.equal(demo.alignOutput, true) | ||
assert.equal(demo.opts.prefix.length, 10, 'Padding will be added to make short names as long as the longest') | ||
assert.equal(demo.opts.alignOutput, true) | ||
assert.equal(longDemo.prefix.length, 10, 'Padding will be added to make long names as long as the longest') | ||
assert.equal(longDemo.alignOutput, true) | ||
assert.equal(longDemo.opts.prefix.length, 10, 'Padding will be added to make long names as long as the longest') | ||
assert.equal(longDemo.opts.alignOutput, true) | ||
assert.equal(demoFalse.prefix.length, 9, 'Padding will be skipped if set to \'false\'') | ||
assert.equal(demoFalse.alignOutput, false) | ||
assert.equal(demoFalse.opts.prefix.length, 9, 'Padding will be skipped if set to \'false\'') | ||
assert.equal(demoFalse.opts.alignOutput, false) | ||
assert.equal(longerDemo.prefix.length, 10, 'The longest name will set the width for every other logger name') | ||
assert.equal(longerDemo.alignOutput, true) | ||
assert.equal(longerDemo.opts.prefix.length, 10, 'The longest name will set the width for every other logger name') | ||
assert.equal(longerDemo.opts.alignOutput, true) | ||
} catch (error) { | ||
@@ -366,3 +368,3 @@ sandbox.restore() | ||
try { | ||
var foo = new Logdown() | ||
var foo = logdown() | ||
var obj = {foo: 1, bar: 2} | ||
@@ -369,0 +371,0 @@ foo[method](obj) |
@@ -0,0 +0,0 @@ /* global describe, it, beforeEach, afterEach, xit */ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
3000
250
143019
30