1.0.3 • Published 2 years ago
@hastalavistababy/treebuilder v1.0.3
Tree builder
Install
npm install @hastalavistababy/treebuilder
Example
var qualifications = [
{
"id": "bb1d9900-93b0-45c3-acce-abf7b7ed8966",
"en": "Compactors",
"de": "Walzen",
"level": 1,
"parentId": null
},
{
"id": "0110f311-52bf-4bda-9f0c-c6174b75770f",
"en": "Dozer",
"de": "Raupe",
"level": 1,
"parentId": null
},
{
"id": "b129efac-181e-4d62-b885-09731f43646a",
"en": "Asphalt Pavers",
"de": "Asphaltfertiger",
"level": 1,
"parentId": null
},
{
"id": "885f5e25-d513-47c3-af45-16ba46fec063",
"en": "Excavators",
"de": "Bagger",
"level": 1,
"parentId": null
},
{
"id": "ea722f97-813c-4b33-a2cf-a3fac9cd7192",
"en": "Canal Construction",
"de": "Kanalbau",
"level": 1,
"parentId": null
},
{
"id": "0ae1cddc-e1a5-4b2b-8cc9-9493fd342ad4",
"en": "Street Construction",
"de": "Straßenbau",
"level": 1,
"parentId": null
},
{
"id": "27794431-17ef-44a0-a1c5-d4548848d443",
"en": "Line construction",
"de": "Leitungsbau",
"level": 1,
"parentId": null
},
{
"id": "cacf6de1-0b3e-4262-bc1e-3bda046dff3d",
"en": "Tandem Roller",
"de": "Tandemwalze",
"level": 2,
"parentId": "bb1d9900-93b0-45c3-acce-abf7b7ed8966"
},
{
"id": "f67b6aca-bc52-4e45-b1cc-649676360dfe",
"en": "Mini Excavators",
"de": "Minibagger",
"level": 2,
"parentId": "885f5e25-d513-47c3-af45-16ba46fec063"
},
{
"id": "731076f3-efb1-4b48-8931-8fb06a125a9c",
"en": "Mobile Excavators",
"de": "Mobilbagger",
"level": 2,
"parentId": "885f5e25-d513-47c3-af45-16ba46fec063"
}
];
console.log(treebuilder(entries));
magic log
[
{
"id": "bb1d9900-93b0-45c3-acce-abf7b7ed8966",
"en": "Compactors",
"de": "Walzen",
"level": 1,
"parentId": null,
"children": [
{
"id": "cacf6de1-0b3e-4262-bc1e-3bda046dff3d",
"en": "Tandem Roller",
"de": "Tandemwalze",
"level": 2,
"parentId": "bb1d9900-93b0-45c3-acce-abf7b7ed8966",
"children": []
}
]
},
{
"id": "0110f311-52bf-4bda-9f0c-c6174b75770f",
"en": "Dozer",
"de": "Raupe",
"level": 1,
"parentId": null,
"children": []
},
{
"id": "b129efac-181e-4d62-b885-09731f43646a",
"en": "Asphalt Pavers",
"de": "Asphaltfertiger",
"level": 1,
"parentId": null,
"children": []
},
{
"id": "885f5e25-d513-47c3-af45-16ba46fec063",
"en": "Excavators",
"de": "Bagger",
"level": 1,
"parentId": null,
"children": [
{
"id": "f67b6aca-bc52-4e45-b1cc-649676360dfe",
"en": "Mini Excavators",
"de": "Minibagger",
"level": 2,
"parentId": "885f5e25-d513-47c3-af45-16ba46fec063",
"children": []
},
{
"id": "731076f3-efb1-4b48-8931-8fb06a125a9c",
"en": "Mobile Excavators",
"de": "Mobilbagger",
"level": 2,
"parentId": "885f5e25-d513-47c3-af45-16ba46fec063",
"children": []
}
]
},
{
"id": "ea722f97-813c-4b33-a2cf-a3fac9cd7192",
"en": "Canal Construction",
"de": "Kanalbau",
"level": 1,
"parentId": null,
"children": []
},
{
"id": "0ae1cddc-e1a5-4b2b-8cc9-9493fd342ad4",
"en": "Street Construction",
"de": "Straßenbau",
"level": 1,
"parentId": null,
"children": []
},
{
"id": "27794431-17ef-44a0-a1c5-d4548848d443",
"en": "Line construction",
"de": "Leitungsbau",
"level": 1,
"parentId": null,
"children": []
}
]