| ID | Name | Country | |
|---|---|---|---|
| 1 | Mark Sawayn | Eloise.Satterfield@yahoo.com | Azerbaijan | 
| 2 | Raul Willms-Bailey | Dariana_Williamson94@hotmail.com | Burkina Faso | 
| 3 | Joel Gerhold | Jany40@gmail.com | Mauritius | 
| 4 | Yolanda O'Reilly-Hahn Jr. | Kasandra75@gmail.com | Samoa | 
| 5 | Gustavo Maggio | Abbey_Kreiger21@hotmail.com | India | 
Page Size
| ID | Name | Country | |
|---|---|---|---|
| 1 | Wm Lehner | Michel75@hotmail.com | Dominica | 
| 2 | Ana Tremblay | Queen.Kerluke@gmail.com | Micronesia | 
| 3 | Jesse Robel | Millie.Rau@yahoo.com | South Sudan | 
| 4 | Georgia Wisozk | Lavon_Grady@gmail.com | Cote d'Ivoire | 
| 5 | Bert Moen | Ena90@gmail.com | Chile | 
Direction
| ID | Name | Country | |
|---|---|---|---|
| 1 | Jonathon Tremblay | Leanne51@yahoo.com | Malaysia | 
| 2 | Gretchen Smitham | Carmela_Daugherty@yahoo.com | Cook Islands | 
| 3 | Ervin Mante | Micaela_Bechtelar27@hotmail.com | Mayotte | 
| 4 | Dr. Roberta Leannon | Alexandro.Braun@hotmail.com | Senegal | 
| 5 | Edgar Ward | Carlotta_Bergstrom@hotmail.com | Denmark | 
Total Count
For server-side pagination, your data source may be truncated. Make sure to specify the total records using count.
const res = {
	"results": [...],
	"pagination": {
		"page": 1,
		"limit": 10,
		"count": 500,
	}
}<Pagination page={res.pagination.page} count={res.pagination.count} pageSize={res.pagination.limit}>...</Pagination>API Reference
Root
inline-flex gap-2 p-2 rounded-container preset-outlined-surface-200-800 w-fit| Prop | Default | Type | 
|---|---|---|
ids | — | Partial<{ root: string; ellipsis: (index: number) => string; prevTrigger: string; nextTrigger: string; item: (page: number) => string; }> | undefined The ids of the elements in the accordion. Useful for composition.  | 
translations | — | IntlTranslations | undefined Specifies the localized strings that identifies the accessibility elements and their states  | 
count | — | number | undefined Total number of data items  | 
pageSize | — | number | undefined The controlled number of data items per page  | 
defaultPageSize | 10 | number | undefined The initial number of data items per page when rendered. Use when you don't need to control the page size of the pagination.  | 
siblingCount | 1 | number | undefined Number of pages to show beside active page  | 
page | — | number | undefined The controlled active page  | 
defaultPage | 1 | number | undefined The initial active page when rendered. Use when you don't need to control the active page of the pagination.  | 
onPageChange | — | ((details: PageChangeDetails) => void) | undefined Called when the page number is changed  | 
onPageSizeChange | — | ((details: PageSizeChangeDetails) => void) | undefined Called when the page size is changed  | 
type | "button" | "button" | "link" | undefined The type of the trigger element  | 
getPageUrl | — | ((details: PageUrlDetails) => string) | undefined Function to generate href attributes for pagination links. Only used when `type` is set to "link".  | 
dir | "ltr" | "ltr" | "rtl" | undefined The document's text/writing direction.  | 
getRootNode | — | (() => ShadowRoot | Node | Document) | undefined A root node to correctly resolve document in custom environments. E.x.: Iframes, Electron.  | 
element | — | ((attributes: HTMLAttributes<"nav">) => Element) | undefined Render the element yourself  | 
Provider
| Prop | Default | Type | 
|---|---|---|
value | — | PaginationApi<PropTypes> | 
element | — | ((attributes: HTMLAttributes<"nav">) => Element) | undefined Render the element yourself  | 
Context
| Prop | Default | Type | 
|---|---|---|
children | — | (pagination: PaginationApi<PropTypes>) => ReactNode | 
FirstTrigger
btn btn-sm preset-tonal| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"button">) => Element) | undefined Render the element yourself  | 
PrevTrigger
btn btn-sm preset-tonal| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"button">) => Element) | undefined Render the element yourself  | 
Item
btn btn-sm preset-tonal cursor-pointer select-none data-selected:preset-filled| Prop | Default | Type | 
|---|---|---|
type | — | "page" | 
value | — | number | 
element | — | ((attributes: HTMLAttributes<"a">) => Element) | undefined Render the element yourself  | 
Ellipsis
btn btn-sm preset-tonal pointer-events-none| Prop | Default | Type | 
|---|---|---|
index | — | number | 
element | — | ((attributes: HTMLAttributes<"span">) => Element) | undefined Render the element yourself  | 
NextTrigger
btn btn-sm preset-tonal| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"button">) => Element) | undefined Render the element yourself  | 
LastTrigger
btn btn-sm preset-tonal| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"button">) => Element) | undefined Render the element yourself  | 
Root
inline-flex gap-2 p-2 rounded-container preset-outlined-surface-200-800 w-fit| Prop | Default | Type | 
|---|---|---|
ids | — | Partial<{ root: string; ellipsis: (index: number) => string; prevTrigger: string; nextTrigger: string; item: (page: number) => string; }> | undefined The ids of the elements in the accordion. Useful for composition.  | 
translations | — | IntlTranslations | undefined Specifies the localized strings that identifies the accessibility elements and their states  | 
count | — | number | undefined Total number of data items  | 
pageSize | — | number | undefined The controlled number of data items per page  | 
defaultPageSize | 10 | number | undefined The initial number of data items per page when rendered. Use when you don't need to control the page size of the pagination.  | 
siblingCount | 1 | number | undefined Number of pages to show beside active page  | 
page | — | number | undefined The controlled active page  | 
defaultPage | 1 | number | undefined The initial active page when rendered. Use when you don't need to control the active page of the pagination.  | 
onPageChange | — | ((details: PageChangeDetails) => void) | undefined Called when the page number is changed  | 
onPageSizeChange | — | ((details: PageSizeChangeDetails) => void) | undefined Called when the page size is changed  | 
type | "button" | "button" | "link" | undefined The type of the trigger element  | 
getPageUrl | — | ((details: PageUrlDetails) => string) | undefined Function to generate href attributes for pagination links. Only used when `type` is set to "link".  | 
dir | "ltr" | "ltr" | "rtl" | undefined The document's text/writing direction.  | 
getRootNode | — | (() => ShadowRoot | Node | Document) | undefined A root node to correctly resolve document in custom environments. E.x.: Iframes, Electron.  | 
element | — | Snippet<[HTMLAttributes<"div">]> | undefined Render the element yourself  | 
Provider
| Prop | Default | Type | 
|---|---|---|
value | — | () => PaginationApi<PropTypes> | 
element | — | Snippet<[HTMLAttributes<"div">]> | undefined Render the element yourself  | 
Context
| Prop | Default | Type | 
|---|---|---|
children | — | Snippet<[() => PaginationApi<PropTypes>]> | 
FirstTrigger
btn btn-sm preset-tonal| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"button">]> | undefined Render the element yourself  | 
PrevTrigger
btn btn-sm preset-tonal| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"button">]> | undefined Render the element yourself  | 
Item
btn btn-sm preset-tonal cursor-pointer select-none data-selected:preset-filled| Prop | Default | Type | 
|---|---|---|
type | — | "page" | 
value | — | number | 
element | — | Snippet<[HTMLAttributes<"a">]> | undefined Render the element yourself  | 
Ellipsis
btn btn-sm preset-tonal pointer-events-none| Prop | Default | Type | 
|---|---|---|
index | — | number | 
element | — | Snippet<[HTMLAttributes<"span">]> | undefined Render the element yourself  | 
NextTrigger
btn btn-sm preset-tonal| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"button">]> | undefined Render the element yourself  | 
LastTrigger
btn btn-sm preset-tonal| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"button">]> | undefined Render the element yourself  |