aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/docs/src/templates/partials/toc.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/src/templates/partials/toc.html')
-rw-r--r--docs/src/templates/partials/toc.html56
1 files changed, 56 insertions, 0 deletions
diff --git a/docs/src/templates/partials/toc.html b/docs/src/templates/partials/toc.html
new file mode 100644
index 00000000..cb50b257
--- /dev/null
+++ b/docs/src/templates/partials/toc.html
@@ -0,0 +1,56 @@
+<!--
+ Copyright (c) 2016-2023 Martin Donath <martin.donath@squidfunk.com>
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to
+ deal in the Software without restriction, including without limitation the
+ rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+ sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ IN THE SOFTWARE.
+-->
+
+<!-- Determine title -->
+{% set title = lang.t("toc") %}
+{% if config.mdx_configs.toc and config.mdx_configs.toc.title %}
+ {% set title = config.mdx_configs.toc.title %}
+{% endif %}
+
+<!-- Table of contents -->
+<nav class="md-nav md-nav--secondary" aria-label="{{ title }}">
+ {% set toc = page.toc %}
+
+ <!--
+ Check whether the content starts with a level 1 headline. If it does, the
+ top-level anchor must be skipped, since it would be redundant to the link
+ to the current page that is located just above the anchor. Therefore we
+ directly continue with the children of the anchor.
+ -->
+ {% set first = toc | first %}
+ {% if first and first.level == 1 %}
+ {% set toc = first.children %}
+ {% endif %}
+
+ <!-- Table of contents title and list -->
+ {% if toc %}
+ <label class="md-nav__title" for="__toc">
+ <span class="md-nav__icon md-icon"></span>
+ {{ title }}
+ </label>
+ <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
+ {% for toc_item in toc %}
+ {% include "partials/toc-item.html" %}
+ {% endfor %}
+ </ul>
+ {% endif %}
+</nav>