def
func:diff
diff(orig, changes, flags: null)
Construct a modification "diff" used by commit(). The orig should be the instance which was read from the database, or it may be null only if the add flag is passed. Any tags to add/set/remove should be included in the changes dict.
The following flags are supported:
add: indicates diff is adding new recordremove: indicates diff is removing record (in general you should addtrashtag instead of removing)transient: indicate that this diff should not be flushed to persistent storage (it may or may not be persisted).force: indicating that changes should be applied regardless of other concurrent changes which may be been applied after the orig version was read (use with caution!)
Examples:
// create new record
diff(null, {dis:"New Rec", someMarker}, {add})
// create new record with explicit id like Diff.makeAdd
diff(null, {id:151bd3c5-6ce3cb21, dis:"New Rec"}, {add})
// set/add dis tag and remove oldTag
diff(orig, {dis:"New Dis", -oldTag})
// set/add val tag transiently
diff(orig, {val:123}, {transient})