elixir-toolkit-theme 1.24.0 → 1.25.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/_includes/contributor-carousel-selection.html +16 -0
- data/_includes/contributor-minitiles-page.html +44 -18
- data/_includes/contributor-tiles-all.html +16 -0
- data/_includes/head.html +1 -0
- data/_includes/news.html +1 -1
- data/_includes/resource-table-all.html +1 -1
- data/assets/css/main.scss +31 -13
- data/assets/css/syntax.css +220 -60
- data/assets/js/clipboard.min.js +7 -0
- data/assets/js/main.js +50 -25
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0e271dd02e5d4621cb80d9dd514f2a27e68862e5588549c2ce9d906b79df0d21
|
4
|
+
data.tar.gz: 48f4897c4090ee5e1481f138027088d7c780a2261d82238572b995fe54df8d81
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7030ad90a9e23e7ed28dfd6085de00726ae52c5ba5d1ee95fdb87625d7d247fbc1f3e20a77c20548cc14480ad4debe71b735d599d60e3b3356e543d74101cb61
|
7
|
+
data.tar.gz: 39dbefc2537534cd79537fa1f193fcd289ea3ceb30d29de701d8f83ff6ddf0d9458ff812f8e8a4ef0d63bb9f4fb538c943a2dbcd8d572dfe02335b59495c5c1f
|
data/README.md
CHANGED
@@ -123,6 +123,7 @@ This theme would not be possible without following open source projects:
|
|
123
123
|
- [jQuery Navgoco Menus](https://github.com/tefra/navgoco) - Multi-level slide navigation with accordion effect
|
124
124
|
- [Font-Awesome](https://github.com/FortAwesome/Font-Awesome) - The famous icon library
|
125
125
|
- [flag-icons](https://github.com/lipis/flag-icons) - A curated collection of all country flags in SVG + css integration
|
126
|
+
- [clipboard.js](https://github.com/zenorocha/clipboard.js) - Modern copy to clipboard. No Flash. Just 3kb gzipped clipboard.
|
126
127
|
|
127
128
|
## Attribution
|
128
129
|
|
@@ -38,7 +38,23 @@
|
|
38
38
|
{%- if contributors[contributor].image_url %}
|
39
39
|
<img src="{{ contributors[contributor].image_url }}" class="card-img-top p-3 rounded-circle" alt="{{ contributor }}">
|
40
40
|
{%- else %}
|
41
|
+
{%- if contributors[contributor].git %}
|
41
42
|
<img src="https://avatars.githubusercontent.com/{{id}}" class="card-img-top p-3 rounded-circle" alt="{{ contributor }}">
|
43
|
+
{%- else %}
|
44
|
+
<div class="p-3">
|
45
|
+
<div class="ratio ratio-1x1">
|
46
|
+
<div class="contr-placeholder rounded-circle d-flex justify-content-center align-items-center">
|
47
|
+
{%- assign contr_name = contributor | split: " " %}
|
48
|
+
{%- assign initials = "" %}
|
49
|
+
{%- for name in contr_name %}
|
50
|
+
{%- assign initial = name | slice: 0,1 | capitalize %}
|
51
|
+
{%- assign initials = initials | append: initial %}
|
52
|
+
{%- endfor %}
|
53
|
+
<span class="fs-2 fw-bold">{{ initials }}</span>
|
54
|
+
</div>
|
55
|
+
</div>
|
56
|
+
</div>
|
57
|
+
{%- endif %}
|
42
58
|
{%- endif %}
|
43
59
|
</div>
|
44
60
|
<div class="card-body text-center py-0">
|
@@ -1,24 +1,34 @@
|
|
1
1
|
{%- if page.contributors and page.contributors.size != 0 %}
|
2
2
|
<span class="d-block h2-like fs-2">Contributors</span>
|
3
|
-
<div class="p-4 rounded mt-4 page-contributors">
|
3
|
+
<div class="p-4 rounded mt-4 page-contributors d-flex flex-wrap gap-2">
|
4
4
|
{%- assign contributors = site.data.CONTRIBUTORS %}
|
5
5
|
{%- assign page_contributors = page.contributors | sort %}
|
6
6
|
{%- for contributor in page_contributors %}
|
7
7
|
{%- assign id = contributors[contributor].git | default: 'no_github' %}
|
8
8
|
<div class="dropup-center dropup d-inline-block">
|
9
|
-
<button class="btn btn-sm dropdown-toggle contributor-link d-flex hover-primary
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
9
|
+
<button class="btn btn-sm dropdown-toggle contributor-link d-flex gap-2 align-items-center hover-primary position-relative" type="button" data-bs-toggle="dropdown" aria-expanded="false" data-bs-auto-close="outside" data-bs-offset="0,10">
|
10
|
+
<div>
|
11
|
+
{%- if contributors[contributor].image_url %}
|
12
|
+
<img class="img-fluid rounded-circle contributor-img-sm" src="{{ contributors[contributor].image_url }}" alt="Avatar of the contributor {{ contributor }}">
|
13
|
+
{%- else %}
|
14
|
+
{%- if contributors[contributor].git %}
|
15
|
+
<img class="img-fluid rounded-circle contributor-img-sm" src="https://avatars.githubusercontent.com/{{ id }}" alt="Avatar of the contributor {{ contributor }}">
|
16
|
+
{%- else %}
|
17
|
+
<div class="contr-placeholder rounded-circle d-flex justify-content-center align-items-center contributor-img-sm">
|
18
|
+
{%- assign contr_name = contributor | split: " " %}
|
19
|
+
{%- assign initials = "" %}
|
20
|
+
{%- for name in contr_name %}
|
21
|
+
{%- assign initial = name | slice: 0,1 | capitalize %}
|
22
|
+
{%- assign initials = initials | append: initial %}
|
23
|
+
{%- endfor %}
|
24
|
+
<span class="fw-bold">{{ initials }}</span>
|
20
25
|
</div>
|
21
|
-
|
26
|
+
{%- endif %}
|
27
|
+
{%- endif %}
|
28
|
+
</div>
|
29
|
+
<div>
|
30
|
+
{{ contributor }}
|
31
|
+
</div>
|
22
32
|
{%- if page.coordinators %}
|
23
33
|
{%- for coordinator in page.coordinators %}
|
24
34
|
{%- if coordinator == contributor %}
|
@@ -34,14 +44,30 @@
|
|
34
44
|
{%- endif %}
|
35
45
|
</button>
|
36
46
|
<div class="dropdown-menu shadow p-0 border-0 contributor-cards">
|
37
|
-
|
47
|
+
|
38
48
|
<div class="card">
|
39
49
|
{%- assign id = contributors[contributor].git | default: 'no_github' %}
|
40
|
-
<div class="position-relative
|
50
|
+
<div class="position-relative">
|
41
51
|
{%- if contributors[contributor].image_url %}
|
42
|
-
<img src="{{ contributors[contributor].image_url }}" class="card-img-top p-3 rounded-circle" alt="{{
|
52
|
+
<img src="{{ contributors[contributor].image_url }}" class="card-img-top p-3 rounded-circle" alt="{{ contributor }}">
|
53
|
+
{%- else %}
|
54
|
+
{%- if contributors[contributor].git %}
|
55
|
+
<img src="https://avatars.githubusercontent.com/{{id}}" class="card-img-top p-3 rounded-circle" alt="{{ contributor }}">
|
43
56
|
{%- else %}
|
44
|
-
<
|
57
|
+
<div class="p-3">
|
58
|
+
<div class="ratio ratio-1x1">
|
59
|
+
<div class="contr-placeholder rounded-circle d-flex justify-content-center align-items-center">
|
60
|
+
{%- assign contr_name = contributor | split: " " %}
|
61
|
+
{%- assign initials = "" %}
|
62
|
+
{%- for name in contr_name %}
|
63
|
+
{%- assign initial = name | slice: 0,1 | capitalize %}
|
64
|
+
{%- assign initials = initials | append: initial %}
|
65
|
+
{%- endfor %}
|
66
|
+
<span class="fs-2 fw-bold">{{ initials }}</span>
|
67
|
+
</div>
|
68
|
+
</div>
|
69
|
+
</div>
|
70
|
+
{%- endif %}
|
45
71
|
{%- endif %}
|
46
72
|
{%- if contributors[contributor].role %}
|
47
73
|
<span class="badge position-absolute top-0 end-0">{{ contributors[contributor].role | capitalize }}</span>
|
@@ -50,7 +76,7 @@
|
|
50
76
|
<div class="card-body text-center py-0">
|
51
77
|
<p class="card-title">{{ stripped_name }}</p>
|
52
78
|
{%- if contributors[contributor].affiliation %}
|
53
|
-
<p class="card-affiliation">{{ contributors[contributor].affiliation
|
79
|
+
<p class="card-affiliation">{{ contributors[contributor].affiliation }}</p>
|
54
80
|
{%- endif %}
|
55
81
|
</div>
|
56
82
|
{%- if contributors[contributor].git or contributors[contributor].email or contributors[contributor].orcid %}
|
@@ -30,7 +30,23 @@
|
|
30
30
|
{%- if contributors[contributor].image_url %}
|
31
31
|
<img src="{{ contributors[contributor].image_url }}" class="card-img-top p-3 rounded-circle" alt="{{ contributor }}">
|
32
32
|
{%- else %}
|
33
|
+
{%- if contributors[contributor].git %}
|
33
34
|
<img src="https://avatars.githubusercontent.com/{{id}}" class="card-img-top p-3 rounded-circle" alt="{{ contributor }}">
|
35
|
+
{%- else %}
|
36
|
+
<div class="p-3">
|
37
|
+
<div class="ratio ratio-1x1">
|
38
|
+
<div class="contr-placeholder rounded-circle d-flex justify-content-center align-items-center">
|
39
|
+
{%- assign contr_name = contributor | split: " " %}
|
40
|
+
{%- assign initials = "" %}
|
41
|
+
{%- for name in contr_name %}
|
42
|
+
{%- assign initial = name | slice: 0,1 | capitalize %}
|
43
|
+
{%- assign initials = initials | append: initial %}
|
44
|
+
{%- endfor %}
|
45
|
+
<span class="fs-2 fw-bold">{{ initials }}</span>
|
46
|
+
</div>
|
47
|
+
</div>
|
48
|
+
</div>
|
49
|
+
{%- endif %}
|
34
50
|
{%- endif %}
|
35
51
|
{%- if contributors[contributor].role %}
|
36
52
|
<span class="badge position-absolute top-0 end-0">{{ contributors[contributor].role | capitalize }}</span>
|
data/_includes/head.html
CHANGED
@@ -56,6 +56,7 @@
|
|
56
56
|
<script src="{{ 'assets/js/jquery.navgoco.js' | relative_url }}"></script>
|
57
57
|
<script src="{{ 'assets/js/main.js' | relative_url }}"></script>
|
58
58
|
<script src="{{ 'assets/js/search.js' | relative_url }}"></script>
|
59
|
+
<script src="{{ 'assets/js/clipboard.min.js' | relative_url }}"></script>
|
59
60
|
{%- if page.datatable == true %}
|
60
61
|
<!-- Include the standard DataTables bits -->
|
61
62
|
<link rel="stylesheet" type="text/css" href="{{ 'assets/css/dataTables.bootstrap5.min.css' | relative_url }}">
|
data/_includes/news.html
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
{%- for new in news reversed%}
|
9
9
|
<li>
|
10
10
|
<span class="title mb-1">{{ new.name | escape }}</span>
|
11
|
-
<p class="text-muted"><i class="far fa-calendar me-2"></i><time>{{ new.date | date_to_long_string }}</time>{% if new.linked_pr %}
|
11
|
+
<p class="text-muted"><i class="far fa-calendar me-2"></i><time>{{ new.date | date_to_long_string }}</time>{% if new.linked_pr %} - <i class="fa-solid fa-code-branch"></i><a href="{{ site.github.repository_url | append: '/pull/' | append: new.linked_pr }}">{{new.linked_pr }}</a>{% endif %}</p>
|
12
12
|
{%- if new.description %}
|
13
13
|
{%- assign word_count = new.description | split: " " | size %}
|
14
14
|
{%- if include.truncate == true and word_count > 40 %}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{%- assign tools = site.data.tool_and_resource_list | where:"related_pages", include.tag %}
|
2
2
|
{%- assign country_pages = site.pages | where_exp: "item", "item.search_exclude != true" | where_exp:"item","item.national_resources != nil" %}
|
3
|
-
{%- unless tools.size == 0 %}
|
3
|
+
{%- unless tools.size == 0 or tools == nil %}
|
4
4
|
{%- if include.tag %}
|
5
5
|
<h2>Relevant tools and resources</h2>
|
6
6
|
{%- endif %}
|
data/assets/css/main.scss
CHANGED
@@ -118,23 +118,32 @@ code {
|
|
118
118
|
}
|
119
119
|
|
120
120
|
pre {
|
121
|
-
padding:
|
122
|
-
line-height: 1.42857143;
|
123
|
-
color: #333;
|
121
|
+
padding: $spacer;
|
124
122
|
word-break: break-all;
|
125
123
|
word-wrap: break-word;
|
126
|
-
border: 1px solid
|
124
|
+
border: 1px solid $border-color;
|
127
125
|
border-radius: $border-radius;
|
128
|
-
|
126
|
+
margin-bottom: $spacer;
|
127
|
+
line-height: 1.42857143;
|
128
|
+
code {
|
129
|
+
padding: 0;
|
130
|
+
background-color: transparent;
|
129
131
|
|
130
|
-
|
131
|
-
padding: 0;
|
132
|
-
font-size: inherit;
|
133
|
-
color: inherit;
|
134
|
-
background-color: transparent;
|
135
|
-
border-radius: 0;
|
132
|
+
}
|
136
133
|
}
|
137
134
|
|
135
|
+
div.highlight {
|
136
|
+
background: #fafbfc;
|
137
|
+
color: $body-color;
|
138
|
+
border: 1px solid $border-color;
|
139
|
+
border-radius: $border-radius;
|
140
|
+
margin-bottom: $spacer;
|
141
|
+
pre {
|
142
|
+
margin-bottom: 0;
|
143
|
+
padding: $spacer;
|
144
|
+
border: 0;
|
145
|
+
}
|
146
|
+
}
|
138
147
|
/*-----Top navigation-----*/
|
139
148
|
|
140
149
|
header .navbar {
|
@@ -291,7 +300,7 @@ header .navbar {
|
|
291
300
|
#side-nav .btn.sidebar-title {
|
292
301
|
color: $sidebar-color;
|
293
302
|
background-color: transparent;
|
294
|
-
border-color: transparent
|
303
|
+
border-color: transparent;
|
295
304
|
}
|
296
305
|
|
297
306
|
.sidebar-collapse {
|
@@ -531,6 +540,9 @@ footer {
|
|
531
540
|
color: $primary;
|
532
541
|
font-size: 0.8em;
|
533
542
|
}
|
543
|
+
.contr-placeholder {
|
544
|
+
background-color: rgba($dark, 0.1);
|
545
|
+
}
|
534
546
|
}
|
535
547
|
|
536
548
|
/*-----Contributors carousel-----*/
|
@@ -592,7 +604,8 @@ footer {
|
|
592
604
|
}
|
593
605
|
|
594
606
|
.contributor-img-sm {
|
595
|
-
height:
|
607
|
+
height: 25px;
|
608
|
+
width: 25px;
|
596
609
|
}
|
597
610
|
|
598
611
|
.coordinator-crown {
|
@@ -606,6 +619,11 @@ footer {
|
|
606
619
|
color: $contr-crown-color;
|
607
620
|
}
|
608
621
|
}
|
622
|
+
|
623
|
+
.contr-placeholder {
|
624
|
+
background-color: rgba($dark, 0.1);
|
625
|
+
font-size: 0.5rem;
|
626
|
+
}
|
609
627
|
}
|
610
628
|
}
|
611
629
|
|
data/assets/css/syntax.css
CHANGED
@@ -1,60 +1,220 @@
|
|
1
|
-
.highlight
|
2
|
-
|
3
|
-
|
4
|
-
.highlight
|
5
|
-
|
6
|
-
|
7
|
-
.highlight .
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
.highlight .
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
.highlight .
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
.highlight .
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
.highlight .
|
25
|
-
.highlight .
|
26
|
-
.highlight .
|
27
|
-
.highlight .
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
.highlight .
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
.highlight .
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
.highlight .
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
.highlight .
|
44
|
-
|
45
|
-
|
46
|
-
.highlight .
|
47
|
-
|
48
|
-
|
49
|
-
.highlight .
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
.highlight .
|
54
|
-
|
55
|
-
|
56
|
-
.highlight .
|
57
|
-
|
58
|
-
|
59
|
-
.highlight .
|
60
|
-
|
1
|
+
.highlight table td {
|
2
|
+
padding: 5px;
|
3
|
+
}
|
4
|
+
.highlight table pre {
|
5
|
+
margin: 0;
|
6
|
+
}
|
7
|
+
.highlight .cm {
|
8
|
+
color: #999988;
|
9
|
+
font-style: italic;
|
10
|
+
}
|
11
|
+
.highlight .cp {
|
12
|
+
color: #999999;
|
13
|
+
font-weight: bold;
|
14
|
+
}
|
15
|
+
.highlight .c1 {
|
16
|
+
color: #999988;
|
17
|
+
font-style: italic;
|
18
|
+
}
|
19
|
+
.highlight .cs {
|
20
|
+
color: #999999;
|
21
|
+
font-weight: bold;
|
22
|
+
font-style: italic;
|
23
|
+
}
|
24
|
+
.highlight .c,
|
25
|
+
.highlight .ch,
|
26
|
+
.highlight .cd,
|
27
|
+
.highlight .cpf {
|
28
|
+
color: #999988;
|
29
|
+
font-style: italic;
|
30
|
+
}
|
31
|
+
.highlight .err {
|
32
|
+
color: #a61717;
|
33
|
+
background-color: #e3d2d2;
|
34
|
+
}
|
35
|
+
.highlight .gd {
|
36
|
+
color: #000000;
|
37
|
+
background-color: #ffdddd;
|
38
|
+
}
|
39
|
+
.highlight .ge {
|
40
|
+
color: #000000;
|
41
|
+
font-style: italic;
|
42
|
+
}
|
43
|
+
.highlight .gr {
|
44
|
+
color: #aa0000;
|
45
|
+
}
|
46
|
+
.highlight .gh {
|
47
|
+
color: #999999;
|
48
|
+
}
|
49
|
+
.highlight .gi {
|
50
|
+
color: #000000;
|
51
|
+
background-color: #ddffdd;
|
52
|
+
}
|
53
|
+
.highlight .go {
|
54
|
+
color: #888888;
|
55
|
+
}
|
56
|
+
.highlight .gp {
|
57
|
+
color: #555555;
|
58
|
+
}
|
59
|
+
.highlight .gs {
|
60
|
+
font-weight: bold;
|
61
|
+
}
|
62
|
+
.highlight .gu {
|
63
|
+
color: #aaaaaa;
|
64
|
+
}
|
65
|
+
.highlight .gt {
|
66
|
+
color: #aa0000;
|
67
|
+
}
|
68
|
+
.highlight .kc {
|
69
|
+
color: #000000;
|
70
|
+
font-weight: bold;
|
71
|
+
}
|
72
|
+
.highlight .kd {
|
73
|
+
color: #000000;
|
74
|
+
font-weight: bold;
|
75
|
+
}
|
76
|
+
.highlight .kn {
|
77
|
+
color: #000000;
|
78
|
+
font-weight: bold;
|
79
|
+
}
|
80
|
+
.highlight .kp {
|
81
|
+
color: #000000;
|
82
|
+
font-weight: bold;
|
83
|
+
}
|
84
|
+
.highlight .kr {
|
85
|
+
color: #000000;
|
86
|
+
font-weight: bold;
|
87
|
+
}
|
88
|
+
.highlight .kt {
|
89
|
+
color: #445588;
|
90
|
+
font-weight: bold;
|
91
|
+
}
|
92
|
+
.highlight .k,
|
93
|
+
.highlight .kv {
|
94
|
+
color: #000000;
|
95
|
+
font-weight: bold;
|
96
|
+
}
|
97
|
+
.highlight .mf {
|
98
|
+
color: #009999;
|
99
|
+
}
|
100
|
+
.highlight .mh {
|
101
|
+
color: #009999;
|
102
|
+
}
|
103
|
+
.highlight .il {
|
104
|
+
color: #009999;
|
105
|
+
}
|
106
|
+
.highlight .mi {
|
107
|
+
color: #009999;
|
108
|
+
}
|
109
|
+
.highlight .mo {
|
110
|
+
color: #009999;
|
111
|
+
}
|
112
|
+
.highlight .m,
|
113
|
+
.highlight .mb,
|
114
|
+
.highlight .mx {
|
115
|
+
color: #009999;
|
116
|
+
}
|
117
|
+
.highlight .sb {
|
118
|
+
color: #d14;
|
119
|
+
}
|
120
|
+
.highlight .sc {
|
121
|
+
color: #d14;
|
122
|
+
}
|
123
|
+
.highlight .sd {
|
124
|
+
color: #d14;
|
125
|
+
}
|
126
|
+
.highlight .s2 {
|
127
|
+
color: #d14;
|
128
|
+
}
|
129
|
+
.highlight .se {
|
130
|
+
color: #d14;
|
131
|
+
}
|
132
|
+
.highlight .sh {
|
133
|
+
color: #d14;
|
134
|
+
}
|
135
|
+
.highlight .si {
|
136
|
+
color: #d14;
|
137
|
+
}
|
138
|
+
.highlight .sx {
|
139
|
+
color: #d14;
|
140
|
+
}
|
141
|
+
.highlight .sr {
|
142
|
+
color: #009926;
|
143
|
+
}
|
144
|
+
.highlight .s1 {
|
145
|
+
color: #d14;
|
146
|
+
}
|
147
|
+
.highlight .ss {
|
148
|
+
color: #990073;
|
149
|
+
}
|
150
|
+
.highlight .s,
|
151
|
+
.highlight .sa,
|
152
|
+
.highlight .dl {
|
153
|
+
color: #d14;
|
154
|
+
}
|
155
|
+
.highlight .na {
|
156
|
+
color: #008080;
|
157
|
+
}
|
158
|
+
.highlight .bp {
|
159
|
+
color: #999999;
|
160
|
+
}
|
161
|
+
.highlight .nb {
|
162
|
+
color: #0086b3;
|
163
|
+
}
|
164
|
+
.highlight .nc {
|
165
|
+
color: #445588;
|
166
|
+
font-weight: bold;
|
167
|
+
}
|
168
|
+
.highlight .no {
|
169
|
+
color: #008080;
|
170
|
+
}
|
171
|
+
.highlight .nd {
|
172
|
+
color: #3c5d5d;
|
173
|
+
font-weight: bold;
|
174
|
+
}
|
175
|
+
.highlight .ni {
|
176
|
+
color: #800080;
|
177
|
+
}
|
178
|
+
.highlight .ne {
|
179
|
+
color: #990000;
|
180
|
+
font-weight: bold;
|
181
|
+
}
|
182
|
+
.highlight .nf,
|
183
|
+
.highlight .fm {
|
184
|
+
color: #990000;
|
185
|
+
font-weight: bold;
|
186
|
+
}
|
187
|
+
.highlight .nl {
|
188
|
+
color: #990000;
|
189
|
+
font-weight: bold;
|
190
|
+
}
|
191
|
+
.highlight .nn {
|
192
|
+
color: #555555;
|
193
|
+
}
|
194
|
+
.highlight .nt {
|
195
|
+
color: #000080;
|
196
|
+
}
|
197
|
+
.highlight .vc {
|
198
|
+
color: #008080;
|
199
|
+
}
|
200
|
+
.highlight .vg {
|
201
|
+
color: #008080;
|
202
|
+
}
|
203
|
+
.highlight .vi {
|
204
|
+
color: #008080;
|
205
|
+
}
|
206
|
+
.highlight .nv,
|
207
|
+
.highlight .vm {
|
208
|
+
color: #008080;
|
209
|
+
}
|
210
|
+
.highlight .ow {
|
211
|
+
color: #000000;
|
212
|
+
font-weight: bold;
|
213
|
+
}
|
214
|
+
.highlight .o {
|
215
|
+
color: #000000;
|
216
|
+
font-weight: bold;
|
217
|
+
}
|
218
|
+
.highlight .w {
|
219
|
+
color: #bbbbbb;
|
220
|
+
}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
/*!
|
2
|
+
* clipboard.js v2.0.11
|
3
|
+
* https://clipboardjs.com/
|
4
|
+
*
|
5
|
+
* Licensed MIT © Zeno Rocha
|
6
|
+
*/
|
7
|
+
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return n={686:function(t,e,n){"use strict";n.d(e,{default:function(){return b}});var e=n(279),i=n.n(e),e=n(370),u=n.n(e),e=n(817),r=n.n(e);function c(t){try{return document.execCommand(t)}catch(t){return}}var a=function(t){t=r()(t);return c("cut"),t};function o(t,e){var n,o,t=(n=t,o="rtl"===document.documentElement.getAttribute("dir"),(t=document.createElement("textarea")).style.fontSize="12pt",t.style.border="0",t.style.padding="0",t.style.margin="0",t.style.position="absolute",t.style[o?"right":"left"]="-9999px",o=window.pageYOffset||document.documentElement.scrollTop,t.style.top="".concat(o,"px"),t.setAttribute("readonly",""),t.value=n,t);return e.container.appendChild(t),e=r()(t),c("copy"),t.remove(),e}var f=function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{container:document.body},n="";return"string"==typeof t?n=o(t,e):t instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(null==t?void 0:t.type)?n=o(t.value,e):(n=r()(t),c("copy")),n};function l(t){return(l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var s=function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},e=t.action,n=void 0===e?"copy":e,o=t.container,e=t.target,t=t.text;if("copy"!==n&&"cut"!==n)throw new Error('Invalid "action" value, use either "copy" or "cut"');if(void 0!==e){if(!e||"object"!==l(e)||1!==e.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===n&&e.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===n&&(e.hasAttribute("readonly")||e.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes')}return t?f(t,{container:o}):e?"cut"===n?a(e):f(e,{container:o}):void 0};function p(t){return(p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function d(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function y(t,e){return(y=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function h(n){var o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(t){return!1}}();return function(){var t,e=v(n);return t=o?(t=v(this).constructor,Reflect.construct(e,arguments,t)):e.apply(this,arguments),e=this,!(t=t)||"object"!==p(t)&&"function"!=typeof t?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(e):t}}function v(t){return(v=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function m(t,e){t="data-clipboard-".concat(t);if(e.hasAttribute(t))return e.getAttribute(t)}var b=function(){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&y(t,e)}(r,i());var t,e,n,o=h(r);function r(t,e){var n;return function(t){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")}(this),(n=o.call(this)).resolveOptions(e),n.listenClick(t),n}return t=r,n=[{key:"copy",value:function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{container:document.body};return f(t,e)}},{key:"cut",value:function(t){return a(t)}},{key:"isSupported",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:["copy","cut"],t="string"==typeof t?[t]:t,e=!!document.queryCommandSupported;return t.forEach(function(t){e=e&&!!document.queryCommandSupported(t)}),e}}],(e=[{key:"resolveOptions",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};this.action="function"==typeof t.action?t.action:this.defaultAction,this.target="function"==typeof t.target?t.target:this.defaultTarget,this.text="function"==typeof t.text?t.text:this.defaultText,this.container="object"===p(t.container)?t.container:document.body}},{key:"listenClick",value:function(t){var e=this;this.listener=u()(t,"click",function(t){return e.onClick(t)})}},{key:"onClick",value:function(t){var e=t.delegateTarget||t.currentTarget,n=this.action(e)||"copy",t=s({action:n,container:this.container,target:this.target(e),text:this.text(e)});this.emit(t?"success":"error",{action:n,text:t,trigger:e,clearSelection:function(){e&&e.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(t){return m("action",t)}},{key:"defaultTarget",value:function(t){t=m("target",t);if(t)return document.querySelector(t)}},{key:"defaultText",value:function(t){return m("text",t)}},{key:"destroy",value:function(){this.listener.destroy()}}])&&d(t.prototype,e),n&&d(t,n),r}()},828:function(t){var e;"undefined"==typeof Element||Element.prototype.matches||((e=Element.prototype).matches=e.matchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector),t.exports=function(t,e){for(;t&&9!==t.nodeType;){if("function"==typeof t.matches&&t.matches(e))return t;t=t.parentNode}}},438:function(t,e,n){var u=n(828);function i(t,e,n,o,r){var i=function(e,n,t,o){return function(t){t.delegateTarget=u(t.target,n),t.delegateTarget&&o.call(e,t)}}.apply(this,arguments);return t.addEventListener(n,i,r),{destroy:function(){t.removeEventListener(n,i,r)}}}t.exports=function(t,e,n,o,r){return"function"==typeof t.addEventListener?i.apply(null,arguments):"function"==typeof n?i.bind(null,document).apply(null,arguments):("string"==typeof t&&(t=document.querySelectorAll(t)),Array.prototype.map.call(t,function(t){return i(t,e,n,o,r)}))}},879:function(t,n){n.node=function(t){return void 0!==t&&t instanceof HTMLElement&&1===t.nodeType},n.nodeList=function(t){var e=Object.prototype.toString.call(t);return void 0!==t&&("[object NodeList]"===e||"[object HTMLCollection]"===e)&&"length"in t&&(0===t.length||n.node(t[0]))},n.string=function(t){return"string"==typeof t||t instanceof String},n.fn=function(t){return"[object Function]"===Object.prototype.toString.call(t)}},370:function(t,e,n){var f=n(879),l=n(438);t.exports=function(t,e,n){if(!t&&!e&&!n)throw new Error("Missing required arguments");if(!f.string(e))throw new TypeError("Second argument must be a String");if(!f.fn(n))throw new TypeError("Third argument must be a Function");if(f.node(t))return c=e,a=n,(u=t).addEventListener(c,a),{destroy:function(){u.removeEventListener(c,a)}};if(f.nodeList(t))return o=t,r=e,i=n,Array.prototype.forEach.call(o,function(t){t.addEventListener(r,i)}),{destroy:function(){Array.prototype.forEach.call(o,function(t){t.removeEventListener(r,i)})}};if(f.string(t))return t=t,e=e,n=n,l(document.body,t,e,n);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList");var o,r,i,u,c,a}},817:function(t){t.exports=function(t){var e,n="SELECT"===t.nodeName?(t.focus(),t.value):"INPUT"===t.nodeName||"TEXTAREA"===t.nodeName?((e=t.hasAttribute("readonly"))||t.setAttribute("readonly",""),t.select(),t.setSelectionRange(0,t.value.length),e||t.removeAttribute("readonly"),t.value):(t.hasAttribute("contenteditable")&&t.focus(),n=window.getSelection(),(e=document.createRange()).selectNodeContents(t),n.removeAllRanges(),n.addRange(e),n.toString());return n}},279:function(t){function e(){}e.prototype={on:function(t,e,n){var o=this.e||(this.e={});return(o[t]||(o[t]=[])).push({fn:e,ctx:n}),this},once:function(t,e,n){var o=this;function r(){o.off(t,r),e.apply(n,arguments)}return r._=e,this.on(t,r,n)},emit:function(t){for(var e=[].slice.call(arguments,1),n=((this.e||(this.e={}))[t]||[]).slice(),o=0,r=n.length;o<r;o++)n[o].fn.apply(n[o].ctx,e);return this},off:function(t,e){var n=this.e||(this.e={}),o=n[t],r=[];if(o&&e)for(var i=0,u=o.length;i<u;i++)o[i].fn!==e&&o[i].fn._!==e&&r.push(o[i]);return r.length?n[t]=r:delete n[t],this}},t.exports=e,t.exports.TinyEmitter=e}},r={},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,{a:e}),e},o.d=function(t,e){for(var n in e)o.o(e,n)&&!o.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o(686).default;function o(t){if(r[t])return r[t].exports;var e=r[t]={exports:{}};return n[t](e,e.exports,o),e.exports}var n,r});
|
data/assets/js/main.js
CHANGED
@@ -16,7 +16,7 @@ $(document).ready(function () {
|
|
16
16
|
/**
|
17
17
|
* Function to open external links in separate tab
|
18
18
|
*/
|
19
|
-
$(document).ready(function
|
19
|
+
$(document).ready(function () {
|
20
20
|
for (var c = document.getElementsByTagName("a"), a = 0; a < c.length; a++) {
|
21
21
|
var b = c[a];
|
22
22
|
if (b.getAttribute("href") && b.hostname !== location.hostname) {
|
@@ -48,30 +48,6 @@ $(document).ready(function () {
|
|
48
48
|
});
|
49
49
|
});
|
50
50
|
|
51
|
-
/**
|
52
|
-
* Activate tooltips
|
53
|
-
*/
|
54
|
-
|
55
|
-
$(function () {
|
56
|
-
var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'))
|
57
|
-
var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
|
58
|
-
return new bootstrap.Tooltip(tooltipTriggerEl, {
|
59
|
-
animation: false
|
60
|
-
})
|
61
|
-
})
|
62
|
-
})
|
63
|
-
|
64
|
-
/**
|
65
|
-
* Activate popovers
|
66
|
-
*/
|
67
|
-
|
68
|
-
$(function () {
|
69
|
-
var popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="popover"]'))
|
70
|
-
var popoverList = popoverTriggerList.map(function (popoverTriggerEl) {
|
71
|
-
return new bootstrap.Popover(popoverTriggerEl)
|
72
|
-
})
|
73
|
-
})
|
74
|
-
|
75
51
|
/**
|
76
52
|
* Back to top button
|
77
53
|
*/
|
@@ -138,3 +114,52 @@ $(document).ready(function () {
|
|
138
114
|
});
|
139
115
|
|
140
116
|
});
|
117
|
+
|
118
|
+
/**
|
119
|
+
* Add clipboard button to code blocks
|
120
|
+
*/
|
121
|
+
$(document).ready(function () {
|
122
|
+
var codes = document.querySelectorAll('.highlight > pre > code');
|
123
|
+
var countID = 0;
|
124
|
+
codes.forEach((code) => {
|
125
|
+
code.setAttribute("id", "code" + countID);
|
126
|
+
var btn = document.createElement('button');
|
127
|
+
var div = document.createElement('div');
|
128
|
+
btn.innerHTML = '<i class="fa-regular fa-copy"></i>';
|
129
|
+
btn.className = "btn btn-light text-secondary m-1 btn-copy py-1 px-2";
|
130
|
+
btn.title = "Copy to clipboard";
|
131
|
+
btn.type = "button";
|
132
|
+
btn.setAttribute("data-bs-toggle", "tooltip");
|
133
|
+
btn.setAttribute("data-clipboard-action", "copy");
|
134
|
+
btn.setAttribute("data-clipboard-target", "#code" + countID);
|
135
|
+
div.append(btn)
|
136
|
+
code.closest('div.highlight').classList.add("d-flex","justify-content-between");
|
137
|
+
code.closest('.highlight').after(div);
|
138
|
+
countID++;
|
139
|
+
});
|
140
|
+
});
|
141
|
+
|
142
|
+
/**
|
143
|
+
* Enabling Clipboard.js
|
144
|
+
*/
|
145
|
+
$(document).ready(function () {
|
146
|
+
var clipboard = new ClipboardJS('.btn-copy')
|
147
|
+
|
148
|
+
clipboard.on('success', function (event) {
|
149
|
+
var tooltipBtn = bootstrap.Tooltip.getInstance(event.trigger)
|
150
|
+
tooltipBtn.setContent({ '.tooltip-inner': 'Copied!' })
|
151
|
+
});
|
152
|
+
});
|
153
|
+
|
154
|
+
/**
|
155
|
+
* Activate tooltips
|
156
|
+
*/
|
157
|
+
|
158
|
+
$(function () {
|
159
|
+
var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'))
|
160
|
+
var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
|
161
|
+
return new bootstrap.Tooltip(tooltipTriggerEl, {
|
162
|
+
animation: true
|
163
|
+
})
|
164
|
+
})
|
165
|
+
})
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: elixir-toolkit-theme
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.25.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- bedroesb
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-03-
|
11
|
+
date: 2023-03-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -470,6 +470,7 @@ files:
|
|
470
470
|
- assets/js/anchor.min.js
|
471
471
|
- assets/js/bootstrap.bundle.min.js
|
472
472
|
- assets/js/bootstrap.bundle.min.js.map
|
473
|
+
- assets/js/clipboard.min.js
|
473
474
|
- assets/js/dataTables.bootstrap5.min.js
|
474
475
|
- assets/js/jquery.dataTables.min.js
|
475
476
|
- assets/js/jquery.min.js
|