Abstract out fetching from view model so we can better handle multiple fetch folders

Rename LinkedItem to LibraryItem

More on following

Add new fetcher

Tab bar
This commit is contained in:
Jackson Harper
2023-11-16 16:07:50 +08:00
parent fe853451c5
commit e63b4f9b2c
79 changed files with 2758 additions and 808 deletions

View File

@ -6,7 +6,7 @@ import Utils
import Views
@MainActor final class WebReaderLoadingContainerViewModel: ObservableObject {
@Published var item: LinkedItem?
@Published var item: Models.LibraryItem?
@Published var errorMessage: String?
func loadItem(dataService: DataService, username: String, requestID: String) async {
@ -15,7 +15,7 @@ import Views
else {
return
}
item = dataService.viewContext.object(with: objectID) as? LinkedItem
item = dataService.viewContext.object(with: objectID) as? Models.LibraryItem
}
func trackReadEvent() {
@ -38,7 +38,6 @@ public struct WebReaderLoadingContainer: View {
@EnvironmentObject var dataService: DataService
@EnvironmentObject var audioController: AudioController
@State var lazyPopIsEnabled = true
@StateObject var viewModel = WebReaderLoadingContainerViewModel()
public var body: some View {
@ -59,8 +58,6 @@ public struct WebReaderLoadingContainer: View {
WebReaderContainerView(item: item, pop: { dismiss() })
#if os(iOS)
.navigationViewStyle(.stack)
.navigationBarHidden(true)
.lazyPop(pop: { dismiss() }, isEnabled: $lazyPopIsEnabled)
#endif
.accentColor(.appGrayTextContrast)
.task { viewModel.trackReadEvent() }