creek-jekyll-theme 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (178) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +21 -0
  3. data/README.md +81 -0
  4. data/_config.yml +306 -0
  5. data/_data/README.md +3 -0
  6. data/_data/navigation/docs.yml +56 -0
  7. data/_data/navigation/main.yml +12 -0
  8. data/_data/navigation.yml +68 -0
  9. data/_data/ui-text.yml +2024 -0
  10. data/_includes/analytics-providers/custom.html +3 -0
  11. data/_includes/analytics-providers/google-gtag.html +9 -0
  12. data/_includes/analytics-providers/google-universal.html +7 -0
  13. data/_includes/analytics-providers/google.html +14 -0
  14. data/_includes/analytics.html +14 -0
  15. data/_includes/archive-single.html +30 -0
  16. data/_includes/author-profile-custom-links.html +7 -0
  17. data/_includes/author-profile.html +246 -0
  18. data/_includes/breadcrumbs.html +40 -0
  19. data/_includes/browser-upgrade.html +2 -0
  20. data/_includes/category-list.html +19 -0
  21. data/_includes/comment.html +22 -0
  22. data/_includes/comments-providers/custom.html +3 -0
  23. data/_includes/comments-providers/custom_scripts.html +3 -0
  24. data/_includes/comments-providers/discourse.html +13 -0
  25. data/_includes/comments-providers/disqus.html +15 -0
  26. data/_includes/comments-providers/facebook.html +8 -0
  27. data/_includes/comments-providers/giscus.html +24 -0
  28. data/_includes/comments-providers/scripts.html +20 -0
  29. data/_includes/comments-providers/staticman.html +40 -0
  30. data/_includes/comments-providers/staticman_v2.html +40 -0
  31. data/_includes/comments-providers/utterances.html +21 -0
  32. data/_includes/comments.html +180 -0
  33. data/_includes/documents-collection.html +15 -0
  34. data/_includes/feature_row +41 -0
  35. data/_includes/figure +9 -0
  36. data/_includes/footer/custom.html +3 -0
  37. data/_includes/footer.html +21 -0
  38. data/_includes/gallery +35 -0
  39. data/_includes/group-by-array +47 -0
  40. data/_includes/head/custom.html +15 -0
  41. data/_includes/head.html +25 -0
  42. data/_includes/masthead.html +35 -0
  43. data/_includes/nav_list +26 -0
  44. data/_includes/page__date.html +6 -0
  45. data/_includes/page__hero.html +55 -0
  46. data/_includes/page__hero_video.html +2 -0
  47. data/_includes/page__meta.html +31 -0
  48. data/_includes/page__taxonomy.html +7 -0
  49. data/_includes/paginator.html +69 -0
  50. data/_includes/post_pagination.html +14 -0
  51. data/_includes/posts-category.html +5 -0
  52. data/_includes/posts-tag.html +5 -0
  53. data/_includes/scripts.html +28 -0
  54. data/_includes/search/algolia-search-scripts.html +62 -0
  55. data/_includes/search/google-search-scripts.html +30 -0
  56. data/_includes/search/lunr-search-scripts.html +10 -0
  57. data/_includes/search/search_form.html +26 -0
  58. data/_includes/seo.html +158 -0
  59. data/_includes/sidebar.html +19 -0
  60. data/_includes/skip-links.html +7 -0
  61. data/_includes/social-share.html +11 -0
  62. data/_includes/tag-list.html +19 -0
  63. data/_includes/toc +7 -0
  64. data/_includes/toc.html +182 -0
  65. data/_includes/video +24 -0
  66. data/_layouts/archive-taxonomy.html +29 -0
  67. data/_layouts/archive.html +26 -0
  68. data/_layouts/categories.html +43 -0
  69. data/_layouts/category.html +10 -0
  70. data/_layouts/collection.html +10 -0
  71. data/_layouts/compress.html +10 -0
  72. data/_layouts/default.html +41 -0
  73. data/_layouts/home.html +22 -0
  74. data/_layouts/posts.html +30 -0
  75. data/_layouts/search.html +42 -0
  76. data/_layouts/single.html +95 -0
  77. data/_layouts/splash.html +22 -0
  78. data/_layouts/tag.html +10 -0
  79. data/_layouts/tags.html +43 -0
  80. data/_pages/404.html +26 -0
  81. data/_sass/minimal-mistakes/_animations.scss +21 -0
  82. data/_sass/minimal-mistakes/_archive.scss +463 -0
  83. data/_sass/minimal-mistakes/_base.scss +339 -0
  84. data/_sass/minimal-mistakes/_buttons.scss +97 -0
  85. data/_sass/minimal-mistakes/_footer.scss +85 -0
  86. data/_sass/minimal-mistakes/_forms.scss +359 -0
  87. data/_sass/minimal-mistakes/_masthead.scss +93 -0
  88. data/_sass/minimal-mistakes/_mixins.scss +92 -0
  89. data/_sass/minimal-mistakes/_navigation.scss +573 -0
  90. data/_sass/minimal-mistakes/_notices.scss +109 -0
  91. data/_sass/minimal-mistakes/_page.scss +578 -0
  92. data/_sass/minimal-mistakes/_print.scss +252 -0
  93. data/_sass/minimal-mistakes/_reset.scss +187 -0
  94. data/_sass/minimal-mistakes/_search.scss +132 -0
  95. data/_sass/minimal-mistakes/_sidebar.scss +353 -0
  96. data/_sass/minimal-mistakes/_syntax.scss +324 -0
  97. data/_sass/minimal-mistakes/_tables.scss +39 -0
  98. data/_sass/minimal-mistakes/_utilities.scss +593 -0
  99. data/_sass/minimal-mistakes/_variables.scss +173 -0
  100. data/_sass/minimal-mistakes/skins/_air.scss +23 -0
  101. data/_sass/minimal-mistakes/skins/_aqua.scss +34 -0
  102. data/_sass/minimal-mistakes/skins/_contrast.scss +52 -0
  103. data/_sass/minimal-mistakes/skins/_dark.scss +30 -0
  104. data/_sass/minimal-mistakes/skins/_default.scss +5 -0
  105. data/_sass/minimal-mistakes/skins/_dirt.scss +33 -0
  106. data/_sass/minimal-mistakes/skins/_mint.scss +24 -0
  107. data/_sass/minimal-mistakes/skins/_neon.scss +63 -0
  108. data/_sass/minimal-mistakes/skins/_plum.scss +70 -0
  109. data/_sass/minimal-mistakes/skins/_sunrise.scss +49 -0
  110. data/_sass/minimal-mistakes/vendor/breakpoint/_breakpoint.scss +114 -0
  111. data/_sass/minimal-mistakes/vendor/breakpoint/_context.scss +95 -0
  112. data/_sass/minimal-mistakes/vendor/breakpoint/_helpers.scss +151 -0
  113. data/_sass/minimal-mistakes/vendor/breakpoint/_legacy-settings.scss +50 -0
  114. data/_sass/minimal-mistakes/vendor/breakpoint/_no-query.scss +15 -0
  115. data/_sass/minimal-mistakes/vendor/breakpoint/_parsers.scss +215 -0
  116. data/_sass/minimal-mistakes/vendor/breakpoint/_respond-to.scss +82 -0
  117. data/_sass/minimal-mistakes/vendor/breakpoint/_settings.scss +71 -0
  118. data/_sass/minimal-mistakes/vendor/breakpoint/parsers/_double.scss +33 -0
  119. data/_sass/minimal-mistakes/vendor/breakpoint/parsers/_query.scss +82 -0
  120. data/_sass/minimal-mistakes/vendor/breakpoint/parsers/_resolution.scss +31 -0
  121. data/_sass/minimal-mistakes/vendor/breakpoint/parsers/_single.scss +26 -0
  122. data/_sass/minimal-mistakes/vendor/breakpoint/parsers/_triple.scss +36 -0
  123. data/_sass/minimal-mistakes/vendor/breakpoint/parsers/double/_default-pair.scss +21 -0
  124. data/_sass/minimal-mistakes/vendor/breakpoint/parsers/double/_default.scss +22 -0
  125. data/_sass/minimal-mistakes/vendor/breakpoint/parsers/double/_double-string.scss +22 -0
  126. data/_sass/minimal-mistakes/vendor/breakpoint/parsers/resolution/_resolution.scss +60 -0
  127. data/_sass/minimal-mistakes/vendor/breakpoint/parsers/single/_default.scss +13 -0
  128. data/_sass/minimal-mistakes/vendor/breakpoint/parsers/triple/_default.scss +18 -0
  129. data/_sass/minimal-mistakes/vendor/magnific-popup/_magnific-popup.scss +649 -0
  130. data/_sass/minimal-mistakes/vendor/magnific-popup/_settings.scss +46 -0
  131. data/_sass/minimal-mistakes/vendor/susy/_su.scss +4 -0
  132. data/_sass/minimal-mistakes/vendor/susy/_susy-prefix.scss +13 -0
  133. data/_sass/minimal-mistakes/vendor/susy/_susy.scss +5 -0
  134. data/_sass/minimal-mistakes/vendor/susy/plugins/_svg-grid.scss +5 -0
  135. data/_sass/minimal-mistakes/vendor/susy/plugins/svg-grid/_prefix.scss +7 -0
  136. data/_sass/minimal-mistakes/vendor/susy/plugins/svg-grid/_svg-api.scss +114 -0
  137. data/_sass/minimal-mistakes/vendor/susy/plugins/svg-grid/_svg-grid-math.scss +67 -0
  138. data/_sass/minimal-mistakes/vendor/susy/plugins/svg-grid/_svg-settings.scss +14 -0
  139. data/_sass/minimal-mistakes/vendor/susy/plugins/svg-grid/_svg-unprefix.scss +18 -0
  140. data/_sass/minimal-mistakes/vendor/susy/plugins/svg-grid/_svg-utilities.scss +133 -0
  141. data/_sass/minimal-mistakes/vendor/susy/susy/_api.scss +318 -0
  142. data/_sass/minimal-mistakes/vendor/susy/susy/_normalize.scss +261 -0
  143. data/_sass/minimal-mistakes/vendor/susy/susy/_parse.scss +163 -0
  144. data/_sass/minimal-mistakes/vendor/susy/susy/_settings.scss +329 -0
  145. data/_sass/minimal-mistakes/vendor/susy/susy/_su-math.scss +441 -0
  146. data/_sass/minimal-mistakes/vendor/susy/susy/_su-validate.scss +213 -0
  147. data/_sass/minimal-mistakes/vendor/susy/susy/_syntax-helpers.scss +191 -0
  148. data/_sass/minimal-mistakes/vendor/susy/susy/_unprefix.scss +56 -0
  149. data/_sass/minimal-mistakes/vendor/susy/susy/_utilities.scss +167 -0
  150. data/_sass/minimal-mistakes.scss +40 -0
  151. data/assets/css/main.scss +9 -0
  152. data/assets/images/android-chrome-192x192.png +0 -0
  153. data/assets/images/android-chrome-512x512.png +0 -0
  154. data/assets/images/apple-touch-icon.png +0 -0
  155. data/assets/images/browserconfig.xml +9 -0
  156. data/assets/images/creek-logo.png +0 -0
  157. data/assets/images/favicon-16x16.png +0 -0
  158. data/assets/images/favicon-32x32.png +0 -0
  159. data/assets/images/favicon.ico +0 -0
  160. data/assets/images/mstile-150x150.png +0 -0
  161. data/assets/images/safari-pinned-tab.svg +48 -0
  162. data/assets/images/site-under-construction.png +0 -0
  163. data/assets/images/site.webmanifest +19 -0
  164. data/assets/js/_main.js +136 -0
  165. data/assets/js/lunr/lunr-en.js +73 -0
  166. data/assets/js/lunr/lunr-gr.js +526 -0
  167. data/assets/js/lunr/lunr-store.js +84 -0
  168. data/assets/js/lunr/lunr.js +3475 -0
  169. data/assets/js/lunr/lunr.min.js +6 -0
  170. data/assets/js/main.min.js +6 -0
  171. data/assets/js/plugins/gumshoe.js +484 -0
  172. data/assets/js/plugins/jquery.ba-throttle-debounce.js +252 -0
  173. data/assets/js/plugins/jquery.fitvids.js +82 -0
  174. data/assets/js/plugins/jquery.greedy-navigation.js +127 -0
  175. data/assets/js/plugins/jquery.magnific-popup.js +1860 -0
  176. data/assets/js/plugins/smooth-scroll.js +650 -0
  177. data/assets/js/vendor/jquery/jquery-3.6.0.js +10881 -0
  178. metadata +233 -0
@@ -0,0 +1,180 @@
1
+ <div class="page__comments">
2
+ {% capture comments_label %}{{ site.data.ui-text[site.locale].comments_label | default: "Comments" }}{% endcapture %}
3
+ {% case site.comments.provider %}
4
+ {% when "discourse" %}
5
+ <h4 class="page__comments-title">{{ comments_label }}</h4>
6
+ <section id="discourse-comments"></section>
7
+ {% when "disqus" %}
8
+ <h4 class="page__comments-title">{{ comments_label }}</h4>
9
+ <section id="disqus_thread"></section>
10
+ {% when "facebook" %}
11
+ <h4 class="page__comments-title">{{ comments_label }}</h4>
12
+ <section class="fb-comments" data-href="{{ page.url | absolute_url }}" data-mobile="true" data-num-posts="{{ site.comments.facebook.num_posts | default: 5 }}" data-width="100%" data-colorscheme="{{ site.comments.facebook.colorscheme | default: 'light' }}"></section>
13
+ {% when "staticman_v2" %}
14
+ <section id="static-comments">
15
+ {% if site.repository and site.comments.staticman.branch %}
16
+ <!-- Start static comments -->
17
+ <div class="js-comments">
18
+ {% if site.data.comments[page.slug] %}
19
+ <h4 class="page__comments-title">{{ site.data.ui-text[site.locale].comments_title | default: "Comments" }}</h4>
20
+ {% assign comments = site.data.comments[page.slug] %}
21
+
22
+ <!-- In order to sort by date we must have an array of objects, not an array of arrays, so
23
+ create a new array of plain comment objects and then sort by the comment date. -->
24
+ {% assign commentObjects = '' | split: '' %}
25
+ {% for comment in comments %}
26
+ {% assign commentObject = comment[1] %}
27
+ {% assign commentObjects = commentObjects | push: commentObject %}
28
+ {% endfor %}
29
+ {% assign comments = commentObjects | sort: "date" %}
30
+
31
+ {% for comment in comments %}
32
+ {% assign email = comment.email %}
33
+ {% assign name = comment.name %}
34
+ {% assign url = comment.url %}
35
+ {% assign date = comment.date %}
36
+ {% assign message = comment.message %}
37
+ {% include comment.html index=forloop.index email=email name=name url=url date=date message=message %}
38
+ {% endfor %}
39
+ {% endif %}
40
+ </div>
41
+ <!-- End static comments -->
42
+
43
+ <!-- Start new comment form -->
44
+ <div class="page__comments-form">
45
+ <h4 class="page__comments-title">{{ site.data.ui-text[site.locale].comments_label | default: "Leave a Comment" }}</h4>
46
+ <p class="small">{{ site.data.ui-text[site.locale].comment_form_info | default: "Your email address will not be published. Required fields are marked" }} <span class="required">*</span></p>
47
+ <form id="new_comment" class="page__comments-form js-form form" method="post" action="{{ site.comments.staticman.endpoint }}{{ site.repository }}/{{ site.comments.staticman.branch }}/comments">
48
+ <div class="form__spinner">
49
+ <i class="fas fa-spinner fa-spin fa-3x fa-fw"></i>
50
+ <span class="sr-only">{{ site.data.ui-text[site.locale].loading_label | default: "Loading..." }}</span>
51
+ </div>
52
+
53
+ <div class="form-group">
54
+ <label for="comment-form-message">{{ site.data.ui-text[site.locale].comment_form_comment_label | default: "Comment" }} <small class="required">*</small></label>
55
+ <textarea type="text" rows="3" id="comment-form-message" name="fields[message]" tabindex="1"></textarea>
56
+ <div class="small help-block"><a href="https://daringfireball.net/projects/markdown/">{{ site.data.ui-text[site.locale].comment_form_md_info | default: "Markdown is supported." }}</a></div>
57
+ </div>
58
+ <div class="form-group">
59
+ <label for="comment-form-name">{{ site.data.ui-text[site.locale].comment_form_name_label | default: "Name" }} <small class="required">*</small></label>
60
+ <input type="text" id="comment-form-name" name="fields[name]" tabindex="2" />
61
+ </div>
62
+ <div class="form-group">
63
+ <label for="comment-form-email">{{ site.data.ui-text[site.locale].comment_form_email_label | default: "Email address" }} <small class="required">*</small></label>
64
+ <input type="email" id="comment-form-email" name="fields[email]" tabindex="3" />
65
+ </div>
66
+ <div class="form-group">
67
+ <label for="comment-form-url">{{ site.data.ui-text[site.locale].comment_form_website_label | default: "Website (optional)" }}</label>
68
+ <input type="url" id="comment-form-url" name="fields[url]" tabindex="4"/>
69
+ </div>
70
+ <div class="form-group hidden" style="display: none;">
71
+ <input type="hidden" name="options[slug]" value="{{ page.slug }}">
72
+ <label for="comment-form-location">Not used. Leave blank if you are a human.</label>
73
+ <input type="text" id="comment-form-location" name="fields[hidden]" autocomplete="off"/>
74
+ {% if site.reCaptcha.siteKey %}<input type="hidden" name="options[reCaptcha][siteKey]" value="{{ site.reCaptcha.siteKey }}">{% endif %}
75
+ {% if site.reCaptcha.secret %}<input type="hidden" name="options[reCaptcha][secret]" value="{{ site.reCaptcha.secret }}">{% endif %}
76
+ </div>
77
+ <!-- Start comment form alert messaging -->
78
+ <p class="hidden js-notice">
79
+ <strong class="js-notice-text"></strong>
80
+ </p>
81
+ <!-- End comment form alert messaging -->
82
+ {% if site.reCaptcha.siteKey %}
83
+ <div class="form-group">
84
+ <div class="g-recaptcha" data-sitekey="{{ site.reCaptcha.siteKey }}"></div>
85
+ </div>
86
+ {% endif %}
87
+ <div class="form-group">
88
+ <button type="submit" id="comment-form-submit" tabindex="5" class="btn btn--primary btn--large">{{ site.data.ui-text[site.locale].comment_btn_submit | default: "Submit Comment" }}</button>
89
+ </div>
90
+ </form>
91
+ </div>
92
+ <!-- End new comment form -->
93
+ {% if site.reCaptcha.siteKey %}<script async src="https://www.google.com/recaptcha/api.js"></script>{% endif %}
94
+ {% endif %}
95
+ </section>
96
+ {% when "staticman" %}
97
+ <section id="static-comments">
98
+ {% if site.repository and site.staticman.branch %}
99
+ <!-- Start static comments -->
100
+ <div class="js-comments">
101
+ {% if site.data.comments[page.slug] %}
102
+ <h4 class="page__comments-title">{{ site.data.ui-text[site.locale].comments_title | default: "Comments" }}</h4>
103
+ {% assign comments = site.data.comments[page.slug] %}
104
+
105
+ <!-- In order to sort by date we must have an array of objects, not an array of arrays, so
106
+ create a new array of plain comment objects and then sort by the comment date. -->
107
+ {% assign commentObjects = '' | split: '' %}
108
+ {% for comment in comments %}
109
+ {% assign commentObject = comment[1] %}
110
+ {% assign commentObjects = commentObjects | push: commentObject %}
111
+ {% endfor %}
112
+ {% assign comments = commentObjects | sort: "date" %}
113
+
114
+ {% for comment in comments %}
115
+ {% assign email = comment.email %}
116
+ {% assign name = comment.name %}
117
+ {% assign url = comment.url %}
118
+ {% assign date = comment.date %}
119
+ {% assign message = comment.message %}
120
+ {% include comment.html index=forloop.index email=email name=name url=url date=date message=message %}
121
+ {% endfor %}
122
+ {% endif %}
123
+ </div>
124
+ <!-- End static comments -->
125
+
126
+ <!-- Start new comment form -->
127
+ <div class="page__comments-form">
128
+ <h4 class="page__comments-title">{{ site.data.ui-text[site.locale].comments_label | default: "Leave a Comment" }}</h4>
129
+ <p class="small">{{ site.data.ui-text[site.locale].comment_form_info | default: "Your email address will not be published. Required fields are marked" }} <span class="required">*</span></p>
130
+ <form id="new_comment" class="page__comments-form js-form form" method="post" action="https://api.staticman.net/v1/entry/{{ site.repository }}/{{ site.staticman.branch }}">
131
+ <div class="form__spinner">
132
+ <i class="fas fa-spinner fa-spin fa-3x fa-fw"></i>
133
+ <span class="sr-only">{{ site.data.ui-text[site.locale].loading_label | default: "Loading..." }}</span>
134
+ </div>
135
+
136
+ <div class="form-group">
137
+ <label for="comment-form-message">{{ site.data.ui-text[site.locale].comment_form_comment_label | default: "Comment" }} <small class="required">*</small></label>
138
+ <textarea type="text" rows="3" id="comment-form-message" name="fields[message]" tabindex="1"></textarea>
139
+ <div class="small help-block"><a href="https://daringfireball.net/projects/markdown/">{{ site.data.ui-text[site.locale].comment_form_md_info | default: "Markdown is supported." }}</a></div>
140
+ </div>
141
+ <div class="form-group">
142
+ <label for="comment-form-name">{{ site.data.ui-text[site.locale].comment_form_name_label | default: "Name" }} <small class="required">*</small></label>
143
+ <input type="text" id="comment-form-name" name="fields[name]" tabindex="2" />
144
+ </div>
145
+ <div class="form-group">
146
+ <label for="comment-form-email">{{ site.data.ui-text[site.locale].comment_form_email_label | default: "Email address" }} <small class="required">*</small></label>
147
+ <input type="email" id="comment-form-email" name="fields[email]" tabindex="3" />
148
+ </div>
149
+ <div class="form-group">
150
+ <label for="comment-form-url">{{ site.data.ui-text[site.locale].comment_form_website_label | default: "Website (optional)" }}</label>
151
+ <input type="url" id="comment-form-url" name="fields[url]" tabindex="4"/>
152
+ </div>
153
+ <div class="form-group hidden" style="display: none;">
154
+ <input type="hidden" name="options[slug]" value="{{ page.slug }}">
155
+ <label for="comment-form-location">Not used. Leave blank if you are a human.</label>
156
+ <input type="text" id="comment-form-location" name="fields[hidden]" autocomplete="off"/>
157
+ </div>
158
+ <!-- Start comment form alert messaging -->
159
+ <p class="hidden js-notice">
160
+ <strong class="js-notice-text"></strong>
161
+ </p>
162
+ <!-- End comment form alert messaging -->
163
+ <div class="form-group">
164
+ <button type="submit" id="comment-form-submit" tabindex="5" class="btn btn--primary btn--large">{{ site.data.ui-text[site.locale].comment_btn_submit | default: "Submit Comment" }}</button>
165
+ </div>
166
+ </form>
167
+ </div>
168
+ <!-- End new comment form -->
169
+ {% endif %}
170
+ </section>
171
+ {% when "utterances" %}
172
+ <h4 class="page__comments-title">{{ comments_label }}</h4>
173
+ <section id="utterances-comments"></section>
174
+ {% when "giscus" %}
175
+ <h4 class="page__comments-title">{{ comments_label }}</h4>
176
+ <section id="giscus-comments"></section>
177
+ {% when "custom" %}
178
+ {% include /comments-providers/custom.html %}
179
+ {% endcase %}
180
+ </div>
@@ -0,0 +1,15 @@
1
+ {% assign entries = site[include.collection] %}
2
+
3
+ {% if include.sort_by %}
4
+ {% assign entries = entries | sort: include.sort_by %}
5
+ {% endif %}
6
+
7
+ {% if include.sort_order == 'reverse' %}
8
+ {% assign entries = entries | reverse %}
9
+ {% endif %}
10
+
11
+ {%- for post in entries -%}
12
+ {%- unless post.hidden -%}
13
+ {% include archive-single.html %}
14
+ {%- endunless -%}
15
+ {%- endfor -%}
@@ -0,0 +1,41 @@
1
+ {% if include.id %}
2
+ {% assign feature_row = page[include.id] %}
3
+ {% else %}
4
+ {% assign feature_row = page.feature_row %}
5
+ {% endif %}
6
+
7
+ <div class="feature__wrapper">
8
+
9
+ {% for f in feature_row %}
10
+ <div class="feature__item{% if include.type %}--{{ include.type }}{% endif %}">
11
+ <div class="archive__item">
12
+ {% if f.image_path %}
13
+ <div class="archive__item-teaser">
14
+ <img src="{{ f.image_path | relative_url }}"
15
+ alt="{% if f.alt %}{{ f.alt }}{% endif %}">
16
+ {% if f.image_caption %}
17
+ <span class="archive__item-caption">{{ f.image_caption | markdownify | remove: "<p>" | remove: "</p>" }}</span>
18
+ {% endif %}
19
+ </div>
20
+ {% endif %}
21
+
22
+ <div class="archive__item-body">
23
+ {% if f.title %}
24
+ <h2 class="archive__item-title">{{ f.title }}</h2>
25
+ {% endif %}
26
+
27
+ {% if f.excerpt %}
28
+ <div class="archive__item-excerpt">
29
+ {{ f.excerpt | markdownify }}
30
+ </div>
31
+ {% endif %}
32
+
33
+ {% if f.url %}
34
+ <p><a href="{{ f.url | relative_url }}" class="btn {{ f.btn_class }}">{{ f.btn_label | default: site.data.ui-text[site.locale].more_label | default: "Learn More" }}</a></p>
35
+ {% endif %}
36
+ </div>
37
+ </div>
38
+ </div>
39
+ {% endfor %}
40
+
41
+ </div>
data/_includes/figure ADDED
@@ -0,0 +1,9 @@
1
+ <figure class="{{ include.class }}">
2
+ <img src="{{ include.image_path | relative_url }}"
3
+ alt="{% if include.alt %}{{ include.alt }}{% endif %}">
4
+ {%- if include.caption -%}
5
+ <figcaption>
6
+ {{ include.caption | markdownify | remove: "<p>" | remove: "</p>" }}
7
+ </figcaption>
8
+ {%- endif -%}
9
+ </figure>
@@ -0,0 +1,3 @@
1
+ <!-- start custom footer snippets -->
2
+
3
+ <!-- end custom footer snippets -->
@@ -0,0 +1,21 @@
1
+ <div class="page__footer-follow">
2
+ <ul class="social-icons">
3
+ {% if site.data.ui-text[site.locale].follow_label %}
4
+ <li><strong>{{ site.data.ui-text[site.locale].follow_label }}</strong></li>
5
+ {% endif %}
6
+
7
+ {% if site.footer.links %}
8
+ {% for link in site.footer.links %}
9
+ {% if link.label and link.url %}
10
+ <li><a href="{{ link.url }}" rel="nofollow noopener noreferrer"><i class="{{ link.icon | default: 'fas fa-link' }}" aria-hidden="true"></i> {{ link.label }}</a></li>
11
+ {% endif %}
12
+ {% endfor %}
13
+ {% endif %}
14
+
15
+ {% unless site.atom_feed.hide %}
16
+ <li><a href="{% if site.atom_feed.path %}{{ site.atom_feed.path }}{% else %}{{ '/feed.xml' | relative_url }}{% endif %}"><i class="fas fa-fw fa-rss-square" aria-hidden="true"></i> {{ site.data.ui-text[site.locale].feed_label | default: "Feed" }}</a></li>
17
+ {% endunless %}
18
+ </ul>
19
+ </div>
20
+
21
+ <div class="page__footer-copyright">&copy; {{ site.time | date: '%Y' }} {{ site.name | default: site.title }}. {{ site.data.ui-text[site.locale].powered_by | default: "Powered by" }} <a href="https://jekyllrb.com" rel="nofollow">Jekyll</a> &amp; <a href="https://mademistakes.com/work/minimal-mistakes-jekyll-theme/" rel="nofollow">Minimal Mistakes</a>.</div>
data/_includes/gallery ADDED
@@ -0,0 +1,35 @@
1
+ {% if include.id %}
2
+ {% assign gallery = page[include.id] %}
3
+ {% else %}
4
+ {% assign gallery = page.gallery %}
5
+ {% endif %}
6
+
7
+ {% if include.layout %}
8
+ {% assign gallery_layout = include.layout %}
9
+ {% else %}
10
+ {% if gallery.size == 2 %}
11
+ {% assign gallery_layout = 'half' %}
12
+ {% elsif gallery.size >= 3 %}
13
+ {% assign gallery_layout = 'third' %}
14
+ {% else %}
15
+ {% assign gallery_layout = '' %}
16
+ {% endif %}
17
+ {% endif %}
18
+
19
+ <figure class="{{ gallery_layout }} {{ include.class }}">
20
+ {% for img in gallery %}
21
+ {% if img.url %}
22
+ <a href="{{ img.url | relative_url }}"
23
+ {% if img.title %}title="{{ img.title }}"{% endif %}>
24
+ <img src="{{ img.image_path | relative_url }}"
25
+ alt="{% if img.alt %}{{ img.alt }}{% endif %}">
26
+ </a>
27
+ {% else %}
28
+ <img src="{{ img.image_path | relative_url }}"
29
+ alt="{% if img.alt %}{{ img.alt }}{% endif %}">
30
+ {% endif %}
31
+ {% endfor %}
32
+ {% if include.caption %}
33
+ <figcaption>{{ include.caption | markdownify | remove: "<p>" | remove: "</p>" }}</figcaption>
34
+ {% endif %}
35
+ </figure>
@@ -0,0 +1,47 @@
1
+ <!--
2
+ # Jekyll Group-By-Array 0.1.0
3
+ # https://github.com/mushishi78/jekyll-group-by-array
4
+ # © 2015 Max White <mushishi78@gmail.com>
5
+ # MIT License
6
+ -->
7
+
8
+ <!-- Initialize -->
9
+ {% assign __empty_array = '' | split: ',' %}
10
+ {% assign group_names = __empty_array %}
11
+ {% assign group_items = __empty_array %}
12
+
13
+ <!-- Map -->
14
+ {% assign __names = include.collection | map: include.field %}
15
+
16
+ <!-- Flatten -->
17
+ {% assign __names = __names | join: ',' | join: ',' | split: ',' %}
18
+
19
+ <!-- Uniq -->
20
+ {% assign __names = __names | sort %}
21
+ {% for name in __names %}
22
+
23
+ <!-- If not equal to previous then it must be unique as sorted -->
24
+ {% unless name == previous %}
25
+
26
+ <!-- Push to group_names -->
27
+ {% assign group_names = group_names | push: name %}
28
+ {% endunless %}
29
+
30
+ {% assign previous = name %}
31
+ {% endfor %}
32
+
33
+
34
+ <!-- group_items -->
35
+ {% for name in group_names %}
36
+
37
+ <!-- Collect if contains -->
38
+ {% assign __item = __empty_array %}
39
+ {% for __element in include.collection %}
40
+ {% if __element[include.field] contains name %}
41
+ {% assign __item = __item | push: __element %}
42
+ {% endif %}
43
+ {% endfor %}
44
+
45
+ <!-- Push to group_items -->
46
+ {% assign group_items = group_items | push: __item %}
47
+ {% endfor %}
@@ -0,0 +1,15 @@
1
+ <!-- start custom head snippets -->
2
+
3
+ <!-- insert favicons. use https://realfavicongenerator.net/ -->
4
+
5
+ <link rel="apple-touch-icon" sizes="180x180" href="/assets/images/apple-touch-icon.png">
6
+ <link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32x32.png">
7
+ <link rel="icon" type="image/png" sizes="16x16" href="/assets/images/favicon-16x16.png">
8
+ <link rel="manifest" href="/assets/images/site.webmanifest">
9
+ <link rel="mask-icon" href="/assets/images/safari-pinned-tab.svg" color="#5bbad5">
10
+ <link rel="shortcut icon" href="/assets/images/favicon.ico">
11
+ <meta name="msapplication-TileColor" content="#da532c">
12
+ <meta name="msapplication-config" content="/assets/images/browserconfig.xml">
13
+ <meta name="theme-color" content="#ffffff">
14
+
15
+ <!-- end custom head snippets -->
@@ -0,0 +1,25 @@
1
+ <meta charset="utf-8">
2
+
3
+ {% include seo.html %}
4
+
5
+ {% unless site.atom_feed.hide %}
6
+ <link href="{% if site.atom_feed.path %}{{ site.atom_feed.path }}{% else %}{{ '/feed.xml' | relative_url }}{% endif %}" type="application/atom+xml" rel="alternate" title="{{ site.title }} Feed">
7
+ {% endunless %}
8
+
9
+ <!-- https://t.co/dKP3o1e -->
10
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
11
+
12
+ <script>
13
+ document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + ' js ';
14
+ </script>
15
+
16
+ <!-- For all browsers -->
17
+ <link rel="stylesheet" href="{{ '/assets/css/main.css' | relative_url }}">
18
+ <link rel="preload" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/css/all.min.css" as="style" onload="this.onload=null;this.rel='stylesheet'">
19
+ <noscript><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5/css/all.min.css"></noscript>
20
+
21
+ {% if site.head_scripts %}
22
+ {% for script in site.head_scripts %}
23
+ <script src="{{ script | relative_url }}"></script>
24
+ {% endfor %}
25
+ {% endif %}
@@ -0,0 +1,35 @@
1
+ {% capture logo_path %}{{ site.logo }}{% endcapture %}
2
+
3
+ <div class="masthead">
4
+ <div class="masthead__inner-wrap">
5
+ <div class="masthead__menu">
6
+ <nav id="site-nav" class="greedy-nav">
7
+ {% unless logo_path == empty %}
8
+ <a class="site-logo" href="{{ '/' | relative_url }}"><img src="{{ logo_path | relative_url }}" alt="{{ site.masthead_title | default: site.title }}"></a>
9
+ {% endunless %}
10
+ <a class="site-title" href="{{ '/' | relative_url }}">
11
+ {{ site.masthead_title | default: site.title }}
12
+ {% if site.subtitle %}<span class="site-subtitle">{{ site.subtitle }}</span>{% endif %}
13
+ </a>
14
+ <ul class="visible-links">
15
+ {%- for link in site.data.navigation.main -%}
16
+ <li class="masthead__menu-item">
17
+ <a href="{{ link.url | relative_url }}"{% if link.description %} title="{{ link.description }}"{% endif %}>{{ link.title }}</a>
18
+ </li>
19
+ {%- endfor -%}
20
+ </ul>
21
+ {% if site.search == true %}
22
+ <button class="search__toggle" type="button">
23
+ <span class="visually-hidden">{{ site.data.ui-text[site.locale].search_label | default: "Toggle search" }}</span>
24
+ <i class="fas fa-search"></i>
25
+ </button>
26
+ {% endif %}
27
+ <button class="greedy-nav__toggle hidden" type="button">
28
+ <span class="visually-hidden">{{ site.data.ui-text[site.locale].menu_label | default: "Toggle menu" }}</span>
29
+ <div class="navicon"></div>
30
+ </button>
31
+ <ul class="hidden-links hidden"></ul>
32
+ </nav>
33
+ </div>
34
+ </div>
35
+ </div>
@@ -0,0 +1,26 @@
1
+ {% assign navigation = site.data.navigation[include.nav] %}
2
+
3
+ <nav class="nav__list">
4
+ {% if page.sidebar.title %}<h3 class="nav__title" style="padding-left: 0;">{{ page.sidebar.title }}</h3>{% endif %}
5
+ <input id="ac-toc" name="accordion-toc" type="checkbox" />
6
+ <label for="ac-toc">{{ site.data.ui-text[site.locale].menu_label | default: "Toggle Menu" }}</label>
7
+ <ul class="nav__items">
8
+ {% for nav in navigation %}
9
+ <li>
10
+ {% if nav.url %}
11
+ <a href="{{ nav.url | relative_url }}"><span class="nav__sub-title">{{ nav.title }}</span></a>
12
+ {% else %}
13
+ <span class="nav__sub-title">{{ nav.title }}</span>
14
+ {% endif %}
15
+
16
+ {% if nav.children != null %}
17
+ <ul>
18
+ {% for child in nav.children %}
19
+ <li><a href="{{ child.url | relative_url }}"{% if child.url == page.url %} class="active"{% endif %}>{{ child.title }}</a></li>
20
+ {% endfor %}
21
+ </ul>
22
+ {% endif %}
23
+ </li>
24
+ {% endfor %}
25
+ </ul>
26
+ </nav>
@@ -0,0 +1,6 @@
1
+ {% assign date_format = site.date_format | default: "%B %-d, %Y" %}
2
+ {% if page.last_modified_at %}
3
+ <p class="page__date"><strong><i class="fas fa-fw fa-calendar-alt" aria-hidden="true"></i> {{ site.data.ui-text[site.locale].date_label | default: "Updated:" }}</strong> <time class="dt-published" datetime="{{ page.last_modified_at | date: "%Y-%m-%d" }}">{{ page.last_modified_at | date: date_format }}</time></p>
4
+ {% elsif page.date %}
5
+ <p class="page__date"><strong><i class="fas fa-fw fa-calendar-alt" aria-hidden="true"></i> {{ site.data.ui-text[site.locale].date_label | default: "Updated:" }}</strong> <time class="dt-published" datetime="{{ page.date | date_to_xmlschema }}">{{ page.date | date: date_format }}</time></p>
6
+ {% endif %}
@@ -0,0 +1,55 @@
1
+ {% capture overlay_img_path %}{{ page.header.overlay_image | relative_url }}{% endcapture %}
2
+
3
+ {% if page.header.overlay_filter contains "gradient" %}
4
+ {% capture overlay_filter %}{{ page.header.overlay_filter }}{% endcapture %}
5
+ {% elsif page.header.overlay_filter contains "rgba" %}
6
+ {% capture overlay_filter %}{{ page.header.overlay_filter }}{% endcapture %}
7
+ {% capture overlay_filter %}linear-gradient({{ overlay_filter }}, {{ overlay_filter }}){% endcapture %}
8
+ {% elsif page.header.overlay_filter %}
9
+ {% capture overlay_filter %}rgba(0, 0, 0, {{ page.header.overlay_filter }}){% endcapture %}
10
+ {% capture overlay_filter %}linear-gradient({{ overlay_filter }}, {{ overlay_filter }}){% endcapture %}
11
+ {% endif %}
12
+
13
+ {% if page.header.image_description %}
14
+ {% assign image_description = page.header.image_description %}
15
+ {% else %}
16
+ {% assign image_description = page.title %}
17
+ {% endif %}
18
+
19
+ {% assign image_description = image_description | markdownify | strip_html | strip_newlines | escape_once %}
20
+
21
+ <div class="page__hero{% if page.header.overlay_color or page.header.overlay_image %}--overlay{% endif %}"
22
+ style="{% if page.header.overlay_color %}background-color: {{ page.header.overlay_color | default: 'transparent' }};{% endif %} {% if overlay_img_path %}background-image: {% if overlay_filter %}{{ overlay_filter }}, {% endif %}url('{{ overlay_img_path }}');{% endif %}"
23
+ >
24
+ {% if page.header.overlay_color or page.header.overlay_image %}
25
+ <div class="wrapper">
26
+ <h1 id="page-title" class="page__title" itemprop="headline">
27
+ {% if paginator and site.paginate_show_page_num %}
28
+ {{ site.title }}{% unless paginator.page == 1 %} {{ site.data.ui-text[site.locale].page | default: "Page" }} {{ paginator.page }}{% endunless %}
29
+ {% else %}
30
+ {{ page.title | default: site.title | markdownify | remove: "<p>" | remove: "</p>" }}
31
+ {% endif %}
32
+ </h1>
33
+ {% if page.tagline %}
34
+ <p class="page__lead">{{ page.tagline | markdownify | remove: "<p>" | remove: "</p>" }}</p>
35
+ {% elsif page.header.show_overlay_excerpt != false and page.excerpt %}
36
+ <p class="page__lead">{{ page.excerpt | markdownify | remove: "<p>" | remove: "</p>" }}</p>
37
+ {% endif %}
38
+ {% include page__meta.html %}
39
+ {% if page.header.cta_url %}
40
+ <p><a href="{{ page.header.cta_url | relative_url }}" class="btn btn--light-outline btn--large">{{ page.header.cta_label | default: site.data.ui-text[site.locale].more_label | default: "Learn More" }}</a></p>
41
+ {% endif %}
42
+ {% if page.header.actions %}
43
+ <p>
44
+ {% for action in page.header.actions %}
45
+ <a href="{{ action.url | relative_url }}" class="btn btn--light-outline btn--large">{{ action.label | default: site.data.ui-text[site.locale].more_label | default: "Learn More" }}</a>
46
+ {% endfor %}
47
+ {% endif %}
48
+ </div>
49
+ {% else %}
50
+ <img src="{{ page.header.image | relative_url }}" alt="{{ image_description }}" class="page__hero-image">
51
+ {% endif %}
52
+ {% if page.header.caption %}
53
+ <span class="page__hero-caption">{{ page.header.caption | markdownify | remove: "<p>" | remove: "</p>" }}</span>
54
+ {% endif %}
55
+ </div>
@@ -0,0 +1,2 @@
1
+ {% assign video = page.header.video %}
2
+ {% include video id=video.id provider=video.provider danmaku=video.danmaku %}
@@ -0,0 +1,31 @@
1
+ {% assign document = post | default: page %}
2
+ {% if document.read_time or document.show_date %}
3
+ <p class="page__meta">
4
+ {% if document.show_date and document.date %}
5
+ {% assign date = document.date %}
6
+ <span class="page__meta-date">
7
+ <i class="far {% if include.type == 'grid' and document.read_time and document.show_date %}fa-fw {% endif %}fa-calendar-alt" aria-hidden="true"></i>
8
+ {% assign date_format = site.date_format | default: "%B %-d, %Y" %}
9
+ <time datetime="{{ date | date_to_xmlschema }}">{{ date | date: date_format }}</time>
10
+ </span>
11
+ {% endif %}
12
+
13
+ {% if document.read_time and document.show_date %}<span class="page__meta-sep"></span>{% endif %}
14
+
15
+ {% if document.read_time %}
16
+ {% assign words_per_minute = document.words_per_minute | default: site.words_per_minute | default: 200 %}
17
+ {% assign words = document.content | strip_html | number_of_words %}
18
+
19
+ <span class="page__meta-readtime">
20
+ <i class="far {% if include.type == 'grid' and document.read_time and document.show_date %}fa-fw {% endif %}fa-clock" aria-hidden="true"></i>
21
+ {% if words < words_per_minute %}
22
+ {{ site.data.ui-text[site.locale].less_than | default: "less than" }} 1 {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
23
+ {% elsif words == words_per_minute %}
24
+ 1 {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
25
+ {% else %}
26
+ {{ words | divided_by: words_per_minute }} {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
27
+ {% endif %}
28
+ </span>
29
+ {% endif %}
30
+ </p>
31
+ {% endif %}
@@ -0,0 +1,7 @@
1
+ {% if site.tag_archive.type and page.tags[0] %}
2
+ {% include tag-list.html %}
3
+ {% endif %}
4
+
5
+ {% if site.category_archive.type and page.categories[0] %}
6
+ {% include category-list.html %}
7
+ {% endif %}