json-refs
Various utilities for JSON References, and JSON Pointers since JSON
References are part JSON Pointer.
Project Badges
- Build status:

- Dependencies:

- Developer dependencies:

- Downloads:

- License:

- Version:

APIs
All examples below use a variable called jsonRefs. Here is how to create it:
var jsRefs = require('jsonRefs');
findRefs (json)
Arguments
json {object} - The JavaScript object to search for references
Response
An object whose keys are JSON Pointers to where the JSON Reference's $ref node is and the JSON Reference string.
pathFromPointer (ptr)
Arguments
ptr {string} - A JSON Pointer string
Response
A string[] of path segments for the JSON Pointer unless its a remote reference in which case ptr is returned as-is.
Example
console.log(jsonRefs.pathFromPointer('#/owner/login'));
pathToPointer (path)
Arguments
path {string[]} - An array of path segments.
Response
A string representing a JSON Pointer.
Example
console.log(jsonRefs.pathToPointer(['owner', 'login']));
resolveRefs (json, done)
Arguments
json {object}: The JavaScript object containing zero or more JSON References
done {function}: An error-first callback to be called with the fully-resolved object
Response
If there is an Error, the callback is called with the Error in the first argument and undefined in the second
argument. If there is no Error, the first argument is undefined and the second argument is an object whose value
is the fully resolved document.
Example
var json = {
name: 'json-refs',
owner: {
$ref: 'https://api.github.com/repos/whitlockjc/json-refs#/owner'
}
};
jsonRefs.resolveRefs(json, function (err, rJson) {
if (err) throw err;
console.log(JSON.stringify(rJson));
});