<div class="col-12">
<div class="row no-gutters align-items-center justify-content-between">
{% if (show_legend is defined and show_legend) or show_legend is not defined %}
<div class="col-12 col-sm text-center text-sm-start">
<p class="mb-0 font-size-16 align-self-center">{{ 'pagina_total' | trans({'{current}' : current, '{pageCount}': pageCount, '{totalCount}' : totalCount }) }}</p>
</div>
{% endif %}
{% if pageCount > 1 %}
<div class="col-xs-12 col-sm-auto text-center text-sm-start d-inline-flex">
<nav class="m-auto mr-sm-0">
{% set classAlign = (align is not defined) ? '' : align=='center' ? ' justify-content-center' : (align=='right' ? ' justify-content-end' : '') %}
{% set classSize = (size is not defined) ? '' : size=='large' ? ' pagination-lg' : (size=='small' ? ' pagination-sm' : '') %}
<ul class="pagination pagination-outline {{ classAlign }}{{ classSize }} mb-0 rounded me-2">
{% if previous is defined %}
<li class="page-item">
<a class="page-link" rel="prev" href="{{ path(route, query|merge({(pageParameterName): previous})) }}">« {{ 'label_previous'|trans({}, 'messages') }}</a>
</li>
{% else %}
<li class="page-item disabled">
<span class="page-link">« {{ 'label_previous'|trans({}, 'messages') }}</span>
</li>
{% endif %}
{% if startPage > 1 %}
<li class="page-item">
<a class="page-link" href="{{ path(route, query|merge({(pageParameterName): 1})) }}">1</a>
</li>
{% if startPage == 3 %}
<li class="page-item">
<a class="page-link" href="{{ path(route, query|merge({(pageParameterName): 2})) }}">2</a>
</li>
{% elseif startPage != 2 %}
<li class="page-item disabled">
<span class="page-link">…</span>
</li>
{% endif %}
{% endif %}
{% for page in pagesInRange %}
{% if page != current %}
<li class="page-item">
<a class="page-link" href="{{ path(route, query|merge({(pageParameterName): page})) }}">{{ page }}</a>
</li>
{% else %}
<li class="page-item active">
<span class="page-link">{{ page }}</span>
</li>
{% endif %}
{% endfor %}
{% if pageCount > endPage %}
{% if pageCount > (endPage + 1) %}
{% if pageCount > (endPage + 2) %}
<li class="page-item disabled">
<span class="page-link">…</span>
</li>
{% else %}
<li class="page-item">
<a class="page-link" href="{{ path(route, query|merge({(pageParameterName): (pageCount - 1)})) }}">{{ pageCount -1 }}</a>
</li>
{% endif %}
{% endif %}
<li class="page-item">
<a class="page-link" href="{{ path(route, query|merge({(pageParameterName): pageCount})) }}">{{ pageCount }}</a>
</li>
{% endif %}
{% if next is defined %}
<li class="page-item border-left">
<a class="page-link" rel="next" href="{{ path(route, query|merge({(pageParameterName): next})) }}">{{ 'label_next'|trans({}, 'messages') }} »</a>
</li>
{% else %}
<li class="page-item disabled">
<span class="page-link">{{ 'label_next'|trans({}, 'messages') }} »</span>
</li>
{% endif %}
</ul>
</nav>
</div>
{% endif %}
{% if ((show_limit is defined and show_limit) or show_limit is not defined) and totalCount > 0 %}
<div class="col-12 col-sm-auto rounded sel_paginator_limit">
{% if p_selUnidades is not defined %}
{% set p_selUnidades = { '6': '6', '12': '12', '50':'50', '100':'100', '999999999': 'Todos'} %}
{% endif %}
{% if p_selUnidades|length > 0 %}
{#<p class="text-sm-end text-center">Items por página:</p>#}
<select name="l" class="form-select form-select-solid {{ limit_class | default('sel_unidades_paginator') }}" {{ p_autoreload | default(false) ? 'data-reload="true"' }} data-route="{{ route }}" data-params="{{ (query|merge({(pageParameterName): 1})) | json_encode() }}">
{% for key,value in p_selUnidades %}
<option value="{{ key }}" {{ key == numItemsPerPage ? 'selected' : '' }}>{{ value }}</option>
{% endfor %}
</select>
{% endif %}
</div>
{% endif %}
</div>
</div>