@@ -17,7 +17,7 @@ import AppKit.NSImage
17
17
#endif
18
18
19
19
@available ( iOS 15 . 0 , macOS 12 . 0 , tvOS 15 . 0 , watchOS 8 . 0 , * )
20
- public final class OpenAIDefaultLoader : IOpenAILoader {
20
+ public final class OpenAIDefaultLoader : IOpenAILoader , Sendable {
21
21
22
22
/// HTTP async client to handle requests
23
23
private let client : Http . Proxy < JsonReader , JsonWriter > ?
@@ -85,34 +85,33 @@ public final class OpenAIDefaultLoader: IOpenAILoader {
85
85
86
86
return Data ( base64Encoded: base64)
87
87
}
88
-
89
- #if os(iOS) || os(watchOS) || os(tvOS )
90
- /// Converts base64 encoded string to UIImage for iOS
88
+
89
+ #if os(macOS )
90
+ /// Converts base64 encoded string to NSImage for macOS
91
91
/// - Parameter output: OpenAI response type
92
- /// - Returns: UIImage
92
+ /// - Returns: NSImage
93
93
private func imageBase64( from output: Output ) throws -> Image {
94
94
let data = try decodeBase64 ( from: output)
95
95
96
- if let data, let image = UIImage ( data: data) {
97
- return Image ( uiImage : image)
96
+ if let data, let image = NSImage ( data: data) {
97
+ return Image ( nsImage : image)
98
98
}
99
99
100
100
throw AsyncImageErrors . imageInit
101
101
}
102
- #endif
103
-
104
- #if os(macOS)
105
- /// Converts base64 encoded string to NSImage for macOS
102
+ #else
103
+ /// Converts base64 encoded string to UIImage for iOS
106
104
/// - Parameter output: OpenAI response type
107
- /// - Returns: NSImage
105
+ /// - Returns: UIImage
108
106
private func imageBase64( from output: Output ) throws -> Image {
109
107
let data = try decodeBase64 ( from: output)
110
108
111
- if let data, let image = NSImage ( data: data) {
112
- return Image ( nsImage : image)
109
+ if let data, let image = UIImage ( data: data) {
110
+ return Image ( uiImage : image)
113
111
}
114
112
115
113
throw AsyncImageErrors . imageInit
116
114
}
117
115
#endif
116
+
118
117
}
0 commit comments