@props([ 'hreflangAlternates' => [], ]) @php $supportedLocales = config('wasoria.supported_locales', ['fr', 'en']); $currentLocale = app()->getLocale(); // Use hreflang alternates (from controllers) for translated slug resolution // This handles blog articles, tag pages, etc. where slugs differ per locale $alternates = $hreflangAlternates; // Auto-generate alternates from current route name if not provided if (empty($alternates)) { $currentRouteName = Route::currentRouteName() ?? ''; $baseName = preg_replace('/^(' . implode('|', $supportedLocales) . ')\./', '', $currentRouteName); $routeParams = Route::current()?->parameters() ?? []; foreach ($supportedLocales as $loc) { try { $alternates[$loc] = route("{$loc}.{$baseName}", $routeParams, true); } catch (\Throwable) { // Fallback: swap locale prefix in current URL $alternates[$loc] = url($loc); } } } $localeLabels = [ 'fr' => 'FR', 'en' => 'EN', 'de' => 'DE', 'es' => 'ES', 'it' => 'IT', ]; @endphp