Pagination
Pagination with page navigation, next and previous links.
Installation
npx shadcn@latest add @uqudo/paginationInstalling it also installs Button, which every pagination link is styled with.
Usage
import {
Pagination,
PaginationContent,
PaginationEllipsis,
PaginationItem,
PaginationLink,
PaginationNext,
PaginationPrevious,
} from "@/components/uqudo/ui/pagination"<Pagination>
<PaginationContent>
<PaginationItem>
<PaginationPrevious href="#" />
</PaginationItem>
<PaginationItem>
<PaginationLink href="#" isActive>
1
</PaginationLink>
</PaginationItem>
<PaginationItem>
<PaginationEllipsis />
</PaginationItem>
<PaginationItem>
<PaginationNext href="#" />
</PaginationItem>
</PaginationContent>
</Pagination>The links render plain <a> elements. To use your router's link, wrap
PaginationLink in your own component or replace href handling with an
onClick on the anchor.
API Reference
PaginationLink
Prop
Type
PaginationPrevious and PaginationNext
Prop
Type
Other exports
| Component | Renders | Notes |
|---|---|---|
Pagination | nav | role="navigation" and aria-label="pagination". |
PaginationContent | ul | Horizontal list with a small gap. |
PaginationItem | li | Wrap each link or ellipsis in one. |
PaginationEllipsis | span | Decorative dots with a screen-reader-only "More pages". |
Data attributes
| Attribute | Value |
|---|---|
data-slot | pagination, pagination-content, pagination-item, pagination-link, pagination-ellipsis. |
data-active | On a link: true when isActive is set. |