Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | 700x 700x 94x 120x 120x 700x 42x 42x 50x 45x 120x 42x 7x 42x 6986x 700x | const { asTree } = require('treeify');
const arrayToObject = (val, edges) =>
val.reduce((tree, node) => {
tree[node] = edges[node] ? arrayToObject(edges[node], edges) : undefined;
return tree;
}, {});
const serializeCategoryTree = ct => {
const tree = arrayToObject(ct.rootIds, ct.edges);
const assignedKeys = Object.keys(ct.edges)
.filter(key => key in ct.nodes)
.reduce((acc, key) => [...acc, ...ct.edges[key]], [])
.concat(ct.rootIds);
const danglingKeys = Object.keys(ct.nodes).filter(key => !assignedKeys.includes(key));
if (danglingKeys.length) {
tree.dangling = arrayToObject(danglingKeys, ct.edges);
}
return asTree(tree);
};
const test = val => val && val.rootIds && val.edges && val.nodes;
module.exports = {
print: serializeCategoryTree,
test: test,
};
|