I have an array of actors and each of them have arrays like movies, awards and so on. I want to change the structure of my data that I receive from the server into a tree data. My array name should be in a new array children that has 3 properties: a self generated id, name which is the name of my array for example 'movies', and children which contains the actual data for my array. I need a head start to create this dynamically because my data can grow. Any help is much appreciated.
data structure from the server:
[{
name: 'Tom Holland',
id: 1,
movies: [{
typename: 'MoviesData',
id: 12,
name: 'Spider-Man NWH',
stars: 4
}, {
typename: 'MoviesData',
id: 13,
name: 'Spider-Man Far from Home',
stars: 4
}],
awards: [{
typename: 'AwardsData',
id: 6,
name: 'BAFTA Award',
year: 2017
}, {
typename: 'AwardsData',
id: 7,
name: 'Empire Award',
year: 2013
}], //... more Arrays like Hobbies, TV-Shows, etc...
}, //... more Actors
]
required tree data:
[{
name: "Tom Holland",
id: 1,
children: [{
id: 3, // self generated id for each array
name: "Movies", // Object key name
children: [
{typename: 'MoviesData', id: 12, name: 'Spider-Man NWH', stars: 4},
{typename: 'MoviesData', id: 13, name: 'Spider-Man Far from Home', stars: 4},...
]
}, {
id: 15, // self generated id
name: "Awards",
children: [
{typename:'AwardsData', id: 6, name: 'BAFTA Award', year: 2017},
{typename:'AwardsData', id: 7, name: 'Empire Award', value: 2013},...
]
}, //...]
}, //...]