//
//  ContentMainTabFreeRepository.swift
//  SodaLive
//
//  Created by klaus on 2/22/25.
//

import Foundation
import CombineMoya
import Combine
import Moya

final class ContentMainTabFreeRepository {
    
    private let api = MoyaProvider<ContentApi>()
    
    func getContentMainFree() -> AnyPublisher<Response, MoyaError> {
        return api.requestPublisher(.getContentMainFree)
    }
    
    func getIntroduceCreatorList(page: Int, size: Int) -> AnyPublisher<Response, MoyaError> {
        return api.requestPublisher(.getIntroduceCreatorList(page: page, size: size))
    }
    
    func getNewContentOfTheme(theme: String, page: Int = 1, size: Int = 20) -> AnyPublisher<Response, MoyaError> {
        return api.requestPublisher(.getNewFreeContentOfTheme(theme: theme, page: page, size: size))
    }
    
    func getPopularContentByCreator(creatorId: Int) -> AnyPublisher<Response, MoyaError> {
        return api.requestPublisher(.getPopularFreeContentByCreator(creatorId: creatorId))
    }
}