import React, { useCallback } from 'react'
import {
Pagination as RAPagination,
useListPaginationContext,
} from 'react-admin'
import { setStoredPerPage, defaultRowsPerPageOptions } from './perPageStore'
export const Pagination = ({
rowsPerPageOptions = defaultRowsPerPageOptions,
...props
}) => {
const { resource, setPerPage } = useListPaginationContext()
const handleSetPerPage = useCallback(
(value) => {
if (resource) setStoredPerPage(resource, value)
setPerPage(value)
},
[resource, setPerPage],
)
return (
<RAPagination
rowsPerPageOptions={rowsPerPageOptions}
{...props}
setPerPage={handleSetPerPage}
/>
)
}