json-v2
v0.1.4
Published
Used to store data in JSON files without corruption.
Downloads
4
Readme
A package that allows you to continue using JSON files as a database (although not recommended), while avoiding corruption of your files, and keeping them up to date.
Example:
let FileModule = require('json-v2')
let AccountJson = new FileModule.FileSystem("./accounts.json") //Create new file object, with the path to the JSON.
AccountJson.getFile().then(async function (parsedFile) { //Get files. (returns parsed)
let Overwrite = await AccountJson.overwriteFile([{"Vabajaa": true}]) //Overwrite the entire file with the provided JSON.
AccountJson.changeProperty({"Vabajaa": true}, {"Vabajaa": false, "Healthy": true}).then(async function(NewObject) { //Argument1 is the matching property that will be used to find the object. Argument2 are the properties to set.
let newFile = await AccountJson.getFile() //Gets the parsed JSON.
let pushedFile = await AccountJson.push({"Popeeyy": "best"}) //Push a value into a JSON file.
let newestFile = await AccountJson.getFile() //Get the parsed JSON, again.
console.log(newestFile)
await AccountJson.removeObject({"Popeeyy": "best"}) //Remove object that we just pushed.
}).catch(err => {
console.log(err)
})
})
New FileSystem
Creates an object for the provided path which you can use functions on.
let FileModule = require('json-v2')
let JSON = new FileModule.FileSystem("path/to/json")
Get File
Gets the parsed version of your JSON.
JSON.getFile() //returns promise with parsed data
Change Property
Gets the object in the JSON using the first argument's property and replaces properties from Argument2
JSON.changeProperty({"Key to find by": "Value to find by"}, {"Key to replace/add": "Value to replace/add"})
Push
Adds value into the JSON.
JSON.push(value)
Remove Object
Removes an object from the JSON.
JSON.removeObject(object)