gitscope
https://dev.kronoz.win/r/marzneshin.git
dashboard/src/libs/entity-table/hooks/use-pagination.ts · v0.7.4
Source
1 578311c Mrdn 2y ago import { useState } from "react";
2 8b82d79 Mardin 1y ago import { useLocalStorage } from "@uidotdev/usehooks";
3 578311c Mrdn 2y ago
4 8b82d79 Mardin 1y ago export function usePagination({ entityKey}: { entityKey: string }) {
5 8b82d79 Mardin 1y ago const [rowPerPageLocal] = useLocalStorage<number>(`marzneshin-table-row-per-page-${entityKey}`, 10);
6 578311c Mrdn 2y ago const [pagination, setPagination] = useState({
7 8b82d79 Mardin 1y ago pageSize: rowPerPageLocal,
8 578311c Mrdn 2y ago pageIndex: 1,
9 578311c Mrdn 2y ago });
10 578311c Mrdn 2y ago const { pageSize, pageIndex } = pagination;
11 578311c Mrdn 2y ago
12 578311c Mrdn 2y ago return {
13 578311c Mrdn 2y ago pageSize,
14 578311c Mrdn 2y ago pageIndex,
15 578311c Mrdn 2y ago onPaginationChange: setPagination,
16 578311c Mrdn 2y ago pagination,
17 578311c Mrdn 2y ago skip: pageSize * pageIndex,
18 578311c Mrdn 2y ago };
19 578311c Mrdn 2y ago }