summaryrefslogtreecommitdiff
path: root/Jel/Views/Item/Types
diff options
context:
space:
mode:
authorShav Kinderlehrer <[email protected]>2024-02-13 21:37:02 -0500
committerShav Kinderlehrer <[email protected]>2024-02-13 21:37:02 -0500
commit5c0aeedc3d9b2f7a8427fb7973d2ce8ec24ae257 (patch)
tree99c98fbe6c0164c9834ea76d636293ba70e44247 /Jel/Views/Item/Types
parent2d9d946bae8e2fa2dd0daea741442c7fa8350ad5 (diff)
downloadjel-5c0aeedc3d9b2f7a8427fb7973d2ce8ec24ae257.tar.gz
jel-5c0aeedc3d9b2f7a8427fb7973d2ce8ec24ae257.zip
Create ItemSeriesView + start ItemSeasonView
Diffstat (limited to 'Jel/Views/Item/Types')
-rw-r--r--Jel/Views/Item/Types/ItemPersonView.swift1
-rw-r--r--Jel/Views/Item/Types/ItemSeasonView.swift23
-rw-r--r--Jel/Views/Item/Types/ItemSeriesView.swift58
3 files changed, 81 insertions, 1 deletions
diff --git a/Jel/Views/Item/Types/ItemPersonView.swift b/Jel/Views/Item/Types/ItemPersonView.swift
index 0d93281..d9b991d 100644
--- a/Jel/Views/Item/Types/ItemPersonView.swift
+++ b/Jel/Views/Item/Types/ItemPersonView.swift
@@ -80,7 +80,6 @@ struct ItemPersonView: View {
do {
let res = try await jellyfinClient.send(request)
items = res.value.items ?? []
- print(items![0])
} catch {}
}
}
diff --git a/Jel/Views/Item/Types/ItemSeasonView.swift b/Jel/Views/Item/Types/ItemSeasonView.swift
new file mode 100644
index 0000000..9d02dfe
--- /dev/null
+++ b/Jel/Views/Item/Types/ItemSeasonView.swift
@@ -0,0 +1,23 @@
+//
+// ItemSeasonView.swift
+// Jel
+//
+// Created by zerocool on 2/13/24.
+//
+
+import SwiftUI
+import JellyfinKit
+
+struct ItemSeasonView: View {
+ var item: BaseItemDto
+
+ var body: some View {
+ VStack {
+ ItemMediaView(item: item)
+ }
+ }
+}
+
+//#Preview {
+// ItemSeasonView()
+//}
diff --git a/Jel/Views/Item/Types/ItemSeriesView.swift b/Jel/Views/Item/Types/ItemSeriesView.swift
new file mode 100644
index 0000000..f0559b9
--- /dev/null
+++ b/Jel/Views/Item/Types/ItemSeriesView.swift
@@ -0,0 +1,58 @@
+//
+// ItemSeriesView.swift
+// Jel
+//
+// Created by zerocool on 2/12/24.
+//
+
+import SwiftUI
+import JellyfinKit
+
+struct ItemSeriesView: View {
+ var item: BaseItemDto
+
+ @State var pageScrolled: Bool = false
+
+ var body: some View {
+ VStack {
+ ItemHeaderView(item: item)
+ .foregroundStyle(.white)
+ .background {
+ GeometryReader {geo in
+ EmptyView()
+ .onChange(of: geo.frame(in: .global).minY) {
+ let minY = geo.frame(in: .global).minY
+
+ pageScrolled = minY < -150
+ }
+ }
+ }
+
+ ItemMediaView(item: item)
+ .padding()
+
+ ItemGenresView(item: item)
+ .foregroundStyle(Color.primary)
+
+ ItemSeriesSeriesView(item: item)
+ .foregroundStyle(Color.primary)
+
+ ItemPeopleView(item: item)
+ .foregroundStyle(Color.primary)
+ }
+ .navigationBarTitleDisplayMode(.inline)
+ .navigationTitle(item.name ?? "Untitled")
+ .toolbarRole(.editor)
+ .toolbar {
+ ToolbarItem(placement: .principal) {
+ Text(pageScrolled ? item.name ?? "Untitled" : "")
+ .bold()
+ }
+ }
+ .toolbarBackground(pageScrolled ? .visible : .hidden)
+ }
+}
+
+//#Preview {
+// ItemShowView()
+//}