# Pagination Variants (cva config) ## Purpose `paginationVariants`, `paginationContentVariants`, `paginationItemVariants`, `paginationLinkVariants`, `paginationPrevNextVariants`, `paginationEllipsisVariants`, and `paginationStatusVariants` are the cva (class-variance-authority) configurations powering every `` slot. They are split from `pagination.tsx` into their own module so an ejected source copy under `npx shadcn@latest add @suaveplan/pagination` keeps the cva configurations in a dedicated file. Theme overrides flow through `useThemedVariants("Pagination")`. The pagination wrapper centres itself horizontally with `mx-auto justify-center` so it sits centred under a paged surface by default; consumers needing a left-aligned trail compose with `cn(...)` to override. ## Features - Wrapper: `mx-auto flex w-full justify-center` so the trail centres in the available width. - Content: flex-row with `gap-1` between page items. - Link: shadcn-aligned button conventions (`h-9 px-4` default; `h-8 px-3` sm; `h-9 w-9` icon); active variant adds a border and background; focus-visible ring; smooth-easing colour transition with `motion-reduce:transition-none`. - PrevNext: tuned spacing (`gap-1 px-2.5`) for the chevron + label combo. - Ellipsis: `flex h-9 w-9` square hit-area matching icon-sized links. - Status: `text-sm text-muted-foreground` so the caption recedes under the page heading. ## Usage: Basic Example ```ts import { paginationLinkVariants, } from "@suaveplan/react-ui"; const className = paginationLinkVariants({ size: "icon", isActive: true }); ``` ## Usage: Advanced Example ```ts import { paginationContentVariants, cn } from "@suaveplan/react-ui"; export function CompactContent({ children }: { children: React.ReactNode }) { return ( ); } ``` ## API Reference ### `paginationVariants(): string` Wrapper class string. No arguments. ### `paginationContentVariants(): string` `