npm install js-trees
import { mkNode, hasChildren, map, filter, reduce, findNodes, } from 'js-trees'
Make a node
name
meta
children
mkNode('test', { color: 'blue' }, []); // { name: 'test', meta : { color: 'blue'}, [] }
Returns {children: Array, meta, name: any}
Check if Node has a Children
node
hasChildren(mkNode('myNode')); // false;
hasChildren(mkNode('myNode2', {}, [mkNode('myNode3')])); // true
Map Tree
f
node
Returns (any | {children: any})
Filter Tree
f
node
Returns ({children: any} | null | any)
Reduce Tree
f
tree
acc
Returns any
Find all nodes that fet comparator function
comparator
tree
Returns any