gulp-json-editor v2.6.0
gulp-json-editor
gulp-json-editor is a gulp plugin to edit JSON objects.
Usage
var jeditor = require("gulp-json-editor");
/*
edit JSON object by merging with user specific object
*/
gulp.src("./manifest.json")
.pipe(jeditor({
'version': '1.2.3'
}))
.pipe(gulp.dest("./dest"));
/*
edit JSON object by using user specific function
*/
gulp.src("./manifest.json")
.pipe(jeditor(function(json) {
json.version = "1.2.3";
return json; // must return JSON object.
}))
.pipe(gulp.dest("./dest"));
/*
specify [js-beautify](https://github.com/beautify-web/js-beautify) option
*/
gulp.src("./manifest.json")
.pipe(jeditor({
'version': '1.2.3'
},
// the second argument is passed to js-beautify as its option
{
'indent_char': '\t',
'indent_size': 1
}))
.pipe(gulp.dest("./dest"));
/*
specify [deepmerge](https://github.com/TehShrike/deepmerge) option
*/
gulp.src("./manifest.json")
.pipe(jeditor({
"authors": ["tomcat"]
},
// the second argument is passed to js-beautify as its option
{},
// the third argument is passed to deepmerge options, eg, arrayMerge options
{
arrayMerge: function (dist,source,options) {return source;}
}))
.pipe(gulp.dest("./dest"));
Note
In case of such above situation, all of comment and whitespace in source file is NOT kept in destination file.
Disable beautification
gulp.src("./manifest.json")
.pipe(jeditor({
'version': '1.2.3'
},
{
beautify: false
}))
.pipe(gulp.dest("./dest"));
API
jeditor(editorObject, jsBeautifyOptions, deepmergeOptions)
editorObject
Type: JSON object
JSON object to merge with.
jsBeautifyOptions
Type: object
This object is passed to js-beautify as its option.
deepmergeOptions
Type: object
This object is passed to deepmerge as its option.
jeditor(editorFunction, jsBeautifyOptions, deepmergeOptions)
editorFunction
Type: function
The editorFunction
must have the following signature: function (json) {}
, and must return JSON object or PromiseLike object with JSON object as value.
jsBeautifyOptions
Type: object
This object is passed to js-beautify as its option.
deepmergeOptions
Type: object
This object is passed to deepmerge as its option.
License
Copyright (c) 2023 gulp-community
Licensed under the MIT license.
1 year ago
2 years ago
4 years ago
4 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago