Могли бы порекомендовать пару проверенных пакетов, если сами пользовались, для двух нужд:
Пагинация для среды SLIM
В паджинации достаточно из API вернуть номер текущей страницы и их полное число. И на фронтенде сделать компонент:
<Pagination path={location.pathname} page={page} total={total} />
в котором по этим количествам в цикле вывести ссылки вроде:
const pageNumbers = range(Math.max(1, page - 5), Math.min(page + 5, total));
return (
<ul>
{pageNumbers.map((i) => (
<li className={i === page ? 'active' : ''}>
<a href={path + '?page=' + i}>{i}</a>
</li>
))}
</ul>
)
RBAC
Да, можно взять что-то популярное вроде Casbin или laminas-permissions-rbac.
Или войти через: