Files
sodalive-ios/SodaLive/Sources/Chat/Talk/Room/Quota/ChatQuotaPurchaseRequest.swift

49 lines
959 B
Swift

//
// ChatQuotaPurchaseRequest.swift
// SodaLive
//
// Created by klaus on 9/2/25.
//
struct ChatQuotaPurchaseRequest: Encodable {
let container: String = "ios"
let chargeType: ChatRoomQuotaChargeType
let canOption: ChatRoomQuotaCanOption?
init(
chargeType: ChatRoomQuotaChargeType = .can,
canOption: ChatRoomQuotaCanOption? = nil
) {
self.chargeType = chargeType
self.canOption = canOption
}
}
enum ChatRoomQuotaChargeType: String, Encodable {
case can = "CAN"
case ad = "AD"
}
enum ChatRoomQuotaCanOption: String, Encodable {
case can10 = "CAN_10"
case can20 = "CAN_20"
var needCan: Int {
switch self {
case .can10:
return 10
case .can20:
return 20
}
}
var quota: Int {
switch self {
case .can10:
return 15
case .can20:
return 40
}
}
}