import { Text, View } from "@react-pdf/renderer";

import { reportStyles } from "@/pdf/styles/report-styles";
import type { HeirShare } from "@/types/inheritance";
import { formatCurrency } from "@/utils/formatting";

interface HeirBreakdownTableProps {
  heirs: HeirShare[];
  currency: string;
}

export function HeirBreakdownTable({ heirs, currency }: HeirBreakdownTableProps) {
  return (
    <View style={reportStyles.section}>
      <Text style={reportStyles.sectionTitle}>Heir Breakdown</Text>
      <View style={reportStyles.tableHeader}>
        <Text style={reportStyles.colHeir}>Heir</Text>
        <Text style={reportStyles.colQty}>Qty</Text>
        <Text style={reportStyles.colFraction}>Fraction</Text>
        <Text style={reportStyles.colPercent}>Percent</Text>
        <Text style={reportStyles.colAmount}>Amount</Text>
      </View>

      {heirs.map((heir) => (
        <View key={`${heir.type}-${heir.fraction}`} style={reportStyles.tableRow}>
          <Text style={reportStyles.colHeir}>{heir.label}</Text>
          <Text style={reportStyles.colQty}>{heir.count}</Text>
          <Text style={reportStyles.colFraction}>{heir.fraction}</Text>
          <Text style={reportStyles.colPercent}>{heir.percentage.toFixed(2)}%</Text>
          <Text style={reportStyles.colAmount}>
            {formatCurrency(heir.amount, currency)}
          </Text>
        </View>
      ))}
    </View>
  );
}
