{%- macro _actionLink(action) %}
  <a class="govuk-link {%- if action.classes %} {{ action.classes }}{% endif %}" href="{{ action.href }}" {%- for attribute, value in action.attributes %} {{attribute}}="{{value}}"{% endfor %}>
  {%- if action.html -%}
    {{ action.html | safe }}
  {%- else -%}
    {%- if action.visuallyHiddenText -%}
      <span aria-hidden="true">{{ action.text }}</span>{#- strip spaces -#}
      <span class="govuk-visually-hidden">{{ action.visuallyHiddenText }}</span>
    {%- else -%}
      {{ action.text }}
    {%- endif -%}
  {%- endif -%}
  </a>
{% endmacro -%}

{# Determine if we need 2 or 3 columns #}
{% set anyRowHasActions = false %}
{% for row in params.items %}
  {% set anyRowHasActions = true if row.actions.length else anyRowHasActions %}
{% endfor -%}

{% if params.items.length %}
  <dl class="govuk-summary-list hmrc-list-with-actions {%- if params.classes %} {{ params.classes }}{% endif %}"{% for attribute, value in params.attributes %} {{attribute}}="{{value}}"{% endfor %}>
  {% for row in params.items %}
    {% if row %}
      <div class="govuk-summary-list__row {%- if anyRowHasActions and not (row.actions | length) %} govuk-summary-list__row--no-actions{% endif %} {%- if row.classes %} {{ row.classes }}{% endif %}">
        <dt class="govuk-summary-list__key govuk-!-font-weight-regular hmrc-summary-list__key">
          {{ row.name.html | safe if row.name.html else row.name.text }}
        </dt>
        {% if row.actions.length %}
          <dd class="govuk-summary-list__actions hmrc-summary-list__actions">
            {% if row.actions.length == 1 %}
              {{ _actionLink(row.actions[0]) | indent(12) | trim }}
            {% else %}
              <ul class="govuk-summary-list__actions-list">
                {%- for action in row.actions -%}
                  <li class="govuk-summary-list__actions-list-item">
                    {{- _actionLink(action) | indent(18) | trim -}}
                  </li>
                {%- endfor -%}
              </ul>
            {% endif %}
          </dd>
        {% endif %}
      </div>
    {% endif %}
  {% endfor %}
  </dl>
{% endif %}

