jekyll-theme-chirpy 7.1.1 → 7.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/_data/locales/hu-HU.yml +20 -7
  3. data/_data/origin/cors.yml +4 -4
  4. data/_includes/analytics/cloudflare.html +0 -1
  5. data/_includes/analytics/fathom.html +2 -3
  6. data/_includes/analytics/google.html +1 -1
  7. data/_includes/analytics/matomo.html +6 -7
  8. data/_includes/comments/disqus.html +36 -29
  9. data/_includes/comments/giscus.html +14 -30
  10. data/_includes/comments/utterances.html +26 -37
  11. data/_includes/head.html +24 -5
  12. data/_includes/js-selector.html +3 -26
  13. data/_includes/jsdelivr-combine.html +4 -4
  14. data/_includes/pageviews/goatcounter.html +16 -14
  15. data/_includes/search-loader.html +22 -20
  16. data/_includes/sidebar.html +1 -3
  17. data/_includes/toc-status.html +10 -0
  18. data/_includes/toc.html +4 -8
  19. data/_layouts/default.html +8 -4
  20. data/_layouts/home.html +26 -19
  21. data/_layouts/post.html +29 -2
  22. data/_sass/abstracts/_breakpoints.scss +73 -0
  23. data/_sass/abstracts/_index.scss +4 -0
  24. data/_sass/abstracts/_mixins.scss +80 -0
  25. data/_sass/{addon/module.scss → abstracts/_placeholders.scss} +22 -55
  26. data/_sass/{addon/variables.scss → abstracts/_variables.scss} +0 -4
  27. data/_sass/base/_base.scss +476 -0
  28. data/_sass/base/_index.scss +4 -0
  29. data/_sass/base/_reset.scss +41 -0
  30. data/_sass/{addon/syntax.scss → base/_syntax.scss} +46 -85
  31. data/_sass/base/_typography.scss +266 -0
  32. data/_sass/components/_buttons.scss +51 -0
  33. data/_sass/components/_index.scss +2 -0
  34. data/_sass/components/_popups.scss +172 -0
  35. data/_sass/layout/_footer.scss +36 -0
  36. data/_sass/layout/_index.scss +4 -0
  37. data/_sass/layout/_panel.scss +70 -0
  38. data/_sass/layout/_sidebar.scss +258 -0
  39. data/_sass/layout/_topbar.scss +86 -0
  40. data/_sass/main.bundle.scss +2 -2
  41. data/_sass/main.scss +4 -13
  42. data/_sass/{layout/archives.scss → pages/_archives.scss} +12 -16
  43. data/_sass/{layout/categories.scss → pages/_categories.scss} +5 -6
  44. data/_sass/{layout/category-tag.scss → pages/_category-tag.scss} +11 -20
  45. data/_sass/{layout/home.scss → pages/_home.scss} +54 -70
  46. data/_sass/pages/_index.scss +7 -0
  47. data/_sass/{layout/post.scss → pages/_post.scss} +184 -49
  48. data/_sass/pages/_search.scss +184 -0
  49. data/_sass/{layout/tags.scss → pages/_tags.scss} +7 -3
  50. data/_sass/{colors/typography-dark.scss → themes/_dark.scss} +163 -7
  51. data/_sass/themes/_light.scss +313 -0
  52. data/_sass/vendors/_bootstrap.scss +5 -0
  53. data/assets/css/jekyll-theme-chirpy.scss +1 -1
  54. data/assets/feed.xml +1 -1
  55. data/assets/js/dist/app.min.js +1 -1
  56. data/assets/js/dist/categories.min.js +2 -2
  57. data/assets/js/dist/commons.min.js +2 -2
  58. data/assets/js/dist/home.min.js +2 -2
  59. data/assets/js/dist/misc.min.js +2 -2
  60. data/assets/js/dist/page.min.js +2 -2
  61. data/assets/js/dist/post.min.js +2 -2
  62. data/assets/js/dist/sw.min.js +1 -1
  63. data/assets/js/dist/theme.min.js +4 -0
  64. metadata +35 -22
  65. data/_includes/mermaid.html +0 -62
  66. data/_includes/mode-toggle.html +0 -116
  67. data/_sass/addon/commons.scss +0 -1542
  68. data/_sass/colors/syntax-dark.scss +0 -164
  69. data/_sass/colors/syntax-light.scss +0 -210
  70. data/_sass/colors/typography-light.scss +0 -112
  71. data/_sass/dist/bootstrap.css +0 -5
  72. data/_sass/variables-hook.scss +0 -3
  73. /data/_includes/{comments.html → comment.html} +0 -0
@@ -0,0 +1,266 @@
1
+ @use '../abstracts/variables' as v;
2
+ @use '../abstracts/breakpoints' as bp;
3
+ @use '../abstracts/mixins' as mx;
4
+ @use '../abstracts/placeholders';
5
+
6
+ @for $i from 1 through 5 {
7
+ h#{$i} {
8
+ @extend %heading;
9
+
10
+ @if $i > 1 {
11
+ @extend %anchor;
12
+ }
13
+
14
+ @if $i < 5 {
15
+ $size-factor: 0.25rem;
16
+
17
+ @if $i > 1 {
18
+ $size-factor: 0.18rem;
19
+
20
+ main & {
21
+ @if $i == 2 {
22
+ margin: 2.5rem 0 1.25rem;
23
+ } @else {
24
+ margin: 2rem 0 1rem;
25
+ }
26
+ }
27
+ }
28
+
29
+ & {
30
+ font-size: 1rem + (5 - $i) * $size-factor;
31
+ }
32
+ } @else {
33
+ font-size: 1.05rem;
34
+ }
35
+ }
36
+ }
37
+
38
+ a {
39
+ @extend %link-color;
40
+
41
+ text-decoration: none;
42
+ }
43
+
44
+ img {
45
+ max-width: 100%;
46
+ height: auto;
47
+ transition: all 0.35s ease-in-out;
48
+
49
+ .blur & {
50
+ $blur: 20px;
51
+
52
+ -webkit-filter: blur($blur);
53
+ filter: blur($blur);
54
+ }
55
+ }
56
+
57
+ blockquote {
58
+ border-left: 0.125rem solid var(--blockquote-border-color);
59
+ padding-left: 1rem;
60
+ color: var(--blockquote-text-color);
61
+ margin-top: 0.5rem;
62
+
63
+ > p:last-child {
64
+ margin-bottom: 0;
65
+ }
66
+
67
+ &[class^='prompt-'] {
68
+ border-left: 0;
69
+ position: relative;
70
+ padding: 1rem 1rem 1rem 3rem;
71
+ color: var(--prompt-text-color);
72
+
73
+ @extend %rounded;
74
+
75
+ &::before {
76
+ text-align: center;
77
+ width: 3rem;
78
+ position: absolute;
79
+ left: 0.25rem;
80
+ margin-top: 0.4rem;
81
+ text-rendering: auto;
82
+ -webkit-font-smoothing: antialiased;
83
+ }
84
+ }
85
+
86
+ @include mx.prompt('tip', '\f0eb', $fa-style: 'regular');
87
+ @include mx.prompt('info', '\f06a', $rotate: 180);
88
+ @include mx.prompt('warning', '\f06a');
89
+ @include mx.prompt('danger', '\f071');
90
+ }
91
+
92
+ kbd {
93
+ font-family: Lato, sans-serif;
94
+ display: inline-block;
95
+ vertical-align: middle;
96
+ line-height: 1.3rem;
97
+ min-width: 1.75rem;
98
+ text-align: center;
99
+ margin: 0 0.3rem;
100
+ padding-top: 0.1rem;
101
+ color: var(--kbd-text-color);
102
+ background-color: var(--kbd-bg-color);
103
+ border-radius: v.$radius-sm;
104
+ border: solid 1px var(--kbd-wrap-color);
105
+ box-shadow: inset 0 -2px 0 var(--kbd-wrap-color);
106
+ }
107
+
108
+ hr {
109
+ border-color: var(--main-border-color);
110
+ opacity: 1;
111
+ }
112
+
113
+ footer {
114
+ background-color: var(--main-bg);
115
+ height: v.$footer-height;
116
+ border-top: 1px solid var(--main-border-color);
117
+
118
+ @extend %text-xs;
119
+
120
+ a {
121
+ @extend %text-highlight;
122
+
123
+ &:hover {
124
+ @extend %link-hover;
125
+ }
126
+ }
127
+
128
+ em {
129
+ @extend %text-highlight;
130
+ }
131
+
132
+ p {
133
+ text-align: center;
134
+ margin-bottom: 0;
135
+ }
136
+ }
137
+
138
+ /* fontawesome icons */
139
+ i {
140
+ &.far,
141
+ &.fas {
142
+ @extend %no-cursor;
143
+ }
144
+ }
145
+
146
+ sup {
147
+ @extend %sup-fn-target;
148
+ }
149
+
150
+ main {
151
+ line-height: 1.75;
152
+
153
+ h1 {
154
+ margin-top: 2rem;
155
+
156
+ @include bp.lg {
157
+ margin-top: 3rem;
158
+ }
159
+ }
160
+
161
+ p {
162
+ > a.popup {
163
+ &:not(.normal):not(.left):not(.right) {
164
+ @include mx.align-center;
165
+ }
166
+ }
167
+ }
168
+
169
+ .categories,
170
+ #tags,
171
+ #archives {
172
+ a:not(:hover) {
173
+ @extend %no-bottom-border;
174
+ }
175
+ }
176
+
177
+ @include bp.lte(bp.get(sm)) {
178
+ .content {
179
+ > blockquote[class^='prompt-'] {
180
+ @include mx.ml-mr(-1rem);
181
+
182
+ border-radius: 0;
183
+ max-width: none;
184
+ }
185
+ }
186
+ }
187
+ }
188
+
189
+ .footnotes > ol {
190
+ padding-left: 2rem;
191
+ margin-top: 0.5rem;
192
+
193
+ > li {
194
+ &:not(:last-child) {
195
+ margin-bottom: 0.3rem;
196
+ }
197
+
198
+ @extend %sup-fn-target;
199
+
200
+ > p {
201
+ margin-left: 0.25em;
202
+
203
+ @include mx.mt-mb(0);
204
+ }
205
+ }
206
+ }
207
+
208
+ .footnote {
209
+ @at-root a#{&} {
210
+ @include mx.ml-mr(1px);
211
+ @include mx.pl-pr(2px);
212
+
213
+ border-bottom-style: none !important;
214
+ }
215
+ }
216
+
217
+ .reversefootnote {
218
+ @at-root a#{&} {
219
+ font-size: 0.6rem;
220
+ line-height: 1;
221
+ position: relative;
222
+ bottom: 0.25em;
223
+ margin-left: 0.25em;
224
+ border-bottom-style: none !important;
225
+ }
226
+ }
227
+
228
+ /* --- Begin of Markdown table style --- */
229
+
230
+ /* it will be created by Liquid */
231
+ .table-wrapper {
232
+ overflow-x: auto;
233
+ margin-bottom: 1.5rem;
234
+
235
+ > table {
236
+ min-width: 100%;
237
+ overflow-x: auto;
238
+ border-spacing: 0;
239
+
240
+ thead {
241
+ border-bottom: solid 2px rgba(210, 215, 217, 0.75);
242
+
243
+ th {
244
+ @extend %table-cell;
245
+ }
246
+ }
247
+
248
+ tbody {
249
+ tr {
250
+ border-bottom: 1px solid var(--tb-border-color);
251
+
252
+ &:nth-child(2n) {
253
+ background-color: var(--tb-even-bg);
254
+ }
255
+
256
+ &:nth-child(2n + 1) {
257
+ background-color: var(--tb-odd-bg);
258
+ }
259
+
260
+ td {
261
+ @extend %table-cell;
262
+ }
263
+ }
264
+ } /* tbody */
265
+ } /* table */
266
+ }
@@ -0,0 +1,51 @@
1
+ @use '../abstracts/variables' as v;
2
+ @use '../abstracts/breakpoints' as bp;
3
+
4
+ #back-to-top {
5
+ visibility: hidden;
6
+ opacity: 0;
7
+ z-index: 1;
8
+ cursor: pointer;
9
+ position: fixed;
10
+ right: 1rem;
11
+ bottom: calc(v.$footer-height-large - v.$back2top-size / 2);
12
+ background: var(--button-bg);
13
+ color: var(--btn-backtotop-color);
14
+ padding: 0;
15
+ width: v.$back2top-size;
16
+ height: v.$back2top-size;
17
+ border-radius: 50%;
18
+ border: 1px solid var(--btn-backtotop-border-color);
19
+ transition: opacity 0.5s ease-in-out, transform 0.2s ease-out;
20
+
21
+ @include bp.lg {
22
+ right: 5%;
23
+ bottom: calc(v.$footer-height - v.$back2top-size / 2);
24
+ }
25
+
26
+ @include bp.xxl {
27
+ right: calc((100vw - v.$sidebar-width - 1140px) / 2 + 3rem);
28
+ }
29
+
30
+ @include bp.xxxl {
31
+ right: calc(
32
+ (100vw - v.$sidebar-width-large - v.$main-content-max-width) / 2 + 2rem
33
+ );
34
+ }
35
+
36
+ &:hover {
37
+ transform: translate3d(0, -5px, 0);
38
+ -webkit-transform: translate3d(0, -5px, 0);
39
+ }
40
+
41
+ i {
42
+ line-height: v.$back2top-size;
43
+ position: relative;
44
+ bottom: 2px;
45
+ }
46
+
47
+ &.show {
48
+ opacity: 1;
49
+ visibility: visible;
50
+ }
51
+ }
@@ -0,0 +1,2 @@
1
+ @forward 'buttons';
2
+ @forward 'popups';
@@ -0,0 +1,172 @@
1
+ @use '../abstracts/variables' as v;
2
+ @use '../abstracts/breakpoints' as bp;
3
+ @use '../abstracts/placeholders';
4
+
5
+ /* PWA update popup */
6
+ #notification {
7
+ @-webkit-keyframes popup {
8
+ from {
9
+ opacity: 0;
10
+ bottom: 0;
11
+ }
12
+ }
13
+
14
+ @keyframes popup {
15
+ from {
16
+ opacity: 0;
17
+ bottom: 0;
18
+ }
19
+ }
20
+
21
+ .toast-header {
22
+ background: none;
23
+ border-bottom: none;
24
+ color: inherit;
25
+ }
26
+
27
+ .toast-body {
28
+ font-family: Lato, sans-serif;
29
+ line-height: 1.25rem;
30
+
31
+ button {
32
+ font-size: 90%;
33
+ min-width: 4rem;
34
+ }
35
+ }
36
+
37
+ &.toast {
38
+ &.show {
39
+ display: block;
40
+ min-width: 20rem;
41
+ border-radius: 0.5rem;
42
+ -webkit-backdrop-filter: blur(10px);
43
+ backdrop-filter: blur(10px);
44
+ background-color: rgba(255, 255, 255, 0.5);
45
+ color: #1b1b1eba;
46
+ position: fixed;
47
+ left: 50%;
48
+ bottom: 20%;
49
+ transform: translateX(-50%);
50
+ -webkit-animation: popup 0.8s;
51
+ animation: popup 0.8s;
52
+ }
53
+ }
54
+ }
55
+
56
+ #toc-popup {
57
+ $slide-in: slide-in 0.3s ease-out;
58
+ $slide-out: slide-out 0.3s ease-out;
59
+ $curtain-height: 2rem;
60
+ $backdrop: blur(5px);
61
+
62
+ border-color: var(--toc-popup-border-color);
63
+ border-width: 1px;
64
+ border-radius: v.$radius-lg;
65
+ color: var(--text-color);
66
+ background: var(--card-bg);
67
+ margin-top: v.$topbar-height;
68
+ min-width: 20rem;
69
+ font-size: 1.05rem;
70
+
71
+ @include bp.sm {
72
+ max-width: 32rem;
73
+ }
74
+
75
+ &[open] {
76
+ -webkit-animation: $slide-in;
77
+ animation: $slide-in;
78
+ }
79
+
80
+ &[closing] {
81
+ -webkit-animation: $slide-out;
82
+ animation: $slide-out;
83
+ }
84
+
85
+ @include bp.lg {
86
+ left: v.$sidebar-width;
87
+ }
88
+
89
+ .header {
90
+ @extend %btn-color;
91
+
92
+ position: -webkit-sticky;
93
+ position: sticky;
94
+ top: 0;
95
+ background-color: inherit;
96
+ border-bottom: 1px solid var(--main-border-color);
97
+
98
+ .label {
99
+ font-family: v.$font-family-heading;
100
+ }
101
+ }
102
+
103
+ button {
104
+ > i {
105
+ font-size: 1.25rem;
106
+ vertical-align: middle;
107
+ }
108
+
109
+ &:focus-visible {
110
+ box-shadow: none;
111
+ }
112
+ }
113
+
114
+ ul {
115
+ list-style-type: none;
116
+ padding-left: 0;
117
+
118
+ li {
119
+ ul,
120
+ & + li {
121
+ margin-top: 0.25rem;
122
+ }
123
+
124
+ a {
125
+ display: flex;
126
+ line-height: 1.5;
127
+ padding: 0.375rem 0;
128
+ padding-right: 1.125rem;
129
+
130
+ &.toc-link::before {
131
+ display: none;
132
+ }
133
+ }
134
+ }
135
+ }
136
+
137
+ @for $i from 2 through 4 {
138
+ .node-name--H#{$i} {
139
+ padding-left: 1.125rem * ($i - 1);
140
+ }
141
+ }
142
+
143
+ .is-active-link {
144
+ color: var(--toc-highlight) !important;
145
+ font-weight: 600;
146
+ }
147
+
148
+ &::-webkit-backdrop {
149
+ -webkit-backdrop-filter: $backdrop;
150
+ backdrop-filter: $backdrop;
151
+ }
152
+
153
+ &::backdrop {
154
+ -webkit-backdrop-filter: $backdrop;
155
+ backdrop-filter: $backdrop;
156
+ }
157
+
158
+ &::after {
159
+ display: flex;
160
+ content: '';
161
+ position: relative;
162
+ background: linear-gradient(transparent, var(--card-bg) 70%);
163
+ height: $curtain-height;
164
+ }
165
+
166
+ #toc-popup-content {
167
+ overflow: auto;
168
+ max-height: calc(100vh - 4 * v.$topbar-height);
169
+ font-family: v.$font-family-heading;
170
+ margin-bottom: -$curtain-height;
171
+ }
172
+ }
@@ -0,0 +1,36 @@
1
+ @use '../abstracts/breakpoints' as bp;
2
+ @use '../abstracts/variables' as v;
3
+ @use '../abstracts/mixins' as mx;
4
+ @use '../abstracts/placeholders';
5
+
6
+ footer {
7
+ background-color: var(--main-bg);
8
+ height: v.$footer-height;
9
+ border-top: 1px solid var(--main-border-color);
10
+
11
+ @extend %text-xs;
12
+
13
+ @include bp.lt(bp.get(lg)) {
14
+ @include mx.slide;
15
+
16
+ height: v.$footer-height-large;
17
+ padding: 1.5rem 0;
18
+ }
19
+
20
+ a {
21
+ @extend %text-highlight;
22
+
23
+ &:hover {
24
+ @extend %link-hover;
25
+ }
26
+ }
27
+
28
+ em {
29
+ @extend %text-highlight;
30
+ }
31
+
32
+ p {
33
+ text-align: center;
34
+ margin-bottom: 0;
35
+ }
36
+ }
@@ -0,0 +1,4 @@
1
+ @forward 'sidebar';
2
+ @forward 'topbar';
3
+ @forward 'panel';
4
+ @forward 'footer';
@@ -0,0 +1,70 @@
1
+ @use '../abstracts/breakpoints' as bp;
2
+ @use '../abstracts/mixins' as mx;
3
+ @use '../abstracts/placeholders';
4
+
5
+ .access {
6
+ top: 2rem;
7
+ transition: top 0.2s ease-in-out;
8
+ margin-top: 3rem;
9
+
10
+ &:only-child {
11
+ position: -webkit-sticky;
12
+ position: sticky;
13
+ }
14
+
15
+ > section {
16
+ @extend %panel-border;
17
+
18
+ padding-left: 1rem;
19
+
20
+ &:not(:first-child) {
21
+ margin-top: 4rem;
22
+ }
23
+ }
24
+
25
+ .content {
26
+ font-size: 0.9rem;
27
+ }
28
+ }
29
+
30
+ #panel-wrapper {
31
+ /* the headings */
32
+ .panel-heading {
33
+ font-family: inherit;
34
+ line-height: inherit;
35
+
36
+ @include mx.label(inherit);
37
+ }
38
+
39
+ .post-tag {
40
+ line-height: 1.05rem;
41
+ font-size: 0.85rem;
42
+ border-radius: 0.8rem;
43
+ padding: 0.3rem 0.5rem;
44
+ margin: 0 0.35rem 0.5rem 0;
45
+
46
+ &:hover {
47
+ transition: all 0.3s ease-in;
48
+ }
49
+ }
50
+
51
+ > :last-child {
52
+ margin-bottom: 4rem;
53
+ }
54
+
55
+ @include bp.lt(bp.get(xl)) {
56
+ display: none;
57
+ }
58
+ }
59
+
60
+ #access-lastmod {
61
+ a {
62
+ color: inherit;
63
+
64
+ &:hover {
65
+ @extend %link-hover;
66
+ }
67
+
68
+ @extend %no-bottom-border;
69
+ }
70
+ }