wrap.js

0.1.1 • Public • Published

wrap.js (written in ES6)

license npm build code climate devDependencies

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.

Install:

npm install wrap.js

Run tests

npm test

with simple arrays:

    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

in frp:

    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

Further reading on functional reactive programming:

Copyright

Copyright © 2015 Maximilian Heinz, contributors. Released under the MIT License

Package Sidebar

Install

npm i wrap.js

Weekly Downloads

0

Version

0.1.1

License

MIT

Last publish

Collaborators

  • meandmax