summaryrefslogtreecommitdiff
path: root/Jel/Views/Item/Series/ItemSeriesEpisodeIconView.swift
diff options
context:
space:
mode:
Diffstat (limited to 'Jel/Views/Item/Series/ItemSeriesEpisodeIconView.swift')
-rw-r--r--Jel/Views/Item/Series/ItemSeriesEpisodeIconView.swift39
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()
+//}