From 4b03f632491b2f988f1acf07a257cc23ef4f395b Mon Sep 17 00:00:00 2001 From: Fuwn Date: Mon, 17 Feb 2025 19:59:40 -0800 Subject: feat: Initial commit --- Sora/Views/Post/PostView.swift | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 Sora/Views/Post/PostView.swift (limited to 'Sora/Views/Post/PostView.swift') diff --git a/Sora/Views/Post/PostView.swift b/Sora/Views/Post/PostView.swift new file mode 100644 index 0000000..97e311c --- /dev/null +++ b/Sora/Views/Post/PostView.swift @@ -0,0 +1,30 @@ +import SwiftUI + +struct PostView: View { + let post: MoebooruPost + var softLimit: CGFloat + var thumbnailMode: PostThumbnailMode = .preview + private var thumbnailURL: URL? { + switch thumbnailMode { + case .preview: + return post.previewURL + case .sample: + return post.sampleURL + case .file: + return post.fileURL + } + } + + var body: some View { + VStack { + AsyncImage(url: thumbnailURL) { image in + image + .resizable() + .scaledToFit() + } placeholder: { + ProgressView() + } + .frame(width: softLimit, height: softLimit) + } + } +} -- cgit v1.2.3