fix(creator): 후원 empty 실패 메시지를 표시한다
This commit is contained in:
@@ -123,10 +123,19 @@ class CreatorChannelDonationViewModel(
|
||||
}
|
||||
|
||||
fun consumeActionToastMessage() {
|
||||
val content = _donationStateLiveData.value as? CreatorChannelDonationUiState.Content ?: return
|
||||
if (content.actionToastMessage == null) return
|
||||
|
||||
_donationStateLiveData.value = content.copy(actionToastMessage = null)
|
||||
when (val state = _donationStateLiveData.value) {
|
||||
is CreatorChannelDonationUiState.Empty -> {
|
||||
if (state.actionToastMessage != null) {
|
||||
_donationStateLiveData.value = state.copy(actionToastMessage = null)
|
||||
}
|
||||
}
|
||||
is CreatorChannelDonationUiState.Content -> {
|
||||
if (state.actionToastMessage != null) {
|
||||
_donationStateLiveData.value = state.copy(actionToastMessage = null)
|
||||
}
|
||||
}
|
||||
else -> Unit
|
||||
}
|
||||
}
|
||||
|
||||
fun consumeDonationSuccessEvent(): Boolean {
|
||||
@@ -188,8 +197,11 @@ class CreatorChannelDonationViewModel(
|
||||
}
|
||||
|
||||
private fun setActionToastMessage(message: String?) {
|
||||
val content = _donationStateLiveData.value as? CreatorChannelDonationUiState.Content ?: return
|
||||
_donationStateLiveData.value = content.copy(actionToastMessage = message)
|
||||
when (val state = _donationStateLiveData.value) {
|
||||
is CreatorChannelDonationUiState.Empty -> _donationStateLiveData.value = state.copy(actionToastMessage = message)
|
||||
is CreatorChannelDonationUiState.Content -> _donationStateLiveData.value = state.copy(actionToastMessage = message)
|
||||
else -> Unit
|
||||
}
|
||||
}
|
||||
|
||||
private fun CreatorChannelDonationTabResponse.toContentState(
|
||||
@@ -220,7 +232,11 @@ class CreatorChannelDonationViewModel(
|
||||
|
||||
sealed interface CreatorChannelDonationUiState {
|
||||
data object Loading : CreatorChannelDonationUiState
|
||||
data class Empty(val donationCount: Int, val isOwner: Boolean) : CreatorChannelDonationUiState
|
||||
data class Empty(
|
||||
val donationCount: Int,
|
||||
val isOwner: Boolean,
|
||||
val actionToastMessage: String? = null
|
||||
) : CreatorChannelDonationUiState
|
||||
data class Error(val message: String?) : CreatorChannelDonationUiState
|
||||
data class Content(
|
||||
val donationCount: Int,
|
||||
|
||||
Reference in New Issue
Block a user