{% macro item(label, icon, route, params, isActive, canAccess, tooltip) %}
  {% set liClasses = [
    'm-menu__item',
    isActive ? 'm-menu__item--active',
    (not canAccess) ? 'm-menu__item--disabled'
  ]|filter(v => v)|join(' ') %}

  {% set deniedMessage = tooltip is defined and tooltip ? tooltip : 'Acces refuse - contactez l administrateur' %}
  {% set href = canAccess ? path(route, params|default({})) : '#' %}

  <li class="{{ liClasses }}" aria-haspopup="true">
    <a class="m-menu__link{% if not canAccess %} js-aside-access-denied{% endif %}"
       href="{{ href }}"
       {% if not canAccess %}
         aria-disabled="true"
         data-access-message="{{ deniedMessage|e('html_attr') }}"
         title="{{ deniedMessage|e('html_attr') }}"
       {% endif %}>
      <i class="m-menu__link-icon {{ icon }}"></i>
      <span class="m-menu__link-text">{{ label }}</span>
    </a>
  </li>
{% endmacro %}
