2023-03-18 14:28:10 -04:00
|
|
|
import React from 'react';
|
|
|
|
|
|
|
|
|
|
export default function Pages({ pageNumber, pages, nextPage, previousPage }) {
|
2023-03-28 20:36:21 +08:00
|
|
|
const clickHandler = func => async e => {
|
2023-03-18 14:28:10 -04:00
|
|
|
e.preventDefault();
|
|
|
|
|
await func();
|
|
|
|
|
};
|
|
|
|
|
|
2023-03-28 20:36:21 +08:00
|
|
|
return pageNumber == 1 && pages == 1 ? null : (
|
2023-03-18 14:28:10 -04:00
|
|
|
<div className="m-auto mt-4 mb-2 flex items-center justify-center gap-2">
|
|
|
|
|
<button
|
|
|
|
|
onClick={clickHandler(previousPage)}
|
|
|
|
|
className={
|
|
|
|
|
'btn btn-small bg-transition m-auto flex gap-2 transition hover:bg-gray-800 disabled:text-gray-300 dark:text-white dark:disabled:text-gray-400' +
|
|
|
|
|
(pageNumber <= 1 ? ' hidden-visibility' : '')
|
|
|
|
|
}
|
|
|
|
|
disabled={pageNumber <= 1}
|
|
|
|
|
>
|
|
|
|
|
<<
|
|
|
|
|
</button>
|
|
|
|
|
<span className="flex-none text-gray-400">
|
|
|
|
|
{pageNumber} / {pages}
|
|
|
|
|
</span>
|
|
|
|
|
<button
|
|
|
|
|
onClick={clickHandler(nextPage)}
|
|
|
|
|
className={
|
|
|
|
|
'btn btn-small bg-transition m-auto flex gap-2 transition hover:bg-gray-800 disabled:text-gray-300 dark:text-white dark:disabled:text-gray-400' +
|
|
|
|
|
(pageNumber >= pages ? ' hidden-visibility' : '')
|
|
|
|
|
}
|
|
|
|
|
disabled={pageNumber >= pages}
|
|
|
|
|
>
|
|
|
|
|
>>
|
|
|
|
|
</button>
|
|
|
|
|
</div>
|
|
|
|
|
);
|
|
|
|
|
}
|