import { PaginationDto, PaginationMetaDto } from '../dto/pagination.dto'; export function createPaginationMeta( paginationDto: PaginationDto, total: number, ): PaginationMetaDto { const { page = 1, limit = 10 } = paginationDto; const totalPages = Math.ceil(total / limit); return { page, limit, total, totalPages, hasNext: page < totalPages, hasPrev: page > 1, }; } export function paginate( data: T[], paginationDto: PaginationDto, total: number, ) { const meta = createPaginationMeta(paginationDto, total); return { data, meta, }; }