jekyll-text-theme 2.2.2 → 2.2.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -1
- data/README.md +11 -12
- data/_includes/article-footer/author-profile.html +1 -1
- data/_includes/article-list.html +3 -3
- data/_includes/extensions/codepen.html +4 -0
- data/_includes/extensions/youtube.html +1 -1
- data/_includes/scripts/article.js +1 -1
- data/_includes/scripts/{search-data.js → components/search/search-data.js} +0 -0
- data/_includes/scripts/{search.js → components/search/search.js} +0 -0
- data/_includes/scripts/lib/affix.js +83 -86
- data/_includes/scripts/lib/{scroll.js → scroll-to.js} +0 -0
- data/_includes/scripts/lib/swiper.js +150 -0
- data/_includes/scripts/lib/toc.js +83 -82
- data/_includes/scripts/variables.html +1 -1
- data/_includes/search.html +1 -1
- data/_includes/sharing-providers/addthis.html +9 -0
- data/_includes/sharing.html +3 -1
- data/_layouts/article.html +3 -1
- data/_layouts/landing.html +1 -1
- data/_layouts/page.html +19 -10
- data/_sass/additional/_alert.scss +4 -4
- data/_sass/common/_classes.scss +1 -1
- data/_sass/common/_function.scss +8 -0
- data/_sass/common/_print.scss +20 -0
- data/_sass/common/_reset.scss +5 -2
- data/_sass/common/_variables.scss +2 -4
- data/_sass/common/classes/_clickable.scss +21 -0
- data/_sass/common/classes/_display.scss +14 -3
- data/_sass/common/classes/_grid.scss +25 -76
- data/_sass/common/classes/_media.scss +2 -2
- data/_sass/common/classes/_pseudo.scss +8 -1
- data/_sass/common/classes/_shadow.scss +2 -2
- data/_sass/common/components/_button.scss +1 -7
- data/_sass/common/components/_card.scss +2 -2
- data/_sass/common/components/_hero.scss +1 -1
- data/_sass/common/components/_item.scss +14 -9
- data/_sass/common/components/_swiper.scss +45 -0
- data/_sass/common/components/_toc.scss +9 -9
- data/_sass/components/_article-content.scss +35 -17
- data/_sass/components/_article-header.scss +1 -1
- data/_sass/components/_article-info.scss +2 -2
- data/_sass/components/_article-list.scss +2 -2
- data/_sass/components/_author-profile.scss +7 -7
- data/_sass/components/_extensions.scss +8 -2
- data/_sass/components/_footer.scss +4 -4
- data/_sass/components/_header.scss +1 -1
- data/_sass/components/_search.scss +6 -6
- data/_sass/components/_tags.scss +1 -2
- data/_sass/custom.scss +0 -0
- data/_sass/layout/_404.scss +2 -2
- data/_sass/layout/_archive.scss +1 -1
- data/_sass/layout/_article.scss +5 -5
- data/_sass/layout/_articles.scss +1 -2
- data/_sass/layout/_home.scss +1 -1
- data/_sass/layout/_page.scss +12 -1
- data/assets/css/main.scss +5 -1
- data/assets/search.js +1 -1
- metadata +11 -5
@@ -1,95 +1,96 @@
|
|
1
1
|
(function() {
|
2
2
|
var SOURCES = window.TEXT_VARIABLES.sources;
|
3
3
|
window.Lazyload.js(SOURCES.jquery, function() {
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
headingsPos = [];
|
20
|
-
$headings.each(function() {
|
21
|
-
headingsPos.push(Math.floor($(this).position().top));
|
22
|
-
});
|
23
|
-
}
|
24
|
-
function setState(element, disabled) {
|
25
|
-
var scrollTop = $scrollTarget.scrollTop(), i;
|
26
|
-
if (disabled || !headingsPos || headingsPos.length < 1) { return; }
|
27
|
-
if (element) {
|
28
|
-
$activeCur = element;
|
29
|
-
} else {
|
30
|
-
for (i = 0; i < headingsPos.length; i++) {
|
31
|
-
if (scrollTop >= headingsPos[i]) {
|
32
|
-
$activeCur = $tocLi.eq(i);
|
33
|
-
} else {
|
34
|
-
$activeCur || ($activeCur = $tocLi.eq(i));
|
35
|
-
break;
|
36
|
-
}
|
37
|
-
}
|
4
|
+
function toc(options) {
|
5
|
+
var $root = this, $window = $(window), $scrollTarget, $scroller, $tocUl = $('<ul class="toc"></ul>'), $tocLi, $headings, $activeLast, $activeCur,
|
6
|
+
selectors = 'h1,h2,h3', container = 'body', scrollTarget = window, scroller = 'html, body', disabled = false,
|
7
|
+
headingsPos, scrolling = false, hasRendered = false, hasInit = false;
|
8
|
+
|
9
|
+
function setOptions(options) {
|
10
|
+
var _options = options || {};
|
11
|
+
_options.selectors && (selectors = _options.selectors);
|
12
|
+
_options.container && (container = _options.container);
|
13
|
+
_options.scrollTarget && (scrollTarget = _options.scrollTarget);
|
14
|
+
_options.scroller && (scroller = _options.scroller);
|
15
|
+
_options.disabled !== undefined && (disabled = _options.disabled);
|
16
|
+
$headings = $(container).find(selectors).filter('[id]');
|
17
|
+
$scrollTarget = $(scrollTarget);
|
18
|
+
$scroller = $(scroller);
|
38
19
|
}
|
39
|
-
|
40
|
-
|
41
|
-
}
|
42
|
-
function render() {
|
43
|
-
if(!rendered) {
|
44
|
-
$root.append($tocUl);
|
20
|
+
function calc() {
|
21
|
+
headingsPos = [];
|
45
22
|
$headings.each(function() {
|
46
|
-
|
47
|
-
$tocUl.append($('<li></li>').addClass('toc-' + $this.prop('tagName').toLowerCase())
|
48
|
-
.append($('<a></a>').text($this.text()).attr('href', '#' + $this.prop('id'))));
|
23
|
+
headingsPos.push(Math.floor($(this).position().top));
|
49
24
|
});
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
25
|
+
}
|
26
|
+
function setState(element, disabled) {
|
27
|
+
var scrollTop = $scrollTarget.scrollTop(), i;
|
28
|
+
if (disabled || !headingsPos || headingsPos.length < 1) { return; }
|
29
|
+
if (element) {
|
30
|
+
$activeCur = element;
|
31
|
+
} else {
|
32
|
+
for (i = 0; i < headingsPos.length; i++) {
|
33
|
+
if (scrollTop >= headingsPos[i]) {
|
34
|
+
$activeCur = $tocLi.eq(i);
|
35
|
+
} else {
|
36
|
+
$activeCur || ($activeCur = $tocLi.eq(i));
|
37
|
+
break;
|
38
|
+
}
|
39
|
+
}
|
40
|
+
}
|
41
|
+
$activeLast && $activeLast.removeClass('active');
|
42
|
+
($activeLast = $activeCur).addClass('active');
|
43
|
+
}
|
44
|
+
function render() {
|
45
|
+
if(!hasRendered) {
|
46
|
+
$root.append($tocUl);
|
47
|
+
$headings.each(function() {
|
48
|
+
var $this = $(this);
|
49
|
+
$tocUl.append($('<li></li>').addClass('toc-' + $this.prop('tagName').toLowerCase())
|
50
|
+
.append($('<a></a>').text($this.text()).attr('href', '#' + $this.prop('id'))));
|
58
51
|
});
|
59
|
-
|
52
|
+
$tocLi = $tocUl.children('li');
|
53
|
+
$tocUl.on('click', 'a', function(e) {
|
54
|
+
e.preventDefault();
|
55
|
+
var $this = $(this);
|
56
|
+
scrolling = true;
|
57
|
+
setState($this.parent());
|
58
|
+
$scroller.scrollToAnchor($this.attr('href'), 400, function() {
|
59
|
+
scrolling = false;
|
60
|
+
});
|
61
|
+
});
|
62
|
+
}
|
63
|
+
hasRendered = true;
|
60
64
|
}
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
}, 100);
|
71
|
-
timeout = setTimeout(function() {
|
72
|
-
clearInterval(interval);
|
73
|
-
}, 45000);
|
74
|
-
window.pageLoad.then(function() {
|
75
|
-
setTimeout(function() {
|
65
|
+
function init() {
|
66
|
+
var interval, timeout;
|
67
|
+
if(!hasInit) {
|
68
|
+
render(); calc(); setState(null, scrolling);
|
69
|
+
// run calc every 100 millisecond
|
70
|
+
interval = setInterval(function() {
|
71
|
+
calc();
|
72
|
+
}, 100);
|
73
|
+
timeout = setTimeout(function() {
|
76
74
|
clearInterval(interval);
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
}
|
87
|
-
|
75
|
+
}, 45000);
|
76
|
+
window.pageLoad.then(function() {
|
77
|
+
setTimeout(function() {
|
78
|
+
clearInterval(interval);
|
79
|
+
clearTimeout(timeout);
|
80
|
+
}, 3000);
|
81
|
+
});
|
82
|
+
$scrollTarget.on('scroll', function() {
|
83
|
+
disabled || setState(null, scrolling);
|
84
|
+
});
|
85
|
+
$window.on('resize', window.throttle(function() {
|
86
|
+
if (!disabled) {
|
87
|
+
render(); calc(); setState(null, scrolling);
|
88
|
+
}
|
89
|
+
}, 100));
|
90
|
+
}
|
91
|
+
hasInit = true;
|
88
92
|
}
|
89
|
-
|
90
|
-
}
|
91
|
-
function toc(options) {
|
92
|
-
$root = this;
|
93
|
+
|
93
94
|
setOptions(options);
|
94
95
|
if (!disabled) {
|
95
96
|
init();
|
data/_includes/search.html
CHANGED
@@ -0,0 +1,9 @@
|
|
1
|
+
<!-- Addthis BEGIN -->
|
2
|
+
{%- assign _SHARING_ADDTHIS_ID = site.sharing.addthis.id -%}
|
3
|
+
|
4
|
+
{%- if _SHARING_ADDTHIS_ID -%}
|
5
|
+
<script type="text/javascript"
|
6
|
+
src="//s7.addthis.com/js/300/addthis_widget.js#pubid={{ _SHARING_ADDTHIS_ID }}"></script>
|
7
|
+
<div class="addthis_inline_share_toolbox addthis_default_style"></div>
|
8
|
+
{%- endif -%}
|
9
|
+
<!-- Addthis END -->
|
data/_includes/sharing.html
CHANGED
data/_layouts/article.html
CHANGED
@@ -24,7 +24,7 @@ type: article
|
|
24
24
|
<div class="article__content" itemprop="articleBody">{{ content }}</div>
|
25
25
|
|
26
26
|
{%- if _sharing != false -%}
|
27
|
-
<section class="article__sharing">{%- include sharing.html -%}</section>
|
27
|
+
<section class="article__sharing d-print-none">{%- include sharing.html -%}</section>
|
28
28
|
{%- endif -%}
|
29
29
|
|
30
30
|
<footer class="article__footer">
|
@@ -65,7 +65,9 @@ type: article
|
|
65
65
|
{%- endif -%}
|
66
66
|
</footer>
|
67
67
|
|
68
|
+
<div class="d-print-none">
|
68
69
|
{%- include article-section-navigator.html -%}
|
70
|
+
</div>
|
69
71
|
|
70
72
|
</div>
|
71
73
|
|
data/_layouts/landing.html
CHANGED
@@ -52,7 +52,7 @@ article_header:
|
|
52
52
|
<div class="grid grid--p-3">
|
53
53
|
|
54
54
|
{%- for child in _section.children -%}
|
55
|
-
<div class="cell cell--{{ 12 | divided_by: _size }}
|
55
|
+
<div class="cell cell--12 cell--md-{{ 12 | divided_by: _size }} ">
|
56
56
|
|
57
57
|
<div class="mb-5">
|
58
58
|
<h4>{{ child.title }}</h4>
|
data/_layouts/page.html
CHANGED
@@ -9,6 +9,10 @@ layout: base
|
|
9
9
|
target=layout.header source0=page.header -%}
|
10
10
|
{%- assign _header = __return -%}
|
11
11
|
|
12
|
+
{%- include snippets/assign.html
|
13
|
+
target=layout.footer source0=page.footer -%}
|
14
|
+
{%- assign _footer = __return -%}
|
15
|
+
|
12
16
|
{%- include snippets/assign.html
|
13
17
|
target = site.data.variables.default.page.full_width
|
14
18
|
source0=layout.full_width source1=page.full_width -%}
|
@@ -24,9 +28,9 @@ layout: base
|
|
24
28
|
|
25
29
|
{%- if page.sidebar -%}
|
26
30
|
<div class="layout--page layout--page--sidebar clearfix js-page-root">
|
27
|
-
<div class="page__mask js-page-mask js-sidebar-hide"></div>
|
31
|
+
<div class="page__mask d-print-none js-page-mask js-sidebar-hide"></div>
|
28
32
|
<div class="page__viewport">
|
29
|
-
<div class="page__actions">
|
33
|
+
<div class="page__actions d-print-none">
|
30
34
|
<div class="button button--circle button--lg box-shadow-2 sidebar-button js-sidebar-show">
|
31
35
|
<i class="fas fa-bars icon--show"></i>
|
32
36
|
</div>
|
@@ -34,7 +38,7 @@ layout: base
|
|
34
38
|
|
35
39
|
<div class="grid page__grid">
|
36
40
|
|
37
|
-
<div class="page__sidebar">
|
41
|
+
<div class="page__sidebar d-print-none">
|
38
42
|
{%- include sidebar/toc.html -%}
|
39
43
|
</div>
|
40
44
|
|
@@ -49,6 +53,9 @@ layout: base
|
|
49
53
|
{%- unless page.sidebar -%}
|
50
54
|
{%- assign _page_main_class = _page_main_class | append: ' page__viewport' -%}
|
51
55
|
{%- endunless -%}
|
56
|
+
{%- if _footer == false -%}
|
57
|
+
{%- assign _page_main_class = _page_main_class | append: ' hide-footer' -%}
|
58
|
+
{%- endif -%}
|
52
59
|
{%- if page.aside -%}
|
53
60
|
{%- assign _page_main_class = _page_main_class | append: ' has-aside' -%}
|
54
61
|
{%- elsif _full_width -%}
|
@@ -59,7 +66,7 @@ layout: base
|
|
59
66
|
<div class="page__main-inner">
|
60
67
|
<div></div>
|
61
68
|
{%- if _header != false -%}
|
62
|
-
<div class="page__header">
|
69
|
+
<div class="page__header d-print-none">
|
63
70
|
{%- assign _header_theme = page.header.theme | default: layout.header.theme -%}
|
64
71
|
{%- if _header_theme == 'dark'-%}
|
65
72
|
{%- include header.html theme='dark' background=page.header.background -%}
|
@@ -173,7 +180,7 @@ layout: base
|
|
173
180
|
{%- endif -%}
|
174
181
|
<div class="grid grid--reverse">
|
175
182
|
|
176
|
-
<div class="col-aside js-col-aside">
|
183
|
+
<div class="col-aside d-print-none js-col-aside">
|
177
184
|
{%- if page.aside -%}
|
178
185
|
<aside class="page__aside js-page-aside">
|
179
186
|
{%- include aside/toc.html -%}
|
@@ -181,7 +188,7 @@ layout: base
|
|
181
188
|
{%- endif -%}
|
182
189
|
</div>
|
183
190
|
|
184
|
-
<div class="col-main cell--auto">
|
191
|
+
<div class="col-main cell cell--auto">
|
185
192
|
{%- if _page_type == 'article' -%}
|
186
193
|
<article itemscope itemtype="http://schema.org/Article">
|
187
194
|
{%- elsif _page_type == 'webpage' -%}
|
@@ -200,7 +207,7 @@ layout: base
|
|
200
207
|
|
201
208
|
<div class="js-article-content">{{ content }}</div>
|
202
209
|
{%- if _comment != false -%}
|
203
|
-
<section class="page__comments">{%- include comments.html -%}</section>
|
210
|
+
<section class="page__comments d-print-none">{%- include comments.html -%}</section>
|
204
211
|
{%- endif -%}
|
205
212
|
</article>
|
206
213
|
</div>
|
@@ -211,7 +218,9 @@ layout: base
|
|
211
218
|
{%- endif -%}
|
212
219
|
</div>
|
213
220
|
|
214
|
-
|
221
|
+
{%- if _footer != false -%}
|
222
|
+
<div class="page__footer d-print-none">{%- include footer.html -%}</div>
|
223
|
+
{%- endif -%}
|
215
224
|
</div>
|
216
225
|
</div> {%- comment -%} end page__main {%- endcomment -%}
|
217
226
|
{%- if page.sidebar -%}
|
@@ -219,13 +228,13 @@ layout: base
|
|
219
228
|
</div> {%- comment -%} end page__viewport {%- endcomment -%}
|
220
229
|
{%- endif -%}
|
221
230
|
{%- if _header != false -%}
|
222
|
-
<div class="page__search-panel">{%- include search.html -%}</div>
|
231
|
+
<div class="page__search-panel d-print-none"">{%- include search.html -%}</div>
|
223
232
|
{%- endif -%}
|
224
233
|
</div>
|
225
234
|
|
226
235
|
|
227
236
|
<script>
|
228
|
-
{%- include scripts/lib/scroll.js -%}
|
237
|
+
{%- include scripts/lib/scroll-to.js -%}
|
229
238
|
{%- include scripts/lib/affix.js -%}
|
230
239
|
{%- include scripts/lib/toc.js -%}
|
231
240
|
{%- include scripts/page.js -%}
|
@@ -1,27 +1,27 @@
|
|
1
1
|
.article__content {
|
2
2
|
p.success {
|
3
|
-
padding:
|
3
|
+
padding: map-get($spacers, 2) map-get($spacers, 3);
|
4
4
|
background-color: rgba($green, .1);
|
5
5
|
border: 1px solid $green;
|
6
6
|
border-radius: map-get($base, border-radius);
|
7
7
|
}
|
8
8
|
|
9
9
|
p.info {
|
10
|
-
padding:
|
10
|
+
padding: map-get($spacers, 2) map-get($spacers, 3);
|
11
11
|
background-color: rgba($blue, .1);
|
12
12
|
border: 1px solid $blue;
|
13
13
|
border-radius: map-get($base, border-radius);
|
14
14
|
}
|
15
15
|
|
16
16
|
p.warning {
|
17
|
-
padding:
|
17
|
+
padding: map-get($spacers, 2) map-get($spacers, 3);
|
18
18
|
background-color: rgba($yellow, .1);
|
19
19
|
border: 1px solid $yellow;
|
20
20
|
border-radius: map-get($base, border-radius);
|
21
21
|
}
|
22
22
|
|
23
23
|
p.error {
|
24
|
-
padding:
|
24
|
+
padding: map-get($spacers, 2) map-get($spacers, 3);
|
25
25
|
background-color: rgba($red, .1);
|
26
26
|
border: 1px solid $red;
|
27
27
|
border-radius: map-get($base, border-radius);
|
data/_sass/common/_classes.scss
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
@import
|
4
4
|
"common/classes/animation",
|
5
5
|
"common/classes/clearfix",
|
6
|
+
"common/classes/media",
|
6
7
|
"common/classes/clickable",
|
7
8
|
"common/classes/display",
|
8
9
|
"common/classes/flex",
|
@@ -10,7 +11,6 @@
|
|
10
11
|
"common/classes/pseudo",
|
11
12
|
"common/classes/link",
|
12
13
|
"common/classes/text",
|
13
|
-
"common/classes/media",
|
14
14
|
"common/classes/overflow",
|
15
15
|
"common/classes/shadow",
|
16
16
|
"common/classes/spacing",
|
data/_sass/common/_function.scss
CHANGED
@@ -0,0 +1,20 @@
|
|
1
|
+
@media print {
|
2
|
+
a {
|
3
|
+
@include plain() {
|
4
|
+
text-decoration: underline;
|
5
|
+
}
|
6
|
+
@include hover() {
|
7
|
+
text-decoration: underline;
|
8
|
+
}
|
9
|
+
@include active() {
|
10
|
+
text-decoration: underline;
|
11
|
+
}
|
12
|
+
}
|
13
|
+
|
14
|
+
img,
|
15
|
+
tr,
|
16
|
+
pre,
|
17
|
+
blockquote {
|
18
|
+
page-break-inside: avoid;
|
19
|
+
}
|
20
|
+
}
|
data/_sass/common/_reset.scss
CHANGED
@@ -26,6 +26,9 @@ html {
|
|
26
26
|
height: 100%;
|
27
27
|
font-size: map-get($base, font-size-root);
|
28
28
|
-webkit-text-size-adjust: 100%; /* 1 */
|
29
|
+
@media print {
|
30
|
+
font-size: map-get($base, font-size-root-sm);
|
31
|
+
}
|
29
32
|
}
|
30
33
|
|
31
34
|
body {
|
@@ -35,7 +38,7 @@ body {
|
|
35
38
|
|
36
39
|
@include block-elements() {
|
37
40
|
padding: 0;
|
38
|
-
margin: map-get($
|
41
|
+
margin: map-get($spacers, 2) 0;
|
39
42
|
}
|
40
43
|
|
41
44
|
body {
|
@@ -150,7 +153,7 @@ figcaption {
|
|
150
153
|
button {
|
151
154
|
padding: 0;
|
152
155
|
margin: 0;
|
153
|
-
font-size:
|
156
|
+
font-size: map-get($spacers, 3);
|
154
157
|
cursor: pointer;
|
155
158
|
background-color: transparent;
|
156
159
|
border-width: 0;
|