A library for handling typed JSON data, providing functionalities for parsing, stringifying, and working with JSON objects, including support for encoding and decoding buffers.
test | ||
ts | ||
.gitignore | ||
.gitlab-ci.yml | ||
npmextra.json | ||
package-lock.json | ||
package.json | ||
README.md | ||
tsconfig.json | ||
tslint.json |
smartjson
typed json handlers
Availabililty
Status for master
Usage
Use TypeScript for best in class instellisense.
Classes
SmartJson makes it easy to fold and enfold classes into and from JSON
import { Foldable, foldDec } from 'smartjson';
class AwesomeClass extends Foldable {
computedValue: string;
@foldDec() // mark anotherValueToStore as foldable
anotherValueToStore: string = null;
constructor() {
super(); // this is important
}
}
let myAwesomeInstance = new AwesomeClass();
let foldedObject = myAwesomeInstance.foldToObject(); // will return {anotherValueToStore: null}
myAwesomeInstance.enfoldFromObject({ anotherValueToStore: 'hi' });
foldedObject = myAwesomeInstance.foldToObject(); // will return {anotherValueToStore: 'hi'}
For further information read the linked docs at the top of this README.
MIT licensed | © Lossless GmbH | By using this npm module you agree to our privacy policy