diff options
author | Shav Kinderlehrer <[email protected]> | 2023-12-23 14:15:01 -0500 |
---|---|---|
committer | Shav Kinderlehrer <[email protected]> | 2023-12-23 14:15:01 -0500 |
commit | 53bdc33ac7e97e1c51dd27c8cb1943c7608b49d6 (patch) | |
tree | 8a34198d0865d745333a2b12e068d2bcbdb1db18 /Jel/Views/Library/Item | |
parent | a25acb1219d506351717edef8ad728abcdaf50f9 (diff) | |
download | jel-53bdc33ac7e97e1c51dd27c8cb1943c7608b49d6.tar.gz jel-53bdc33ac7e97e1c51dd27c8cb1943c7608b49d6.zip |
Use Nuke to load images + start movieView
Diffstat (limited to 'Jel/Views/Library/Item')
-rw-r--r-- | Jel/Views/Library/Item/ItemMovieView.swift | 44 | ||||
-rw-r--r-- | Jel/Views/Library/Item/ItemView.swift | 25 |
2 files changed, 69 insertions, 0 deletions
diff --git a/Jel/Views/Library/Item/ItemMovieView.swift b/Jel/Views/Library/Item/ItemMovieView.swift new file mode 100644 index 0000000..6a29654 --- /dev/null +++ b/Jel/Views/Library/Item/ItemMovieView.swift @@ -0,0 +1,44 @@ +// +// ItemMovieView.swift +// Jel +// +// Created by zerocool on 12/23/23. +// + +import SwiftUI +import JellyfinKit + +struct ItemMovieView: View { + @EnvironmentObject var jellyfinClient: JellyfinClientController + @StateObject var authState: AuthStateController = AuthStateController.shared + + @State var item: BaseItemDto + @State var loading: Bool = true + var body: some View { + VStack { + Text(item.name ?? "Unknown") + .font(.title) + + Text(item.taglines?[0] ?? "Unknown") + .font(.headline) + Text(item.overview ?? "Unknown") + } + .navigationTitle(item.name ?? "Unknown") + .navigationBarTitleDisplayMode(.inline) + .redacted(reason: loading ? .placeholder : []) + .onAppear { + Task { + do { + let request = Paths.getItem(userID: authState.userId ?? "", itemID: item.id ?? "") + item = try await jellyfinClient.send(request).value + loading = false + } catch { + } + } + } + } +} + +#Preview { + ItemMovieView(item: BaseItemDto()) +} diff --git a/Jel/Views/Library/Item/ItemView.swift b/Jel/Views/Library/Item/ItemView.swift new file mode 100644 index 0000000..d3446af --- /dev/null +++ b/Jel/Views/Library/Item/ItemView.swift @@ -0,0 +1,25 @@ +// +// ItemView.swift +// Jel +// +// Created by zerocool on 12/23/23. +// + +import SwiftUI +import JellyfinKit + +struct ItemView: View { + @State var item: BaseItemDto + var body: some View { + switch item.type { + case .movie: + ItemMovieView(item: item) + default: + Text("Unkown media") + } + } +} + +#Preview { + ItemView(item: BaseItemDto()) +} |