diff options
Diffstat (limited to 'Jel/Views/Item/Series/ItemSeriesEpisodeIconView.swift')
-rw-r--r-- | Jel/Views/Item/Series/ItemSeriesEpisodeIconView.swift | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/Jel/Views/Item/Series/ItemSeriesEpisodeIconView.swift b/Jel/Views/Item/Series/ItemSeriesEpisodeIconView.swift new file mode 100644 index 0000000..fea8997 --- /dev/null +++ b/Jel/Views/Item/Series/ItemSeriesEpisodeIconView.swift @@ -0,0 +1,39 @@ +// +// ItemSeriesEpisodeIconView.swift +// Jel +// +// Created by zerocool on 2/14/24. +// + +import SwiftUI +import JellyfinKit +import ExpandableText + +struct ItemSeriesEpisodeIconView: View { + var item: BaseItemDto + + var body: some View { + HStack(alignment: .top) { + VStack(alignment: .leading) { + Text("Episode \(item.indexNumber ?? 0)") + .foregroundStyle(Color.secondary) + .font(.callout) + ItemIconView(item: item, width: UIScreen.screenWidth * 0.5, contentMode: .fill) + .setAspectRatio(item.primaryImageAspectRatio ?? 1.7) + } + .frame(width: UIScreen.screenWidth * 0.5) + + VStack(alignment: .leading) { + Text(item.name ?? "Episode \(item.indexNumber ?? 0)") + .font(.callout) + .bold() + Text(item.overview ?? "") + .frame(height: (UIScreen.screenWidth * 0.5) / (item.primaryImageAspectRatio ?? 1.7)) // Calculate optimal amount of lines based on episode image + } + } + } +} + +//#Preview { +// ItemSeriesEpisodeIconView() +//} |