Returns a function that wraps input values such that [0 <= x < size].
Useful for carousels etc, where one should be able to click right and end up in the beginning. Uses the correct modulo operation, not the javascript style.
npm install wrap.js
npm test
import wrap from 'wrap.js';
[1,2,3,4,5].map(wrap(4)); // [1,2,3,0,1]
Can be used with frp libraries (e.g. Bacon.js, RxJS, Kefir.js). Examples are written with Bacon.js
import wrap from 'wrap.js';
import Bacon from 'baconjs';
let stream = Bacon.sequentially(1000, [1, 2, 3, 4, 5])
.map(wrap(4));
// every 1000ms stream emits a value which is mapped on .wrap()
stream.log();
// result -> sequence of values over time: 1,2,3,0,1
Copyright © 2015 Maximilian Heinz, contributors. Released under the MIT License