SHA256
32 lines
1.0 KiB
HTML
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/{{ repo_name }}/{{ file.path }}" class="file-link">
|
|
📄 {{ file.name }}
|
|
</a>
|
|
</li>
|
|
{% endfor %}
|
|
{% endif %}
|
|
</ul>
|
|
{% endmacro %}
|
|
|
|
{{ render_tree_recursive(repo.tree, repo.name) }}
|