I'm using this library to encode and decode custom structs using CloudKit however, ran into this depreciation and the library hasn't been updated. How can I rewrite this block below?
private func fetchAllAssociatedRecords(fromReferences references: [CKRecord.Reference],
recordsStack records: [CKRecord],
referenceDatabase database: CKDatabase,
completion: @escaping ([CKRecord]?, CKCodableError?) -> Void) {
let query = CKFetchRecordsOperation(recordIDs: references.map { $0.recordID })
//problem line --> query.fetchRecordsCompletionBlock = { (recordsDictionary, error) in
if let receivedError = error {
let error = CKCodableError.error(fromCloudkitError: receivedError)
completion(nil, error)
return
}
if let fetchedRecordsDictionary = recordsDictionary {
let fetchedRecords = fetchedRecordsDictionary.map { $0.value }
self.fetchReferences(fromRecords: fetchedRecords,
andAppendTo: records,
withReferenceDatabase: database,
completion: completion)
} else {
let error = CKCodableError(.cloudkitInconsistence)
completion(nil, error)
}
}
database.add(query)
}