// // ContentMainTabSeriesRepository.swift // SodaLive // // Created by klaus on 2/20/25. // import Foundation import CombineMoya import Combine import Moya final class ContentMainTabSeriesRepository { private let api = MoyaProvider() func getContentMainSeries() -> AnyPublisher { return api.requestPublisher( .getContentMainSeries( isAdultContentVisible: UserDefaults.isAdultContentVisible(), contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL ) ) } func getRecommendSeriesListByGenre(genreId: Int) -> AnyPublisher { return api.requestPublisher( .getRecommendSeriesListByGenre( genreId: genreId, isAdultContentVisible: UserDefaults.isAdultContentVisible(), contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL ) ) } func getRecommendSeriesByCreator(creatorId: Int) -> AnyPublisher { return api.requestPublisher( .getRecommendSeriesByCreator( creatorId: creatorId, isAdultContentVisible: UserDefaults.isAdultContentVisible(), contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL ) ) } func getCompletedSeries(page: Int, size: Int) -> AnyPublisher { return api.requestPublisher( .getCompletedSeries( isAdultContentVisible: UserDefaults.isAdultContentVisible(), contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL, page: page, size: size ) ) } }