1<aside class="site-sidebar" role="complementary">
2 <div class="sidebar-content">
3 <form class="sidebar-search" role="search" onsubmit="return false;">
4 <label for="search-input" class="sr-only">Search the site</label>
5 <input
6 type="search"
7 id="search-input"
8 class="sidebar-search-input"
9 placeholder="Search…"
10 autocomplete="off"
11 spellcheck="false"
12 data-index="{{ '/search.json' | relative_url }}"
13 />
14 <ul id="search-results" class="sidebar-search-results" hidden></ul>
15 </form>
16
17 <h3 class="sidebar-title">Quick Links</h3>
18 <nav class="sidebar-nav">
19 {%- for item in site.data.sidebar -%}
20 {%- if item.children -%}
21 <details class="sidebar-details">
22 <summary class="sidebar-summary">
23 <a href="{{ item.url | relative_url }}" class="sidebar-summary-link" onclick="event.stopPropagation();">{{ item.title | escape }}</a>
24 </summary>
25 <div class="sidebar-nested">
26 {%- for child in item.children -%}
27 {%- if child.children -%}
28 <details class="sidebar-details sidebar-details-nested">
29 <summary class="sidebar-summary sidebar-nested-link">
30 {{ child.title | escape }}
31 </summary>
32 <div class="sidebar-nested">
33 {%- for grandchild in child.children -%}
34 <a href="{{ grandchild.url | relative_url }}" class="sidebar-link sidebar-nested-link">{{ grandchild.title | escape }}</a>
35 {%- endfor -%}
36 </div>
37 </details>
38 {%- else -%}
39 <a href="{{ child.url | relative_url }}" class="sidebar-link sidebar-nested-link">{{ child.title | escape }}</a>
40 {%- endif -%}
41 {%- endfor -%}
42 </div>
43 </details>
44 {%- else -%}
45 {%- assign is_index_page = false -%}
46 {%- assign dir_name = "" -%}
47 {%- if item.url != "/" -%}
48 {%- assign url_normalized = item.url | remove: "/index.html" -%}
49 {%- if url_normalized != "/" -%}
50 {%- assign url_parts = url_normalized | split: "/" -%}
51 {%- assign dir_name = "" -%}
52 {%- for part in url_parts -%}
53 {%- if part != "" -%}
54 {%- if dir_name == "" -%}
55 {%- assign dir_name = part -%}
56 {%- else -%}
57 {%- assign dir_name = dir_name | append: "/" | append: part -%}
58 {%- endif -%}
59 {%- endif -%}
60 {%- endfor -%}
61 {%- if dir_name != "" -%}
62 {%- assign is_index_page = true -%}
63 {%- endif -%}
64 {%- endif -%}
65 {%- endif -%}
66 {%- if is_index_page -%}
67 {%- assign dir_path = dir_name | append: "/" -%}
68 {%- assign index_file = dir_name | append: "/index.md" -%}
69 {%- assign has_children = false -%}
70 {%- assign child_pages = site.pages | sort: "path" -%}
71 {%- for child_page in child_pages -%}
72 {%- unless child_page.path contains ".template" -%}
73 {%- if child_page.path contains dir_path and child_page.path contains ".md" and child_page.path != index_file -%}
74 {%- assign has_children = true -%}
75 {%- endif -%}
76 {%- endunless -%}
77 {%- endfor -%}
78 {%- if has_children -%}
79 <details class="sidebar-details">
80 <summary class="sidebar-summary">
81 <a href="{{ item.url | relative_url }}" class="sidebar-summary-link" onclick="event.stopPropagation();">{{ item.title | escape }}</a>
82 </summary>
83 <div class="sidebar-nested">
84 {%- for child_page in child_pages -%}
85 {%- unless child_page.path contains ".template" -%}
86 {%- if child_page.path contains dir_path and child_page.path contains ".md" and child_page.path != index_file -%}
87 <a href="{{ child_page.url | relative_url }}" class="sidebar-link sidebar-nested-link">{{ child_page.title | default: child_page.name | escape }}</a>
88 {%- endif -%}
89 {%- endunless -%}
90 {%- endfor -%}
91 </div>
92 </details>
93 {%- else -%}
94 <a href="{{ item.url | relative_url }}" class="sidebar-link">{{ item.title | escape }}</a>
95 {%- endif -%}
96 {%- else -%}
97 <a href="{{ item.url | relative_url }}" class="sidebar-link">{{ item.title | escape }}</a>
98 {%- endif -%}
99 {%- endif -%}
100 {%- endfor -%}
101 </nav>
102 </div>
103</aside>