41 lines
1.2 KiB
Swift
41 lines
1.2 KiB
Swift
//
|
|
// RouletteRepository.swift
|
|
// SodaLive
|
|
//
|
|
// Created by klaus on 2023/12/06.
|
|
//
|
|
|
|
import Foundation
|
|
import CombineMoya
|
|
import Combine
|
|
import Moya
|
|
|
|
final class RouletteRepository {
|
|
private let api = MoyaProvider<RouletteApi>()
|
|
|
|
func getRoulette(creatorId: Int) -> AnyPublisher<Response, MoyaError> {
|
|
return api.requestPublisher(.getRoulette(creatorId: creatorId))
|
|
}
|
|
|
|
func getAllRoulette(creatorId: Int) -> AnyPublisher<Response, MoyaError> {
|
|
return api.requestPublisher(.getAllRoulette(creatorId: creatorId))
|
|
}
|
|
|
|
func createRoulette(request: CreateRouletteRequest) -> AnyPublisher<Response, MoyaError> {
|
|
return api.requestPublisher(.createRoulette(request: request))
|
|
}
|
|
|
|
func updateRoulette(request: UpdateRouletteRequest) -> AnyPublisher<Response, MoyaError> {
|
|
return api.requestPublisher(.updateRoulette(request: request))
|
|
}
|
|
|
|
func spinRoulette(request: SpinRouletteRequest) -> AnyPublisher<Response, MoyaError> {
|
|
return api.requestPublisher(.spinRoulette(request: request))
|
|
}
|
|
|
|
func refundRouletteDonation(roomId: Int) -> AnyPublisher<Response, MoyaError> {
|
|
return api.requestPublisher(.refundRouletteDonation(roomId: roomId))
|
|
}
|
|
}
|
|
|