Pagination

A flexible and animated pagination component with active and hover states.

Loading...

Installation

npx shadcn@latest add @scrollxui/pagination 

Usage

import {
  Pagination,
  PaginationContent,
  PaginationEllipsis,
  PaginationItem,
  PaginationLink,
  PaginationNext,
  PaginationPrevious,
} from '@/components/ui/pagination';
<Pagination>
  <PaginationContent>
    <PaginationItem>
      <PaginationPrevious href='#' onClick={handlePrevious} />
    </PaginationItem>
    {[1, 2, 3].map((page) => (
      <PaginationItem key={page}>
        <PaginationLink
          href='#'
          isActive={activePage === page}
          onClick={() => handlePageClick(page)}
        >
          {page}
        </PaginationLink>
      </PaginationItem>
    ))}
    <PaginationItem>
      <PaginationEllipsis />
    </PaginationItem>
    <PaginationItem>
      <PaginationNext href='#' onClick={handleNext} />
    </PaginationItem>
  </PaginationContent>
</Pagination>

API Reference

Pagination

Root container (className, nav props)

Props

PropertyTypeDefaultDescription
classNamestring
Applies to: PaginationContent, PaginationItem, PaginationLink, PaginationEllipsis.
isActivebooleanfalse
Highlights active page. Used in: PaginationLink.
shinybooleanfalse
Enables shimmer animation. Used in: PaginationLink.
shinySpeednumber
Speed of shimmer effect (in seconds). Used in: PaginationLink.
size"sm" | "default" | "lg""default"
Size of the link. Used in: PaginationLink.
variant"default" | "outline-solid" | "ghost" | "gradient""default"
Visual style. Used in: PaginationLink.
...propsHTML element attributes
Passed to: ul (PaginationContent), li (PaginationItem), a (PaginationLink), span (PaginationEllipsis).

Built withby Ahdeetai.