A Broccoli plugin for rolling up a directory tree into a JSON document.
The directory structure:
root
|--key1.txt #123
|--key2.txt #val2
+--subdir
|--key3.txt #true
+--key4.txt #val4
Will result in the following json:
//destDir/root.json
{
"key1":123,
"key2":"val2",
"subdir":{
"key3":true,
"key4":"val4"
}
}
The file extension is ignored. The JSON key is determined by the portion of the file to the left of the first dot.
File contents are parsed by JSON.parse
, and if that fails the contents of the file is treated like a string.
- Better Array support
//Brocfile.js
var tree2Json = require('broccoli-tree-to-json');
module.exports = tree2Json('interesting/path');
//index.js
var tree2Json = require('broccoli-tree-to-json'),
path = require('path');
function MyPlugin(inputTree){
this.jsonTree = tree2Json(path.join(inputTree, 'json'));
}
MyPlugin.prototype.read = function(readTree){
return readTree(this.jsonTree)
.then(function(){
//...
});
};
module.exports = MyPlugin;