UNPKG

@kadoui/react

Version:

Kadoui primitive components for React

19 lines (18 loc) 748 B
"use client"; import { jsx as _jsx } from "react/jsx-runtime"; import { useState } from "react"; import { PaginationContext } from "./PaginationContext"; export function PaginationStateRoot({ pages, pagesLength, ...p }) { const [page, setPage] = useState(1); const correctPagesLength = (pages?.length || pagesLength); const nextPage = () => setPage((prev) => (prev < correctPagesLength ? prev + 1 : prev)); const prevPage = () => setPage((prev) => (prev > 1 ? prev - 1 : prev)); return (_jsx(PaginationContext.Provider, { value: { pages, page, setPage, pagesLength: correctPagesLength, nextPage, prevPage, }, children: _jsx("div", { ...p }) })); }