// i18n minimal, statique-friendly (routage par dossier). FR par défaut ; EN prévu sur /en/.
// Le contenu éditorial FR reste dans les composants ; ce module gère locale + microcopy.

export type Locale = 'fr' | 'en';
export const LOCALES: Locale[] = ['fr', 'en'];
export const DEFAULT_LOCALE: Locale = 'fr';

/** Déduit la locale depuis le premier segment du chemin (/en/… → 'en', sinon 'fr'). */
export function localeFromPath(pathname: string): Locale {
	const seg = pathname.replace(/^\/+/, '').split('/')[0];
	return seg === 'en' ? 'en' : 'fr';
}

/** Retourne le chemin équivalent dans l'autre locale (paires FR ↔ EN). */
export function alternatePath(pathname: string, target: Locale): string {
	const current = localeFromPath(pathname);
	if (current === target) return pathname;
	if (target === 'en') return '/en' + (pathname === '/' ? '' : pathname);
	return pathname.replace(/^\/en/, '') || '/';
}

/** Code lang HTML (BCP-47). 'gcf' = créole guadeloupéen pour la microcopy. */
export const HTML_LANG: Record<Locale, string> = { fr: 'fr', en: 'en' };
