{# Data Table Component Macros: data_table, simple_table, key_value_table #} {% macro data_table(columns, rows, row_key="id", empty_message="No data") %}
{% for col in columns %} {% endfor %} {% if rows %} {% for row in rows %} {{ caller(row) }} {% endfor %} {% else %} {% endif %}
{{ col }}
{{ empty_message }}
{% endmacro %} {% macro simple_table(headers, rows, empty_message="No data") %} {# Simple table that takes header strings and row arrays #}
{% for header in headers %} {% endfor %} {% if rows %} {% for row in rows %} {% for cell in row %} {% endfor %} {% endfor %} {% else %} {% endif %}
{{ header }}
{{ cell }}
{{ empty_message }}
{% endmacro %} {% macro key_value_table(items, key_header="Key", value_header="Value") %} {# Table for key-value pairs #}
{% for key, value in items %} {% endfor %}
{{ key_header }} {{ value_header }}
{{ key }} {{ value }}
{% endmacro %}