{# Bar chart region — UX-035 adopter #9. #} {% from 'macros/region_wrapper.html' import region_card %} {% from 'macros/status_badge.html' import render_status_badge %} {% call region_card(title) %} {% if items and group_by %} {% set grouped = {} %} {% for item in items %} {% set key = item[group_by] | default("Unknown") %} {% if key in grouped %} {% set _ = grouped.update({key: grouped[key] + 1}) %} {% else %} {% set _ = grouped.update({key: 1}) %} {% endif %} {% endfor %} {% set max_count = grouped.values() | max if grouped.values() | list else 1 %}
{% for label, count in grouped.items() %}
{{ render_status_badge(value=label, size='sm') }}
{{ count }}
{% endfor %}

{{ total }} total

{% elif metrics %} {# Fallback: render aggregate metrics as bars #} {% set max_val = metrics | map(attribute='value') | max if metrics else 1 %} {% set max_val = max_val if max_val > 0 else 1 %}
{% for metric in metrics %}
{{ metric.label }}
{{ metric.value }}
{% endfor %}
{% else %}

{{ empty_message | default("No data available.") }}

{% endif %} {% endcall %}