UNPKG

@wq/material-web

Version:

Web bindings for @wq/material

45 lines (44 loc) 1.32 kB
import React from "react"; import { TablePagination, Paper } from "@mui/material"; import { useRenderContext, useRouteInfo, useReverse, useNav } from "@wq/react"; export default function Pagination() { const reverse = useReverse(), nav = useNav(), { multiple, page: pageNum, count, per_page } = useRenderContext(), { name: routeName, params } = useRouteInfo(); if (!(multiple && count && per_page)) { return null; } const updateParams = (newParams) => { nav( reverse( routeName, {}, { ...params, ...newParams, } ) ); }; const handleChangePage = (evt, page) => updateParams({ page: page + 1, }); const handleChangeRowsPerPage = (evt) => updateParams({ limit: evt.target.value, }); return /*#__PURE__*/ React.createElement( Paper, null, /*#__PURE__*/ React.createElement(TablePagination, { component: "div", count: count, page: pageNum - 1, rowsPerPage: per_page, onPageChange: handleChangePage, onRowsPerPageChange: handleChangeRowsPerPage, }) ); }