Skip to content

vincentmorneau/json-mapping

Repository files navigation

JSON Mapping

npm Build Status Dependency Status XO code style

Transform a JSON object structure.

Install

npm install json-mapping

Usage

const mapping = require('json-mapping');

let json = {
	"appURL": "localhost",
	"object1": {
		"bool": true,
		"name": "app"
	}
};

json = mapping.map(json, [
	{
	    oldKey: "appURL",
	    newKey: "url"
	},
	{
	    oldKey: "object1.bool",
	    newKey: "object1.enabled"
	}
]);
/*
{
	"url": "localhost",
	"object1": {
		"enabled": true,
		"name": "app"
	}
}
*/

Arguments

Name Type Description
json object The initial JSON object to be mapped
mapping* array An array containing the mapping options
*mapping
Name Type Description
oldKey string The old property name to be mapped
newKey string The new property name to be mapped
values** array An array of mapped values for this property mapping
dependsOn** object Determines the value for the newKey based on a condition
**values
Name Type Description
oldValue any The old value of the property to be mapped
newValue any The new value of the property to be mapped
**dependsOn
Name Type Description
key string The key to look for
if any The value to evaluate for the key
ifValue any When key === if, this will be the value of the newKey
elseValue any When key !== if, this will be the value of the newKey

Methods

Name Type Return Description
map function object Maps a JSON object using mapping options

Changelog

See changelog.

License

MIT © Vincent Morneau

About

Change the structure of an existing JSON object with this mapping module

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published