{% set columns = section.render_columns %} {% if not section.rows %}

{{ section.empty_text|ui }}

{% endif %} {% set indexes = namespace(compact=[], wide=[], all=[]) %} {% for column in columns %}{% set index = loop.index0 %}{% if column.full_width or column.format == 'markdown' %}{% set _ = indexes.wide.append(index) %}{% else %}{% set _ = indexes.compact.append(index) %}{% endif %}{% set _ = indexes.all.append(index) %}{% endfor %} {% set ordered = indexes.compact + indexes.wide if section.full_width_last else indexes.all %} {% for values in section.rows %} {% set record_index = loop.index0 %} {% set detail = namespace(rows=[], pending=[]) %} {% for index in ordered %}{% set column = columns[index] %} {% if column.full_width or column.format == 'markdown' %} {% if detail.pending %}{% set _ = detail.rows.append((detail.pending, false)) %}{% set detail.pending = [] %}{% endif %} {% set _ = detail.rows.append(([index], true)) %} {% else %}{% set _ = detail.pending.append(index) %} {% if detail.pending|length == section.fields_per_row %}{% set _ = detail.rows.append((detail.pending, false)) %}{% set detail.pending = [] %}{% endif %} {% endif %}{% endfor %} {% if detail.pending %}{% set _ = detail.rows.append((detail.pending, false)) %}{% endif %}
{% for row, wide in detail.rows %} {% for index in row %}{% set column = columns[index] %}{% endfor %} {% endfor %}
{{ section|heading(values, record_index) }}
{{ column.label|ui }}{% if column.format == 'markdown' %}{{ values[index]|display|markdown }}{% else %}{{ values[index]|display }}{% endif %}
{% endfor %}