issue: https://linear.app/comm/issue/ENG-3412/fix-nested-flatlist-in-navigation-community-drawer
We will keep the expanded state communnity items as an array that hols ids of expanded elements. When a parent item is collapsed, so are all it's children, and their children, an so on
(so we can collapse and expand an item to quicly collapse all its descendants). In order to do so, we need to know which ids in expanded array belong to this chats descendants.
findThreadChildrenItems finds the chat in question in the CommunityDrawerItemData recursive structure - to obtain an array containing only descenants of this chat.
findAllDescendantIDs then creates a flat array with ids of all descendants.
we then filter ids (expanded array) to remove all of those found decsendants and the chat that is being collapsed.
filterThreadAndDescendantIDs will be called when a chat is being collapsed.