From 1b3429f4476d51d775bd58d3b63cc7511bcce89e Mon Sep 17 00:00:00 2001 From: Infi Date: Mon, 21 Aug 2023 14:27:08 +0500 Subject: [PATCH] fix: sort roles by rank in user sheet Signed-off-by: Infi --- .../chat/revolt/sheets/UserContextSheet.kt | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/chat/revolt/sheets/UserContextSheet.kt b/app/src/main/java/chat/revolt/sheets/UserContextSheet.kt index f82c510a..0a7fc1e6 100644 --- a/app/src/main/java/chat/revolt/sheets/UserContextSheet.kt +++ b/app/src/main/java/chat/revolt/sheets/UserContextSheet.kt @@ -82,16 +82,18 @@ fun UserContextSheet( horizontalArrangement = Arrangement.spacedBy(8.dp), verticalArrangement = Arrangement.spacedBy(8.dp), ) { - it.forEach { roleId -> - val role = server?.roles?.get(roleId) - role?.let { - RoleChip( - label = role.name ?: roleId, - brush = role.colour?.let { WebCompat.parseColour(it) } - ?: Brush.solidColor(LocalContentColor.current) - ) + it + .map { roleId -> server?.roles?.get(roleId) } + .sortedBy { it?.rank ?: 0.0 } + .forEach { role -> + role?.let { + RoleChip( + label = role.name ?: "null", + brush = role.colour?.let { WebCompat.parseColour(it) } + ?: Brush.solidColor(LocalContentColor.current) + ) + } } - } } }