js2flowchart
Version:
> Why? While I've been working on [Under-the-hood-ReactJS](https://github.com/Bogdan-Lyashenko/Under-the-hood-ReactJS) I spent enormous amount of time on creating schemes. Each change in code or flowchart affects all entire scheme instantly, forcing you t
16 lines (12 loc) • 363 B
JavaScript
export const flatTree = (tree, getBody = node => node.body) => {
let flatList = [];
[].concat(tree).forEach(node => {
const body = getBody(node);
if (body && body.length) {
flatList = flatList.concat(node, flatTree(body, getBody));
} else {
flatList.push(node);
}
});
return flatList;
};