immpatch

0.2.0 • Public • Published

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.

Package Sidebar

Install

npm i immpatch

Weekly Downloads

246

Version

0.2.0

License

MIT

Last publish

Collaborators

  • zaim