return double from reading progress update publisher

This commit is contained in:
Satindar Dhillon
2022-04-22 10:17:06 -07:00
parent 6cb6f19e1e
commit cb878ba0ef
2 changed files with 7 additions and 7 deletions

View File

@ -39,8 +39,8 @@ enum PDFProvider {
.sink { completion in
guard case let .failure(error) = completion else { return }
print(error)
} receiveValue: { [weak self] feedItem in
self?.item.readingProgress = feedItem.readingProgress
} receiveValue: { [weak self] readingProgress in
self?.item.readingProgress = readingProgress
}
.store(in: &subscriptions)
}

View File

@ -9,9 +9,9 @@ public extension DataService {
itemID: String,
readingProgress: Double,
anchorIndex: Int
) -> AnyPublisher<FeedItemDep, SaveArticleError> {
) -> AnyPublisher<Double, SaveArticleError> {
enum MutationResult {
case saved(feedItem: FeedItemDep)
case saved(readingProgress: Double)
case error(errorCode: Enums.SaveArticleReadingProgressErrorCode)
}
@ -19,7 +19,7 @@ public extension DataService {
try $0.on(
saveArticleReadingProgressSuccess: .init {
.saved(
feedItem: try $0.updatedArticle(selection: homeFeedItemSelection)
readingProgress: try $0.updatedArticle(selection: Selection.Article { try $0.readingProgressPercent() })
)
},
saveArticleReadingProgressError: .init { .error(errorCode: try $0.errorCodes().first ?? .badData) }
@ -50,7 +50,7 @@ public extension DataService {
}
switch payload.data {
case let .saved(feedItem):
case .saved:
if let linkedItem = LinkedItem.lookup(byID: itemID, inContext: self.backgroundContext) {
linkedItem.update(
inContext: self.backgroundContext,
@ -58,7 +58,7 @@ public extension DataService {
newAnchorIndex: anchorIndex
)
}
promise(.success(feedItem))
promise(.success(readingProgress))
case let .error(errorCode: errorCode):
switch errorCode {
case .unauthorized: