// // AuthRepository.swift // SodaLive // // Created by klaus on 2023/08/10. // import Foundation import CombineMoya import Combine import Moya final class AuthRepository { private let api = MoyaProvider() func authCertificate(request: AuthVerifyRequest) -> AnyPublisher { #if AUTH_VERIFICATION_MOCK let requestToken = UserDefaults.string(forKey: .token) guard let data = AuthVerificationMock.shared.confirm(request: request, requestToken: requestToken) else { return Fail(error: MoyaError.statusCode(Response(statusCode: 401, data: Data()))) .eraseToAnyPublisher() } return Just(Response(statusCode: 200, data: data)) .setFailureType(to: MoyaError.self) .eraseToAnyPublisher() #else return api.requestPublisher(.auth(request: request)) #endif } }