Files
sodalive-ios/SodaLive/Sources/Content/Series/Main/SeriesMainRepository.swift

48 lines
1.2 KiB
Swift

//
// SeriesMainRepository.swift
// SodaLive
//
// Created by klaus on 11/14/25.
//
import Foundation
import CombineMoya
import Combine
import Moya
class SeriesMainRepository {
private let api = MoyaProvider<SeriesMainApi>()
func fetchHome() -> AnyPublisher<Response, MoyaError> {
return api.requestPublisher(.fetchHome)
}
func getRecommendSeriesList() -> AnyPublisher<Response, MoyaError> {
return api.requestPublisher(.getRecommendSeriesList)
}
func getDayOfWeekSeriesList(dayOfWeek: SeriesPublishedDaysOfWeek, page: Int, size: Int) -> AnyPublisher<Response, MoyaError> {
return api.requestPublisher(
.getDayOfWeekSeriesList(
dayOfWeek: dayOfWeek,
page: page,
size: size
)
)
}
func getGenreList() -> AnyPublisher<Response, MoyaError> {
return api.requestPublisher(.getGenreList)
}
func getSeriesListByGenre(genreId: Int, page: Int, size: Int) -> AnyPublisher<Response, MoyaError> {
return api.requestPublisher(
.getSeriesListByGenre(
genreId: genreId,
page: page,
size: size
)
)
}
}