diff --git a/core/ui/src/main/kotlin/com/bff/wespot/ui/ReservedMessageItem.kt b/core/ui/src/main/kotlin/com/bff/wespot/ui/ReservedMessageItem.kt index 8ca9fc4d..d8c9ffde 100644 --- a/core/ui/src/main/kotlin/com/bff/wespot/ui/ReservedMessageItem.kt +++ b/core/ui/src/main/kotlin/com/bff/wespot/ui/ReservedMessageItem.kt @@ -24,13 +24,15 @@ import coil.compose.AsyncImage import coil.request.ImageRequest import com.bff.wespot.designsystem.theme.StaticTypeScale import com.bff.wespot.designsystem.theme.WeSpotThemeManager -import com.bff.wespot.model.message.response.Message @Composable fun ReservedMessageItem( - reservedMessage: Message, + title: String, + subTitle: String, + backgroundColor: String, + iconUrl: String, chipText: String, - chipEnabled: Boolean = false, + chipEnabled: Boolean = true, chipDisabledText: String = "", onClick: () -> Unit, ) { @@ -39,22 +41,20 @@ fun ReservedMessageItem( modifier = Modifier.padding(start = 18.dp, end = 18.dp, top = 12.dp), verticalAlignment = Alignment.CenterVertically, ) { - val profile = reservedMessage.receiver.profileCharacter - Box( modifier = Modifier .size(42.dp) .clip(CircleShape) .background( runCatching { - Color(parseColor(profile.backgroundColor)) + Color(parseColor(backgroundColor)) }.getOrDefault(WeSpotThemeManager.colors.cardBackgroundColor), ), contentAlignment = Alignment.Center, ) { AsyncImage( model = ImageRequest.Builder(LocalContext.current) - .data(profile.iconUrl) + .data(iconUrl) .crossfade(true) .build(), contentDescription = stringResource(com.bff.wespot.ui.R.string.user_character_image), @@ -67,13 +67,13 @@ fun ReservedMessageItem( .weight(1f), ) { Text( - text = stringResource(com.bff.wespot.designsystem.R.string.letter_receiver), + text = title, style = StaticTypeScale.Default.body6, color = WeSpotThemeManager.colors.txtSubColor, ) Text( - text = reservedMessage.receiver.toDescription(), + text = subTitle, style = StaticTypeScale.Default.body6, color = WeSpotThemeManager.colors.txtTitleColor, ) diff --git a/feature/entire/src/main/java/com/bff/wespot/entire/screen/screen/BlockListScreen.kt b/feature/entire/src/main/java/com/bff/wespot/entire/screen/screen/BlockListScreen.kt index 3a4ae656..d7c7e5fe 100644 --- a/feature/entire/src/main/java/com/bff/wespot/entire/screen/screen/BlockListScreen.kt +++ b/feature/entire/src/main/java/com/bff/wespot/entire/screen/screen/BlockListScreen.kt @@ -58,14 +58,15 @@ fun BlockListScreen( color = WeSpotThemeManager.colors.txtTitleColor, ) - LazyColumn( - verticalArrangement = Arrangement.spacedBy(12.dp), - ) { - items(state.blockList, key = { message -> message.id }) { item -> + LazyColumn(verticalArrangement = Arrangement.spacedBy(12.dp)) { + items(state.blockedMessageList, key = { message -> message.id }) { item -> ReservedMessageItem( - reservedMessage = item, + title = stringResource(com.bff.wespot.designsystem.R.string.letter_sender), + subTitle = item.senderName, + backgroundColor = item.senderProfile.backgroundColor, + iconUrl = item.senderProfile.iconUrl, chipText = stringResource(R.string.unblock), - chipEnabled = item.id in state.unBlockList, + chipEnabled = item.id !in state.unBlockList, chipDisabledText = stringResource(R.string.unblock_done), onClick = { action(EntireAction.UnBlockMessage(item.id)) diff --git a/feature/message/src/main/kotlin/com/bff/wespot/message/screen/ReservedMessageScreen.kt b/feature/message/src/main/kotlin/com/bff/wespot/message/screen/ReservedMessageScreen.kt index 439b8601..d3ce58c0 100644 --- a/feature/message/src/main/kotlin/com/bff/wespot/message/screen/ReservedMessageScreen.kt +++ b/feature/message/src/main/kotlin/com/bff/wespot/message/screen/ReservedMessageScreen.kt @@ -91,7 +91,10 @@ fun ReservedMessageScreen( ) { items(state.reservedMessageList, key = { message -> message.id }) { item -> ReservedMessageItem( - reservedMessage = item, + title = stringResource(string.letter_receiver), + subTitle = item.receiver.toDescription(), + backgroundColor = item.receiver.profileCharacter.backgroundColor, + iconUrl = item.receiver.profileCharacter.iconUrl, chipText = stringResource(R.string.message_edit), onClick = { navigator.navigateMessageEditScreen(