@props([ 'variant' => 'default', ]) @php $languages = available_languages(); $priorityLanguageCodes = ['tr', 'en', 'de', 'ru']; $priorityLanguages = collect($priorityLanguageCodes) ->map(fn (string $code) => $languages->firstWhere('code', $code)) ->filter(); $otherLanguages = $languages->reject( fn ($language) => in_array($language->code, $priorityLanguageCodes, true) ); $languages = $priorityLanguages->concat($otherLanguages)->values(); $currentLang = current_language_code(); $currentLanguage = $languages->firstWhere('code', $currentLang); $languageCollapseId = 'offcanvas-language-collapse'; $languageLabel = static function ($language): string { return $language->native_name ?: $language->name ?: strtoupper($language->code); }; $languageFlag = static function ($language): string { return resolve_language_flag($language); }; $wrapperClass = $variant === 'offcanvas' ? 'language-select-offcanvas w-full' : 'navbar-other !ml-5 header-language-desktop !hidden lg:!flex xl:!flex shrink-0'; $linkClass = 'nav-link dropdown-item dropdown-toggle language-select__trigger xl:!text-[.85rem] lg:!text-[.85rem] max-lg:!text-[1.05rem] !normal-case'; @endphp @if($variant === 'offcanvas')