UNPKG

json-v2

Version:

Used to store data in JSON files without corruption.

64 lines (44 loc) 2.04 kB
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:** ```js 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.`` ```js let FileModule = require('json-v2') let JSON = new FileModule.FileSystem("path/to/json") ``` **Get File** ``Gets the parsed version of your JSON.`` ```js 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`` ```js JSON.changeProperty({"Key to find by": "Value to find by"}, {"Key to replace/add": "Value to replace/add"}) ``` **Push** ``Adds value into the JSON.`` ```js JSON.push(value) ``` **Remove Object** ``Removes an object from the JSON.`` ```js JSON.removeObject(object) ```