fix(creator): 후원 empty 실패 메시지를 표시한다

This commit is contained in:
2026-06-22 22:06:58 +09:00
parent 4097181923
commit ba6616c81a
2 changed files with 42 additions and 7 deletions

View File

@@ -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,