mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-03-29 04:23:34 +01:00
65 lines
2.6 KiB
HTML
65 lines
2.6 KiB
HTML
{% macro render_headings(headings, level=1) %}
|
|
<ul class="toctree-l{{ level }}" style="list-style: none; padding-left: 0; overflow-x: auto; white-space: nowrap;">
|
|
{% for item in headings %}
|
|
<li class="toctree-l{{ level }}{% if item.current %} current{% endif %}"
|
|
{% if item.children %}
|
|
x-data="{ expanded: {{ 'true' if item.current else 'false' }} }"
|
|
{% endif %}
|
|
style="white-space: nowrap;">
|
|
<div class="menu-item" style="display: inline-flex; align-items: center; justify-content: space-between; width: 100%; white-space: nowrap;">
|
|
<!-- Link and file open section -->
|
|
<div style="display: inline-flex; align-items: center; white-space: nowrap;">
|
|
<a class="reference internal{% if item.children %} expandable{% endif %}{% if item.current and not item.children %} current{% endif %}"
|
|
href="{{ pathto(item.link).replace('#', '') }}{% if item.anchor %}#{{ item.anchor }}{% endif %}"
|
|
style="text-decoration: none; white-space: nowrap;">
|
|
{{ item.text }}
|
|
</a>
|
|
</div>
|
|
<!-- Expand-Toggle Button -->
|
|
{% if item.children %}
|
|
<button @click.prevent.stop="expanded = !expanded" type="button" class="toggle-button"
|
|
style="background: none; border: none; padding: 0; margin-left: auto;">
|
|
<span x-show="!expanded">
|
|
<svg fill="currentColor" height="18px" stroke="none" viewBox="0 0 24 24" width="18px"
|
|
xmlns="http://www.w3.org/2000/svg">
|
|
<path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"></path>
|
|
</svg>
|
|
</span>
|
|
<span x-show="expanded">▼</span>
|
|
</button>
|
|
{% endif %}
|
|
</div>
|
|
{% if item.children %}
|
|
<div x-show="expanded">
|
|
{{ render_headings(item.children, level+1) }}
|
|
</div>
|
|
{% endif %}
|
|
</li>
|
|
{% endfor %}
|
|
</ul>
|
|
{% endmacro %}
|
|
|
|
{% if local_md_headings or local_subfolders %}
|
|
<div class="local-md-headings">
|
|
{% if local_md_headings %}
|
|
<div class="current-index" x-data x-init="initCurrentNav()">
|
|
<p class="caption" role="heading">
|
|
<span class="caption-text">Current Index</span>
|
|
</p>
|
|
{{ render_headings(local_md_headings) }}
|
|
<br />
|
|
</div>
|
|
{% endif %}
|
|
{% if local_subfolders %}
|
|
<div class="full-index">
|
|
<p class="caption" role="heading">
|
|
<span class="caption-text">Full Index</span>
|
|
</p>
|
|
{{ render_headings(local_subfolders) }}
|
|
<br />
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
{% endif %}
|
|
<script src="{{ pathto('_static/current-nav.js', 1) }}"></script>
|
|
|