Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit 98d7c23c authored by Wolf-Martell Montwé's avatar Wolf-Martell Montwé
Browse files

feat(message-list): wire active, read and unread states

parent d377f697
Loading
Loading
Loading
Loading
+43 −13
Original line number Diff line number Diff line
@@ -6,6 +6,8 @@ import kotlin.time.Clock
import kotlin.time.ExperimentalTime
import kotlinx.datetime.TimeZone
import kotlinx.datetime.toLocalDateTime
import net.thunderbird.core.ui.compose.designsystem.organism.message.ActiveMessageItem
import net.thunderbird.core.ui.compose.designsystem.organism.message.ReadMessageItem
import net.thunderbird.core.ui.compose.designsystem.organism.message.UnreadMessageItem

@OptIn(ExperimentalTime::class)
@@ -19,7 +21,8 @@ internal fun MessageItemContent(
    onAvatarClick: () -> Unit,
    onFavouriteClick: (Boolean) -> Unit,
) {
    UnreadMessageItem(
    when {
        isActive -> ActiveMessageItem(
            sender = "${item.displayName}",
            subject = item.subject ?: "n/a",
            preview = item.previewText,
@@ -32,4 +35,31 @@ internal fun MessageItemContent(
            favourite = item.isStarred,
            selected = isSelected,
        )
        item.isRead -> ReadMessageItem(
            sender = "${item.displayName}",
            subject = item.subject ?: "n/a",
            preview = item.previewText,
            receivedAt = Clock.System.now().toLocalDateTime(TimeZone.currentSystemDefault()),
            avatar = {},
            onClick = onClick,
            onLongClick = onLongClick,
            onLeadingClick = onAvatarClick,
            onFavouriteChange = onFavouriteClick,
            favourite = item.isStarred,
            selected = isSelected,
        )
        else -> UnreadMessageItem(
            sender = "${item.displayName}",
            subject = item.subject ?: "n/a",
            preview = item.previewText,
            receivedAt = Clock.System.now().toLocalDateTime(TimeZone.currentSystemDefault()),
            avatar = {},
            onClick = onClick,
            onLongClick = onLongClick,
            onLeadingClick = onAvatarClick,
            onFavouriteChange = onFavouriteClick,
            favourite = item.isStarred,
            selected = isSelected,
        )
    }
}