diff options
| author | Fuwn <[email protected]> | 2025-02-20 19:33:19 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2025-02-20 19:33:19 -0800 |
| commit | e23a8714f6cdc1b55ef96f6bc0f024af049ce299 (patch) | |
| tree | 8496471c3e0a455dc0d0c5c16a3c03964509934e /Sora/Views/Post | |
| parent | feat: Development commit (diff) | |
| download | sora-testing-e23a8714f6cdc1b55ef96f6bc0f024af049ce299.tar.xz sora-testing-e23a8714f6cdc1b55ef96f6bc0f024af049ce299.zip | |
feat: Development commit
Diffstat (limited to 'Sora/Views/Post')
| -rw-r--r-- | Sora/Views/Post/PostDetailsView.swift | 8 | ||||
| -rw-r--r-- | Sora/Views/Post/PostFileType.swift | 6 | ||||
| -rw-r--r-- | Sora/Views/Post/PostGridBookmarkButtonView.swift | 2 | ||||
| -rw-r--r-- | Sora/Views/Post/PostGridView.swift | 35 | ||||
| -rw-r--r-- | Sora/Views/Post/PostView.swift | 8 |
5 files changed, 21 insertions, 38 deletions
diff --git a/Sora/Views/Post/PostDetailsView.swift b/Sora/Views/Post/PostDetailsView.swift index fe3b558..b24b70b 100644 --- a/Sora/Views/Post/PostDetailsView.swift +++ b/Sora/Views/Post/PostDetailsView.swift @@ -2,7 +2,7 @@ import SwiftUI struct PostDetailsView: View { @EnvironmentObject var settings: Settings - let post: MoebooruPost + let post: BooruPost @State var loadingStage: PostLoadingState = .loadingPreview private var imageURL: URL? { switch settings.detailViewType { @@ -12,8 +12,6 @@ struct PostDetailsView: View { return post.sampleURL case .original: return post.fileURL - case .compressed: - return post.jpegURL } } @@ -45,9 +43,7 @@ struct PostDetailsView: View { HStack { Text( - Date( - timeIntervalSince1970: TimeInterval(post.createdAt) - ).formatted() + post.createdAt.formatted() ) .frame(maxWidth: .infinity, alignment: .leading) diff --git a/Sora/Views/Post/PostFileType.swift b/Sora/Views/Post/PostFileType.swift deleted file mode 100644 index a7b3ca6..0000000 --- a/Sora/Views/Post/PostFileType.swift +++ /dev/null @@ -1,6 +0,0 @@ -enum PostFileType: String, CaseIterable { - case original - case sample - case compressed - case preview -} diff --git a/Sora/Views/Post/PostGridBookmarkButtonView.swift b/Sora/Views/Post/PostGridBookmarkButtonView.swift index c4d8dc8..531eefe 100644 --- a/Sora/Views/Post/PostGridBookmarkButtonView.swift +++ b/Sora/Views/Post/PostGridBookmarkButtonView.swift @@ -1,7 +1,7 @@ import SwiftUI struct PostGridBookmarkButtonView: View { - @EnvironmentObject private var manager: MoebooruManager + @EnvironmentObject private var manager: BooruManager @EnvironmentObject private var settings: Settings var contained: Bool { diff --git a/Sora/Views/Post/PostGridView.swift b/Sora/Views/Post/PostGridView.swift index 625cb1e..3ccc772 100644 --- a/Sora/Views/Post/PostGridView.swift +++ b/Sora/Views/Post/PostGridView.swift @@ -3,11 +3,12 @@ import WaterfallGrid struct PostGridView: View { @EnvironmentObject var settings: Settings - @ObservedObject var manager: MoebooruManager + @ObservedObject var manager: BooruManager @Environment(\.isSearching) private var isSearching - var filteredPosts: [MoebooruPost] { - settings.showNSFWPosts ? manager.posts : manager.posts.filter { $0.rating == "s" } + var filteredPosts: [BooruPost] { + (settings.showNSFWPosts ? manager.posts : manager.posts.filter { $0.rating == "s" || $0.rating == "q" }) + .sorted(by: { $0.id > $1.id }) } var body: some View { @@ -54,12 +55,7 @@ struct PostGridView: View { } } .onSubmit(of: .search, manager.performSearch) - .task { - if manager.posts.isEmpty { - await manager.fetchPosts(page: manager.currentPage) - } - } - .navigationDestination(for: MoebooruPost.self) { post in + .navigationDestination(for: BooruPost.self) { post in PostDetailsView(post: post) } .onChange(of: manager.searchText) { _, _ in @@ -69,20 +65,19 @@ struct PostGridView: View { } } } - #if os(macOS) .toolbar { - ToolbarItem { - Button(action: { - Task { - await manager.fetchPosts(page: 1, tags: manager.tags, replace: true) + #if os(macOS) + ToolbarItem { + Button(action: { + Task { + await manager.fetchPosts(page: 1, tags: manager.tags, replace: true) + } + }) { + Label("Refresh", systemImage: "arrow.clockwise") } - }) { - Label("Refresh", systemImage: "arrow.clockwise") } - } - } - #endif - .toolbar { + #endif + if !manager.tags.isEmpty { #if os(macOS) ToolbarItem { diff --git a/Sora/Views/Post/PostView.swift b/Sora/Views/Post/PostView.swift index 9c25552..2765cd5 100644 --- a/Sora/Views/Post/PostView.swift +++ b/Sora/Views/Post/PostView.swift @@ -2,9 +2,9 @@ import SwiftUI struct PostView: View { @EnvironmentObject var settings: Settings - let post: MoebooruPost - @ObservedObject var manager: MoebooruManager - let posts: [MoebooruPost] + let post: BooruPost + @ObservedObject var manager: BooruManager + let posts: [BooruPost] private var thumbnailURL: URL? { switch settings.thumbnailType { case .preview: @@ -13,8 +13,6 @@ struct PostView: View { return post.sampleURL case .original: return post.fileURL - case .compressed: - return post.jpegURL } } |