move home feed components into separate files

This commit is contained in:
Satindar Dhillon
2022-02-28 10:21:44 -08:00
parent 714e7bb184
commit 2040f8efe2
3 changed files with 46 additions and 39 deletions

View File

@ -0,0 +1,30 @@
import Models
import Services
import SwiftUI
import Views
struct FeedCardNavigationLink: View {
@EnvironmentObject var dataService: DataService
let item: FeedItem
let searchQuery: String
@Binding var selectedLinkItem: FeedItem?
@ObservedObject var viewModel: HomeFeedViewModel
var body: some View {
NavigationLink(
destination: LinkItemDetailView(viewModel: LinkItemDetailViewModel(item: item)),
tag: item,
selection: $selectedLinkItem
) {
EmptyView()
}
.opacity(0)
.buttonStyle(PlainButtonStyle())
.onAppear {
viewModel.itemAppeared(item: item, searchQuery: searchQuery, dataService: dataService)
}
FeedCard(item: item)
}
}

View File

@ -42,42 +42,3 @@ struct FeedItemContextMenuView: View {
}
}
}
struct FeedCardNavigationLink: View {
@EnvironmentObject var dataService: DataService
let item: FeedItem
let searchQuery: String
@Binding var selectedLinkItem: FeedItem?
@ObservedObject var viewModel: HomeFeedViewModel
var body: some View {
NavigationLink(
destination: LinkItemDetailView(viewModel: LinkItemDetailViewModel(item: item)),
tag: item,
selection: $selectedLinkItem
) {
EmptyView()
}
.opacity(0)
.buttonStyle(PlainButtonStyle())
.onAppear {
viewModel.itemAppeared(item: item, searchQuery: searchQuery, dataService: dataService)
}
FeedCard(item: item)
}
}
struct LoadingSection: View {
var body: some View {
Section {
HStack(alignment: .center) {
Spacer()
Text("Loading...")
Spacer()
}
.frame(maxWidth: .infinity)
}
}
}

View File

@ -0,0 +1,16 @@
import SwiftUI
public struct LoadingSection: View {
public init() {}
public var body: some View {
Section {
HStack(alignment: .center) {
Spacer()
Text("Loading...")
Spacer()
}
.frame(maxWidth: .infinity)
}
}
}