{% for item in items | filter(item => not item.viewBag.isHidden) %}
    <li role="presentation" class="{{ item.isActive ? 'active' : '' }} {{ item.isChildActive ? 'child-active' : '' }} {{ item.viewBag.cssClass }}">
        {% if item.url %}
            <a href="{{ item.url }}" {{ item.viewBag.isExternal ? 'target="_blank"' }}>
                {{ item.title }}
            </a>
        {% else %}
            <span>{{ item.title }}</span>
        {% endif %}

        {% if item.items %}
            <ul>{% partial __SELF__ ~ "::items" items=item.items %}</ul>
        {% endif %}
    </li>
{% endfor %}