Web Client
Introduction
The DeltaJSON Web Client lets you experiment with and visualise the outputs of the DeltaJSON API:
Compare - Comparison of two JSON inputs, viewing JSON delta output and difference views
Graft - Grafting a JSON Delta changeset onto a target, and viewing the output
Two-Way Merge - Merging of two JSON data sets, and viewing the output
Patch - Creation of a JSON Patch (RFC 6902) from two JSON data sets
Accessing the Application
In order to access the web client's features you will first need to login or create an account (and verify your email if requested). Note: you may be signed-in to the main DeltaXML.com website (e.g. to use our Support Forums), but you will need to re-login to use this web client. This is due to this application being a client-side JavaScript application, and our website authentication being managed server-side.
After logging on, the operations, Usage, and Downloading ID Token features will become available from the main application menu.
Standard Data Entry Features and Behaviours
Each feature has a separate page view with Data Entry and Results Display sections.
The Data Entry sections of each page have some standard features and behaviour, including:
Access to a selection of predefined JSON A and B data sets.
Manual entry of your own JSON A and B with real-time JSON validation
Swapping of JSON A with B
Compaction and Prettification of JSON A or B
A feature-specific set of options and a Submit Button
Option to Hide/Show the Data Entry Section when the results are Displayed
The character lengths of the JSON A and B inputs are limited to a max length (currently 5,000,000 characters for each source). Note: this is the same limit that also applies to the DeltaJSON Free API.
Entry of values to be ignored by key.
Comparison Types
Compare
The Compare feature generates a JSON delta and displays the operation results in four side-by-side views that include the A & B sources, the JSON delta and a folded difference view based on the JSON delta.
NOTE: when using Orderless the result view is disabled due to current technical limitations. You can copy or download the result.
The Compare results section displays the following four side-by-side views:
Input JSON A
Input JSON B
Result JSON delta
A folded difference view of the JSON delta
The side-by-side views include some useful capabilities and behaviours including:
Each displayed view can be independently scrolled
Clicking on a leaf element in any of the displayed views will:
Display a JSON Pointer (rfc 6901) tooltip for that element in its respective JSON tree
Automatically highlight the selected leaf element then auto-scroll to, and highlight the equivalent element in each of the other three views if the associated element exists in that view.
![Example of delta views](../../__attachments/3620012219/node-syncing.png?inst-v=7c2fb52b-f8d9-4d4a-8205-858e865d1efd)
The Input and Result JSON Delta views include a button to copy the data.
Graft
The Graft feature generates a Merged JSON result format based on the following inputs and options.
The result view displays the merged result, and has a button to copy the merged result.
![Example of merge result display](../../__attachments/3620012219/graft-result-view.png?inst-v=7c2fb52b-f8d9-4d4a-8205-858e865d1efd)
Two-Way Merge
The Two-Way Merge feature generates a Merged JSON result format based on the following inputs and options.
The result view displays the merged result, and has a button to copy the merged result.
![Example of two way merge result](../../__attachments/3620012219/merge-result-view.png?inst-v=7c2fb52b-f8d9-4d4a-8205-858e865d1efd)
Patch
The Patch feature generates a JSON Patch result in RFC6902 JSON Patch format based on the following inputs and options.
The result view has a folding tree view, and a button to copy the Patch data.
![Example of result view folding tree](../../__attachments/3620012219/patch-result-view.png?inst-v=7c2fb52b-f8d9-4d4a-8205-858e865d1efd)
Free Usage Tier
The DeltaJSON Free API has a usage limit of 1000 Uses per 30 days. Your usage can be monitored from this web client by signing-in and clicking "Your Usage" in the navbar at the top.
If you reach your usage limit you will receive this error:
![Usage limit output example](../../__attachments/3620012219/UsageLimit.png?inst-v=7c2fb52b-f8d9-4d4a-8205-858e865d1efd)
Downloading ID Token
The DeltaJSON Web Client has a feature for downloading the authentication file used by clients.
To use this, when signed-in simply click "Download ID Token" in the navbar at the top. The file will download with the filename "JSON_Compare_Auth.json".
Note: the download implementation is not compatible with versions of Safari below 10.1, and Internet Explorer. On these browsers you will have to copy the ID Token and save it yourself manually.
![Copy token mechansim](../../__attachments/3620012219/browser-incompatible-download.png?inst-v=7c2fb52b-f8d9-4d4a-8205-858e865d1efd)
Large Results
This web client has a limit for large Compare and Patch results that will cause a bad user experience if displayed. In that case, a message will display with options to copy or download the result.
![Large result warning](../../__attachments/3620012219/large-json-output.png?inst-v=7c2fb52b-f8d9-4d4a-8205-858e865d1efd)