Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

json-patch-ot-agent

Package Overview
Dependencies
Maintainers
3
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

json-patch-ot-agent

OT Agent/Queue for JSON-Patch OT - makes sure that your JSON Patches (RFC6902) gets transformed and applied in correct order

  • 2.0.0-rc.1
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
3
Created
Source

JSON-Patch-OT-Agent

Makes your JSON Patch application sequential

Build Status

Implements a queue of JSON Patches, based on Versioned JSON Patch convention, that will resolve a problem of sequential application of JSON Patches.

Demo

Full Versioned JSON Patch + OT visualization

Specific visualization will come soon.

Install

Install the component using NPM

$ npm install json-patch-ot-agent --save

Or

Install the component using Bower:

$ bower install json-patch-ot-agent --save

Or download as ZIP.

Usage

var targetObject = {};
// create queue
var myQueue = new new JSONPatchOTAgent(targetObject,
                jsonpatchTransform,
                ['/localVersion', '/remoteVersion'],
                jsonpatch
             );
// to compose versioned JSON Patch, to be send somewhere?
var versionedPatchToBeSent = myQueue.send(regularPatch);
// to apply/queue/transform received versioned JSON Patch
myQueue.receive(receivedVersionedPatch);

Requirements

Agent requires a specific transform function (as a first argument), if you do not have your own, we advise you JSON-Patch-OT (bower install json-patch-ot). You will also need function to apply JSON Patch, we suggest fast JSON Patch (bower install fast-json-patch).

Methods

NameArgumentsDefaultDescription
sendJSONPatch sequenceChanges given JSON Patch to Versioned JSON Patch
receiveVersionedJSONPatch sequenceVersioned JSON Patch to be queued and applied
JSONPatchQueueObject objTarget object where patches are applied
__Function transformfunction(patch, againstPatch_es) function to transform given JSON Patch against others
__Array JSONPointer [localVersionPath, remoteVersionPath]Paths where to store the versions
__Function applyfunction(object, patch) function to apply JSON Patch, must return the final state of the object
__Boolean puristfalseset to true to enable pure/unoptimized Versioned JSON Patch convention

Properties

NameTypeDescription
objObject objTarget object where patches are applied
waitingArray JSONPatchArray of JSON Patches waiting in queue
localVersionNumberlocal version
remoteVersionNumberacknowledged remote version
ackLocalVersionNumberlocal version that is for sure acknowledged by remote

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -m 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

History

For detailed changelog, check Releases.

License

MIT

See also

Keywords

FAQs

Package last updated on 15 Aug 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc