Мне нужно было объединить два потока запросов пожарного магазина в моем проекте флаттера. Как мне это сделать? Я попробовал метод StreamZip ([Stream1, stream2]), чтобы объединить потоки, и он работал для меня. но потоки могут содержать те же документы. поэтому, когда я перечислил их, все документы перечислены, даже если есть дубликат. Как удалить дубликаты документов из этих двух потоков?
Stream<List<QuerySnapshot>> getData() {
Stream defaultStream1 = _firestore
.collection("Gyms")
.where("gymPlaceTags", arrayContainsAny: ["dubai"])
.orderBy('createdAt', descending: true)
.snapshots();
Stream defaultStream2 = _firestore
.collection("Gyms")
.where("gymFavTags", arrayContainsAny: ["ajman"])
.orderBy('createdAt', descending: true)
.snapshots();
return StreamZip([defaultStream1, defaultStream2]);
}