@php use Filament\Support\Enums\IconPosition; @endphp @props([ 'active' => false, 'alpineActive' => null, 'badge' => null, 'badgeColor' => null, 'badgeTooltip' => null, 'badgeIcon' => null, 'badgeIconPosition' => IconPosition::Before, 'href' => null, 'icon' => null, 'iconColor' => 'gray', 'iconPosition' => IconPosition::Before, 'spaMode' => null, 'tag' => 'button', 'target' => null, 'type' => 'button', ]) @php if (! $iconPosition instanceof IconPosition) { $iconPosition = filled($iconPosition) ? (IconPosition::tryFrom($iconPosition) ?? $iconPosition) : null; } $hasAlpineActiveClasses = filled($alpineActive); @endphp <{{ $tag }} @if ($tag === 'button') type="{{ $type }}" @elseif ($tag === 'a') {{ \Filament\Support\generate_href_html($href, $target === '_blank', $spaMode) }} @endif @if ($hasAlpineActiveClasses) x-bind:class="{ 'fi-active': {{ $alpineActive }}, }" @endif {{ $attributes ->merge([ 'aria-selected' => $active, 'role' => 'tab', ]) ->class([ 'fi-tabs-item', 'fi-active' => (! $hasAlpineActiveClasses) && $active, ]) }} > @if ($icon && $iconPosition === IconPosition::Before) {{ \Filament\Support\generate_icon_html($icon) }} @endif {{ $slot }} @if ($icon && $iconPosition === IconPosition::After) {{ \Filament\Support\generate_icon_html($icon) }} @endif @if (filled($badge)) @if ($badge instanceof \Illuminate\View\ComponentSlot) {{ $badge }} @else {{ $badge }} @endif @endif