All files / helpers paginationHelper.ts

100% Statements 8/8
100% Branches 0/0
100% Functions 2/2
100% Lines 8/8

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 221x 6x     1x                   7x 7x 7x 7x   7x    
export const calculateStartRank = (currentPage: number, itemsPerPage: number): number => {
  return (currentPage - 1) * itemsPerPage + 1;
};
 
export const paginateArray = <T>(
  items: T[],
  page: number,
  itemsPerPage: number
): {
  paginatedItems: T[];
  totalPages: number;
  startIndex: number;
  endIndex: number;
} => {
  const totalPages = Math.ceil(items.length / itemsPerPage);
  const startIndex = (page - 1) * itemsPerPage;
  const endIndex = startIndex + itemsPerPage;
  const paginatedItems = items.slice(startIndex, endIndex);
 
  return { paginatedItems, totalPages, startIndex, endIndex };
};