From bb97039cf107e3d76c80e5c30f7b30496d6bd567 Mon Sep 17 00:00:00 2001 From: Jackson Harper Date: Tue, 7 Jun 2022 20:41:27 -0700 Subject: [PATCH] Track page state so we know if we are able to read a page yet --- .../CoreDataModel.xcdatamodel/contents | 3 ++- .../Services/DataService/Queries/ArticleContentQuery.swift | 2 ++ .../Services/DataService/Queries/LibraryItemsQuery.swift | 2 ++ .../Sources/Services/InternalModels/InternalLinkedItem.swift | 3 +++ 4 files changed, 9 insertions(+), 1 deletion(-) diff --git a/apple/OmnivoreKit/Sources/Models/CoreData/CoreDataModel.xcdatamodeld/CoreDataModel.xcdatamodel/contents b/apple/OmnivoreKit/Sources/Models/CoreData/CoreDataModel.xcdatamodeld/CoreDataModel.xcdatamodel/contents index 3316d15b9..c677d228a 100644 --- a/apple/OmnivoreKit/Sources/Models/CoreData/CoreDataModel.xcdatamodeld/CoreDataModel.xcdatamodel/contents +++ b/apple/OmnivoreKit/Sources/Models/CoreData/CoreDataModel.xcdatamodeld/CoreDataModel.xcdatamodel/contents @@ -43,6 +43,7 @@ + @@ -90,7 +91,7 @@ - + diff --git a/apple/OmnivoreKit/Sources/Services/DataService/Queries/ArticleContentQuery.swift b/apple/OmnivoreKit/Sources/Services/DataService/Queries/ArticleContentQuery.swift index a80da3706..401b369fb 100644 --- a/apple/OmnivoreKit/Sources/Services/DataService/Queries/ArticleContentQuery.swift +++ b/apple/OmnivoreKit/Sources/Services/DataService/Queries/ArticleContentQuery.swift @@ -101,6 +101,7 @@ extension DataService { createdAt: try $0.createdAt().value ?? Date(), savedAt: try $0.savedAt().value ?? Date(), updatedAt: try $0.updatedAt().value ?? Date(), + state: try $0.state()?.rawValue ?? "SUCCEEDED", readingProgress: try $0.readingProgressPercent(), readingProgressAnchor: try $0.readingProgressAnchorIndex(), imageURLString: try $0.image(), @@ -222,6 +223,7 @@ extension DataService { linkedItem.slug = item.slug linkedItem.isArchived = item.isArchived linkedItem.contentReader = item.contentReader + linkedItem.serverSyncStatus = Int64(ServerSyncStatus.isNSync.rawValue) if linkedItem.isPDF, linkedItem.localPdfURL == nil { do { diff --git a/apple/OmnivoreKit/Sources/Services/DataService/Queries/LibraryItemsQuery.swift b/apple/OmnivoreKit/Sources/Services/DataService/Queries/LibraryItemsQuery.swift index 6d2acdf74..ed81fe955 100644 --- a/apple/OmnivoreKit/Sources/Services/DataService/Queries/LibraryItemsQuery.swift +++ b/apple/OmnivoreKit/Sources/Services/DataService/Queries/LibraryItemsQuery.swift @@ -98,6 +98,7 @@ public extension DataService { createdAt: try $0.createdAt().value ?? Date(), savedAt: try $0.savedAt().value ?? Date(), updatedAt: try $0.updatedAt().value ?? Date(), + state: try $0.state()?.rawValue ?? "SUCCEEDED", readingProgress: try $0.readingProgressPercent(), readingProgressAnchor: try $0.readingProgressAnchorIndex(), imageURLString: try $0.image(), @@ -164,6 +165,7 @@ private let libraryArticleSelection = Selection.Article { createdAt: try $0.createdAt().value ?? Date(), savedAt: try $0.savedAt().value ?? Date(), updatedAt: try $0.updatedAt().value ?? Date(), + state: try $0.state()?.rawValue ?? "SUCCEEDED", readingProgress: try $0.readingProgressPercent(), readingProgressAnchor: try $0.readingProgressAnchorIndex(), imageURLString: try $0.image(), diff --git a/apple/OmnivoreKit/Sources/Services/InternalModels/InternalLinkedItem.swift b/apple/OmnivoreKit/Sources/Services/InternalModels/InternalLinkedItem.swift index 9e60704c9..f5f089fd7 100644 --- a/apple/OmnivoreKit/Sources/Services/InternalModels/InternalLinkedItem.swift +++ b/apple/OmnivoreKit/Sources/Services/InternalModels/InternalLinkedItem.swift @@ -8,6 +8,7 @@ struct InternalLinkedItem { let createdAt: Date let savedAt: Date let updatedAt: Date + let state: String var readingProgress: Double var readingProgressAnchor: Int let imageURLString: String? @@ -41,6 +42,7 @@ struct InternalLinkedItem { linkedItem.createdAt = createdAt linkedItem.savedAt = savedAt linkedItem.updatedAt = updatedAt + linkedItem.state = state linkedItem.readingProgress = readingProgress linkedItem.readingProgressAnchor = Int64(readingProgressAnchor) linkedItem.imageURLString = imageURLString @@ -98,6 +100,7 @@ extension JSONArticle { createdAt: createdAt, savedAt: savedAt, updatedAt: updatedAt, + state: "SUCCEEDED", readingProgress: readingProgressPercent, readingProgressAnchor: readingProgressAnchorIndex, imageURLString: image,