package com.suno.android.common_ui.components.buttons import androidx.annotation.DrawableRes import androidx.compose.foundation.background import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.Arrangement 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.tooling.preview.Preview import androidx.compose.ui.unit.dp 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 OnboardingImageSelectionOption( modifier: Modifier = Modifier, @DrawableRes imageVectorRes: Int, displayOptionText: String, onClick: () -> Unit = {}, ) { Row( modifier = modifier .clip(RoundedCornerShape(8.dp)) .clickable { onClick.invoke() } .height(56.dp) .fillMaxWidth() .background(ExtendedTheme.colors.backgroundQuarternary) .padding(horizontal = 16.dp), verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.Center, ) { Icon( imageVector = ImageVector.vectorResource( id = imageVectorRes, ), contentDescription = null, tint = ExtendedTheme.colors.textPrimary, ) Text( modifier = Modifier.padding(horizontal = 8.dp), text = displayOptionText, style = ExtendedTheme.typography.body, color = ExtendedTheme.colors.textPrimary, ) } } @Preview @Composable private fun OnboardingImageSelectionOption_Preview() { SunoTheme { OnboardingImageSelectionOption( imageVectorRes = R.drawable.images, displayOptionText = "Gallery", ) } }