just-the-docs 0.2.4 → 0.2.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +5 -5
  2. data/README.md +2 -2
  3. data/_includes/css/custom.scss.liquid +1 -0
  4. data/_includes/css/just-the-docs.scss.liquid +7 -0
  5. data/_includes/head.html +25 -13
  6. data/_includes/head_custom.html +0 -0
  7. data/_includes/js/custom.js +0 -0
  8. data/_includes/nav.html +41 -34
  9. data/_includes/title.html +5 -0
  10. data/_includes/vendor/anchor_headings.html +100 -0
  11. data/_layouts/default.html +100 -39
  12. data/_layouts/table_wrappers.html +7 -0
  13. data/_layouts/vendor/compress.html +10 -0
  14. data/_sass/base.scss +16 -18
  15. data/_sass/buttons.scss +1 -1
  16. data/_sass/code.scss +209 -69
  17. data/_sass/color_schemes/dark.scss +3 -1
  18. data/_sass/color_schemes/light.scss +0 -0
  19. data/_sass/content.scss +79 -0
  20. data/_sass/custom/custom.scss +0 -120
  21. data/_sass/labels.scss +5 -4
  22. data/_sass/layout.scss +90 -29
  23. data/_sass/modules.scss +19 -0
  24. data/_sass/navigation.scss +4 -32
  25. data/_sass/search.scss +98 -45
  26. data/_sass/support/_functions.scss +2 -3
  27. data/_sass/support/_variables.scss +20 -20
  28. data/_sass/support/mixins/_layout.scss +1 -3
  29. data/_sass/support/mixins/_typography.scss +6 -1
  30. data/_sass/tables.scss +13 -33
  31. data/_sass/typography.scss +10 -8
  32. data/_sass/utilities/_layout.scss +75 -18
  33. data/_sass/utilities/_lists.scss +7 -1
  34. data/_sass/utilities/_spacing.scss +70 -26
  35. data/_sass/utilities/_typography.scss +1 -1
  36. data/assets/css/just-the-docs-dark.scss +3 -0
  37. data/assets/css/just-the-docs-default.scss +8 -0
  38. data/assets/css/just-the-docs-light.scss +3 -0
  39. data/assets/js/just-the-docs.js +240 -103
  40. data/assets/js/search-data.json +4 -4
  41. data/assets/js/vendor/lunr.min.js +3 -3
  42. data/lib/tasks/search.rake +4 -4
  43. metadata +47 -25
  44. data/assets/css/dark-mode-preview.scss +0 -41
  45. data/assets/css/just-the-docs.scss +0 -44
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 496ae2f1eb421ecd6a894be36042bc0d1cc345cf
4
- data.tar.gz: 91b6b019f8aa1daec0d53d7a96859f5d5ba550e4
2
+ SHA256:
3
+ metadata.gz: 1dadb070c0e24c8e955bf5f3de0268adbfe088d6f989ef47924f32b832e67b4e
4
+ data.tar.gz: b066f2a83fc772dbf2fac349944cd1a701ea154187dd11c3ace04801a5aac91d
5
5
  SHA512:
6
- metadata.gz: b9d87123018eaa901db264ff9d18db90ae20837ea9057c236d02caf89a7dcd9f0fb1226e3463bcb275ca4e7afb9e815c3dfddef08fff672ec6a023d040006573
7
- data.tar.gz: 0a8b8cf073a07481485fac60c67d24f0b25161c8c13d8e5823becb7179aa97bb3b6b97c39d4001ded4804b11d2e3ac722f22b720e240ed8b2b57cd33c94d471c
6
+ metadata.gz: 19ca0f3d71d801855eb77b51391f7636949d2f359283acda07663f222e227cfe51516b9773352160b44487e18bc0c7ce0821b54ea7efae3b403b0562ee343fd7
7
+ data.tar.gz: cd1240ad2cc18b33b9797b87a103a8d05e159ff67c4c9b8072add4feb49f450c877b55d53189b498f96d54b180352bb5ec73edc95035b40c44b72d5530e1b289
data/README.md CHANGED
@@ -1,10 +1,10 @@
1
1
  <p align="right">
2
- <a href="https://badge.fury.io/rb/just-the-docs"><img src="https://badge.fury.io/rb/just-the-docs.svg" alt="Gem version"></a> <a href="https://travis-ci.com/pmarsceill/just-the-docs"><img src="https://travis-ci.com/pmarsceill/just-the-docs.svg?branch=master" alt="Build status"></a>
2
+ <a href="https://badge.fury.io/rb/just-the-docs"><img src="https://badge.fury.io/rb/just-the-docs.svg" alt="Gem version"></a> <a href="https://github.com/pmarsceill/just-the-docs/actions?query=workflow%3A%22Master+branch+CI%22"><img src="https://github.com/pmarsceill/just-the-docs/workflows/Master%20branch%20CI/badge.svg" alt="Build status"></a>
3
3
  </p>
4
4
  <br><br>
5
5
  <p align="center">
6
6
  <h1 align="center">Just the Docs</h1>
7
- <p align="center">A modern, high customizable, responsive Jekyll theme for documentation with built-in search.<br>Easily hosted on GitHub Pages with few dependencies.</p>
7
+ <p align="center">A modern, highly customizable, and responsive Jekyll theme for documentation with built-in search.<br>Easily hosted on GitHub Pages with few dependencies.</p>
8
8
  <p align="center"><strong><a href="https://pmarsceill.github.io/just-the-docs/">See it in action!</a></strong></p>
9
9
  <br><br><br>
10
10
  </p>
@@ -0,0 +1 @@
1
+ @import "./custom/custom";
@@ -0,0 +1,7 @@
1
+ {% if site.logo %}
2
+ $logo: "{{ site.logo | absolute_url }}";
3
+ {% endif %}
4
+ @import "./support/support";
5
+ @import "./color_schemes/{{ include.color_scheme }}";
6
+ @import "./modules";
7
+ {% include css/custom.scss.liquid %}
@@ -1,28 +1,40 @@
1
1
  <head>
2
2
  <meta charset="UTF-8">
3
3
  <meta http-equiv="X-UA-Compatible" content="IE=Edge">
4
- {% if page.description %}
5
- <meta name="Description" content="{{ page.description }}">
6
- {% endif %}
7
4
 
8
- <title>{{ page.title }} - {{ site.title }}</title>
9
- <link rel="stylesheet" href="{{ "/assets/css/just-the-docs.css" | absolute_url }}">
5
+ {% unless site.plugins contains "jekyll-seo-tag" %}
6
+ <title>{{ page.title }} - {{ site.title }}</title>
7
+
8
+ {% if page.description %}
9
+ <meta name="Description" content="{{ page.description }}">
10
+ {% endif %}
11
+ {% endunless %}
12
+
13
+ <link rel="shortcut icon" href="{{ 'favicon.ico' | absolute_url }}" type="image/x-icon">
14
+
15
+ <link rel="stylesheet" href="{{ '/assets/css/just-the-docs-default.css' | absolute_url }}">
10
16
 
11
17
  {% if site.ga_tracking != nil %}
18
+ <script async src="https://www.googletagmanager.com/gtag/js?id={{ site.ga_tracking }}"></script>
12
19
  <script>
13
- window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;
14
- ga('create', '{{ site.ga_tracking }}', '{{ site.url }}');
15
- ga('send', 'pageview');
20
+ window.dataLayer = window.dataLayer || [];
21
+ function gtag(){dataLayer.push(arguments);}
22
+ gtag('js', new Date());
23
+
24
+ gtag('config', '{{ site.ga_tracking }}'{% unless site.ga_tracking_anonymize_ip == nil %}, { 'anonymize_ip': true }{% endunless %});
16
25
  </script>
17
- <script async src="https://www.google-analytics.com/analytics.js"></script>
26
+
18
27
  {% endif %}
19
28
 
20
- {% if site.search_enabled != nil %}
21
- <script type="text/javascript" src="{{ "/assets/js/vendor/lunr.min.js" | absolute_url }}"></script>
29
+ {% if site.search_enabled != false %}
30
+ <script type="text/javascript" src="{{ '/assets/js/vendor/lunr.min.js' | absolute_url }}"></script>
22
31
  {% endif %}
23
- <script type="text/javascript" src="{{ "/assets/js/just-the-docs.js" | absolute_url }}"></script>
32
+ <script type="text/javascript" src="{{ '/assets/js/just-the-docs.js' | absolute_url }}"></script>
24
33
 
25
34
  <meta name="viewport" content="width=device-width, initial-scale=1">
26
35
 
27
- {% seo %}
36
+ {% seo %}
37
+
38
+ {% include head_custom.html %}
39
+
28
40
  </head>
File without changes
File without changes
@@ -1,44 +1,51 @@
1
1
  <nav role="navigation" aria-label="Main navigation">
2
2
  <ul class="navigation-list">
3
- {% assign pages_list = site.html_pages | sort:"nav_order" %}
4
- {% for node in pages_list %}
5
- {% unless node.nav_exclude %}
6
- {% if node.parent == nil %}
3
+ {%- assign ordered_pages_list = site.html_pages | where_exp:"item", "item.nav_order != nil" -%}
4
+ {%- assign unordered_pages_list = site.html_pages | where_exp:"item", "item.nav_order == nil" -%}
5
+ {%- if site.nav_sort == 'case_insensitive' -%}
6
+ {%- assign sorted_ordered_pages_list = ordered_pages_list | sort_natural:"nav_order" -%}
7
+ {%- assign sorted_unordered_pages_list = unordered_pages_list | sort_natural:"title" -%}
8
+ {%- else -%}
9
+ {%- assign sorted_ordered_pages_list = ordered_pages_list | sort:"nav_order" -%}
10
+ {%- assign sorted_unordered_pages_list = unordered_pages_list | sort:"title" -%}
11
+ {%- endif -%}
12
+ {%- assign pages_list = sorted_ordered_pages_list | concat: sorted_unordered_pages_list -%}
13
+ {%- for node in pages_list -%}
14
+ {%- unless node.nav_exclude -%}
15
+ {%- if node.parent == nil and node.title -%}
7
16
  <li class="navigation-list-item{% if page.url == node.url or page.parent == node.title or page.grand_parent == node.title %} active{% endif %}">
8
- {% if page.parent == node.title or page.grand_parent == node.title %}
9
- {% assign first_level_url = node.url | absolute_url %}
10
- {% endif %}
17
+ {%- if page.parent == node.title or page.grand_parent == node.title -%}
18
+ {%- assign first_level_url = node.url | absolute_url -%}
19
+ {%- endif -%}
11
20
  <a href="{{ node.url | absolute_url }}" class="navigation-list-link{% if page.url == node.url %} active{% endif %}">{{ node.title }}</a>
12
- {% if node.has_children %}
13
- {% assign children_list = site.html_pages | sort:"nav_order" %}
21
+ {%- if node.has_children -%}
22
+ {%- assign children_list = pages_list | where: "parent", node.title -%}
14
23
  <ul class="navigation-list-child-list ">
15
- {% for child in children_list %}
16
- {% if child.parent == node.title %}
17
- <li class="navigation-list-item {% if page.url == child.url or page.parent == child.title %} active{% endif %}">
18
- {% if page.url == child.url or page.parent == child.title %}
19
- {% assign second_level_url = child.url | absolute_url %}
20
- {% endif %}
21
- <a href="{{ child.url | absolute_url }}" class="navigation-list-link{% if page.url == child.url %} active{% endif %}">{{ child.title }}</a>
22
- {% if child.has_children %}
23
- {% assign grand_children_list = site.html_pages | sort:"nav_order" %}
24
+ {%- for child in children_list -%}
25
+ {%- unless child.nav_exclude -%}
26
+ <li class="navigation-list-item {% if page.url == child.url or page.parent == child.title %} active{% endif %}">
27
+ {%- if page.url == child.url or page.parent == child.title -%}
28
+ {%- assign second_level_url = child.url | absolute_url -%}
29
+ {%- endif -%}
30
+ <a href="{{ child.url | absolute_url }}" class="navigation-list-link{% if page.url == child.url %} active{% endif %}">{{ child.title }}</a>
31
+ {%- if child.has_children -%}
32
+ {%- assign grand_children_list = pages_list | where: "parent", child.title | where: "grand_parent", node.title -%}
24
33
  <ul class="navigation-list-child-list">
25
- {% for grand_child in grand_children_list %}
26
- {% if grand_child.parent == child.title %}
27
- <li class="navigation-list-item {% if page.url == grand_child.url %} active{% endif %}">
28
- <a href="{{ grand_child.url | absolute_url }}" class="navigation-list-link{% if page.url == grand_child.url %} active{% endif %}">{{ grand_child.title }}</a>
29
- </li>
30
- {% endif %}
31
- {% endfor %}
32
- </ul>
33
- {% endif %}
34
- </li>
35
- {% endif %}
36
- {% endfor %}
34
+ {%- for grand_child in grand_children_list -%}
35
+ <li class="navigation-list-item {% if page.url == grand_child.url %} active{% endif %}">
36
+ <a href="{{ grand_child.url | absolute_url }}" class="navigation-list-link{% if page.url == grand_child.url %} active{% endif %}">{{ grand_child.title }}</a>
37
+ </li>
38
+ {%- endfor -%}
39
+ </ul>
40
+ {%- endif -%}
41
+ </li>
42
+ {%- endunless -%}
43
+ {%- endfor -%}
37
44
  </ul>
38
- {% endif %}
45
+ {%- endif -%}
39
46
  </li>
40
- {% endif %}
41
- {% endunless %}
42
- {% endfor %}
47
+ {%- endif -%}
48
+ {%- endunless -%}
49
+ {%- endfor -%}
43
50
  </ul>
44
51
  </nav>
@@ -0,0 +1,5 @@
1
+ {% if site.logo %}
2
+ <div class="site-logo"></div>
3
+ {% else %}
4
+ {{ site.title }}
5
+ {% endif %}
@@ -0,0 +1,100 @@
1
+ {% capture headingsWorkspace %}
2
+ {% comment %}
3
+ Version 1.0.3
4
+ https://github.com/allejo/jekyll-anchor-headings
5
+
6
+ "Be the pull request you wish to see in the world." ~Ben Balter
7
+
8
+ Usage:
9
+ {% include anchor_headings.html html=content %}
10
+
11
+ Parameters:
12
+ * html (string) - the HTML of compiled markdown generated by kramdown in Jekyll
13
+
14
+ Optional Parameters:
15
+ * beforeHeading (bool) : false - Set to true if the anchor should be placed _before_ the heading's content
16
+ * anchorBody (string) : '' - The content that will be placed inside the anchor; the `%heading%` placeholder is available
17
+ * anchorClass (string) : '' - The class(es) that will be used for each anchor. Separate multiple classes with a space
18
+ * anchorTitle (string) : '' - The `title` attribute that will be used for anchors
19
+ * h_min (int) : 1 - The minimum header level to build an anchor for; any header lower than this value will be ignored
20
+ * h_max (int) : 6 - The maximum header level to build an anchor for; any header greater than this value will be ignored
21
+ * bodyPrefix (string) : '' - Anything that should be inserted inside of the heading tag _before_ its anchor and content
22
+ * bodySuffix (string) : '' - Anything that should be inserted inside of the heading tag _after_ its anchor and content
23
+
24
+ Output:
25
+ The original HTML with the addition of anchors inside of all of the h1-h6 headings.
26
+ {% endcomment %}
27
+
28
+ {% assign minHeader = include.h_min | default: 1 %}
29
+ {% assign maxHeader = include.h_max | default: 6 %}
30
+ {% assign beforeHeading = include.beforeHeading %}
31
+ {% assign nodes = include.html | split: '<h' %}
32
+
33
+ {% capture edited_headings %}{% endcapture %}
34
+
35
+ {% for _node in nodes %}
36
+ {% capture node %}{{ _node | strip }}{% endcapture %}
37
+
38
+ {% if node == "" %}
39
+ {% continue %}
40
+ {% endif %}
41
+
42
+ {% assign nextChar = node | replace: '"', '' | strip | slice: 0, 1 %}
43
+ {% assign headerLevel = nextChar | times: 1 %}
44
+
45
+ <!-- If the level is cast to 0, it means it's not a h1-h6 tag, so let's try to fix it -->
46
+ {% if headerLevel == 0 %}
47
+ {% if nextChar != '<' and nextChar != '' %}
48
+ {% capture node %}<h{{ node }}{% endcapture %}
49
+ {% endif %}
50
+
51
+ {% capture edited_headings %}{{ edited_headings }}{{ node }}{% endcapture %}
52
+ {% continue %}
53
+ {% endif %}
54
+
55
+ {% assign _workspace = node | split: '</h' %}
56
+ {% assign _idWorkspace = _workspace[0] | split: 'id="' %}
57
+ {% assign _idWorkspace = _idWorkspace[1] | split: '"' %}
58
+ {% assign html_id = _idWorkspace[0] %}
59
+
60
+ {% capture _hAttrToStrip %}{{ _workspace[0] | split: '>' | first }}>{% endcapture %}
61
+ {% assign header = _workspace[0] | replace: _hAttrToStrip, '' %}
62
+
63
+ <!-- Build the anchor to inject for our heading -->
64
+ {% capture anchor %}{% endcapture %}
65
+
66
+ {% if html_id and headerLevel >= minHeader and headerLevel <= maxHeader %}
67
+ {% capture anchor %}href="#{{ html_id}}"{% endcapture %}
68
+
69
+ {% if include.anchorClass %}
70
+ {% capture anchor %}{{ anchor }} class="{{ include.anchorClass }}"{% endcapture %}
71
+ {% endif %}
72
+
73
+ {% if include.anchorTitle %}
74
+ {% capture anchor %}{{ anchor }} title="{{ include.anchorTitle | replace: '%heading%', header }}"{% endcapture %}
75
+ {% endif %}
76
+
77
+ {% capture anchor %}<a {{ anchor }}>{{ include.anchorBody | replace: '%heading%', header | default: '' }}</a>{% endcapture %}
78
+
79
+ <!-- In order to prevent adding extra space after a heading, we'll let the 'anchor' value contain it -->
80
+ {% if beforeHeading %}
81
+ {% capture anchor %}{{ anchor }} {% endcapture %}
82
+ {% else %}
83
+ {% capture anchor %} {{ anchor }}{% endcapture %}
84
+ {% endif %}
85
+ {% endif %}
86
+
87
+ {% capture new_heading %}
88
+ <h{{ _hAttrToStrip }}
89
+ {{ include.bodyPrefix }}
90
+ {% if beforeHeading %}
91
+ {{ anchor }}{{ header }}
92
+ {% else %}
93
+ {{ header }}{{ anchor }}
94
+ {% endif %}
95
+ {{ include.bodySuffix }}
96
+ </h{{ _workspace | last }}
97
+ {% endcapture %}
98
+ {% capture edited_headings %}{{ edited_headings }}{{ new_heading }}{% endcapture %}
99
+ {% endfor %}
100
+ {% endcapture %}{% assign headingsWorkspace = '' %}{{ edited_headings | strip }}
@@ -1,25 +1,38 @@
1
+ ---
2
+ layout: table_wrappers
3
+ ---
4
+
1
5
  <!DOCTYPE html>
2
6
 
3
7
  <html lang="{{ site.lang | default: "en-US" }}">
4
8
  {% include head.html %}
5
9
  <body>
10
+ <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
11
+ <symbol id="link" viewBox="0 0 16 16">
12
+ <title>Link</title>
13
+ <path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path>
14
+ </symbol>
15
+ </svg>
6
16
 
7
17
  <div class="page-wrap">
8
18
  <div class="side-bar">
9
- <a href="{{ site.url }}{{ site.baseurl }}" class="site-title fs-6 lh-tight">{{ site.title }}</a>
10
- <span class="fs-3"><button class="js-main-nav-trigger navigation-list-toggle btn btn-outline" type="button" data-text-toggle="Hide">Menu</button></span>
19
+ <div class="site-header">
20
+ <a href="{{ site.url }}{{ site.baseurl }}" class="site-title lh-tight">{% include title.html %}</a>
21
+ <button class="menu-button fs-3 js-main-nav-trigger" data-text-toggle="Hide" type="button">Menu</button>
22
+ </div>
23
+
11
24
  <div class="navigation main-nav js-main-nav">
12
25
  {% include nav.html %}
13
26
  </div>
14
- <footer role="contentinfo" class="site-footer">
15
- <p class="text-small text-grey-dk-000 mb-0">This site uses <a href="https://github.com/pmarsceill/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll.</p>
27
+ <footer class="site-footer">
28
+ <p class="text-small text-grey-dk-000 mb-4">This site uses <a href="https://github.com/pmarsceill/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll.</p>
16
29
  </footer>
17
30
  </div>
18
31
  <div class="main-content-wrap js-main-content" tabindex="0">
19
- <div class="page-header">
20
- <div class="main-content">
21
- {% if site.search_enabled != nil %}
22
- <div class="search js-search">
32
+ <div class="main-content" id="top">
33
+ <div class="page-header js-page-header">
34
+ {% if site.search_enabled != false %}
35
+ <div class="search">
23
36
  <div class="search-input-wrap">
24
37
  <input type="text" class="js-search-input search-input" tabindex="0" placeholder="Search {{ site.title }}" aria-label="Search {{ site.title }}" autocomplete="off">
25
38
  <svg width="14" height="14" viewBox="0 0 28 28" xmlns="http://www.w3.org/2000/svg" class="search-icon"><title>Search</title><g fill-rule="nonzero"><path d="M17.332 20.735c-5.537 0-10-4.6-10-10.247 0-5.646 4.463-10.247 10-10.247 5.536 0 10 4.601 10 10.247s-4.464 10.247-10 10.247zm0-4c3.3 0 6-2.783 6-6.247 0-3.463-2.7-6.247-6-6.247s-6 2.784-6 6.247c0 3.464 2.7 6.247 6 6.247z"/><path d="M11.672 13.791L.192 25.271 3.02 28.1 14.5 16.62z"/></g></svg>
@@ -28,47 +41,95 @@
28
41
  </div>
29
42
  {% endif %}
30
43
  {% if site.aux_links != nil %}
31
- <ul class="list-style-none text-small mt-md-1 mb-md-1 pb-4 pb-md-0 js-aux-nav aux-nav">
44
+ <ul class="list-style-none text-small aux-nav">
32
45
  {% for link in site.aux_links %}
33
- <li class="d-inline-block my-0{% unless forloop.last %} mr-2{% endunless %}"><a href="{{ link.last }}">{{ link.first }}</a></li>
46
+ <li class="d-inline-block my-0{% unless forloop.last %} mr-2{% endunless %}">
47
+ <a href="{{ link.last }}"
48
+ {% if site.aux_links_new_tab %}
49
+ target="_blank" rel="noopener noreferrer"
50
+ {% endif %}
51
+ >
52
+ {{ link.first }}
53
+ </a>
54
+ </li>
34
55
  {% endfor %}
35
56
  </ul>
36
57
  {% endif %}
37
58
  </div>
38
- </div>
39
- <div class="main-content">
40
- {% unless page.url == "/" %}
41
- {% if page.parent %}
42
- <nav class="breadcrumb-nav">
43
- <ol class="breadcrumb-nav-list">
44
- {% if page.grand_parent %}
45
- <li class="breadcrumb-nav-list-item"><a href="{{ first_level_url }}">{{ page.grand_parent }}</a></li>
46
- <li class="breadcrumb-nav-list-item"><a href="{{ second_level_url }}">{{ page.parent }}</a></li>
47
- {% else %}
48
- <li class="breadcrumb-nav-list-item"><a href="{{ first_level_url }}">{{ page.parent }}</a></li>
59
+ <div class="page">
60
+ {% unless page.url == "/" %}
61
+ {% if page.parent %}
62
+ <nav class="breadcrumb-nav">
63
+ <ol class="breadcrumb-nav-list">
64
+ {% if page.grand_parent %}
65
+ <li class="breadcrumb-nav-list-item"><a href="{{ first_level_url }}">{{ page.grand_parent }}</a></li>
66
+ <li class="breadcrumb-nav-list-item"><a href="{{ second_level_url }}">{{ page.parent }}</a></li>
67
+ {% else %}
68
+ <li class="breadcrumb-nav-list-item"><a href="{{ first_level_url }}">{{ page.parent }}</a></li>
69
+ {% endif %}
70
+ <li class="breadcrumb-nav-list-item"><span>{{ page.title }}</span></li>
71
+ </ol>
72
+ </nav>
73
+ {% endif %}
74
+ {% endunless %}
75
+ <div id="main-content" class="page-content" role="main">
76
+ {% if site.heading_anchors != false %}
77
+ {% include vendor/anchor_headings.html html=content beforeHeading="true" anchorBody="<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><use xlink:href=\"#link\"></use></svg>" anchorClass="anchor-heading" %}
78
+ {% else %}
79
+ {{ content }}
80
+ {% endif %}
81
+
82
+ {% if page.has_children == true and page.has_toc != false %}
83
+ <hr>
84
+ <h2 class="text-delta">Table of contents</h2>
85
+ <ul>
86
+ {%- assign children_list = pages_list | where: "parent", node.title -%}
87
+ {% for child in children_list %}
88
+ {% if child.parent == page.title and child.title != page.title and child.grand_parent == page.parent %}
89
+ <li>
90
+ <a href="{{ child.url | absolute_url }}">{{ child.title }}</a>{% if child.summary %} - {{ child.summary }}{% endif %}
91
+ </li>
49
92
  {% endif %}
50
- <li class="breadcrumb-nav-list-item"><span>{{ page.title }}</span></li>
51
- </ol>
52
- </nav>
93
+ {% endfor %}
94
+ </ul>
53
95
  {% endif %}
54
- {% endunless %}
55
- <div id="main-content" class="page-content" role="main">
56
- {{ content }}
57
96
 
58
- {% if page.has_children == true and page.has_toc != false %}
59
- <hr>
60
- <h2 class="text-delta">Table of contents</h2>
61
- {% assign children_list = site.pages | sort:"nav_order" %}
62
- <ul>
63
- {% for child in children_list %}
64
- {% if child.parent == page.title and child.title != page.title %}
65
- <li>
66
- <a href="{{ child.url | absolute_url }}">{{ child.title }}</a>
67
- </li>
97
+ {% if site.footer_content != nil or site.last_edit_timestamp or site.gh_edit_link %}
98
+ <hr>
99
+ <footer>
100
+ {% if site.back_to_top %}
101
+ <p><a href="#top">{{ site.back_to_top_text }}</a></p>
102
+ {% endif %}
103
+ {% if site.footer_content != nil %}
104
+ <p class="text-small text-grey-dk-000 mb-0">{{ site.footer_content }}</p>
68
105
  {% endif %}
69
- {% endfor %}
70
- </ul>
106
+
107
+ {% if site.last_edit_timestamp or site.gh_edit_link %}
108
+ <div class="d-flex mt-2">
109
+ {% if site.last_edit_timestamp and site.last_edit_time_format and page.last_modified_date %}
110
+ <p class="text-small text-grey-dk-000 mb-0 mr-2">
111
+ Page last modified: <span class="d-inline-block">{{ page.last_modified_date | date: site.last_edit_time_format }}</span>.
112
+ </p>
113
+ {% endif %}
114
+ {%
115
+ if
116
+ site.gh_edit_link and
117
+ site.gh_edit_link_text and
118
+ site.gh_edit_repository and
119
+ site.gh_edit_branch and
120
+ site.gh_edit_view_mode
121
+
122
+ %}
123
+ <p class="text-small text-grey-dk-000 mb-0">
124
+ <a href="{{ site.gh_edit_repository }}/{{ site.gh_edit_view_mode }}/{{ site.gh_edit_branch }}/{{ page.path }}">{{ site.gh_edit_link_text }}</a>
125
+ </p>
126
+ {% endif %}
127
+ </div>
128
+ {% endif %}
129
+
130
+ </footer>
71
131
  {% endif %}
132
+
72
133
  </div>
73
134
  </div>
74
135
  </div>