object2Tree = {
return function rec(node, name = 'node') {
if (Array.isArray(node)) {
const children = node.map((value, i) => rec(value, `#${i}`));
return { name, children };
} else if (typeof node == 'object') {
const children = Object.entries(node).map(([key, value]) =>
rec(value, key)
);
return { name, children };
} else {
const value = typeof node == 'string' ? `"${node}"` : node;
return { name: `${name} = ${value}`, value };
}
};
}