quality: rename enum after PR review
This commit is contained in:
parent
401fc26b80
commit
2dcfdf6e4f
4 changed files with 12 additions and 12 deletions
|
|
@ -54,8 +54,8 @@ class RolesAndPermissionsPresenter(
|
||||||
derivedStateOf {
|
derivedStateOf {
|
||||||
val currentRole = roomInfo.roleOf(room.sessionId)
|
val currentRole = roomInfo.roleOf(room.sessionId)
|
||||||
when (currentRole) {
|
when (currentRole) {
|
||||||
is RoomMember.Role.Admin -> persistentListOf(DemoteActions.ToModerator, DemoteActions.ToMember)
|
is RoomMember.Role.Admin -> persistentListOf(SelfDemoteAction.ToModerator, SelfDemoteAction.ToMember)
|
||||||
is RoomMember.Role.Moderator -> persistentListOf(DemoteActions.ToMember)
|
is RoomMember.Role.Moderator -> persistentListOf(SelfDemoteAction.ToMember)
|
||||||
else -> persistentListOf()
|
else -> persistentListOf()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -88,7 +88,7 @@ class RolesAndPermissionsPresenter(
|
||||||
roomSupportsOwnerRole = roomInfo.privilegedCreatorRole,
|
roomSupportsOwnerRole = roomInfo.privilegedCreatorRole,
|
||||||
adminCount = adminCount,
|
adminCount = adminCount,
|
||||||
moderatorCount = moderatorCount,
|
moderatorCount = moderatorCount,
|
||||||
availableDemoteActions = availableDemoteActions,
|
availableSelfDemoteActions = availableDemoteActions,
|
||||||
changeOwnRoleAction = changeOwnRoleAction.value,
|
changeOwnRoleAction = changeOwnRoleAction.value,
|
||||||
resetPermissionsAction = resetPermissionsAction.value,
|
resetPermissionsAction = resetPermissionsAction.value,
|
||||||
eventSink = ::handleEvent,
|
eventSink = ::handleEvent,
|
||||||
|
|
|
||||||
|
|
@ -17,15 +17,15 @@ data class RolesAndPermissionsState(
|
||||||
val roomSupportsOwnerRole: Boolean,
|
val roomSupportsOwnerRole: Boolean,
|
||||||
val adminCount: Int?,
|
val adminCount: Int?,
|
||||||
val moderatorCount: Int?,
|
val moderatorCount: Int?,
|
||||||
val availableDemoteActions: ImmutableList<DemoteActions>,
|
val availableSelfDemoteActions: ImmutableList<SelfDemoteAction>,
|
||||||
val changeOwnRoleAction: AsyncAction<Unit>,
|
val changeOwnRoleAction: AsyncAction<Unit>,
|
||||||
val resetPermissionsAction: AsyncAction<Unit>,
|
val resetPermissionsAction: AsyncAction<Unit>,
|
||||||
val eventSink: (RolesAndPermissionsEvents) -> Unit,
|
val eventSink: (RolesAndPermissionsEvents) -> Unit,
|
||||||
) {
|
) {
|
||||||
val canDemoteSelf = availableDemoteActions.isNotEmpty()
|
val canSelfDemote = availableSelfDemoteActions.isNotEmpty()
|
||||||
}
|
}
|
||||||
|
|
||||||
enum class DemoteActions(val role: RoomMember.Role, val titleRes: Int) {
|
enum class SelfDemoteAction(val role: RoomMember.Role, val titleRes: Int) {
|
||||||
ToModerator(RoomMember.Role.Moderator, R.string.screen_room_roles_and_permissions_change_role_demote_to_moderator),
|
ToModerator(RoomMember.Role.Moderator, R.string.screen_room_roles_and_permissions_change_role_demote_to_moderator),
|
||||||
ToMember(RoomMember.Role.User, R.string.screen_room_roles_and_permissions_change_role_demote_to_member)
|
ToMember(RoomMember.Role.User, R.string.screen_room_roles_and_permissions_change_role_demote_to_member)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ class RolesAndPermissionsStateProvider : PreviewParameterProvider<RolesAndPermis
|
||||||
moderatorCount = 2,
|
moderatorCount = 2,
|
||||||
resetPermissionsAction = AsyncAction.Failure(IllegalStateException("Failed to reset permissions")),
|
resetPermissionsAction = AsyncAction.Failure(IllegalStateException("Failed to reset permissions")),
|
||||||
),
|
),
|
||||||
aRolesAndPermissionsState(availableDemoteActions = emptyList()),
|
aRolesAndPermissionsState(availableSelfDemoteActions = emptyList()),
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -55,14 +55,14 @@ internal fun aRolesAndPermissionsState(
|
||||||
roomSupportsOwners: Boolean = true,
|
roomSupportsOwners: Boolean = true,
|
||||||
adminCount: Int = 0,
|
adminCount: Int = 0,
|
||||||
moderatorCount: Int = 0,
|
moderatorCount: Int = 0,
|
||||||
availableDemoteActions: List<DemoteActions> = listOf(DemoteActions.ToModerator, DemoteActions.ToMember),
|
availableSelfDemoteActions: List<SelfDemoteAction> = listOf(SelfDemoteAction.ToModerator, SelfDemoteAction.ToMember),
|
||||||
changeOwnRoleAction: AsyncAction<Unit> = AsyncAction.Uninitialized,
|
changeOwnRoleAction: AsyncAction<Unit> = AsyncAction.Uninitialized,
|
||||||
resetPermissionsAction: AsyncAction<Unit> = AsyncAction.Uninitialized,
|
resetPermissionsAction: AsyncAction<Unit> = AsyncAction.Uninitialized,
|
||||||
eventSink: (RolesAndPermissionsEvents) -> Unit = {},
|
eventSink: (RolesAndPermissionsEvents) -> Unit = {},
|
||||||
) = RolesAndPermissionsState(
|
) = RolesAndPermissionsState(
|
||||||
roomSupportsOwnerRole = roomSupportsOwners,
|
roomSupportsOwnerRole = roomSupportsOwners,
|
||||||
adminCount = adminCount,
|
adminCount = adminCount,
|
||||||
availableDemoteActions = availableDemoteActions.toImmutableList(),
|
availableSelfDemoteActions = availableSelfDemoteActions.toImmutableList(),
|
||||||
moderatorCount = moderatorCount,
|
moderatorCount = moderatorCount,
|
||||||
changeOwnRoleAction = changeOwnRoleAction,
|
changeOwnRoleAction = changeOwnRoleAction,
|
||||||
resetPermissionsAction = resetPermissionsAction,
|
resetPermissionsAction = resetPermissionsAction,
|
||||||
|
|
|
||||||
|
|
@ -76,7 +76,7 @@ fun RolesAndPermissionsView(
|
||||||
},
|
},
|
||||||
onClick = { rolesAndPermissionsNavigator.openModeratorList() },
|
onClick = { rolesAndPermissionsNavigator.openModeratorList() },
|
||||||
)
|
)
|
||||||
if (state.canDemoteSelf) {
|
if (state.canSelfDemote) {
|
||||||
ListItem(
|
ListItem(
|
||||||
headlineContent = { Text(stringResource(R.string.screen_room_roles_and_permissions_change_my_role)) },
|
headlineContent = { Text(stringResource(R.string.screen_room_roles_and_permissions_change_my_role)) },
|
||||||
onClick = { state.eventSink(RolesAndPermissionsEvents.ChangeOwnRole) },
|
onClick = { state.eventSink(RolesAndPermissionsEvents.ChangeOwnRole) },
|
||||||
|
|
@ -117,7 +117,7 @@ fun RolesAndPermissionsView(
|
||||||
when (state.changeOwnRoleAction) {
|
when (state.changeOwnRoleAction) {
|
||||||
is AsyncAction.Confirming -> {
|
is AsyncAction.Confirming -> {
|
||||||
ChangeOwnRoleBottomSheet(
|
ChangeOwnRoleBottomSheet(
|
||||||
availableDemoteActions = state.availableDemoteActions,
|
availableDemoteActions = state.availableSelfDemoteActions,
|
||||||
eventSink = state.eventSink,
|
eventSink = state.eventSink,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
@ -137,7 +137,7 @@ fun RolesAndPermissionsView(
|
||||||
@OptIn(ExperimentalMaterial3Api::class)
|
@OptIn(ExperimentalMaterial3Api::class)
|
||||||
@Composable
|
@Composable
|
||||||
private fun ChangeOwnRoleBottomSheet(
|
private fun ChangeOwnRoleBottomSheet(
|
||||||
availableDemoteActions: ImmutableList<DemoteActions>,
|
availableDemoteActions: ImmutableList<SelfDemoteAction>,
|
||||||
eventSink: (RolesAndPermissionsEvents) -> Unit,
|
eventSink: (RolesAndPermissionsEvents) -> Unit,
|
||||||
) {
|
) {
|
||||||
val coroutineScope = rememberCoroutineScope()
|
val coroutineScope = rememberCoroutineScope()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue