ezc-mapper
Version:
json to json mapper
68 lines • 2.84 kB
Markdown
<h3 class="code-line" data-line-start=0 data-line-end=1 ><a id="Description_0"></a>Description</h3>
<hr>
<p class="has-line-data" data-line-start="5" data-line-end="6">This package helps in converting the incoming json to target json format. The use of this package is as follows:</p>
<p class="has-line-data" data-line-start="7" data-line-end="8">var output = ezmapper(input,data);</p>
<ul>
<li class="has-line-data" data-line-start="9" data-line-end="10">input - This is the mapping details to be provided for conversion. Pipe symbol can be used if you want to map same object to 2 different o/p json attributes</li>
<li class="has-line-data" data-line-start="10" data-line-end="12">data - This is the incoming data</li>
</ul>
<h3 class="code-line" data-line-start=12 data-line-end=13 ><a id="Input_Formats_12"></a>Input Formats</h3>
<hr>
<p class="has-line-data" data-line-start="16" data-line-end="17">This is the output format:</p>
<pre><code> input:{
"Person.firstName":
"Info.Details.Name.FirstName",
"Person.lastName":
"Info.Details.Name.LastName",
"Person.address.addressLine":
"Info.Details.Type.addressLine",
"Person.address.addressLine2":
"Info.Details.Type.addressLine2|AddressInfo.addressLine2",
}
</code></pre>
<p class="has-line-data" data-line-start="29" data-line-end="30">This is the data that needs to be converted as mentioned in the output format</p>
<pre><code>data = {
Person: {
firstName: "First",
lastName: "Last",
address: [
{
addressLine: "223",
addressLine2: "Main street",
},
{
addressLine: "224",
addressLine2: "Main Bridge street",
},
],
},
};
</code></pre>
<p class="has-line-data" data-line-start="49" data-line-end="50">This the actual formatted output generated:</p>
<pre><code>output:
{
"Info": {
"Details": {
"FirstName": "First",
"LastName": "Last",
"Type": [
{
"addressLine": "223",
"addressLine2": "Main street"
},
{
"addressLine": "224",
"addressLine2": "Main Bridge street"
}
]
}
},
"AddressInfo": [
{
"addressLine2": "Main street"
},
{
"addressLine2": "Main Bridge street"
}
]
}</code></pre>