JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 28392
  • Score
    100M100P100Q156278F
  • License MIT

Package Exports

  • @n1ru4l/json-patch-plus
  • @n1ru4l/json-patch-plus/package.json

Readme

@n1ru4l/json-patch-plus

This is a slimmed version of jsondiffpatch. All the code is taken from the jsondiffpatch repository, slimmed down, slightly altered and converted to TypeScript.

Huge thanks to @benjamine, who did all the heavy work!

jsondiffpatch is a replacement for json-patch that produces more efficient patches!

@n1ru4l/json-patch-plus has the following changes:

  • Full ESM support
  • Remove Node.js runtime dependencies introduced through loggers
  • Remove class wrapper structures (make code less abstract and smaller)
  • Remove text diffing
  • Only generate and apply patch deltas (no reversing and visualization)
  • Exclude unnecessary data from patch deltas (previous value is replaced with null)

For a full description of the delta format please refer to the jsondiffpatch docs

Install Instructions

yarn install -E @n1ru4l/json-patch-plus

Usage

import { diff, patch } from "@n1ru4l/json-patch-plus";

const delta = diff({
  left: {},
  right: { a: { b: 1 } },
});

const result = patch({
  left: {},
  delta,
});

console.log(result);
// logs '{ a: { b: 1 } }'