package com.suno.android.common_ui.components.buttons import androidx.compose.foundation.background import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material3.Icon 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.vector.ImageVector import androidx.compose.ui.res.vectorResource import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import com.suno.android.common_core_utils.environment.ThemeMode import com.suno.android.common_ui.R import com.suno.android.common_ui.theme.ExtendedTheme import com.suno.android.common_ui.theme.SunoTheme @Composable fun EditProfileOption( modifier: Modifier = Modifier, titleText: String, valueText: String, onClick: () -> Unit = {}, ) { Row( modifier = modifier .clip(RoundedCornerShape(8.dp)) .clickable { onClick.invoke() } .height(64.dp) .fillMaxWidth() .background(ExtendedTheme.colors.backgroundSecondary) .padding(horizontal = 16.dp), verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.SpaceBetween, ) { Column { Text( modifier = Modifier.padding(horizontal = 8.dp), text = titleText, style = ExtendedTheme.typography.smallBody, fontWeight = FontWeight.W500, color = ExtendedTheme.colors.textPrimary, ) Text( modifier = Modifier.padding(horizontal = 8.dp), text = valueText, style = ExtendedTheme.typography.smallBody, color = ExtendedTheme.colors.textPrimary, ) } Icon( imageVector = ImageVector.vectorResource(R.drawable.chevron_right), contentDescription = null, tint = ExtendedTheme.colors.textPrimary, ) } } @Preview @Composable private fun EditProfileOption_Preview() { SunoTheme { EditProfileOption( titleText = "Username", valueText = "Matt Robertson", ) } } @Preview @Composable private fun EditProfileOption_DarkMode_Preview() { SunoTheme(themeMode = ThemeMode.DARK) { EditProfileOption( titleText = "Username", valueText = "Matt Robertson", ) } }