package com.craigvg.lichun_android.ui.components.headers import androidx.compose.foundation.background import androidx.compose.foundation.layout.* import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.* 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.Brush import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.vector.ImageVector import androidx.compose.ui.unit.dp import com.craigvg.lichun_android.ui.theme.AppColors import com.craigvg.lichun_android.ui.theme.AppSpacing import com.craigvg.lichun_android.ui.theme.AppTypography /** * Resource pills header for bottom sheets showing energy/diamonds/money * Ported from iOS SheetHeaderView.swift */ @Composable fun SheetHeaderView( energy: Int, diamonds: Int, money: Int, modifier: Modifier = Modifier ) { Row( modifier = modifier .fillMaxWidth() .clip(RoundedCornerShape(AppSpacing.largeCornerRadius)) .background( Brush.linearGradient( colors = listOf( AppColors.surfaceElevated.copy(alpha = 0.95f), AppColors.surfaceElevated.copy(alpha = 0.85f) ) ) ) .padding(horizontal = AppSpacing.md, vertical = AppSpacing.sm), horizontalArrangement = Arrangement.SpaceEvenly, verticalAlignment = Alignment.CenterVertically ) { ResourcePill( icon = Icons.Default.Bolt, value = "$energy", color = AppColors.energy ) ResourcePill( icon = Icons.Default.Diamond, value = "$diamonds", color = AppColors.diamond ) ResourcePill( icon = Icons.Default.AttachMoney, value = "$money", color = AppColors.money ) } } @Composable private fun ResourcePill( icon: ImageVector, value: String, color: Color ) { Row( verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(4.dp) ) { Icon( imageVector = icon, contentDescription = null, tint = color, modifier = Modifier.size(16.dp) ) Text( text = value, style = AppTypography.captionBold, color = AppColors.primaryText ) } }