gulp-props2json v2.0.0
#gulp-props2json
A Gulp plugin to convert Java .properties to JSON
Install
npm install --save-dev gulp-props2jsonUsage
Add this to your gulpfile.js:
var props2json = require('gulp-props2json');
// Generate a .json file
gulp.src('./src/*.properties')
.pipe(props2json())
.pipe(gulp.dest('./dist/'))
// Generate a .js file
gulp.src('./src/*.properties')
.pipe(props({ outputType: 'js' }))
.pipe(gulp.dest('./dist/'))API
props2json(options)
options.outputType
Type: String
Default: json
Convert properties to .js or .json format.
Note: To force a .js output set this option js (without dot).
options.namespace
Type: String
Default: null for .json output and props for .js output
The namespace to use when defining properties. Javascript reserved words cannot be used here. Invalid identifiers will be adjusted to be valid, and a warning will be printed in the console.
options.minify
Type: Boolean
Default: true
By default content .js and .json content is minified.
If .json output is generated and minification is turned off and no space is defined, then indentation with 2 spaces is used.
This can be overridden with space option.
JSON.stringify
options.complexTypes
Type: Boolean
Default: false
By default every property value is treated as String. This option will try to convert every value to JSON.
For example (String) "true" value will be (Boolean) true.
JSON.parse
options.nestedProps
Type: Boolean
Default: false
By default every property key will be treated as it is. But nesting is possible to create complex object.
If this option is turned on, then dot will be used as nesting delimiter. Nesting delimiter can be overridden with nestingDelimiter option.
options.nestingDelimiter
Type: String
Default: .
Nesting delimiter to be used with nestedProps option.
options.appendExt
Type: Boolean
Default: false
Append the extension (.js or .json) instead of replacing it.
Useful if the property files does not have an extension.
options.space
Type: Number or String
Default: null
Control spacing in the resulting output. It has the same usage as for JSON.stringify
The option is used only when .json output is generated.
options.replacer
Type: Function or Array
Default: null
Further transform the resulting output. It has the same usage as for JSON.stringify
The option is used only when .json output is generated.
Errors
gulp-props2json emits an 'error' event if something goes wrong.
To handle errors across your entire pipeline, see the gulp documentation.
License
MIT © Valery Ivanov