// Metodo para paginar array de objetos
// ex: paginateArray(arr) ou
// paginateArray(arr,2) para pegar a 2 pagina
// paginateArray(arr,2,5) para pegar a 2 pagina e limitar 5 itens de retorno no array
paginateArray = (items, page, per_page) => {
page = page || 1;
per_page = per_page || 10;
const offset = (page - 1) * per_page;
const paginatedItems = items.slice(offset).slice(0, per_page);
const total_pages = Math.ceil(items.length / per_page);
return {
page,
per_page,
pre_page: page - 1 ? page - 1 : null,
next_page: total_pages > page ? page + 1 : null,
total: items.length,
total_pages,
data: paginatedItems,
};
};