|
1 "use strict"; |
|
2 |
|
3 var method = require("../method/core") |
|
4 var rebase = require("./rebase") |
|
5 |
|
6 // Method is designed to work with data structures representing application |
|
7 // state. Calling it with a state and delta should return object representing |
|
8 // new state, with changes in `delta` being applied to previous. |
|
9 // |
|
10 // ## Example |
|
11 // |
|
12 // patch(state, { |
|
13 // "item-id-1": { completed: false }, // update |
|
14 // "item-id-2": null // delete |
|
15 // }) |
|
16 var patch = method("patch@diffpatcher") |
|
17 patch.define(Object, function patch(hash, delta) { |
|
18 return rebase({}, hash, delta) |
|
19 }) |
|
20 |
|
21 module.exports = patch |