Comparing version 1.0.2 to 2.0.0
71
index.js
"use strict"; | ||
var terminal = require( 'terminal-kit' ).terminal; | ||
var cursor = require('ansi')(process.stdout); | ||
var reader = require('line-by-line'); | ||
const terminal = require( 'terminal-kit' ).terminal; | ||
const cursor = require('ansi')(process.stdout); | ||
const reader = require('line-by-line'); | ||
let sleep = null; | ||
// Because sleep is a native module, depending on the | ||
@@ -11,8 +12,8 @@ // platform of the user, the compilation might fail, | ||
try { | ||
var sleep = require('sleep'); | ||
sleep = require('sleep'); | ||
} catch (error) { | ||
sleep = null; | ||
console.error('Unable to load the sleep module (no animations available)'); | ||
} | ||
var options = { | ||
let options = { | ||
// To animate or not (only works if the sleep module is available) | ||
@@ -32,10 +33,10 @@ animate: false, | ||
colors: false | ||
} | ||
}; | ||
var rainbow = function(freq, i) { | ||
let rainbow = function(freq, i) { | ||
var red = Math.round(Math.sin(freq * i + 0) * 127 + 128); | ||
var green = Math.round(Math.sin(freq * i + 2 * Math.PI / 3) * 127 + 128); | ||
var blue = Math.round(Math.sin(freq * i + 4 * Math.PI / 3) * 127 + 128); | ||
let red = Math.round(Math.sin(freq * i + 0) * 127 + 128); | ||
let green = Math.round(Math.sin(freq * i + 2 * Math.PI / 3) * 127 + 128); | ||
let blue = Math.round(Math.sin(freq * i + 4 * Math.PI / 3) * 127 + 128); | ||
@@ -47,10 +48,10 @@ return { | ||
} | ||
} | ||
}; | ||
var trueColor = function (char, colors) { | ||
let trueColor = function (char, colors) { | ||
process.stdout.write('\x1b[38;2;' + colors.red + ';' + colors.green + ';' + colors.blue + 'm' + char + '\x1b[0m'); | ||
} | ||
}; | ||
var fallbackColor = function (char, colors) { | ||
let fallbackColor = function (char, colors) { | ||
@@ -63,16 +64,16 @@ terminal.colorRgb( | ||
); | ||
} | ||
}; | ||
var noColor = function(char, colors) { | ||
let noColor = function(char, colors) { | ||
process.stdout.write(char); | ||
} | ||
}; | ||
var printlnPlain = function(colorizer, line) { | ||
let printlnPlain = function(colorizer, line) { | ||
for (var i = 0; i < line.length; i++) { | ||
for (let i = 0; i < line.length; i++) { | ||
colorizer(line[i], rainbow(options.freq, options.seed + i / options.spread)); | ||
} | ||
} | ||
}; | ||
var printlnAnimated = function(colorizer, line) { | ||
let printlnAnimated = function(colorizer, line) { | ||
@@ -82,5 +83,5 @@ if (sleep) { | ||
// Backup the seed | ||
var seed = options.seed; | ||
let seed = options.seed; | ||
for (var j = 1; j < options.duration; j++) { | ||
for (let j = 1; j < options.duration; j++) { | ||
process.stdout.cursorTo(0); | ||
@@ -103,7 +104,7 @@ | ||
printlnPlain(colorizer, line); | ||
} | ||
}; | ||
var println = function(line) { | ||
let println = function(line) { | ||
var colorizer = trueColor; | ||
let colorizer = trueColor; | ||
@@ -128,5 +129,5 @@ if (process.platform === 'win32') { | ||
process.stdout.write('\n'); | ||
} | ||
}; | ||
var fromPipe = function() { | ||
let fromPipe = function() { | ||
@@ -137,5 +138,5 @@ process.stdin.resume(); | ||
var lines = data.split('\n'); | ||
let lines = data.split('\n'); | ||
for (var line in lines) { | ||
for (let line in lines) { | ||
options.seed += 1; | ||
@@ -145,7 +146,7 @@ println(lines[line]); | ||
}); | ||
} | ||
}; | ||
var fromFile = function(file) { | ||
let fromFile = function(file) { | ||
var fileReader = new reader(file) | ||
let fileReader = new reader(file) | ||
fileReader.on('line', function (line) { | ||
@@ -155,3 +156,3 @@ options.seed += 1; | ||
}); | ||
} | ||
}; | ||
@@ -158,0 +159,0 @@ exports.options = options; |
{ | ||
"name": "lolcatjs", | ||
"version": "1.0.2", | ||
"version": "2.0.0", | ||
"description": "The rainbow I tastes it", | ||
@@ -33,7 +33,10 @@ "main": "index.js", | ||
"multiline": "^1.0.2", | ||
"terminal-kit": "^0.10.2" | ||
"terminal-kit": "^0.26.0" | ||
}, | ||
"optionalDependencies": { | ||
"sleep": "^2.0.0" | ||
"sleep": "^5.0.0" | ||
}, | ||
"engines": { | ||
"node": "^6.9" | ||
} | ||
} |
222724
224
+ Addedasync-kit@2.2.4(transitive)
+ Addednextgen-events@0.14.60.9.9(transitive)
+ Addedsleep@5.2.4(transitive)
+ Addedstring-kit@0.5.27(transitive)
+ Addedterminal-kit@0.26.2(transitive)
+ Addedxregexp@3.2.0(transitive)
- Removedasync-kit@0.5.10(transitive)
- Removedsleep@2.0.0(transitive)
- Removedstring-kit@0.1.21(transitive)
- Removedterminal-kit@0.10.9(transitive)
Updatedterminal-kit@^0.26.0