{% macro ko_grid_body(call_ids={}, template_ids={}, has_full_body=False) -%} {%- set include_ids = {} -%} {%- set builtin_ids = [ 'ko_range_filter', 'ko_grid_row_click_menu', 'ko_action_form', 'ko_grid_filter_choices', 'ko_grid_filter_popup', 'ko_grid_search', 'ko_grid_nav', 'ko_grid_no_results', 'ko_grid_table', 'ko_grid_body', 'ko_grid_pagination' ] -%} {% for builtin_id in builtin_ids -%} {% if builtin_id not in template_ids -%} {# Set built-in builtin_id name when there is no custom template in template_ids. -#} {% do template_ids.update({builtin_id: builtin_id}) -%} {% endif -%} {% set include_builtin = builtin_id not in call_ids or template_ids[builtin_id] != builtin_id -%} {# Include the source of template, when there is no another template in call_ids. -#} {% do include_ids.update({builtin_id: include_builtin}) -%} {% if builtin_id not in call_ids -%} {# Standard template should be called. -#} {% do call_ids.update({builtin_id: builtin_id}) -%} {% if has_full_body and template_ids[builtin_id] == builtin_id -%} {# Do not include standard template when has_full_body is True -#} {% do include_ids.update({builtin_id: False}) -%} {% endif -%} {% endif -%} {% endfor -%} {% if include_ids['ko_range_filter'] -%} {% endif -%} {% if include_ids['ko_grid_row_click_menu'] -%} {% endif -%} {% if include_ids['ko_action_form'] -%} {% endif -%} {% if include_ids['ko_grid_filter_choices'] -%} {% endif -%} {% if include_ids['ko_grid_filter_popup'] -%} {% endif -%} {% if include_ids['ko_grid_search'] -%} {% endif -%} {% if include_ids['ko_grid_nav'] -%} {% endif -%} {% if include_ids['ko_grid_no_results'] -%} {% endif -%} {% if include_ids['ko_grid_table'] -%} {% endif -%} {% if include_ids['ko_grid_body'] -%} {% endif -%} {% if include_ids['ko_grid_pagination'] -%} {% endif -%} {% endmacro -%} {% if _render_ -%} {% if not call_ids is defined -%} {% set call_ids={} -%} {% endif -%} {% if not template_ids is defined -%} {% set template_ids={} -%} {% endif -%} {% if not has_full_body is defined -%} {% set has_full_body = False -%} {% endif -%} {{ ko_grid_body(call_ids=call_ids, template_ids=template_ids, has_full_body=has_full_body) }} {% endif -%}