@props([ 'paginator' => null, 'currentPage' => 1, 'lastPage' => 1, 'ariaLabel' => 'Pagination', 'wrapperClass' => 'relative z-10 py-16 px-4', ]) @php if ($paginator !== null) { $current = (int) $paginator->currentPage(); $last = (int) $paginator->lastPage(); $prevUrl = $paginator->previousPageUrl(); $nextUrl = $paginator->nextPageUrl(); $pageUrl = fn (int $page) => $paginator->url($page); } else { $current = max(1, (int) $currentPage); $last = max(1, (int) $lastPage); $prevUrl = $current > 1 ? request()->fullUrlWithQuery(['page' => $current - 1]) : null; $nextUrl = $current < $last ? request()->fullUrlWithQuery(['page' => $current + 1]) : null; $pageUrl = fn (int $page) => request()->fullUrlWithQuery(['page' => $page]); } $pageNumbers = range(1, $last); @endphp