Quiztable/src/main/kotlin/components/EndCard.kt

50 lines
1.5 KiB
Kotlin

package components
import androidx.compose.foundation.layout.*
import androidx.compose.material.Button
import androidx.compose.material.Surface
import androidx.compose.material.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import data.Player
import data.toColor
@Suppress("FunctionName")
@Composable
fun EndCard(
playerPointMap: MutableMap<Player, Long>,
close: () -> Unit
) {
Box(
contentAlignment = Alignment.Center,
modifier = Modifier.fillMaxWidth()
.fillMaxHeight()
) {
val firstThreePlaces = playerPointMap.entries
.sortedBy { it.value }
.map { it.key }
.take(3)
val firstPlayer = firstThreePlaces.first()
Column(
horizontalAlignment = Alignment.CenterHorizontally,
verticalArrangement = Arrangement.Center
) {
Text(text = "Congratulations, ${firstPlayer.name}!")
for ((index, player) in firstThreePlaces.withIndex()) {
Row(horizontalArrangement = Arrangement.SpaceBetween) {
Text(text = "Place ${index + 1}")
Surface(color = player.color.toColor()) {
Text(text = player.name)
}
}
}
Button(
onClick = close
) {
Text(text = "Close")
}
}
}
}