36 lines
1.0 KiB
Swift
36 lines
1.0 KiB
Swift
//
|
|
// HomeTabRepository.swift
|
|
// SodaLive
|
|
//
|
|
// Created by klaus on 7/10/25.
|
|
//
|
|
|
|
import Foundation
|
|
import CombineMoya
|
|
import Combine
|
|
import Moya
|
|
|
|
class HomeTabRepository {
|
|
private let api = MoyaProvider<HomeApi>()
|
|
|
|
func fetchData() -> AnyPublisher<Response, MoyaError> {
|
|
return api.requestPublisher(.getHomeData)
|
|
}
|
|
|
|
func getLatestContentByTheme(theme: String) -> AnyPublisher<Response, MoyaError> {
|
|
return api.requestPublisher(.getLatestContentByTheme(theme: theme))
|
|
}
|
|
|
|
func getDayOfWeekSeriesList(dayOfWeek: SeriesPublishedDaysOfWeek) -> AnyPublisher<Response, MoyaError> {
|
|
return api.requestPublisher(.getDayOfWeekSeriesList(dayOfWeek: dayOfWeek))
|
|
}
|
|
|
|
func getRecommendContents() -> AnyPublisher<Response, MoyaError> {
|
|
return api.requestPublisher(.getRecommendContents)
|
|
}
|
|
|
|
func getContentRankingBySort(sort: ContentRankingSortType) -> AnyPublisher<Response, MoyaError> {
|
|
return api.requestPublisher(.getContentRankingBySort(sort: sort))
|
|
}
|
|
}
|