<template>
  <UCard class="brand-card border border-transparent">
    <template #header>
      <h2 class="text-xl font-bold brand-section-title">Inversión Restante a Realizar</h2>
    </template>

    <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4">
      <MetricCard
        label="Inversión Restante Oreado"
        :value="formatCurrency(metrics.inversionRestanteOreado.value)"
        variant="warning"
      />
      <MetricCard
        label="Inversión Restante Mojado"
        :value="formatCurrency(metrics.inversionRestanteMojado.value)"
        variant="warning"
      />
      <MetricCard
        label="Inversión Restante Uva"
        :value="formatCurrency(metrics.inversionRestanteUva.value)"
        variant="warning"
      />
      <MetricCard
        label="Inversión Restante Esperada"
        :value="formatCurrency(metrics.inversionRestanteEsperada.value)"
        variant="danger"
        class="font-bold"
      />
    </div>
  </UCard>
</template>

<script setup lang="ts">
import type { IngresosMetrics } from '~/composables/useIngresosMetrics'

defineProps<{
  metrics: IngresosMetrics
}>()

const formatCurrency = (value: number) => {
  return new Intl.NumberFormat('es-HN', {
    style: 'currency',
    currency: 'HNL',
    minimumFractionDigits: 2,
    maximumFractionDigits: 2
  }).format(value).replace('HNL', 'L')
}
</script>