Grupo Lodash por múltiples propiedades si el valor de la propiedad es verdadero

Tengo una variedad de vehículos que deben agruparse por marca y modelo, solo si la propiedad 'seleccionada' es verdadera. El objeto resultante debe contener propiedades para hacer modelo y contar. Usando lodash, ¿cómo puedo organizar los objetos del vehículo en los objetos de resultado deseados? Puedo agrupar los objetos del vehículo por makeCode pero no estoy seguro de cómo agruparlos por más de una propiedad.

agrupar por hacer código funciona

      var vehicles = _.groupBy(response.vehicleTypes, function(item)
      {
        return item.makeCode; // how to group by model code as well
      });

vehículos iniciales

{
    id: 1, 
    selected: true, 
    makeCode: "Make-A", 
    modelCode: "Model-a", 
    trimCode: "trim-a", 
    yearCode: "2012"
},
{
    id: 2, 
    selected: false, 
    makeCode: "Make-A", 
    modelCode: "Model-a", 
    trimCode: "trim-a", 
    yearCode: "2013"
},
{
    id: 3, 
    selected: true, 
    makeCode: "Make-B", 
    modelCode: "Model-c", 
    trimCode: "trim-a", 
    yearCode: "2014"
},
{
    id: 25, 
    selected: true, 
    makeCode: "Make-C", 
    modelCode: "Model-b", 
    trimCode: "trim-b", 
    yearCode: "2012"
},
{
    id: 26, 
    selected: true, 
    makeCode: "Make-C", 
    modelCode: "Model-b", 
    trimCode: "trim-a", 
    yearCode: "2013"
}

objeto resultante

{
    Make-A: {
        Model-a: {
            count: 1
        }
    }
},

{
    Make-B: {
        Model-c: {
            count: 1
        }
    }
},
{
    Make-C: {
        Model-b: {
            count: 2
        }
    }
}

Respuestas a la pregunta(6)

Su respuesta a la pregunta