import type { Locale } from "@/config/i18nRoutes";

export type AltDict = Record<Locale, string>;

/**
 * Texte alternatif d'image localisé — WordPress est la source de vérité.
 *
 * Les alt sont gérés dans WP (Polylang « Traduction des médias »). Le front se
 * contente de les passer tels quels. Ce helper ne sert que de FILET DE SÉCURITÉ :
 *   - si WP fournit un alt (toute langue) → on l'utilise tel quel ;
 *   - sinon → on retombe sur le défaut traduit du dictionnaire (pas de FR codé
 *     en dur qui fuirait sur EN/ES quand l'alt WP est vide).
 *
 * Ainsi, dès que les alt EN/ES sont saisis dans WP, ils s'affichent
 * automatiquement et priment sur le défaut codé.
 */
export const pickAlt = (
  locale: Locale,
  wpAlt: string | null | undefined,
  dict: AltDict,
): string => (wpAlt && wpAlt.trim() ? wpAlt : dict[locale]);
