100-days-of-swiftui-and-com.../day-096/Projects/PadFinder/PadFinder/Scenes/Pads/PadsListView.swift

72 lines
1.4 KiB
Swift
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//
// PadsListView.swift
// PadFinder
//
// Created by CypherPoet on 1/26/20.
//
//
import SwiftUI
struct PadsListView {
@EnvironmentObject private var store: AppStore
@ObservedObject var viewModel: ViewModel
}
// MARK: - View
extension PadsListView: View {
var body: some View {
List(viewModel.pads) { pad in
NavigationLink(destination: Text(pad.name)) {
HStack {
pad.padType.listItemImage
VStack(alignment: .leading) {
Text(pad.name)
.foregroundColor(.primary)
.font(.headline)
Text(pad.padType.displayName)
.font(.subheadline)
.foregroundColor(.secondary)
}
}
}
}
}
}
// MARK: - Computeds
extension PadsListView {
}
// MARK: - View Variables
extension PadsListView {
}
// MARK: - Private Helpers
private extension PadsListView {
}
// MARK: - Preview
struct PadsListView_Previews: PreviewProvider {
static var previews: some View {
let store = PreviewData.AppStores.withPads
return PadsListView(
viewModel: .init(padsState: store.state.padsState)
)
.environmentObject(store)
}
}