--- // Mapping des URLs entre langues const translations: Record> = { '/a-propos': { fr: '/a-propos', en: '/en/about', ar: '/ar/نبذة-عني' }, '/en/about': { fr: '/a-propos', en: '/en/about', ar: '/ar/نبذة-عني' }, '/ar/نبذة-عني': { fr: '/a-propos', en: '/en/about', ar: '/ar/نبذة-عني' }, // Page d'accueil '/': { fr: '/', en: '/en', ar: '/ar' }, '/en': { fr: '/', en: '/en', ar: '/ar' }, '/ar': { fr: '/', en: '/en', ar: '/ar' } }; // Détection de la langue courante const pathname = Astro.url.pathname.replace(/\/$/, '') || '/'; const currentLang = pathname.startsWith('/en') ? 'en' : pathname.startsWith('/ar') ? 'ar' : 'fr'; // Récupération des liens traduits ou fallback vers les pages d'accueil const links = translations[pathname] || { fr: '/', en: '/en', ar: '/ar' }; const languages = [ { code: 'fr', label: 'FR', name: 'Français' }, { code: 'en', label: 'EN', name: 'English' }, { code: 'ar', label: 'ع', name: 'العربية' } ]; ---
{languages.map((lang, index) => ( <> {index > 0 && ·} {lang.code === currentLang ? ( {lang.label} ) : ( {lang.label} )} ))}