Files

32 lines
1.0 KiB
HTML

{# Renders a file tree structure for the current repository #}
{% macro render_tree_recursive(tree_dict, repo_name) %}
<ul class="tree-list">
{% for key in tree_dict %}
{% if key != '_files' %}
{# Render directory #}
<li class="tree-folder">
<details>
<summary class="folder-toggle">📁 {{ key }}</summary>
<div class="tree-children">
{{ render_tree_recursive(tree_dict[key], repo_name) }}
</div>
</details>
</li>
{% endif %}
{% endfor %}
{# Render files at this level #}
{% if '_files' in tree_dict %}
{% for file in tree_dict['_files'] %}
<li class="tree-file">
<a href="/view/{{ file.path }}" class="file-link">
📄 {{ file.name }}{% if file.protected %} 🔒{% endif %}
</a>
</li>
{% endfor %}
{% endif %}
</ul>
{% endmacro %}
{{ render_tree_recursive(repo.tree, repo.name) }}