refactor(creator): 오디오 콘텐츠 공통 모델을 추가한다
This commit is contained in:
@@ -2,6 +2,8 @@ package kr.co.vividnext.sodalive.v2.creator.channel.audio.model
|
||||
|
||||
import kr.co.vividnext.sodalive.v2.creator.channel.audio.data.CreatorChannelAudioTabResponse
|
||||
import kr.co.vividnext.sodalive.v2.creator.channel.data.CreatorChannelAudioContentResponse
|
||||
import kr.co.vividnext.sodalive.v2.creator.channel.model.CreatorChannelAudioContentStatus
|
||||
import kr.co.vividnext.sodalive.v2.creator.channel.model.CreatorChannelAudioContentUiModel
|
||||
import kr.co.vividnext.sodalive.v2.widget.AudioContentTag
|
||||
|
||||
private const val ALL_THEME_TITLE = "전체"
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
package kr.co.vividnext.sodalive.v2.creator.channel.audio.model
|
||||
|
||||
import kr.co.vividnext.sodalive.v2.widget.AudioContentTag
|
||||
|
||||
data class CreatorChannelAudioThemeUiModel(
|
||||
val themeId: Long?,
|
||||
val title: String,
|
||||
@@ -13,21 +11,3 @@ data class CreatorChannelAudioRateUiModel(
|
||||
val purchasedCount: Int,
|
||||
val paidCount: Int
|
||||
)
|
||||
|
||||
data class CreatorChannelAudioContentUiModel(
|
||||
val audioContentId: Long,
|
||||
val title: String,
|
||||
val secondaryText: String,
|
||||
val imageUrl: String?,
|
||||
val price: Int,
|
||||
val showAdultBadge: Boolean,
|
||||
val tags: Set<AudioContentTag>,
|
||||
val status: CreatorChannelAudioContentStatus
|
||||
)
|
||||
|
||||
sealed interface CreatorChannelAudioContentStatus {
|
||||
data object Play : CreatorChannelAudioContentStatus
|
||||
data object Owned : CreatorChannelAudioContentStatus
|
||||
data object Rented : CreatorChannelAudioContentStatus
|
||||
data class Price(val price: Int) : CreatorChannelAudioContentStatus
|
||||
}
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
package kr.co.vividnext.sodalive.v2.creator.channel.model
|
||||
|
||||
import kr.co.vividnext.sodalive.v2.widget.AudioContentTag
|
||||
|
||||
data class CreatorChannelAudioContentUiModel(
|
||||
val audioContentId: Long,
|
||||
val title: String,
|
||||
val secondaryText: String?,
|
||||
val imageUrl: String?,
|
||||
val price: Int,
|
||||
val showAdultBadge: Boolean,
|
||||
val tags: Set<AudioContentTag>,
|
||||
val status: CreatorChannelAudioContentStatus
|
||||
)
|
||||
|
||||
sealed interface CreatorChannelAudioContentStatus {
|
||||
data object Play : CreatorChannelAudioContentStatus
|
||||
data object Owned : CreatorChannelAudioContentStatus
|
||||
data object Rented : CreatorChannelAudioContentStatus
|
||||
data class Price(val price: Int) : CreatorChannelAudioContentStatus
|
||||
}
|
||||
@@ -3,7 +3,7 @@ package kr.co.vividnext.sodalive.v2.creator.channel.audio
|
||||
import kr.co.vividnext.sodalive.v2.common.data.ContentSort
|
||||
import kr.co.vividnext.sodalive.v2.creator.channel.audio.data.CreatorChannelAudioTabResponse
|
||||
import kr.co.vividnext.sodalive.v2.creator.channel.audio.data.CreatorChannelAudioThemeResponse
|
||||
import kr.co.vividnext.sodalive.v2.creator.channel.audio.model.CreatorChannelAudioContentStatus
|
||||
import kr.co.vividnext.sodalive.v2.creator.channel.model.CreatorChannelAudioContentStatus
|
||||
import kr.co.vividnext.sodalive.v2.creator.channel.audio.model.CreatorChannelAudioRateUiModel
|
||||
import kr.co.vividnext.sodalive.v2.creator.channel.audio.model.effectiveSelectedThemeId
|
||||
import kr.co.vividnext.sodalive.v2.creator.channel.audio.model.toAudioContentUiModels
|
||||
|
||||
Reference in New Issue
Block a user