{# Embedded docs sidebar — chirp-theme-docs-nav markup for packaged CSS. #} {% from "chirpui/sidebar.html" import sidebar %} {% from "partials/docs_nav_icons.html" import nav_type_icon, docs_icon %} {% def nav_item_kind(title, href) %} {% let key = (title ~ ' ' ~ href) | lower %} {% if 'component' in key %}component {% elif 'release' in key %}release {% elif 'api' in key or 'reference' in key %}api {% elif 'pattern' in key %}pattern {% elif 'guide' in key or 'doc' in key or 'start' in key or 'install' in key or 'theme' in key %}guide {% else %}page {% end %} {% end %} {% def docs_nav_node(item, depth=0) %} {% let children = item.children ?? () %} {% let has_children = children | length > 0 %} {% let is_active = item.active ?? false %} {% let is_open = item.open ?? false %} {% let is_branch_active = is_active or is_open %} {% let item_title = item.title ?? 'Untitled' %} {% let item_href = item.href ?? '' %} {% let item_kind = nav_item_kind(item_title, item_href) %} {% if has_children %} {% if depth > 0 %} {% let section_slug = (item_href if item_href else (item_title | lower)) | replace('/', '-') | replace(' ', '-') | replace('.', '-') %} {% let section_id = 'docs-nav-sect-' ~ section_slug %}
{% if item_href %} {{ item_title }} {% else %} {{ item_title }} {% end %}
{% else %}
{% if item_href %} {{ item_title }} {% else %} {{ item_title }} {% end %}
{% end %} {% elif item_href %} {{ item_title }} {% end %} {% end %} {% call sidebar(cls='chirp-theme-docs-nav', aria_label='Documentation sections') %} {% for item in nav_items ?? () %} {{ docs_nav_node(item, 0) }} {% endfor %} {% end %}