// // Swiftfin is subject to the terms of the Mozilla Public // License, v2.0. If a copy of the MPL was not distributed with this // file, you can obtain one at https://mozilla.org/MPL/2.0/. // // Copyright (c) 2022 Jellyfin & Jellyfin Contributors // import SwiftUI extension CollectionItemView { struct ContentView: View { @ObservedObject var viewModel: CollectionItemViewModel @EnvironmentObject private var router: ItemCoordinator.Router var body: some View { VStack(spacing: 0) { ItemView.CinematicHeaderView(viewModel: viewModel) .frame(height: UIScreen.main.bounds.height - 150) .padding(.bottom, 50) PosterHStack(title: L10n.items, type: .portrait, items: viewModel.collectionItems) .onSelect { item in router.route(to: \.item, item) } ItemView.AboutView(viewModel: viewModel) } .background { BlurView(style: .dark) .mask { VStack(spacing: 0) { LinearGradient( stops: [ .init(color: .clear, location: 0.5), .init(color: .white.opacity(0.8), location: 0.7), .init(color: .white.opacity(0.8), location: 0.95), .init(color: .white, location: 1), ], startPoint: .top, endPoint: .bottom ) .frame(height: UIScreen.main.bounds.height - 150) Color.white } } } } } }