{% macro checkboxTreeList(items) %}
  <ul class="govuk-list govuk-list--bullet govuk-body-s">
    {% for item in items %}
      <li>{{ item.label }}</li>
    {% endfor %}
  </ul>
{% endmacro %}

{% macro checkboxTreeSummary(item) %}
  <li>
    <p class="govuk-!-margin-bottom-1">{{ item.label }}</p>
    {% if item.options[0].options %}
      <ul class="govuk-list">
        {% for sub_item in item.options %}
          {{ checkboxTreeSummary(sub_item) }}
        {% endfor %}
      </ul>
    {% else %}
      {{ checkboxTreeList(item.options) }}
    {% endif %}
  </li>
{% endmacro %}

{% if params.value -%}
  {% set no_children = (params.value | selectattr("options") | list |length) == 0 %}

  {% if no_children %}
    {{ checkboxTreeList(params.value) }}
  {% else %}
    <ul class="govuk-list">
      {% for item in params.value %}
        {{ checkboxTreeSummary(item) }}
      {% endfor %}
    </ul>
  {% endif %}
{% endif %}
