Package Exports
- edit-package-json
Readme
edit-package-json
Edit package.json without parsing, as string, to keep the formatting intact
Install
This package is ESM only: Node 12+ is needed to use it and it must be imported instead of required:
npm i edit-package-jsonIf you need a legacy version which works with require, use version 0.4.0
Quick Take
import { strict as assert } from "assert";
import { set, del } from "edit-package-json";
// edit JSON as string
assert.equal(
set(
`{
"name": "test",
"dependencies": {
"ranges-apply": "^2.0.0",
"string-left-right": "^2.3.30"
},
"devDependencies": {}
}`,
"dependencies.ranges-apply", // path to amend
"^3.2.2" // new value
),
`{
"name": "test",
"dependencies": {
"ranges-apply": "^3.2.2",
"string-left-right": "^2.3.30"
},
"devDependencies": {}
}`
);
// edit from JSON string
assert.equal(
del(
`{
"name": "test",
"dependencies": {
"ranges-apply": "^2.0.0",
"string-left-right": "^2.3.30"
},
"devDependencies": {}
}`,
"devDependencies" // path to delete
),
`{
"name": "test",
"dependencies": {
"ranges-apply": "^2.0.0",
"string-left-right": "^2.3.30"
}
}`
);Documentation
Please visit codsen.com for a full description of the API and examples.
Contributing
To report bugs or request features or assistance, raise an issue on GitHub.
Licence
MIT License
Copyright (c) 2010-2021 Roy Revelt and other contributors
Passes adapted .set() unit tests from https://github.com/mariocasciaro/object-path/blob/master/test.js, MIT Licence Copyright (c) 2015 Mario Casciaro
![]()