package com.aistudio.bonjuteri.jwlry.ui.screens import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.padding import androidx.compose.foundation.lazy.grid.GridCells import androidx.compose.foundation.lazy.grid.LazyVerticalGrid import androidx.compose.foundation.lazy.grid.items import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Favorite import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp import com.aistudio.bonjuteri.jwlry.model.Product import com.aistudio.bonjuteri.jwlry.ui.components.EmptyStateView import com.aistudio.bonjuteri.jwlry.ui.components.ProductCard import com.aistudio.bonjuteri.jwlry.ui.theme.OffWhite import com.aistudio.bonjuteri.jwlry.ui.theme.PrimaryBlack @Composable fun FavoritesScreen( favoriteProducts: List, onProductClick: (Product) -> Unit, onFavoriteToggle: (Product) -> Unit, onAddToCart: (Product) -> Unit, onStartShoppingClick: () -> Unit, modifier: Modifier = Modifier ) { Column( modifier = modifier .fillMaxSize() .background(OffWhite) ) { Text( text = "Favorilerim (${favoriteProducts.size})", style = MaterialTheme.typography.headlineMedium.copy( fontWeight = FontWeight.Bold, color = PrimaryBlack ), modifier = Modifier.padding(16.dp) ) if (favoriteProducts.isEmpty()) { EmptyStateView( icon = Icons.Filled.Favorite, title = "Favori Ürününüz Yok", description = "Beğendiğiniz ürünlerin üzerindeki kalp simgesine dokunarak favorilerinize ekleyebilirsiniz.", actionButtonText = "Koleksiyonu Keşfet", onActionClick = onStartShoppingClick, modifier = Modifier.fillMaxSize() ) } else { LazyVerticalGrid( columns = GridCells.Fixed(2), modifier = Modifier.fillMaxSize(), contentPadding = PaddingValues(12.dp), horizontalArrangement = Arrangement.spacedBy(10.dp), verticalArrangement = Arrangement.spacedBy(10.dp) ) { items(favoriteProducts, key = { it.id }) { product -> ProductCard( product = product, isFavorite = true, onProductClick = onProductClick, onFavoriteToggle = onFavoriteToggle, onAddToCart = onAddToCart ) } } } } }