diff options
| author | Fuwn <[email protected]> | 2025-02-17 19:59:40 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2025-02-17 19:59:40 -0800 |
| commit | 4b03f632491b2f988f1acf07a257cc23ef4f395b (patch) | |
| tree | b9f5093fdfbdf93d19266463a608d892776803b5 /Sora/Views/Post/PostView.swift | |
| download | sora-testing-4b03f632491b2f988f1acf07a257cc23ef4f395b.tar.xz sora-testing-4b03f632491b2f988f1acf07a257cc23ef4f395b.zip | |
feat: Initial commit
Diffstat (limited to 'Sora/Views/Post/PostView.swift')
| -rw-r--r-- | Sora/Views/Post/PostView.swift | 30 |
1 files changed, 30 insertions, 0 deletions
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) + } + } +} |