0.2.0 • Published 10 years ago

immpatch v0.2.0

Weekly downloads
117
License
MIT
Repository
github
Last release
10 years ago

immpatch

Build Status coverage dependencies

Update immutable.js objects using JSON Patch operations

Install

$ npm install --save immpatch

Usage

var expect = require('expect.js');
var Immutable = require('immutable');
var patch = require('immpatch');

var object = Immutable.fromJS({ baz: 'qux', foo: 'bar' });

var patched = patch(object, [
  { op: 'replace', path: '/baz', value: 'boo' },
  { op: 'add', path: '/hello', value: ['world'] },
  { op: 'remove', path: '/foo'}
]);

expect(patched.toJS()).to.eql({
  baz: 'boo',
  hello: ['world']
});

For more information about JSON Patch, see:

For a diff / patch generator see immutablediff.

Another similar module is immutablepatch, immpatch is a simpler implementation that uses plain JS objects as patch operations, and has more complete tests with 100% code coverage.

Testing

$ git clone git://github.com/zaim/immpatch
$ npm install
$ npm run test

Test coverage:

$ npm run testcov

Contributing

Use Github issues for bug reports and requests.

Pull requests are actively welcomed.

License

immpatch is MIT licensed.