jekyll-theme-centos 2.2.18 → 2.2.19
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/_data/base/footer.yml +32 -0
- data/_data/base/identity.yml +20 -0
- data/_data/base/navbar.yml +57 -0
- data/_data/base/navbar_absolute.yml +74 -0
- data/_data/base/navbar_www.yml +74 -0
- data/_includes/base/announcements.html +6 -0
- data/_includes/base/breadcrumbs.html +13 -0
- data/_includes/base/footer.html +61 -0
- data/_includes/base/head.html +17 -0
- data/_includes/base/header.html +17 -0
- data/_includes/base/navbar.html +32 -0
- data/_includes/base/script.html +70 -0
- data/_includes/base/toc-accordion.html +10 -0
- data/_includes/base/toc.html +99 -0
- data/_layouts/base/default.html +31 -0
- data/_sass/base/_centos.scss +80 -0
- data/_sass/base/_variables.scss +24 -0
- data/assets/css/base/stylesheet.min.scss +6 -0
- data/assets/icons/android-chrome-192.png +0 -0
- data/assets/icons/android-chrome-512.png +0 -0
- data/assets/icons/apple-touch-icon.png +0 -0
- data/assets/icons/favicon-16.png +0 -0
- data/assets/icons/favicon-32.png +0 -0
- data/assets/img/{people → base}/screenshot.svg +4 -4
- metadata +21 -32
- data/_data/download/cards.yml +0 -148
- data/_data/download/navbar.yml +0 -48
- data/_data/people/navbar.yml +0 -34
- data/_includes/download/cards-body-convert.html +0 -10
- data/_includes/download/cards-body-doc.html +0 -9
- data/_includes/download/cards-body-eol.html +0 -16
- data/_includes/download/cards-body-screenshot.html +0 -26
- data/_includes/download/cards-body.html +0 -8
- data/_includes/download/cards-footer.html +0 -3
- data/_includes/download/cards-header-convert.html +0 -8
- data/_includes/download/cards-header-doc.html +0 -8
- data/_includes/download/cards-header-eol.html +0 -8
- data/_includes/download/cards-header-screenshot.html +0 -8
- data/_includes/download/cards-header.html +0 -13
- data/_includes/download/cards.html +0 -62
- data/_includes/people/about.html +0 -25
- data/_includes/people/header.html +0 -11
- data/_includes/people/posts.html +0 -35
- data/_includes/people/projects.html +0 -32
- data/_includes/people/pubkeys.html +0 -31
- data/_includes/people/support.html +0 -25
- data/_layouts/download/cards.html +0 -7
- data/_layouts/people/default.html +0 -20
- data/assets/img/download/centos-linux-7-2009-screenshot-n.png +0 -0
- data/assets/img/download/centos-stream-8-screenshot-n.png +0 -0
- data/assets/img/download/centos-stream-9-screenshot-n.png +0 -0
- data/assets/img/download/distribution-release-screenshot-n.png +0 -0
- data/assets/img/download/distribution-release-screenshot-n.svg +0 -128
- data/assets/img/people/YourUsername.svg +0 -64
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a31a39b830d20c552324d3848a4f4f2b50925e8435b1fbc35d15cdf5f7517291
|
4
|
+
data.tar.gz: 13248c5ae1a22fa1b068e6edb61236c6f273d7bebe46060487651d212a06df0f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 298d4e734be9c8ba1d0c8ec495a5d4d7fcac269591f9bd13225dc108995d3fd4567b7b84095f8aba25cdaa6ca3446ed811bfd4945fd10b614181ef27c3d946ed
|
7
|
+
data.tar.gz: 59fd6dd8f9201acefbd89cb8ab8aaa4f2a0f71a7b6d02f2fed3cc103d176a61d3b37dc08fef60eabf7e7ceef3bfce6b7ab68c3f2b003cbbb303615268a41d4ec
|
@@ -0,0 +1,32 @@
|
|
1
|
+
---
|
2
|
+
#
|
3
|
+
# site.data.base.footer - Control footer section.
|
4
|
+
#
|
5
|
+
social:
|
6
|
+
- name: Facebook
|
7
|
+
icon: "fa-brands fa-facebook-f"
|
8
|
+
link: "https://www.facebook.com/groups/centosproject/"
|
9
|
+
- name: Twitter
|
10
|
+
icon: "fa-brands fa-twitter"
|
11
|
+
link: "https://twitter.com/centos"
|
12
|
+
- name: Youtube
|
13
|
+
icon: "fa-brands fa-youtube"
|
14
|
+
link: "https://youtube.com/TheCentOSProject"
|
15
|
+
- name: Linkedin
|
16
|
+
icon: "fa-brands fa-linkedin"
|
17
|
+
link: "https://www.linkedin.com/groups/22405"
|
18
|
+
- name: Reddit
|
19
|
+
icon: "fa-brands fa-reddit"
|
20
|
+
link: "https://www.reddit.com/r/CentOS/"
|
21
|
+
- name: Mastodon
|
22
|
+
icon: "fa-brands fa-mastodon"
|
23
|
+
link: "https://fosstodon.org/@centos"
|
24
|
+
copyright:
|
25
|
+
author: "The CentOS Project"
|
26
|
+
legals:
|
27
|
+
- text: "Legal"
|
28
|
+
link: "/legal"
|
29
|
+
- text: "Privacy"
|
30
|
+
link: "/legal/privacy"
|
31
|
+
- text: "Site source"
|
32
|
+
link: "https://git.centos.org/centos/centos.org"
|
@@ -0,0 +1,20 @@
|
|
1
|
+
---
|
2
|
+
#
|
3
|
+
# site.data.base.identity - Control the site branding (corporate visual
|
4
|
+
# identity) information.
|
5
|
+
#
|
6
|
+
title: "The CentOS Project"
|
7
|
+
description: >
|
8
|
+
Community-driven free software effort focused around the goal of providing a
|
9
|
+
rich base platform for open source communities to build upon.
|
10
|
+
|
11
|
+
logo:
|
12
|
+
link: ""
|
13
|
+
navbar: "assets/img/centos-whitelogo.svg"
|
14
|
+
footer: "assets/img/centos-logo.svg"
|
15
|
+
manifestation: ""
|
16
|
+
symbol:
|
17
|
+
link: ""
|
18
|
+
image: "assets/img/centos-symbol.svg"
|
19
|
+
motif:
|
20
|
+
image: "assets/img/centos-motif.png"
|
@@ -0,0 +1,57 @@
|
|
1
|
+
---
|
2
|
+
#
|
3
|
+
# site.data.base.navbar - Control top navigation bar using relative links
|
4
|
+
# specific to jekyll-theme-centos-base website component. Not used inside
|
5
|
+
# CentOS websites. Used in website component presentation only.
|
6
|
+
#
|
7
|
+
- name: "Layouts"
|
8
|
+
icon: "fa-solid fa-layer-group"
|
9
|
+
link: "/layouts/"
|
10
|
+
menu:
|
11
|
+
- name: "base/default.html"
|
12
|
+
link: "/layouts/default/"
|
13
|
+
visible_on: ["navbar", "footer"]
|
14
|
+
|
15
|
+
- name: "Includes"
|
16
|
+
icon: "fa-solid fa-arrows-turn-to-dots"
|
17
|
+
link: "/includes/"
|
18
|
+
menu:
|
19
|
+
- name: "base/announcements.html"
|
20
|
+
link: "/includes/announcements/"
|
21
|
+
- name: "base/breadcrumbs.html"
|
22
|
+
link: "/includes/breadcrumbs/"
|
23
|
+
- name: "base/head.html"
|
24
|
+
link: "/includes/head/"
|
25
|
+
- name: "base/header.html"
|
26
|
+
link: "/includes/header/"
|
27
|
+
- name: "base/navbar.html"
|
28
|
+
link: "/includes/navbar/"
|
29
|
+
- name: "base/toc-accordion.html"
|
30
|
+
link: "/includes/toc-accordion/"
|
31
|
+
- name: "base/toc.html"
|
32
|
+
link: "/includes/toc/"
|
33
|
+
visible_on: ["navbar", "footer"]
|
34
|
+
|
35
|
+
- name: "Sass"
|
36
|
+
icon: "fa-brands fa-sass"
|
37
|
+
link: "/sass/"
|
38
|
+
menu:
|
39
|
+
- name: "base/variables"
|
40
|
+
link: "/sass/variables"
|
41
|
+
- name: "base/centos"
|
42
|
+
link: "/sass/centos"
|
43
|
+
visible_on: ["navbar", "footer"]
|
44
|
+
|
45
|
+
- name: "Data"
|
46
|
+
icon: "fa-solid fa-file-code"
|
47
|
+
link: "/data/"
|
48
|
+
menu:
|
49
|
+
- name: "site.data.base.identity"
|
50
|
+
link: "/data/identity"
|
51
|
+
- name: "site.data.base.navbar"
|
52
|
+
link: "/data/navbar"
|
53
|
+
- name: "site.data.base.navbar_absolute"
|
54
|
+
link: "/data/navbar_absolute"
|
55
|
+
- name: "site.data.base.navbar_component"
|
56
|
+
link: "/data/navbar_component"
|
57
|
+
visible_on: ["navbar", "footer"]
|
@@ -0,0 +1,74 @@
|
|
1
|
+
---
|
2
|
+
#
|
3
|
+
# site.data.base.navbar_absolute - Control top navigation bar using absolute
|
4
|
+
# links for both internal and external resources. Useful when you build the
|
5
|
+
# navigation bar for sites other than "www.centos.org" website and you want to
|
6
|
+
# keep references to "www.centos.org."
|
7
|
+
#
|
8
|
+
- name: "Download"
|
9
|
+
icon: "fas fa-download"
|
10
|
+
link: "https://www.centos.org/download"
|
11
|
+
menu: []
|
12
|
+
visible_on: ["navbar"]
|
13
|
+
- name: "About"
|
14
|
+
icon: "fas fa-info-circle"
|
15
|
+
link: "#"
|
16
|
+
menu:
|
17
|
+
- name: "About CentOS"
|
18
|
+
link: "https://www.centos.org/about"
|
19
|
+
- name: "Frequently Asked Questions (FAQs)"
|
20
|
+
link: "https://wiki.centos.org/FAQ"
|
21
|
+
- name: "Special Interest Groups (SIGs)"
|
22
|
+
link: "https://wiki.centos.org/SpecialInterestGroups"
|
23
|
+
- name: "CentOS Variants"
|
24
|
+
link: "https://www.centos.org/variants"
|
25
|
+
- name: "Governance"
|
26
|
+
link: "https://www.centos.org/about/governance"
|
27
|
+
visible_on: ["navbar", "footer"]
|
28
|
+
- name: "Community"
|
29
|
+
icon: "fas fa-users"
|
30
|
+
link: "#"
|
31
|
+
menu:
|
32
|
+
- name: "Contribute"
|
33
|
+
link: "https://wiki.centos.org/Contribute"
|
34
|
+
icon: "fas fa-hands-helping"
|
35
|
+
- name: "Forums"
|
36
|
+
link: "https://www.centos.org/forums/"
|
37
|
+
icon: "fas fa-comments"
|
38
|
+
- name: "Mailing Lists"
|
39
|
+
link: "https://wiki.centos.org/GettingHelp/ListInfo"
|
40
|
+
icon: "fas fa-envelope"
|
41
|
+
- name: "IRC"
|
42
|
+
link: "https://wiki.centos.org/irc"
|
43
|
+
icon: "fas fa-hashtag"
|
44
|
+
- name: "Calendar & IRC Meeting List"
|
45
|
+
link: "https://www.centos.org/community/calendar/"
|
46
|
+
icon: "fas fa-calendar-alt"
|
47
|
+
- name: "Planet"
|
48
|
+
link: "http://planet.centos.org/"
|
49
|
+
icon: "fas fa-newspaper"
|
50
|
+
- name: "Submit Bug"
|
51
|
+
link: "https://bugs.centos.org/"
|
52
|
+
icon: "fas fa-bug"
|
53
|
+
visible_on: ["navbar", "footer"]
|
54
|
+
- name: "Documentation"
|
55
|
+
icon: "fas fa-book"
|
56
|
+
link: "#"
|
57
|
+
menu:
|
58
|
+
- name: "Wiki"
|
59
|
+
link: "https://wiki.centos.org/"
|
60
|
+
- name: "Manuals"
|
61
|
+
link: "https://docs.centos.org/"
|
62
|
+
- name: "GPG Key Info"
|
63
|
+
link: "https://www.centos.org/keys"
|
64
|
+
visible_on: ["navbar", "footer"]
|
65
|
+
- name: "Help"
|
66
|
+
icon: "fas fa-life-ring"
|
67
|
+
link: "https://wiki.centos.org/Documentation?action=show&redirect=GettingHelp"
|
68
|
+
menu: []
|
69
|
+
visible_on: ["navbar"]
|
70
|
+
- name: "Search"
|
71
|
+
icon: "fas fa-search"
|
72
|
+
link: "https://www.centos.org/search"
|
73
|
+
menu: []
|
74
|
+
visible_on: []
|
@@ -0,0 +1,74 @@
|
|
1
|
+
---
|
2
|
+
#
|
3
|
+
# site.data.base.navbar_www - Control top navigation bar using relative links
|
4
|
+
# for internal resources and absolute links for external resources. Useful when
|
5
|
+
# you need the same site to be browsable on different environments (e.g., www
|
6
|
+
# and www.dev).
|
7
|
+
#
|
8
|
+
- name: "Download"
|
9
|
+
icon: "fas fa-download"
|
10
|
+
link: "/download"
|
11
|
+
menu: []
|
12
|
+
visible_on: ["navbar"]
|
13
|
+
- name: "About"
|
14
|
+
icon: "fas fa-info-circle"
|
15
|
+
link: "#"
|
16
|
+
menu:
|
17
|
+
- name: "About CentOS"
|
18
|
+
link: "/about"
|
19
|
+
- name: "Frequently Asked Questions (FAQs)"
|
20
|
+
link: "https://wiki.centos.org/FAQ"
|
21
|
+
- name: "Special Interest Groups (SIGs)"
|
22
|
+
link: "https://wiki.centos.org/SpecialInterestGroups"
|
23
|
+
- name: "CentOS Variants"
|
24
|
+
link: "/variants"
|
25
|
+
- name: "Governance"
|
26
|
+
link: "/about/governance"
|
27
|
+
visible_on: ["navbar", "footer"]
|
28
|
+
- name: "Community"
|
29
|
+
icon: "fas fa-users"
|
30
|
+
link: "#"
|
31
|
+
menu:
|
32
|
+
- name: "Contribute"
|
33
|
+
link: "https://wiki.centos.org/Contribute"
|
34
|
+
icon: "fas fa-hands-helping"
|
35
|
+
- name: "Forums"
|
36
|
+
link: "/forums/"
|
37
|
+
icon: "fas fa-comments"
|
38
|
+
- name: "Mailing Lists"
|
39
|
+
link: "https://wiki.centos.org/GettingHelp/ListInfo"
|
40
|
+
icon: "fas fa-envelope"
|
41
|
+
- name: "IRC"
|
42
|
+
link: "https://wiki.centos.org/irc"
|
43
|
+
icon: "fas fa-hashtag"
|
44
|
+
- name: "Calendar & IRC Meeting List"
|
45
|
+
link: "/community/calendar/"
|
46
|
+
icon: "fas fa-calendar-alt"
|
47
|
+
- name: "Planet"
|
48
|
+
link: "http://planet.centos.org/"
|
49
|
+
icon: "fas fa-newspaper"
|
50
|
+
- name: "Submit Bug"
|
51
|
+
link: "https://bugs.centos.org/"
|
52
|
+
icon: "fas fa-bug"
|
53
|
+
visible_on: ["navbar", "footer"]
|
54
|
+
- name: "Documentation"
|
55
|
+
icon: "fas fa-book"
|
56
|
+
link: "#"
|
57
|
+
menu:
|
58
|
+
- name: "Wiki"
|
59
|
+
link: "https://wiki.centos.org/"
|
60
|
+
- name: "Manuals"
|
61
|
+
link: "https://docs.centos.org/"
|
62
|
+
- name: "GPG Key Info"
|
63
|
+
link: "/keys"
|
64
|
+
visible_on: ["navbar", "footer"]
|
65
|
+
- name: "Help"
|
66
|
+
icon: "fas fa-life-ring"
|
67
|
+
link: "https://wiki.centos.org/Documentation?action=show&redirect=GettingHelp"
|
68
|
+
menu: []
|
69
|
+
visible_on: ["navbar"]
|
70
|
+
- name: "Search"
|
71
|
+
icon: "fas fa-search"
|
72
|
+
link: "/search"
|
73
|
+
menu: []
|
74
|
+
visible_on: []
|
@@ -0,0 +1,6 @@
|
|
1
|
+
{% for alert in page.with_announcements -%}
|
2
|
+
<div class="alert alert-{{ alert.color | default: 'primary' }} alert-dismissible fade show shadow" role="alert">
|
3
|
+
<i class="{{ alert.icon | default: 'fa-solid fa-bullhorn' }}"></i> <strong>{{ alert.title | default: "" }}</strong> {{ alert.content | default: "" }}
|
4
|
+
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
|
5
|
+
</div>
|
6
|
+
{% endfor -%}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
<nav aria-label="breadcrumb">
|
2
|
+
<ol class="breadcrumb">
|
3
|
+
{% assign crumbs = page.url | remove:'/index.html' | split: '/' %}
|
4
|
+
<li class="breadcrumb-item"><a href="{{ site.baseurl }}/">Home</a></li>
|
5
|
+
{% for crumb in crumbs offset: 1 %}
|
6
|
+
{% if forloop.last %}
|
7
|
+
<li class="breadcrumb-item active">{{ page.title }}</li>
|
8
|
+
{% else %}
|
9
|
+
<li class="breadcrumb-item"><a href="{{ site.baseurl }}{% assign crumb_limit = forloop.index | plus: 1 %}{% for crumb in crumbs limit: crumb_limit %}{{ crumb | append: '/' | replace:'without-plugin/','without-plugins/' }}{% endfor %}">{{ crumb | replace:'-',' ' | remove:'.html' | capitalize }}</a></li>
|
10
|
+
{% endif %}
|
11
|
+
{% endfor %}
|
12
|
+
</ol>
|
13
|
+
</nav>
|
@@ -0,0 +1,61 @@
|
|
1
|
+
{% assign navbar = site.data[site.navbar_data_dirname][site.navbar_data_filename] %}
|
2
|
+
<footer class="footer small bg-dark text-light mt-3">
|
3
|
+
<div class="container">
|
4
|
+
<div class="row bg-primary justify-content-between">
|
5
|
+
{% assign sections = navbar | where: "visible_on", "footer" %}
|
6
|
+
{% assign columns = sections.size %}
|
7
|
+
{% case columns %}
|
8
|
+
{% when 1 %}
|
9
|
+
{% assign column_width = 12 %}
|
10
|
+
{% when 2 %}
|
11
|
+
{% assign column_width = 6 %}
|
12
|
+
{% when 3 %}
|
13
|
+
{% assign column_width = 4 %}
|
14
|
+
{% when 4 %}
|
15
|
+
{% assign column_width = 3 %}
|
16
|
+
{% else %}
|
17
|
+
{% assign column_width = 1 %}
|
18
|
+
{% endcase %}
|
19
|
+
{% for section in sections -%}
|
20
|
+
<div class="col-sm-12 col-lg-{{ column_width }} my-3">
|
21
|
+
<h6 class="fw-bold"><i class="{{ section.icon }}"></i> {{ section.name }}</h6>
|
22
|
+
<ul class="nav flex-column">
|
23
|
+
{% for item in section.menu -%}
|
24
|
+
<li class="nav-item"><a href="{{ site.baseurl }}{{ item.link }}" class="link-light px-0">{{ item.name }}</a></li>
|
25
|
+
{% endfor %}
|
26
|
+
</ul>
|
27
|
+
</div>
|
28
|
+
{% endfor %}
|
29
|
+
</div>
|
30
|
+
|
31
|
+
<div class="row border-top border-secondary border-5">
|
32
|
+
<div class="col-sm-12 col-lg-8">
|
33
|
+
<h4 class="fw-bold pt-3">{{ site.title }}</h4>
|
34
|
+
<p>{{ site.description }}</p>
|
35
|
+
</div>
|
36
|
+
<div class="col-sm-12 col-lg-4 pt-lg-3 d-flex justify-content-sm-start justify-content-lg-end">
|
37
|
+
<ul class="nav list-unstyled">
|
38
|
+
{% for item in site.data.base.footer.social -%}
|
39
|
+
<li class="nav-item">
|
40
|
+
<a class="btn btn-sm fs-5 link-primary" href="{{ item.link }}" role="button" aria-label="{{ item.name }}" data-bs-placement="bottom" data-bs-title="{{ item.name }}"><i class="{{ item.icon }}"></i></a>
|
41
|
+
</li>
|
42
|
+
{% endfor %}
|
43
|
+
</ul>
|
44
|
+
</div>
|
45
|
+
</div>
|
46
|
+
|
47
|
+
<div class="row py-3">
|
48
|
+
<div class="col">
|
49
|
+
<span>Copyright ©</span>
|
50
|
+
<span id="copyright_year"></span>
|
51
|
+
<span>{{ site.data.base.footer.copyright.author }}</span>
|
52
|
+
{% for item in site.data.base.footer.copyright.legals -%}
|
53
|
+
<span class="border-start ms-2 ps-2">
|
54
|
+
<a class="link-light" href="{{ site.baseurl }}{{ item.link }}">{{ item.text }}</a>
|
55
|
+
</span>
|
56
|
+
{% endfor %}
|
57
|
+
</div>
|
58
|
+
</div>
|
59
|
+
|
60
|
+
</div>
|
61
|
+
</footer>
|
@@ -0,0 +1,17 @@
|
|
1
|
+
<head>
|
2
|
+
<meta charset="utf-8" />
|
3
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no" />
|
4
|
+
<title>{{ page.title }}</title>
|
5
|
+
<link rel="icon" href="{{ site.baseurl }}/assets/icons/favicon-16.png" sizes="16x16" />
|
6
|
+
<link rel="icon" href="{{ site.baseurl }}/assets/icons/favicon-32.png" sizes="32x32" />
|
7
|
+
<link rel="icon" href="{{ site.baseurl }}/assets/icons/favicon.svg" sizes="any" />
|
8
|
+
<link rel="apple-touch-icon" href="{{ site.baseurl }}/assets/icons/apple-touch-icon.png" sizes="180x180" />
|
9
|
+
<link rel="manifest" href="{{ site.baseurl }}/site.webmanifest" />
|
10
|
+
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat:100,200,300,400,500,600,700,800,900" />
|
11
|
+
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Overpass+Mono:100,200,300,400,500,600,700,800,900" />
|
12
|
+
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css" integrity="sha512-iecdLmaskl7CVkqkXNQ/ZH/XLlvWZOJyj7Yy7tcenmpD1ypASozpmT/E0iPtmFIB46ZmdtAc9eNBvH0H/ZpiBw==" crossorigin="anonymous" referrerpolicy="no-referrer" />
|
13
|
+
{% if page.with_datatables == true -%}
|
14
|
+
<link rel="stylesheet" href="{{ site.baseurl }}/assets/css/dataTables.bootstrap5.min.css">
|
15
|
+
{% endif -%}
|
16
|
+
<link rel="stylesheet" href="{{ site.baseurl }}/assets/css/base/stylesheet.min.css" />
|
17
|
+
</head>
|
@@ -0,0 +1,17 @@
|
|
1
|
+
<div class="bg-image bg-dark text-light">
|
2
|
+
<div class="container py-5">
|
3
|
+
{% if page.with_announcements and page.with_announcements.size > 0 -%}
|
4
|
+
<div class="row">
|
5
|
+
<div class="col">
|
6
|
+
{% include base/announcements.html %}
|
7
|
+
</div>
|
8
|
+
</div>
|
9
|
+
{% endif -%}
|
10
|
+
<div class="row my-3 justify-content-center">
|
11
|
+
<div class="col-sm-12 col-xl-8">
|
12
|
+
<div class="display-4 fw-bold mb-3">{{ page.title }}</div>
|
13
|
+
<div class="lead">{{ page.title_lead }}</div>
|
14
|
+
</div>
|
15
|
+
</div>
|
16
|
+
</div>
|
17
|
+
</div>
|
@@ -0,0 +1,32 @@
|
|
1
|
+
{% assign navbar = site.data[site.navbar_data_dirname][site.navbar_data_filename] %}
|
2
|
+
<header class="site-header sticky-top">
|
3
|
+
<nav class="navbar navbar-expand-lg navbar-dark bg-dark shadow">
|
4
|
+
<div class="container">
|
5
|
+
<a class="navbar-brand pt-1" href="{{ site.baseurl }}/"><img role="img" src="{{ site.baseurl }}/{{ site.data.base.identity.logo.navbar }}" height="32" alt="{{ site.title }}" />{% if site.manifestation != "" %}<span class="manifestation border-start border-light ps-3 ms-3 py-2 fs-6">{{ site.manifestation }}</span>{% endif %}</a>
|
6
|
+
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarContent" aria-controls="navbarContent" aria-expanded="false" aria-label="Toggle navigation">
|
7
|
+
<span class="navbar-toggler-icon"></span>
|
8
|
+
</button>
|
9
|
+
<div class="collapse navbar-collapse" id="navbarContent">
|
10
|
+
<ul class="navbar-nav mr-auto">
|
11
|
+
{% assign navitems = navbar | where: "visible_on", "navbar" -%}
|
12
|
+
{% for navitem in navitems -%}
|
13
|
+
{% if navitem.menu.size == 0 -%}
|
14
|
+
<li class="nav-item">
|
15
|
+
<a class="nav-link" role="presentation" href="{{ site.baseurl }}{{ navitem.link }}"><i class="{{ navitem.icon }}"></i> {{ navitem.name }}</a>
|
16
|
+
</li>
|
17
|
+
{% else -%}
|
18
|
+
<li class="nav-item dropdown">
|
19
|
+
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown-{{ forloop.index }}" role="button" data-bs-toggle="dropdown" aria-expanded="false"><i class="{{ navitem.icon }}"></i> {{ navitem.name }}</a>
|
20
|
+
<ul class="dropdown-menu dropdown-menu-dark shadow" aria-labelledby="navbarDropdown-{{ forloop.index }}">
|
21
|
+
{% for dropdownitem in navitem.menu -%}
|
22
|
+
<li><a class="dropdown-item" role="presentation" href="{{ site.baseurl }}{{ dropdownitem.link }}">{{ dropdownitem.name }}</a></li>
|
23
|
+
{% endfor -%}
|
24
|
+
</ul>
|
25
|
+
</li>
|
26
|
+
{% endif -%}
|
27
|
+
{% endfor -%}
|
28
|
+
</ul>
|
29
|
+
</div>
|
30
|
+
</div>
|
31
|
+
</nav>
|
32
|
+
</header>
|
@@ -0,0 +1,70 @@
|
|
1
|
+
<!-- JQuery -->
|
2
|
+
<script src="{{ site.baseurl }}/assets/js/jquery.min.js"></script>
|
3
|
+
|
4
|
+
{% if page.with_datatables == true %}
|
5
|
+
<!-- DataTables -->
|
6
|
+
<script src="{{ site.baseurl }}/assets/js/jquery.dataTables.min.js"></script>
|
7
|
+
<script src="{{ site.baseurl }}/assets/js/dataTables.bootstrap5.min.js"></script>
|
8
|
+
<script>
|
9
|
+
$(document).ready(function () {
|
10
|
+
$("#download-mirror").DataTable();
|
11
|
+
});
|
12
|
+
</script>
|
13
|
+
{% endif %}
|
14
|
+
|
15
|
+
<!-- BackToTop -->
|
16
|
+
<script src="{{ site.baseurl }}/assets/js/vanilla-back-to-top.min.js"></script>
|
17
|
+
<script>
|
18
|
+
addBackToTop({
|
19
|
+
diameter: 56,
|
20
|
+
backgroundColor: "rgb(32, 7, 53)",
|
21
|
+
textColor: "#fff",
|
22
|
+
});
|
23
|
+
</script>
|
24
|
+
|
25
|
+
{% if page.with_clipboard == true %}
|
26
|
+
<!-- Clipboard.JS -->
|
27
|
+
<script src="{{ site.baseurl }}/assets/js/clipboard.min.js"></script>
|
28
|
+
<script>
|
29
|
+
// Initialize ClipboardJS
|
30
|
+
$(".btn-clipboard").on("click", function () {
|
31
|
+
let button = $(this);
|
32
|
+
var copy_id = $(this).attr("id");
|
33
|
+
var clipboard = new ClipboardJS("#" + copy_id);
|
34
|
+
|
35
|
+
clipboard.on("success", function () {
|
36
|
+
const currentLabel = button.html();
|
37
|
+
const tooltip = bootstrap.Tooltip.getInstance("#" + copy_id);
|
38
|
+
const tooltipLabel = button.attr("data-bs-title");
|
39
|
+
|
40
|
+
// Exit label update when already in progress
|
41
|
+
if (button.html() === '<i class="fa-solid fa-clipboard-check"></i>') {
|
42
|
+
return;
|
43
|
+
}
|
44
|
+
|
45
|
+
// Update button label and tooltip
|
46
|
+
button.html('<i class="fa-solid fa-clipboard-check"></i>');
|
47
|
+
tooltip.setContent({ ".tooltip-inner": "Copied!" });
|
48
|
+
|
49
|
+
// Revert button label after 2 seconds
|
50
|
+
setTimeout(function () {
|
51
|
+
button.html(currentLabel);
|
52
|
+
tooltip.setContent({ ".tooltip-inner": tooltipLabel });
|
53
|
+
}, 2000);
|
54
|
+
});
|
55
|
+
});
|
56
|
+
</script>
|
57
|
+
{% endif %}
|
58
|
+
|
59
|
+
<!-- Copyright Year -->
|
60
|
+
<script>
|
61
|
+
document.getElementById("copyright_year").innerHTML = new Date().getFullYear();
|
62
|
+
</script>
|
63
|
+
|
64
|
+
<!-- Bootstrap -->
|
65
|
+
<script src="{{ site.baseurl }}/assets/js/bootstrap.bundle.min.js"></script>
|
66
|
+
<script>
|
67
|
+
// Initialize Tooltips
|
68
|
+
const tooltipTriggerList = document.querySelectorAll('[data-bs-toggle="tooltip"]');
|
69
|
+
const tooltipList = [...tooltipTriggerList].map((tooltipTriggerEl) => new bootstrap.Tooltip(tooltipTriggerEl));
|
70
|
+
</script>
|
@@ -0,0 +1,10 @@
|
|
1
|
+
<div class="accordion" id="pageTocAccordion">
|
2
|
+
<div class="accordion-item shadow-sm">
|
3
|
+
<div class="accordion-header" id="flush-headingOne">
|
4
|
+
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#flush-collapseOne" aria-expanded="false" aria-controls="flush-collapseOne"><i class="fa-solid fa-bars"></i> <span class="mx-3">Table of Contents</span></button>
|
5
|
+
</div>
|
6
|
+
<div id="flush-collapseOne" class="accordion-collapse collapse" aria-labelledby="flush-headingOne" data-bs-parent="#pageTocAccordion">
|
7
|
+
<div class="accordion-body">{% include base/toc.html html=content %}</div>
|
8
|
+
</div>
|
9
|
+
</div>
|
10
|
+
</div>
|
@@ -0,0 +1,99 @@
|
|
1
|
+
{% capture tocWorkspace %}
|
2
|
+
{% comment %}
|
3
|
+
Version 1.0.10
|
4
|
+
https://github.com/allejo/jekyll-toc
|
5
|
+
|
6
|
+
"...like all things liquid - where there's a will, and ~36 hours to spare, there's usually a/some way" ~jaybe
|
7
|
+
|
8
|
+
Usage:
|
9
|
+
{% include toc.html html=content sanitize=true class="inline_toc" id="my_toc" h_min=2 h_max=3 %}
|
10
|
+
|
11
|
+
Parameters:
|
12
|
+
* html (string) - the HTML of compiled markdown generated by kramdown in Jekyll
|
13
|
+
|
14
|
+
Optional Parameters:
|
15
|
+
* sanitize (bool) : false - when set to true, the headers will be stripped of any HTML in the TOC
|
16
|
+
* class (string) : '' - a CSS class assigned to the TOC
|
17
|
+
* id (string) : '' - an ID to assigned to the TOC
|
18
|
+
* h_min (int) : 1 - the minimum TOC header level to use; any header lower than this value will be ignored
|
19
|
+
* h_max (int) : 6 - the maximum TOC header level to use; any header greater than this value will be ignored
|
20
|
+
* ordered (bool) : false - when set to true, an ordered list will be outputted instead of an unordered list
|
21
|
+
* item_class (string) : '' - add custom class(es) for each list item; has support for '%level%' placeholder, which is the current heading level
|
22
|
+
* baseurl (string) : '' - add a base url to the TOC links for when your TOC is on another page than the actual content
|
23
|
+
* anchor_class (string) : '' - add custom class(es) for each anchor element
|
24
|
+
|
25
|
+
Output:
|
26
|
+
An ordered or unordered list representing the table of contents of a markdown block. This snippet will only
|
27
|
+
generate the table of contents and will NOT output the markdown given to it
|
28
|
+
{% endcomment %}
|
29
|
+
|
30
|
+
{% capture my_toc %}{% endcapture %}
|
31
|
+
{% assign orderedList = include.ordered | default: false %}
|
32
|
+
{% assign minHeader = include.h_min | default: 1 %}
|
33
|
+
{% assign maxHeader = include.h_max | default: 6 %}
|
34
|
+
{% assign nodes = include.html | split: '<h' %}
|
35
|
+
{% assign firstHeader = true %}
|
36
|
+
|
37
|
+
{% capture listModifier %}{% if orderedList %}1.{% else %}-{% endif %}{% endcapture %}
|
38
|
+
|
39
|
+
{% for node in nodes %}
|
40
|
+
{% if node == "" %}
|
41
|
+
{% continue %}
|
42
|
+
{% endif %}
|
43
|
+
|
44
|
+
{% assign headerLevel = node | replace: '"', '' | slice: 0, 1 | times: 1 %}
|
45
|
+
|
46
|
+
{% if headerLevel < minHeader or headerLevel > maxHeader %}
|
47
|
+
{% continue %}
|
48
|
+
{% endif %}
|
49
|
+
|
50
|
+
{% if firstHeader %}
|
51
|
+
{% assign firstHeader = false %}
|
52
|
+
{% assign minHeader = headerLevel %}
|
53
|
+
{% endif %}
|
54
|
+
|
55
|
+
{% assign indentAmount = headerLevel | minus: minHeader %}
|
56
|
+
{% assign _workspace = node | split: '</h' %}
|
57
|
+
|
58
|
+
{% assign _idWorkspace = _workspace[0] | split: 'id="' %}
|
59
|
+
{% assign _idWorkspace = _idWorkspace[1] | split: '"' %}
|
60
|
+
{% assign html_id = _idWorkspace[0] %}
|
61
|
+
|
62
|
+
{% assign _classWorkspace = _workspace[0] | split: 'class="' %}
|
63
|
+
{% assign _classWorkspace = _classWorkspace[1] | split: '"' %}
|
64
|
+
{% assign html_class = _classWorkspace[0] %}
|
65
|
+
|
66
|
+
{% if html_class contains "no_toc" %}
|
67
|
+
{% continue %}
|
68
|
+
{% endif %}
|
69
|
+
|
70
|
+
{% capture _hAttrToStrip %}{{ _workspace[0] | split: '>' | first }}>{% endcapture %}
|
71
|
+
{% assign header = _workspace[0] | replace: _hAttrToStrip, '' %}
|
72
|
+
|
73
|
+
{% assign space = '' %}
|
74
|
+
{% for i in (1..indentAmount) %}
|
75
|
+
{% assign space = space | prepend: ' ' %}
|
76
|
+
{% endfor %}
|
77
|
+
|
78
|
+
{% if include.item_class and include.item_class != blank %}
|
79
|
+
{% capture listItemClass %}{:.{{ include.item_class | replace: '%level%', headerLevel }}}{% endcapture %}
|
80
|
+
{% endif %}
|
81
|
+
|
82
|
+
{% capture heading_body %}{% if include.sanitize %}{{ header | strip_html }}{% else %}{{ header }}{% endif %}{% endcapture %}
|
83
|
+
{% capture my_toc %}{{ my_toc }}
|
84
|
+
{{ space }}{{ listModifier }} {{ listItemClass }} [{{ heading_body | replace: "|", "\|" }}]({% if include.baseurl %}{{ include.baseurl }}{% endif %}#{{ html_id }}){% if include.anchor_class %}{:.{{ include.anchor_class }}}{% endif %}{% endcapture %}
|
85
|
+
{% endfor %}
|
86
|
+
|
87
|
+
{% if include.class and include.class != blank %}
|
88
|
+
{% capture my_toc %}{:.{{ include.class }}}
|
89
|
+
{{ my_toc | lstrip }}{% endcapture %}
|
90
|
+
{% endif %}
|
91
|
+
|
92
|
+
{% if include.id %}
|
93
|
+
{% capture my_toc %}{: #{{ include.id }}}
|
94
|
+
{{ my_toc | lstrip }}{% endcapture %}
|
95
|
+
{% endif %}{% endcapture %}
|
96
|
+
|
97
|
+
{% if my_toc != "" %}
|
98
|
+
{% assign tocWorkspace = '' %}{{ my_toc | markdownify | strip }}
|
99
|
+
{% endif %}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html lang="{{ page.lang | default: 'en' }}">
|
3
|
+
{% include base/head.html title=page.title -%}
|
4
|
+
|
5
|
+
<body id="top">
|
6
|
+
{% include base/navbar.html -%}
|
7
|
+
<main>
|
8
|
+
{% include base/header.html -%}
|
9
|
+
<div class="container py-5">
|
10
|
+
{% if page.with_breadcrumbs %}
|
11
|
+
<div class="row justify-content-center">
|
12
|
+
<div class="col-sm-12 col-xl-8">
|
13
|
+
{% include base/breadcrumbs.html %}
|
14
|
+
</div>
|
15
|
+
</div>
|
16
|
+
{% endif %}
|
17
|
+
{% if page.with_toc %}
|
18
|
+
<div class="row my-3 justify-content-center">
|
19
|
+
<div class="col-sm-12 col-xl-8">{% include base/toc-accordion.html %}</div>
|
20
|
+
</div>
|
21
|
+
{% endif %}
|
22
|
+
<div class="row my-5 justify-content-center">
|
23
|
+
<div class="col-sm-12 col-xl-8">{{ content }}</div>
|
24
|
+
</div>
|
25
|
+
</div>
|
26
|
+
</main>
|
27
|
+
|
28
|
+
{% include base/footer.html %}
|
29
|
+
{% include base/script.html %}
|
30
|
+
</body>
|
31
|
+
</html>
|