summaryrefslogtreecommitdiff
path: root/Sora/Data
diff options
context:
space:
mode:
authorFuwn <[email protected]>2025-06-18 04:23:48 -0700
committerFuwn <[email protected]>2025-06-18 04:23:48 -0700
commit4798fba4dcec96c5d470a3ab7ab26b4434cad25a (patch)
tree20ee00450ce0d293e0d98cabeff9cece9b86d87e /Sora/Data
parentfeat: Development commit (diff)
downloadsora-testing-4798fba4dcec96c5d470a3ab7ab26b4434cad25a.tar.xz
sora-testing-4798fba4dcec96c5d470a3ab7ab26b4434cad25a.zip
feat: Development commit
Diffstat (limited to 'Sora/Data')
-rw-r--r--Sora/Data/Booru/BooruManager.swift15
1 files changed, 13 insertions, 2 deletions
diff --git a/Sora/Data/Booru/BooruManager.swift b/Sora/Data/Booru/BooruManager.swift
index b7347a0..705d4d8 100644
--- a/Sora/Data/Booru/BooruManager.swift
+++ b/Sora/Data/Booru/BooruManager.swift
@@ -93,9 +93,16 @@ class BooruManager: ObservableObject { // swiftlint:disable:this type_body_leng
do {
let data = try await requestURL(url)
+ let flavor = self.flavor
+ let provider = self.provider
let newPosts = await withCheckedContinuation { continuation in
DispatchQueue.global(qos: .userInitiated).async {
- let parsedPosts = self.parsePosts(from: data).sorted { $0.id > $1.id }
+ let parsedPosts = self.parsePosts(
+ from: data,
+ flavor: flavor,
+ provider: provider
+ )
+ .sorted { $0.id > $1.id }
continuation.resume(returning: parsedPosts)
}
@@ -272,7 +279,11 @@ class BooruManager: ObservableObject { // swiftlint:disable:this type_body_leng
}
}
- private func parsePosts(from data: Data) -> [BooruPost] {
+ nonisolated private func parsePosts(
+ from data: Data,
+ flavor: BooruProviderFlavor,
+ provider: BooruProvider
+ ) -> [BooruPost] {
Array(
Set(
flavor == .danbooru