枢轴/转换Javascript对象数组

请给我帮助。 我有以下对象数组:

[
  {
    name: "A",
    id: "q1",
    history: {
        "1:2:3": {a: 0, b: 0, c: 0},
        "4:5:6": {a: 1, b: 1, c: 1},
        "7:8:9": {a: 2, b: 2, c: 2}
     }
  },
  {
    name: "B",
    id: "q2",
    history: {
        "1:2:3": {a: 3, b: 3, c: 3},
        "4:5:6": {a: 4, b: 4, c: 4},
        "7:8:9": {a: 5, b: 5, c: 5}
     }
  },
  {
    name: "C",
    id: "q3",
    history: {
        "1:2:3": {a: 6, b: 6, c: 6},
        "4:5:6": {a: 7, b: 7, c: 7},
        "7:8:9": {a: 8, b: 8, c: 8}
     }
  }
]

我想获得以下结果:

{
  "1:2:3": {
    "q1": {a: 0, b: 0, c: 0},
    "q2": {a: 3, b: 3, c: 3},
    "q3": {a: 6, b: 6, c: 6}
  },
  "4:5:6": {
    "q1": {a: 1, b: 1, c: 1},
    "q2": {a: 4, b: 4, c: 4},
    "q3": {a: 7, b: 7, c: 7}
  },
  "7:8:9": {
    "q1": {a: 2, b: 2, c: 2},
    "q2": {a: 5, b: 5, c: 5},
    "q3": {a: 8, b: 8, c: 8}
  }
}

我希望结果是键为1:2:3、4:5:6、7:8:9的对象。

请提供一些解决方案?谢谢! :)