Prepare function, which gives back spcified frames, considering frame duration.
const counters = cine(['1', '2', '3', '4'], 250)
setInterval(() => console.log(counters()), 250);
It doesn't perform any output or events, but just gives a frame on request. Probably you should use something like setInterval to create animation.
Keep delay empty to disable internally timer.
Usefull with cli-update and cli-spinners for creating animated text in terminal output.
const update = require('log-update');
const spinners = require('cli-spinners')
const cine = require('cine')
const animation = cine(
spinners.dots.frames,
spinners.dots.interval
)
setInterval(() => update(`Loading ${animation()}`))
cine(frames : array<any | function>, interval: number, onFinish : function)
-
frames
Array of any values, but if frame is a function, it will be called, so you can pass another animation as one frame. -
interval
Ms between frames. If you do not specify value, then frame will change only on request. -
onFinish
End handler. Will be invoked at last frame.
MIT, 2018, Vladimir Morulus vladimirmorulus@gmail.com