Database
db={"magazine":[{"_id":ObjectId("635f6e6902698132d9659c5a"),"name":"Sports Magazine","typeId":ObjectId("635fc99652ecf9a969eed777")}],"pages":[{"_id":ObjectId("63748c1241ccfbc85a49af20"),"pagename":"cover","visibleTo":[{"checked":"No","name":"Media","_id":ObjectId("635fc99652ecf9a969eed777")},{"checked":"Yes","name":"GHS","_id":ObjectId("635fc99652ecf9a969eed77c")}]},{"_id":ObjectId("637493810ca44ad4d564e7b3"),"pagename":"back","visibleTo":[{"checked":"Yes","name":"Media","_id":ObjectId("635fc99652ecf9a969eed777")},{"checked":"Yes","name":"GHS","_id":ObjectId("635fc99652ecf9a969eed77c")},{"checked":"Yes","name":"Others","_id":ObjectId("635fc99652ecf9a969eed781")}],}]}
Query
db.magazine.aggregate([{$lookup:{from:"pages",localField:"typeId",foreignField:"visibleTo._id",let:{typeId:"$typeId"},pipeline:[{"$addFields":{"visibleTo":{"$filter":{"input":"$visibleTo","cond":{$eq:["$$this._id","$$typeId"]}}}}}],as:"List"}}])