{{-- Header kolom tabel yang bisa diklik untuk mengurutkan (server-side, ikut paginasi & filter). Pemakaian: Nama Query string: ?sort=&arah=asc|desc --}} @props(['kolom', 'default' => null, 'arahAwal' => 'asc']) @php $aktifKolom = request('sort', $default); $aktif = $aktifKolom === $kolom; $arahSekarang = request('arah') === 'desc' ? 'desc' : 'asc'; $arahBaru = $aktif ? ($arahSekarang === 'asc' ? 'desc' : 'asc') : $arahAwal; $url = request()->fullUrlWithQuery(['sort' => $kolom, 'arah' => $arahBaru, 'page' => null]); $ikon = $aktif ? ($arahSekarang === 'asc' ? 'bi-caret-up-fill' : 'bi-caret-down-fill') : 'bi-chevron-expand'; $rataKanan = str_contains($attributes->get('class', ''), 'text-end'); @endphp merge(['class' => 'text-nowrap']) }} @if($aktif) aria-sort="{{ $arahSekarang === 'asc' ? 'ascending' : 'descending' }}" @endif> {{ $slot }}