package com.suno.android.ui.screens.hooks.overlay.capsule import androidx.compose.foundation.layout.heightIn import androidx.compose.foundation.layout.size import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource 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.components.buttons.RoundedButton import com.suno.android.common_ui.components.omni.CircleIconButton import com.suno.android.common_ui.components.preview.SunoPreview import com.suno.android.common_ui.theme.SunoPink import com.suno.android.common_res.R as CommonResR private val ButtonSize = 44.dp private val ButtonBackground = Color.White.copy(alpha = 0.2f) @Composable fun AddClipToPlaylistButton( onClick: () -> Unit, isClipSaved: Boolean, modifier: Modifier = Modifier, ) { if (isClipSaved) { CircleIconButton( modifier = modifier.size(ButtonSize), vectorDrawableResId = R.drawable.check_v2, contentDescription = stringResource(CommonResR.string.save), onClick = onClick, bgColor = ButtonBackground, iconColor = SunoPink, ) } else { RoundedButton( buttonText = stringResource(CommonResR.string.save).uppercase(), onClick = onClick, modifier = modifier.heightIn(ButtonSize), backgroundColor = ButtonBackground, contentColor = Color.White, leadingPainter = painterResource(R.drawable.plus), ) } } @Preview @Composable private fun AddClipToPlaylistButton_Preview() { SunoPreview { AddClipToPlaylistButton( onClick = {}, isClipSaved = false, ) } } @Preview @Composable private fun AddClipToPlaylistButton_ClipSaved_Preview() { SunoPreview { AddClipToPlaylistButton( onClick = {}, isClipSaved = true, ) } }