package com.suno.android.common_ui.components import androidx.compose.foundation.background import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import com.suno.android.common_core_utils.model.Url import com.suno.android.common_ui.components.images.ProfileAvatarImage import com.suno.android.common_ui.theme.ExtendedTheme @Composable fun ArtistMiniDetail( modifier: Modifier = Modifier, creatorAvatarUrl: Url?, creatorName: String, backgroundColor: Color = Color.Transparent, textColor: Color = ExtendedTheme.colors.textPrimary, onClick: () -> Unit, ) { Row( modifier .clip(RoundedCornerShape(6.dp)) .clickable { onClick.invoke() } .background( color = backgroundColor, ), verticalAlignment = Alignment.CenterVertically, ) { ProfileAvatarImage( modifier = modifier .padding(end = 8.dp) .size(24.dp), avatarUrl = creatorAvatarUrl, displayName = creatorName, contentDescription = creatorName, ) Text( text = creatorName, color = textColor, style = ExtendedTheme.typography.smallBody, fontSize = 14.sp, maxLines = 1, overflow = TextOverflow.Ellipsis, ) } } @Preview(showBackground = true) @Composable private fun ArtistMiniDetail_Preview() { ArtistMiniDetail( backgroundColor = Color(0xAAAAAAAA), creatorName = "ZeroNanachi \uD83D\uDE3C\uD83C\uDF63", creatorAvatarUrl = Url(""), onClick = {}, ) }