I'm following the documentation but still getting error expected argument type 'FirestoreSource'. My Xcode target is 15.0. and Firebase version 8.15.0 (SPM)
import FirebaseFirestore
import FirebaseFirestoreSwift
let db = Firestore.firestore()
func getUser() -> User {
let docRef = db.collection("users").document(Auth.auth().currentUser)
docRef.getDocument(as: User.self) { result in //error: expected argument type 'FirestoreSource'
switch result {
case .success(let user):
print(user)
case .failure(let error):
print("Error decoding: \(error)")
}
}
}
Here is the custom object User.
struct User: Codable, Identifiable, Hashable {
@DocumentID var id: String?
var username: String = ""
var email: String = ""
var family: [Family]
enum CodingKeys: String, CodingKey {
case id
case username
case email
case family
}
struct Family: Codable, Hashable {
var username: String = ""
var phoneNumber: String = ""
var email: String = ""
enum CodingKeys: String, CodingKey {
case username
case phoneNumber
case email
}
}
}