package com.suno.android.common_ui.components import androidx.compose.foundation.Image import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.fillMaxSize 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.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.layout.ContentScale import androidx.compose.ui.res.painterResource import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import com.suno.android.common_ui.theme.ExtendedTheme import com.suno.android.common_ui.theme.SunoTheme @Composable fun ShowSnackbar( message: String, onClick: () -> Unit = {}, ) { Box( modifier = Modifier .height(60.dp) .fillMaxWidth() .clip(RoundedCornerShape(16.dp)) .clickable { onClick.invoke() }, ) { Image( modifier = Modifier.fillMaxSize(), painter = painterResource(id = com.suno.android.common_ui.R.drawable.song_reveal_snackbar_bg), contentScale = ContentScale.FillBounds, contentDescription = "Alert", ) Box( modifier = Modifier .padding(4.dp) .fillMaxSize() .clip(RoundedCornerShape(16.dp)), contentAlignment = Alignment.Center, ) { Text( text = message, color = Color.White, style = ExtendedTheme.typography.body, ) } } } @Preview @Composable private fun ShowSnackbar_Preview() { SunoTheme { ShowSnackbar( message = "Songs ready, tap to play!", ) } }