/**
 * Génère les initiales d'un nom (max 2 caractères)
 * @param name - Le nom complet
 * @returns Les initiales en majuscules
 * @example getInitials("John Doe") // "JD"
 * @example getInitials("Jane") // "J"
 */
export function getInitials(name: string): string {
  if (!name || typeof name !== 'string') {
    return '?';
  }
  
  return name
    .split(' ')
    .map(n => n[0])
    .join('')
    .toUpperCase()
    .slice(0, 2);
}

/** Libellé de plan localisé (clés `dashboard.tier.*` dans les messages). */
export function translateTier(
  t: (key: string) => string,
  tier: string | undefined
): string {
  const key = `dashboard.tier.${tier ?? 'free'}`;
  const label = t(key);
  return label === key ? tier ?? t('dashboard.tier.free') : label;
}
