hierarchy-js
Version:
Elegant and lightweight library for working with data structures
17 lines (12 loc) • 443 B
JavaScript
const { getParents, getChildren, mergeChildren } = require('../services/common')
const createTreeHierarchy = (items, parent) => {
let children = []
if (parent) children = getChildren(parent, items)
else children = getParents(items)
if (children.length) {
parent && mergeChildren(parent, children)
children.forEach((item) => createTreeHierarchy(items, item))
}
return children
}
module.exports = { createTreeHierarchy }