@zcorky/deep-diff-patch
v0.0.4
Published
common deep diff & patch algorithm, depended by data diff, virtual-dom
Downloads
9
Readme
deep-diff-patch
Deep Diff & Patch in js, maybe data visition timeline json data is common for use. Diff => CREATE / UPDATE / DELETE / UNCHANGE Data. Patch => Immutable Philosophy Data.
Install
$ npm install @zcorky/deep-diff-patch
Usage
// See more in test
import { diff, patch, Type } from '@zcorky/deep-diff-patch';
const prev = [
{
id: 76,
name: 'Jay',
createdAt: '...',
updatedAt: '...',
},
{
id: 77,
name: 'Zero',
createdAt: '...',
updatedAt: '...',
},
];
const next = [
{
id: 76,
name: 'Jay',
createdAt: '...',
updatedAt: '...',
},
{
id: 77,
name: 'Zero Win',
createdAt: '...',
updatedAt: '...',
},
];
diff(prev, next);
// =>
[
{
id: {
type: Type.UNCHANGE,
prev: 76,
next: 76,
},
name: {
type: Type.UNCHANGE,
prev: 'Jay',
next: 'Jay',
},
createdAt: {
type: Type.UNCHANGE,
prev: '...',
next: '...',
},
updatedAt: {
type: Type.UNCHANGE,
prev: '...',
next: '...',
},
},
{
id: {
type: Type.UNCHANGE,
prev: 77,
next: 77,
},
name: {
type: Type.UPDATE,
prev: 'Zero',
next: 'Zero Win',
},
createdAt: {
type: Type.UNCHANGE,
prev: '...',
next: '...',
},
updatedAt: {
type: Type.UNCHANGE,
prev: '...',
next: '...',
},
},
]