Den största utmaningen är att du vill ha alla fält från huvuddokumentet (eftersom du inte känner till alla) plus endast 2 från listan.
Detta borde göra det:
{
$project: {
"_id": 0,
"document": "$$CURRENT",
"list._id": "$$CURRENT.list._id",
"list.name": "$$CURRENT.list.name"
}
}, {
$project: {
"document.list": 0
}
}, {
$addFields: {
"document.list._id": "$$CURRENT.list._id",
"document.list.name": "$$CURRENT.list.name"
}
}, {
$replaceRoot: {
newRoot: "$document"
}
}
Det går igenom några steg men får jobbet gjort :). Det skulle ta det aktuella dokumentet och bara de listfält du vill ha. Sedan skulle den ta bort sin lista från det aktuella dokumentet. Sedan skulle det lägga till listan till samma dokument (eftersom den är med de specifika fält vi vill ha). Sedan skulle den lägga till dessa fält i dokumentet och slutligen ersätta roten med det dokumentet.