{% macro render_field(field, disabled_fields=[], exclude_fields=[], class='') %} {% set disabled = field.name in disabled_fields %} {% set exclude_fields = exclude_fields + ['csrf_token', 'submit'] %} {% if field.name not in exclude_fields %} {% if field.type == 'BooleanField' %}
{{ field(class="form-check-input " + class, type="checkbox", id="flexSwitchCheckDefault") }} {{ field.label(class="form-check-label", for="flexSwitchCheckDefault", disabled=disabled) }}
{% else %}
{{ field.label(class="form-label") }} {{ field(class="form-control " + class, disabled=disabled) }} {% if field.errors %}
{% for error in field.errors %} {{ error }} {% endfor %}
{% endif %}
{% endif %} {% endif %} {% endmacro %} {% macro render_included_field(field, disabled_fields=[], include_fields=[]) %} {% set disabled = field.name in disabled_fields %} {% if field.name in include_fields %} {% if field.type == 'BooleanField' %}
{{ field(class="form-check-input", type="checkbox", id="flexSwitchCheckDefault") }} {{ field.label(class="form-check-label", for="flexSwitchCheckDefault", disabled=disabled) }}
{% else %}
{{ field.label(class="form-label") }} {{ field(class="form-control", disabled=disabled) }} {% if field.errors %}
{% for error in field.errors %} {{ error }} {% endfor %}
{% endif %}
{% endif %} {% endif %} {% endmacro %} {% macro render_table(headers, rows) %}
{% for header in headers %} {% endfor %} {% for row in rows %} {% for cell in row %} {% endfor %} {% endfor %}
{{ header }}
{% if cell.type == 'image' %}
{% elif cell.type == 'text' %}

{{ cell.value }}

{% elif cell.type == 'badge' %} {{ cell.value }} {% elif cell.type == 'link' %} {{ cell.value }} {% else %} {{ cell.value }} {% endif %}
{% endmacro %} {% macro render_selectable_table(headers, rows, selectable, id) %}
{% if selectable %} {% endif %} {% for header in headers %} {% endfor %} {% for row in rows %} {% if selectable %} {% endif %} {% for cell in row %} {% endfor %} {% endfor %}
Select{{ header }}
{% if cell.type == 'image' %}
{% elif cell.type == 'text' %}

{{ cell.value }}

{% elif cell.type == 'badge' %} {{ cell.value }} {% elif cell.type == 'link' %} {{ cell.value }} {% else %} {{ cell.value }} {% endif %}
{% endmacro %} {% macro render_selectable_sortable_table(headers, rows, selectable, id, sort_by, sort_order) %}
{% if selectable %} {% endif %} {% for header in headers %} {% endfor %} {% for row in rows %} {% if selectable %} {% endif %} {% for cell in row %} {% endfor %} {% endfor %}
Select {{ header }} {% if sort_by == header|lower|replace(' ', '_') %} {% if sort_order == 'asc' %} {% elif sort_order == 'desc' %} {% endif %} {% else %} {% endif %}
{{ cell.value }}
{% endmacro %} {% macro render_selectable_sortable_table_with_dict_headers(headers, rows, selectable, id, sort_by, sort_order) %}
{% if selectable %} {% endif %} {% for header in headers %} {% endfor %} {% for row in rows %} {% if selectable %} {% endif %} {% for cell in row %} {% endfor %} {% endfor %}
Select {{ header['text'] }} {% if sort_by == header['sort'] %} {% if sort_order == 'asc' %} {% elif sort_order == 'desc' %} {% endif %} {% else %} {% endif %}
{{ cell.value }}
{% endmacro %} {% macro render_accordion(accordion_id, accordion_items, header_title, header_description) %}

{{ header_title }}

{{ header_description }}

{% for item in accordion_items %}
{{ item.content }}
{% endfor %}
{% endmacro %} {% macro render_nested_table(headers, rows) %}
{% for header in headers %} {% endfor %} {% for row in rows %} {% for cell in row %} {% if cell.is_group %} {% else %} {% endif %} {% endfor %} {% endfor %}
{{ header }}
{{ render_nested_table(cell.headers, cell.sub_rows) }} {% if cell.type == 'image' %}
{% elif cell.type == 'text' %}

{{ cell.value }}

{% elif cell.type == 'badge' %} {{ cell.value }} {% elif cell.type == 'link' %} {{ cell.value }} {% else %} {{ cell.value }} {% endif %}
{% endmacro %} {% macro render_pagination(pagination, endpoint) %} {% endmacro %} {% macro render_filter_field(field_name, label, options, current_value) %}
{% endmacro %} {% macro render_date_filter_field(field_name, label, current_value) %}
{% endmacro %} {% macro render_collapsible_section(id, title, content) %}
{{ content }}
{% endmacro %}