'typeorm select nested join relation fields

typeorm is not giving nested join relations selected data while using getOne method

this.repo.createQueryBuilder("po")
    .leftJoinAndSelect("po.purchaseOrderItems","poi")
    .leftJoinAndSelect("poi.items","item")
    .leftJoinAndSelect("po.center","center")
    .leftJoinAndSelect("po.vendor","vendor")
    .where(data)
    .select([
        "po.id",
        "item.name",
    ])
    .getOne()

this gives reasult as

{
  id:number
}

expected output is

{
  id:number,
  purchaseOrderItems:[{
    items:{
     name:string
    }
  }]
}

same as if i execute

this.repo.createQueryBuilder("po")
    .leftJoinAndSelect("po.purchaseOrderItems","poi")
    .leftJoinAndSelect("poi.items","item")
    .leftJoinAndSelect("po.center","center")
    .leftJoinAndSelect("po.vendor","vendor")
    .where(data)
    .getOne()

for which result i get

{
  id:number,
  purchaseOrderItems:[{
    items:{
       name:string
    }
  }]
}


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source