Package Exports
- json-p3
- json-p3/dist/json-p3.cjs.js
- json-p3/dist/json-p3.esm.js
- json-p3/dist/json-p3.iife.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (json-p3) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
JSON P3
JSONPath, JSON Patch and JSON Pointer for JavaScript.
We follow RFC 9535 and test against the JSONPath Compliance Test Suite.
import { jsonpath } from "json-p3";
const data = {
users: [
{ name: "Sue", score: 100 },
{ name: "John", score: 86 },
{ name: "Sally", score: 84 },
{ name: "Jane", score: 55 },
],
};
const nodes = jsonpath.query("$.users[?@.score < 100].name", data);
console.log(nodes.values()); // [ 'John', 'Sally', 'Jane' ]Links
- Docs: https://jg-rp.github.io/json-p3/
- Install: https://jg-rp.github.io/json-p3/#install
- JSONPath playground: https://jg-rp.github.io/json-p3/playground
- JSONPath syntax: https://jg-rp.github.io/json-p3/guides/jsonpath-syntax
- API reference: https://jg-rp.github.io/json-p3/api
- Change log: https://github.com/jg-rp/json-p3/blob/main/CHANGELOG.md
- NPM: https://www.npmjs.com/package/json-p3
- Issue tracker: https://github.com/jg-rp/json-p3/issues
Bundles
JSON P3 is written in TypeScript, compiled to JavaScript using Babel, and bundled using Rollup. The following, included bundles target defaults, maintained node version, as defined by Browserslist.
JSON P3 has zero runtime dependencies.
| Bundle | Description |
|---|---|
json-p3.cjs.js |
A CommonJS formatted bundle. |
json-p3.esm.js |
An ECMAScript module formatted bundle. |
json-p3-iife.js |
A bundle formatted as an Immediately Invoked Function Expression. |
json-p3-iife.min.js |
A minified bundle formatted as an Immediately Invoked Function Expression. |
Compliance Environment Variables
These environment variables control the location of the compliance test suite under test and if nondeterministic object iteration is enabled for those tests.
| Environment Variable | Description |
|---|---|
JSONP3_CTS_PATH |
The path to cts.json used by compliance.test.ts. Defaults to tests/path/cts/cts.json. |
JSONP3_CTS_NONDETERMINISTIC |
When set to true, enables nondeterministic iteration of JSON objects for compliance.test.ts. Defaults to false. |
Contributing
Please see Contributing to JSON P3
License
json-p3 is distributed under the terms of the MIT license.