{#- chirp-ui: File tree
Workbench-oriented explorer wrapper for file/folder navigation inside a panel.
Usage:
{% from "chirpui/file_tree.html" import file_tree %}
{% call file_tree(items=items, title="Files", show_icons=true) %}
{% slot actions %}{% end %}
{% slot header %}{% end %}
{% slot footer %}12 files{% end %}
{% end %}
Linked branch parents:
file_tree(items=items, branch_mode="linked")
-#}
{% from "chirpui/nav_tree.html" import nav_tree %}
{% from "chirpui/panel.html" import panel %}
{% def file_tree(items, title=none, subtitle=none, show_icons=false, branch_mode="disclosure", surface_variant="muted", scroll_body=true, variant="explorer", cls="") %}
{% set tree_cls = "chirpui-file-tree chirpui-file-tree--" ~ variant ~ (" " ~ cls if cls else "") %}
{% call panel(title=title, subtitle=subtitle, surface_variant=surface_variant, scroll_body=scroll_body, cls=tree_cls) %}
{% slot actions %}{% yield actions %}{% end %}
{% call nav_tree(items=items, show_icons=show_icons, branch_mode=branch_mode, cls="chirpui-file-tree__nav") %}
{% slot header %}{% yield header %}{% end %}
{% end %}
{% slot footer %}{% yield footer %}{% end %}
{% end %}
{% end %}