change (member moderation) : clean and add tests on Presenter

This commit is contained in:
ganfra 2025-05-21 18:31:08 +02:00
parent b0c95db0de
commit 2ac333bb52
4 changed files with 353 additions and 14 deletions

View file

@ -71,21 +71,19 @@ class RoomMemberModerationPresenter @Inject constructor(
fun handleEvent(event: RoomMemberModerationEvents) {
when (event) {
is RoomMemberModerationEvents.ShowActionsForUser -> {
coroutineScope.launch {
selectedUser = event.user
val member = room.membersStateFlow.value.roomMembers()?.firstOrNull {
it.userId == event.user.userId
}
moderationActions.value = computeModerationActions(
member = member,
canKick = canKick.value,
canBan = canBan.value,
currentUserMemberPowerLevel = currentUserMemberPowerLevel.value,
)
selectedUser = event.user
val member = room.membersStateFlow.value.roomMembers()?.firstOrNull {
it.userId == event.user.userId
}
moderationActions.value = computeModerationActions(
member = member,
canKick = canKick.value,
canBan = canBan.value,
currentUserMemberPowerLevel = currentUserMemberPowerLevel.value,
)
}
is RoomMemberModerationEvents.ProcessAction -> {
when (val action = event.action) {
when (event.action) {
is ModerationAction.DisplayProfile -> Unit
is ModerationAction.KickUser -> {
selectedUser = event.targetUser