gulp-props2json
v2.0.0
Published
A Gulp plugin to convert Java .properties to JSON
Downloads
879
Maintainers
Readme
#gulp-props2json
A Gulp plugin to convert Java .properties to JSON
Install
npm install --save-dev gulp-props2json
Usage
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