<%#
  pagination — object from buildPagination()
  pageSizes — optional, defaults to [10,25,50,100]
  extraQuery — optional object for extra query params e.g. { view: 'auth' }
%>
<% const p = typeof pagination !== 'undefined' ? pagination : null; %>
<% if (p) { %>
<% function qs(pageNum, lim) {
  var q = 'page=' + pageNum + '&limit=' + lim;
  if (typeof listingExtraQuery !== 'undefined' && listingExtraQuery) q += '&' + listingExtraQuery;
  return q;
} %>
<div class="card-footer admin-pagination-footer d-flex flex-wrap justify-content-between align-items-center gap-2">
  <span class="text-secondary small">Showing <%= p.from %> to <%= p.to %> of <%= p.total %> entries</span>
  <div class="btn-list">
    <% if (p.hasPrev) { %>
    <a href="?<%= qs(p.prevPage, p.limit) %>" class="btn btn-sm btn-outline-primary">Prev</a>
    <% } else { %>
    <span class="btn btn-sm btn-outline-secondary disabled">Prev</span>
    <% } %>
    <span class="btn btn-sm btn-primary disabled"><%= p.page %></span>
    <% if (p.hasNext) { %>
    <a href="?<%= qs(p.nextPage, p.limit) %>" class="btn btn-sm btn-outline-primary">Next</a>
    <% } else { %>
    <span class="btn btn-sm btn-outline-secondary disabled">Next</span>
    <% } %>
  </div>
</div>
<% } %>
