{% macro Page(pagination, route, i, label=None) -%} {% set label = label or i %} {% if i == pagination.page %} {% else %} {{ label }} {% endif%} {%- endmacro %} {% macro Pagination(pagination, route) -%} {% set first %} {{ Page(pagination, route, 1, label="first") }} {{ Page(pagination, route, pagination.page - 1, label="prev") }} {% endset %} {% set last %} {{ Page(pagination, route, pagination.page + 1, label="next") }} {{ Page(pagination, route, pagination.pages, label="last") }} {% endset %} {%- endmacro %}