@props([ 'teleport' => false, ]) @php use Filament\Actions\Action; use Filament\Models\Contracts\HasCurrentTenantLabel; use Filament\Support\Facades\FilamentView; use Filament\Support\Icons\Heroicon; use Filament\Support\View\ComponentAttributeBag; use Filament\View\PanelsIconAlias; use Filament\View\PanelsRenderHook; use Illuminate\Support\Arr; $currentTenant = filament()->getTenant(); $currentTenantName = filament()->getTenantName($currentTenant); $items = $this->getTenantMenuItems(); $tenants = $this->getSwitchableTenants(); $canSwitchTenants = filled($tenants); $isSearchable = $canSwitchTenants && (filament()->isTenantMenuSearchable() ?? (count($tenants) >= 10)); $itemsBeforeAndAfterTenantSwitcher = collect($items) ->groupBy(fn (Action $item): bool => $canSwitchTenants && ($item->getSort() < 0), preserveKeys: true) ->all(); $itemsBeforeTenantSwitcher = $itemsBeforeAndAfterTenantSwitcher[true] ?? collect(); $itemsAfterTenantSwitcher = $itemsBeforeAndAfterTenantSwitcher[false] ?? collect(); $multiGroupAfterSwitcher = $this->hasMultipleTenantMenuItemGroups(); $afterSwitcherItemGroups = $multiGroupAfterSwitcher ? $this->getTenantMenuItemGroupsAfterSwitcher() : []; $isSidebarCollapsibleOnDesktop = filament()->isSidebarCollapsibleOnDesktop(); @endphp {{ FilamentView::renderHook(PanelsRenderHook::TENANT_MENU_BEFORE) }} @if ($itemsBeforeTenantSwitcher->isNotEmpty()) @foreach ($itemsBeforeTenantSwitcher as $item) {{ $item }} @endforeach @endif @if ($canSwitchTenants)
@if ($isSearchable)
@endif @foreach ($tenants as $tenant) @php $tenantImage = filament()->getTenantAvatarUrl($tenant); $tenantName = filament()->getTenantName($tenant); $tenantUrl = filament()->getUrl($tenant); @endphp
{{ $tenantName }}
@endforeach
@endif @if ($multiGroupAfterSwitcher && $afterSwitcherItemGroups !== []) @foreach ($afterSwitcherItemGroups as $afterSwitcherGroup) @foreach ($afterSwitcherGroup as $item) {{ $item }} @endforeach @endforeach @elseif ($itemsAfterTenantSwitcher->isNotEmpty()) @foreach ($itemsAfterTenantSwitcher as $item) {{ $item }} @endforeach @endif
{{ FilamentView::renderHook(PanelsRenderHook::TENANT_MENU_AFTER) }}