mirror of
https://github.com/omnivore-app/omnivore.git
synced 2026-03-11 08:54:26 +00:00
remove unused combine functions
This commit is contained in:
parent
587cbe2f26
commit
9c68802c44
6 changed files with 5 additions and 93 deletions
|
|
@ -39,7 +39,7 @@ extension Networker {
|
|||
)
|
||||
|
||||
do {
|
||||
let authVerification = try await urlSession.performReq(resource: resource)
|
||||
let authVerification = try await urlSession.performRequest(resource: resource)
|
||||
return authVerification.authStatus.isAuthenticated
|
||||
} catch {
|
||||
return false
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
import Combine
|
||||
import Foundation
|
||||
import Models
|
||||
import Utils
|
||||
|
|
@ -37,7 +36,7 @@ extension ServerResponse {
|
|||
struct EmptyResponse: Decodable {}
|
||||
|
||||
extension URLSession {
|
||||
func performReq<ResponseModel>(
|
||||
func performRequest<ResponseModel>(
|
||||
resource: ServerResource<ResponseModel>
|
||||
) async throws -> ResponseModel {
|
||||
do {
|
||||
|
|
@ -61,30 +60,6 @@ extension URLSession {
|
|||
throw ServerError(serverResponse: serverResponse)
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: remove performRequest
|
||||
// swiftlint:disable:next line_length
|
||||
func performRequest<ResponseModel>(resource: ServerResource<ResponseModel>) -> AnyPublisher<ResponseModel, ServerError> {
|
||||
let request = resource.urlRequest
|
||||
|
||||
return dataTaskPublisher(for: resource.urlRequest)
|
||||
.tryMap { data, response -> ResponseModel in
|
||||
let serverResponse = ServerResponse(data: data, response: response)
|
||||
NetworkRequestLogger.log(request: request, serverResponse: serverResponse)
|
||||
|
||||
if let decodedValue = resource.decode(serverResponse) {
|
||||
return decodedValue
|
||||
}
|
||||
|
||||
throw ServerError(serverResponse: serverResponse)
|
||||
}
|
||||
.mapError { error -> ServerError in
|
||||
let serverResponse = ServerResponse(error: error)
|
||||
NetworkRequestLogger.log(request: request, serverResponse: serverResponse)
|
||||
return ServerError(serverResponse: serverResponse)
|
||||
}
|
||||
.eraseToAnyPublisher()
|
||||
}
|
||||
}
|
||||
|
||||
extension URLRequest {
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ extension Networker {
|
|||
)
|
||||
|
||||
do {
|
||||
return try await urlSession.performReq(resource: resource)
|
||||
return try await urlSession.performRequest(resource: resource)
|
||||
} catch {
|
||||
throw (error as? ServerError) ?? .unknown
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ extension Networker {
|
|||
)
|
||||
|
||||
do {
|
||||
return try await urlSession.performReq(resource: resource)
|
||||
return try await urlSession.performRequest(resource: resource)
|
||||
} catch {
|
||||
throw (error as? ServerError) ?? .unknown
|
||||
}
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ extension Networker {
|
|||
)
|
||||
|
||||
do {
|
||||
return try await urlSession.performReq(resource: resource)
|
||||
return try await urlSession.performRequest(resource: resource)
|
||||
} catch {
|
||||
if let error = error as? ServerError {
|
||||
throw LoginError.make(serverError: error)
|
||||
|
|
|
|||
|
|
@ -1,63 +0,0 @@
|
|||
import Combine
|
||||
import SwiftUI
|
||||
|
||||
#if !os(macOS)
|
||||
import UIKit
|
||||
#endif
|
||||
|
||||
public extension Publishers {
|
||||
static var keyboardHeight: AnyPublisher<CGFloat, Never> {
|
||||
#if os(iOS)
|
||||
let willShow = NotificationCenter.default
|
||||
.publisher(for: UIApplication.keyboardWillShowNotification)
|
||||
.map(\.keyboardHeight)
|
||||
.eraseToAnyPublisher()
|
||||
|
||||
let willHide = NotificationCenter.default
|
||||
.publisher(for: UIApplication.keyboardWillHideNotification)
|
||||
.map { _ in CGFloat(0) }
|
||||
.eraseToAnyPublisher()
|
||||
|
||||
return Merge(willShow, willHide)
|
||||
.eraseToAnyPublisher()
|
||||
#elseif os(macOS)
|
||||
Future { $0(.success(CGFloat.zero)) }
|
||||
.eraseToAnyPublisher()
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
extension Notification {
|
||||
var keyboardHeight: CGFloat {
|
||||
#if os(iOS)
|
||||
(userInfo?[UIResponder.keyboardFrameEndUserInfoKey] as? CGRect)?.height ?? 0
|
||||
#elseif os(macOS)
|
||||
0
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
struct KeyboardAdaptive: ViewModifier {
|
||||
@State private var keyboardHeight: CGFloat = 0
|
||||
|
||||
func body(content: Content) -> some View {
|
||||
content
|
||||
.padding(.bottom, keyboardHeight)
|
||||
.onReceive(Publishers.keyboardHeight) { self.keyboardHeight = $0 }
|
||||
}
|
||||
}
|
||||
|
||||
extension View {
|
||||
func keyboardAdaptive() -> some View {
|
||||
ModifiedContent(content: self, modifier: KeyboardAdaptive())
|
||||
}
|
||||
}
|
||||
|
||||
extension View {
|
||||
func hideKeyboard() {
|
||||
#if os(iOS)
|
||||
UIApplication.shared
|
||||
.sendAction(#selector(UIResponder.resignFirstResponder), to: nil, from: nil, for: nil)
|
||||
#endif
|
||||
}
|
||||
}
|
||||
Loading…
Reference in a new issue