mirror of
https://github.com/yattee/yattee.git
synced 2024-11-10 00:08:21 +00:00
33 lines
746 B
Swift
33 lines
746 B
Swift
|
|
import SwiftUI
|
|
|
|
struct ListView: View {
|
|
var items: [ContentItem]
|
|
var limit: Int? = 10
|
|
|
|
var body: some View {
|
|
LazyVStack(alignment: .leading) {
|
|
ForEach(limitedItems) { item in
|
|
ContentItemView(item: item)
|
|
.environment(\.listingStyle, .list)
|
|
.environment(\.noListingDividers, limit == 1)
|
|
.transition(.opacity)
|
|
}
|
|
}
|
|
}
|
|
|
|
var limitedItems: [ContentItem] {
|
|
if let limit, limit >= 0 {
|
|
return Array(items.prefix(limit))
|
|
}
|
|
|
|
return items
|
|
}
|
|
}
|
|
|
|
struct ListView_Previews: PreviewProvider {
|
|
static var previews: some View {
|
|
ListView(items: [.init(video: .fixture)])
|
|
}
|
|
}
|