I am using SwiftUI to generate this dynamic list in a view (showing portion of the generated list):
- LAVENDER
- LEMON
- LIME
- LIME
- MANGO
How can I remove the duplicates from the list (e.g. LIME)?
Here is my code that generates the list view:
struct FlavorGroupList: View {
    @ObservedObject private var viewModel = FlavorsViewModel()
    var body: some View {
        List(viewModel.flavors) { flavorListing in
            VStack(alignment: .leading) {
                Text(flavorListing.flavorGroup)
            }
        }
        .onAppear() {
            self.viewModel.fetchData()
        }
    }
}
Here is my view model code:
class FlavorsViewModel: ObservableObject {
    @Published var flavors = [Flavor]()
    private var db = Firestore.firestore()
    func fetchData() {
        db.collection("flavors").order(by: "flavorGroup").addSnapshotListener { (querySnapshot, error) in
            guard let documents = querySnapshot?.documents else {
                print("No documents")
                return
            }
            self.flavors = documents.compactMap { (queryDocumentSnapshot) -> Flavor? in
                return try? queryDocumentSnapshot.data(as: Flavor.self)
            }
        }
    }
}
Here is my model code:
struct Flavor: Identifiable, Codable {
    @DocumentID var id: String? = UUID().uuidString
    var code: String
    var descriptors: [String]
    var flavorGroup: String
    var keywords: [String]
    var legislation: String
    var name: String
}
I am importing the data from a Firestore database.
Thank you in advance for any help offered.
 
     
    