2019-09-28 20:42:54 +03:00
|
|
|
{#-
|
|
|
|
This file was automatically generated - do not edit
|
|
|
|
-#}
|
2023-07-05 18:39:33 +03:00
|
|
|
{% macro render_status(nav_item, type) %}
|
|
|
|
{% set class = "md-status md-status--" ~ type %}
|
|
|
|
{% if config.extra.status and config.extra.status[type] %}
|
|
|
|
<span class="{{ class }}" title="{{ config.extra.status[type] }}">
|
|
|
|
</span>
|
|
|
|
{% else %}
|
|
|
|
<span class="{{ class }}"></span>
|
|
|
|
{% endif %}
|
|
|
|
{% endmacro %}
|
|
|
|
{% macro render_content(nav_item, ref = nav_item) %}
|
|
|
|
{% if nav_item.is_page and nav_item.meta.icon %}
|
|
|
|
{% include ".icons/" ~ nav_item.meta.icon ~ ".svg" %}
|
|
|
|
{% endif %}
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
{{ nav_item.title }}
|
|
|
|
</span>
|
|
|
|
{% if nav_item.is_page and nav_item.meta.status %}
|
|
|
|
{{ render_status(nav_item, nav_item.meta.status) }}
|
|
|
|
{% endif %}
|
|
|
|
{% endmacro %}
|
|
|
|
{% macro render_pruned(nav_item, ref = nav_item) %}
|
|
|
|
{% set first = nav_item.children | first %}
|
|
|
|
{% if first and first.children %}
|
|
|
|
{{ render_pruned(first, ref) }}
|
|
|
|
{% else %}
|
|
|
|
<a href="{{ first.url | url }}" class="md-nav__link">
|
|
|
|
{{ render_content(first, ref) }}
|
|
|
|
{% if nav_item.children | length > 1 %}
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
|
|
{% endif %}
|
|
|
|
</a>
|
|
|
|
{% endif %}
|
|
|
|
{% endmacro %}
|
2021-02-25 19:51:38 +03:00
|
|
|
{% macro render(nav_item, path, level) %}
|
2021-01-17 12:41:10 +03:00
|
|
|
{% set class = "md-nav__item" %}
|
|
|
|
{% if nav_item.active %}
|
|
|
|
{% set class = class ~ " md-nav__item--active" %}
|
2020-12-20 17:00:21 +03:00
|
|
|
{% endif %}
|
2021-01-17 12:41:10 +03:00
|
|
|
{% if nav_item.children %}
|
2023-07-05 18:39:33 +03:00
|
|
|
{% set indexes = [] %}
|
|
|
|
{% if "navigation.indexes" in features %}
|
|
|
|
{% for nav_item in nav_item.children %}
|
|
|
|
{% if nav_item.is_index and not index is defined %}
|
|
|
|
{% set _ = indexes.append(nav_item) %}
|
|
|
|
{% endif %}
|
|
|
|
{% endfor %}
|
|
|
|
{% endif %}
|
2021-01-17 12:41:10 +03:00
|
|
|
{% if "navigation.sections" in features and level == 1 + (
|
|
|
|
"navigation.tabs" in features
|
|
|
|
) %}
|
|
|
|
{% set class = class ~ " md-nav__item--section" %}
|
2023-07-05 18:39:33 +03:00
|
|
|
{% elif not nav_item.active and "navigation.prune" in features %}
|
|
|
|
{% set class = class ~ " md-nav__item--pruned" %}
|
|
|
|
{% set prune = true %}
|
2020-12-20 17:00:21 +03:00
|
|
|
{% endif %}
|
2021-01-17 12:41:10 +03:00
|
|
|
<li class="{{ class }} md-nav__item--nested">
|
2023-07-05 18:39:33 +03:00
|
|
|
{% if not prune %}
|
|
|
|
{% set expanded = "navigation.expand" in features %}
|
|
|
|
{% set active = nav_item.active or expanded %}
|
|
|
|
{% set checked = "checked" if nav_item.active %}
|
|
|
|
{% if expanded and not checked %}
|
|
|
|
{% set indeterminate = "md-toggle--indeterminate" %}
|
|
|
|
{% endif %}
|
|
|
|
<input class="md-nav__toggle md-toggle {{ indeterminate }}" type="checkbox" id="{{ path }}" {{ checked }}>
|
|
|
|
{% if not indexes %}
|
|
|
|
<label class="md-nav__link" for="{{ path }}" id="{{ path }}_label" tabindex="0">
|
|
|
|
{{ render_content(nav_item) }}
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
|
|
</label>
|
|
|
|
{% else %}
|
|
|
|
{% set index = indexes | first %}
|
|
|
|
{% set class = "md-nav__link--active" if index == page %}
|
|
|
|
<div class="md-nav__link md-nav__container">
|
|
|
|
<a href="{{ index.url | url }}" class="md-nav__link {{ class }}">
|
|
|
|
{{ render_content(index, nav_item) }}
|
|
|
|
</a>
|
|
|
|
{% if nav_item.children | length > 1 %}
|
|
|
|
<label class="md-nav__link {{ class }}" for="{{ path }}">
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
|
|
</label>
|
|
|
|
{% endif %}
|
|
|
|
</div>
|
|
|
|
{% endif %}
|
|
|
|
<nav class="md-nav" data-md-level="{{ level }}" aria-labelledby="{{ path }}_label" aria-expanded="{{ nav_item.active | tojson }}">
|
|
|
|
<label class="md-nav__title" for="{{ path }}">
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
|
|
{{ nav_item.title }}
|
|
|
|
</label>
|
|
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
{% for nav_item in nav_item.children %}
|
|
|
|
{% if not indexes or nav_item != indexes | first %}
|
|
|
|
{{ render(nav_item, path ~ "_" ~ loop.index, level + 1) }}
|
|
|
|
{% endif %}
|
|
|
|
{% endfor %}
|
|
|
|
</ul>
|
|
|
|
</nav>
|
2021-09-23 09:53:51 +03:00
|
|
|
{% else %}
|
2023-07-05 18:39:33 +03:00
|
|
|
{{ render_pruned(nav_item) }}
|
2021-09-23 09:53:51 +03:00
|
|
|
{% endif %}
|
2021-01-17 12:41:10 +03:00
|
|
|
</li>
|
|
|
|
{% elif nav_item == page %}
|
|
|
|
<li class="{{ class }}">
|
|
|
|
{% set toc = page.toc %}
|
2023-01-28 14:54:19 +03:00
|
|
|
<input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
|
2021-04-15 22:21:33 +03:00
|
|
|
{% set first = toc | first %}
|
2021-04-24 12:15:05 +03:00
|
|
|
{% if first and first.level == 1 %}
|
2021-04-15 22:21:33 +03:00
|
|
|
{% set toc = first.children %}
|
2021-01-17 12:41:10 +03:00
|
|
|
{% endif %}
|
2021-04-24 12:15:05 +03:00
|
|
|
{% if toc %}
|
2021-01-17 12:41:10 +03:00
|
|
|
<label class="md-nav__link md-nav__link--active" for="__toc">
|
2023-07-05 18:39:33 +03:00
|
|
|
{{ render_content(nav_item) }}
|
2021-01-17 12:41:10 +03:00
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
|
|
</label>
|
|
|
|
{% endif %}
|
|
|
|
<a href="{{ nav_item.url | url }}" class="md-nav__link md-nav__link--active">
|
2023-07-05 18:39:33 +03:00
|
|
|
{{ render_content(nav_item) }}
|
2021-01-17 12:41:10 +03:00
|
|
|
</a>
|
2021-04-24 12:15:05 +03:00
|
|
|
{% if toc %}
|
2021-01-17 12:41:10 +03:00
|
|
|
{% include "partials/toc.html" %}
|
|
|
|
{% endif %}
|
|
|
|
</li>
|
|
|
|
{% else %}
|
|
|
|
<li class="{{ class }}">
|
|
|
|
<a href="{{ nav_item.url | url }}" class="md-nav__link">
|
2023-07-05 18:39:33 +03:00
|
|
|
{{ render_content(nav_item) }}
|
2021-01-17 12:41:10 +03:00
|
|
|
</a>
|
|
|
|
</li>
|
|
|
|
{% endif %}
|
2021-01-17 12:38:03 +03:00
|
|
|
{% endmacro %}
|