2.6.0 • Published 3 months ago

gulp-json-editor v2.6.0

Weekly downloads
39,332
License
MIT
Repository
github
Last release
3 months ago

gulp-json-editor

npm version Automated tests

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.

ldu-gulpfunctions@phparkle/semantic-ui@mygooder/semanticslush-ui5fomantic-ui-semeia@infinitebrahmanuniverse/nolb-gulp-jfomantic-ui@everything-registry/sub-chunk-1808node-multimy-test-one@yuyi919/cliapikana@cobalt-engine/slush-cobalt@cobalt-engine/updatercolor-beecomponents-builderbrickyard-clibusylibnode-proxy-cliohu-scriptspomypresskite-semanticpm-extension-clipinion-pipelinesemantic-ui-xyzsemantic-ui-happyserval-backbonesemantic-uisemui-onyxvanilla-semantic-uivirteom.public.common-gulp-taskstm-themewebseedwix-lucy-cliyworkofflineutils-scriptsvaadin-core-elementswulv-utils-clislush-react-expressslush-react-makeoverslush-regeneratorslush-stencilslush-sitecore-helixslush-velvetslush-webhookslush-fullstack-frameworkslush-gh-pagesslush-metaslush-nslush-node-esnextslush-angular-webpack-es6snaphy-web-themesn-semantic-uispk-workflowtest-repo@ianbytchek/guildcss-testingcss-gridishbackandbackand-hosting-s3@aiou/marioarglebargle@init-rn-app/cli@init-rn-app/gulp-promisify@init-rn-app/plugin-android-multidex-enable@init-rn-app/plugin-android-permissions@init-rn-app/plugin-android-version-code-from-properties@init-rn-app/plugin-android-window-soft-input-mode@init-rn-app/plugin-copy-files@init-rn-app/plugin-custom-pods@init-rn-app/plugin-fastlane-appcenter-gitlab-ci@init-rn-app/plugin-ios-permissions@init-rn-app/plugin-ios-property-list@init-rn-app/plugin-notifications-init@init-rn-app/plugin-set-app-icon@init-rn-app/plugin-set-app-name@init-rn-app/plugin-set-app-version@init-rn-app/plugin-set-bundle-iddivine-mathchronimifinance-document-ls@mini_program/cli@mindhive/deployfoo-schematicfw-backstopjs@michaloleniacz/vscode-web@mycolorway/vest-cligenerator-hfe-utilsgladius-forge@init-rn-app/plugin-set-google-maps-key@init-rn-app/plugin-splash-screen-init@init-rn-app/plugin-yarn-workspaces@init-rn-app/plugin-set-cursor-tint-colorgulp-increment-versiongulp-tsconfiggulp-babel-tasksgulp-babelatorgulp-tasks-azure-publish@otixo/semantic-ui@pipflow/core
2.6.0

3 months ago

2.5.7

9 months ago

2.5.6

3 years ago

2.5.5

3 years ago

2.5.4

4 years ago

2.5.3

5 years ago

2.5.2

5 years ago

2.5.1

5 years ago

2.5.0

5 years ago

2.4.4

5 years ago

2.4.3

5 years ago

2.4.2

6 years ago

2.4.1

6 years ago

2.4.0

6 years ago

2.3.0

6 years ago

2.2.2

6 years ago

2.2.1

9 years ago

2.2.0

9 years ago

2.1.1

9 years ago

2.1.0

9 years ago

2.0.3

9 years ago

2.0.2

10 years ago

2.0.1

10 years ago

2.0.0

10 years ago

1.2.0

10 years ago

1.1.0

10 years ago

1.0.2

10 years ago

1.0.1

10 years ago

1.0.0

10 years ago