How to gather the same parent elements of a tree in a nested way. I have a JSON array with different nesting levels. I have this:
var jsonArray = [
{
label: 'Parent 1',
id: '26',
children: [
{
label: 'child 11',
id: '139',
children: [
{
label: 'child 111',
id: '558',
children: [
{
label: 'child 1111',
id: '1420',
},
],
},
],
},
],
},
{
label: 'Parent 2',
id: '24',
children: [
{
label: 'child 21',
id: '140',
children: [
{
label: 'child 211',
id: '142',
children: [
{
label: 'child 2111',
id: '4394',
},
],
},
],
},
],
},
{
label: 'Parent 3',
id: '154',
children: [
{
label: 'child 31',
id: '161',
children: [
{
label: 'child 311',
id: '260',
children: [
{
label: 'child 3111',
id: '1837',
},
],
},
],
},
],
},
{
label: 'Parent 1',
id: '26',
children: [
{
label: 'child 11',
id: '139',
children: [
{
label: 'child 112',
id: '470',
children: [
{
label: 'child 1121',
id: '957',
},
],
},
],
},
],
},
];
I want merging JSON elements with the same parent, and check if their children have the same values, like this:
[
{
label: 'Parent 1',
id: '26',
children: [
{
label: 'child 11',
id: '139',
children: [
{
label: 'child 111',
id: '558',
children: [
{
label: 'child 1111',
id: '1420',
},
],
},
{
label: 'child 112',
id: '470',
children: [
{
label: 'child 1121',
id: '957',
},
],
},
],
},
],
},
{
label: 'Parent 2',
id: '24',
children: [
{
label: 'child 21',
id: '140',
children: [
{
label: 'child 211',
id: '142',
children: [
{
label: 'child 2111',
id: '4394',
},
],
},
],
},
],
},
{
label: 'Parent 3',
id: '154',
children: [
{
label: 'child 31',
id: '161',
children: [
{
label: 'child 311',
id: '260',
children: [
{
label: 'child 3111',
id: '1837',
},
],
},
],
},
],
}
];
I use the primeng-tree component to display this tree
Here a stackblitz demo
Thank's