import { useLocalSearchParams } from 'expo-router';
import { ScrollView, Text } from 'react-native';
import { SafeAreaView } from 'react-native-safe-area-context';
import { usePartners } from '@/api/ressources';
import { Carte, EnteteFiche, LigneInfo } from '@/composants/ui';
import { useTokens } from '@/theme/tokens';

/** Fiche tiers — R6.3, ajoutée en recette (02/08). Consultation seule (D4) :
 *  identité, contact, activité (BC en cours pour un fournisseur, sites
 *  rattachés pour un client/syndic) — déjà connu de la liste, pas de
 *  requête supplémentaire. Création/édition restent au web. */
export default function PageFicheTiers() {
  const t = useTokens();
  const { id } = useLocalSearchParams<{ id: string }>();
  const { data: partners } = usePartners();
  const p = (partners ?? []).find((x) => x.id === id);
  if (!p) return null;

  return (
    <SafeAreaView style={{ flex: 1, backgroundColor: t.fond }} edges={['top']}>
      <ScrollView contentContainerStyle={{ padding: 14, gap: 10 }}>
        <EnteteFiche titre={p.name} />
        <Carte titre="Identité">
          <LigneInfo nom="Type" valeur={p.kind === 'SUPPLIER' ? 'Fournisseur' : 'Client'} />
          <LigneInfo nom="Statut" valeur={p.isActive ? 'Actif' : 'Désactivé'} />
          <LigneInfo nom="Contact" valeur={p.contactName ?? '—'} />
          <LigneInfo nom="Téléphone" valeur={p.phone ?? '—'} />
          <LigneInfo nom="E-mail" valeur={p.email ?? '—'} />
          <LigneInfo nom="Ville" valeur={p.city ?? '—'} />
        </Carte>
        {p.kind === 'SUPPLIER' ? (
          <Carte titre="Achats">
            <LigneInfo nom="BC en cours" valeur={String(p.openOrders)} />
          </Carte>
        ) : null}
        {p.siteNames.length ? (
          <Carte titre="Sites rattachés">
            {p.siteNames.map((s) => (
              <Text key={s} style={{ fontFamily: 'Manrope_600SemiBold', fontSize: 12.5, color: t.encre }}>
                {s}
              </Text>
            ))}
          </Carte>
        ) : null}
      </ScrollView>
    </SafeAreaView>
  );
}
