@props([ 'active' => false, 'collapsible' => true, 'icon' => null, 'items' => [], 'label' => null, 'sidebarCollapsible' => true, 'subNavigation' => false, ]) @php $sidebarCollapsible = $sidebarCollapsible && filament()->isSidebarCollapsibleOnDesktop(); $hasDropdown = filled($label) && filled($icon) && $sidebarCollapsible; @endphp
  • class([ 'fi-sidebar-group', 'fi-active' => $active, 'fi-collapsible' => $collapsible, ]) }} > @if ($label)
    @if ($icon) {{ \Filament\Support\generate_icon_html($icon, size: \Filament\Support\Enums\IconSize::Large) }} @endif {{ $label }} @if ($collapsible) @endif
    @endif @if ($hasDropdown) @php $lists = []; foreach ($items as $item) { if ($childItems = $item->getChildItems()) { $lists[] = [ $item, ...$childItems, ]; $lists[] = []; continue; } if (empty($lists)) { $lists[] = [$item]; continue; } $lists[count($lists) - 1][] = $item; } if (empty($lists[count($lists) - 1])) { array_pop($lists); } @endphp @if (filled($label)) {{ $label }} @endif @foreach ($lists as $list) @foreach ($list as $item) @php $itemIsActive = $item->isActive(); $itemBadge = $item->getBadge(); $itemBadgeColor = $item->getBadgeColor(); $itemBadgeTooltip = $item->getBadgeTooltip(); $itemUrl = $item->getUrl(); $itemIcon = $itemIsActive ? ($item->getActiveIcon() ?? $item->getIcon()) : $item->getIcon(); $shouldItemOpenUrlInNewTab = $item->shouldOpenUrlInNewTab(); @endphp {{ $item->getLabel() }} @endforeach @endforeach @endif