feat(creator): 후원 empty 액션을 연결한다
This commit is contained in:
@@ -71,6 +71,11 @@ class CreatorChannelDonationFragment : BaseFragment<FragmentCreatorChannelDonati
|
||||
viewModel.postChannelDonation(can, isSecret, message)
|
||||
}
|
||||
}
|
||||
btnCreatorChannelDonationEmptyWrite.setOnClickListener {
|
||||
host.onCreatorChannelDonationRequested { can, isSecret, message ->
|
||||
viewModel.postChannelDonation(can, isSecret, message)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun observeViewModel() {
|
||||
@@ -81,6 +86,7 @@ class CreatorChannelDonationFragment : BaseFragment<FragmentCreatorChannelDonati
|
||||
is CreatorChannelDonationUiState.Error -> bindError(state)
|
||||
is CreatorChannelDonationUiState.Content -> bindContent(state)
|
||||
}
|
||||
handleActionToastMessage(state)
|
||||
handleDonationSuccessEvent()
|
||||
}
|
||||
}
|
||||
@@ -90,6 +96,7 @@ class CreatorChannelDonationFragment : BaseFragment<FragmentCreatorChannelDonati
|
||||
layoutCreatorChannelDonationCountBar.isVisible = false
|
||||
rvCreatorChannelDonation.isVisible = false
|
||||
layoutCreatorChannelDonationEmpty.isVisible = false
|
||||
btnCreatorChannelDonationEmptyWrite.isVisible = false
|
||||
tvCreatorChannelDonationErrorMessage.isVisible = false
|
||||
btnCreatorChannelDonationRetry.isVisible = false
|
||||
btnCreatorChannelDonationWrite.isVisible = false
|
||||
@@ -100,6 +107,7 @@ class CreatorChannelDonationFragment : BaseFragment<FragmentCreatorChannelDonati
|
||||
layoutCreatorChannelDonationCountBar.isVisible = false
|
||||
rvCreatorChannelDonation.isVisible = false
|
||||
layoutCreatorChannelDonationEmpty.isVisible = true
|
||||
btnCreatorChannelDonationEmptyWrite.isVisible = !state.isOwner
|
||||
tvCreatorChannelDonationEmptyMessage.setText(
|
||||
if (state.isOwner) {
|
||||
R.string.creator_channel_donation_empty_owner_title
|
||||
@@ -118,6 +126,7 @@ class CreatorChannelDonationFragment : BaseFragment<FragmentCreatorChannelDonati
|
||||
layoutCreatorChannelDonationCountBar.isVisible = false
|
||||
rvCreatorChannelDonation.isVisible = false
|
||||
layoutCreatorChannelDonationEmpty.isVisible = false
|
||||
btnCreatorChannelDonationEmptyWrite.isVisible = false
|
||||
tvCreatorChannelDonationErrorMessage.isVisible = true
|
||||
tvCreatorChannelDonationErrorMessage.text = state.message ?: getString(R.string.creator_channel_donation_error_message)
|
||||
btnCreatorChannelDonationRetry.isVisible = true
|
||||
@@ -131,6 +140,7 @@ class CreatorChannelDonationFragment : BaseFragment<FragmentCreatorChannelDonati
|
||||
rvCreatorChannelDonation.isVisible = true
|
||||
donationAdapter.submitItems(state.rankings, state.donations)
|
||||
layoutCreatorChannelDonationEmpty.isVisible = false
|
||||
btnCreatorChannelDonationEmptyWrite.isVisible = false
|
||||
tvCreatorChannelDonationErrorMessage.isVisible = false
|
||||
btnCreatorChannelDonationRetry.isVisible = false
|
||||
btnCreatorChannelDonationWrite.isVisible = !state.isOwner
|
||||
@@ -139,10 +149,17 @@ class CreatorChannelDonationFragment : BaseFragment<FragmentCreatorChannelDonati
|
||||
Toast.makeText(requireContext(), it, Toast.LENGTH_SHORT).show()
|
||||
viewModel.consumePaginationErrorMessage()
|
||||
}
|
||||
state.actionToastMessage?.let {
|
||||
Toast.makeText(requireContext(), it, Toast.LENGTH_SHORT).show()
|
||||
viewModel.consumeActionToastMessage()
|
||||
}
|
||||
}
|
||||
|
||||
private fun handleActionToastMessage(state: CreatorChannelDonationUiState) {
|
||||
val message = when (state) {
|
||||
is CreatorChannelDonationUiState.Empty -> state.actionToastMessage
|
||||
is CreatorChannelDonationUiState.Content -> state.actionToastMessage
|
||||
else -> null
|
||||
} ?: return
|
||||
|
||||
Toast.makeText(requireContext(), message, Toast.LENGTH_SHORT).show()
|
||||
viewModel.consumeActionToastMessage()
|
||||
}
|
||||
|
||||
private fun handleDonationSuccessEvent() {
|
||||
|
||||
Reference in New Issue
Block a user