{%- set selectedItem = { href: params.selectedItem } if params.selectedItem is string else params.selectedItem -%}
{%- set menuButtonText = params.mobile.menuButtonText if params.mobile.menuButtonText else 'Menu' -%}
<nav class="dwp-header-navigation
  {%- if params.classes %} {{ params.classes }}{% endif %}"
  {%- for attribute, value in params.attributes %} {{ attribute }}="{{ value }}"{% endfor %}
  aria-label="{{ params.ariaLabel | default("Primary") }}">

  {% if not params.mobile.disabled %}
  <button type="button" class="dwp-header-navigation__menu-button" aria-controls="navigation" {%- if params.mobile.menuButtonAriaLabel and params.menuButtonAriaLabel != menuButtonText %} aria-label="{{ params.mobile.menuButtonAriaLabel }}"{% endif %} hidden>
    {{ menuButtonText }}
  </button>
  {% endif %}

  <ul id="navigation" class="dwp-header-navigation__list">
    {% for item in params.items %}
      {% set current = (item.href and item.href === selectedItem.href) or (item.id and item.id === selectedItem.id) %}
      <li class="dwp-header-navigation__item{{ ' dwp-header-navigation__item--selected' if current }}">
        <a {%- if item.id %} id="{{item.id}}"{% endif %}
          href="{{ item.href }}"{% if current %} aria-current="true"{% endif %}>
            {{ item.text }}
        </a>
      </li>
    {% endfor %}
    {% if params.action and not params.mobile.disabled %}
      <li class="dwp-header-navigation__item dwp-header-navigation__item--action">
           <a href="{{ params.action.href }}" class="dwp-header__link">{{ params.action.text }}</a>
      </li>
    {% endif %}
  </ul>
</nav>