const obj = {
  a: {
    ab: {
      abc: {},
      abd: {},
    },
    ac: {
      acd: {},
    }
  },
  b: {
    bc: {
      bcd: { bcde: {} },
    },
    bd: {},
  }
}
// What I expected
/*
const expected = [
  { 
    name: 'a', 
    children: [{
      name: 'ab',
      children: [{
        name: 'abc',
        children: [],
      }, {
        name: 'abd',
        children: [],
      }],
    }],
  },
  { 
    name: 'b', 
    children: [{
      name: 'bc',
      children: [{ name: 'bcde', children: [] }],
    }, {
      name: 'bd',
      children: [],
    }]
  },
]
*/
I guess I can achieve it with a recursive function but now my brain doesn't work...