@props(['alternates' => null])
@php
$supportedLocales = config('wasoria.supported_locales', ['fr', 'en']);
$defaultLocale = config('wasoria.default_locale', 'fr');
if (! $alternates) {
// Auto-generate alternates from current route name
$currentRouteName = Route::currentRouteName() ?? '';
// Strip locale prefix: "fr.approach" → "approach"
$baseName = preg_replace('/^(' . implode('|', $supportedLocales) . ')\./', '', $currentRouteName);
$routeParams = Route::current()?->parameters() ?? [];
$alternates = [];
foreach ($supportedLocales as $locale) {
try {
$alternates[$locale] = route("{$locale}.{$baseName}", $routeParams, true);
} catch (\Throwable) {
// Route may not exist for this locale
}
}
}
@endphp
@foreach($alternates as $locale => $url)
@if($locale !== 'x-default')
@endif
@endforeach
@if(isset($alternates['x-default']))
@elseif(isset($alternates[$defaultLocale]))
@endif