sutty-jekyll-theme 0.3.5 → 0.3.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +2 -2
- data/README.md +9 -10
- data/_data/en.yml +38 -38
- data/_data/es.yml +38 -38
- data/_data/layouts/about.yml +2 -2
- data/_data/layouts/code_of_conduct.yml +2 -2
- data/_data/layouts/license.yml +2 -2
- data/_data/layouts/page.yml +2 -2
- data/_data/layouts/post.yml +2 -2
- data/_data/layouts/privacy_policy.yml +2 -2
- data/_data/layouts/theme.yml +4 -2
- data/_includes/activity_pub/actor.html +11 -0
- data/_includes/activity_pub/actor_mention.html +28 -0
- data/_includes/activity_pub/button.html +22 -0
- data/_includes/activity_pub/button_bar.html +16 -0
- data/_includes/activity_pub/cards.html +28 -0
- data/_includes/activity_pub/fediverse_interactions.html +2 -0
- data/_includes/activity_pub/generic_modal.html +55 -0
- data/_includes/activity_pub/image_modal.html +27 -0
- data/_includes/activity_pub/interactions.html +78 -0
- data/_includes/activity_pub/login_modal.html +70 -0
- data/_includes/activity_pub/reaction.html +45 -0
- data/_includes/activity_pub/reactions.html +17 -0
- data/_includes/activity_pub/replying_to.html +23 -0
- data/_includes/activity_pub/text_modal.html +16 -0
- data/_includes/activity_pub/toot_card.html +95 -0
- data/_includes/activity_pub/url.html +8 -0
- data/_includes/activity_pub/video_modal.html +20 -0
- data/_includes/bootstrap/custom_select.html +18 -0
- data/_includes/external_link.html +15 -0
- data/_includes/fa.html +11 -0
- data/_includes/footer.html +21 -22
- data/_includes/navbar.html +6 -2
- data/_includes/script.html +1 -1
- data/_layouts/code_of_conduct.html +3 -3
- data/_layouts/default.html +8 -9
- data/_layouts/home.html +4 -5
- data/_layouts/license.html +3 -3
- data/_layouts/page.html +6 -6
- data/_layouts/post.html +6 -6
- data/_layouts/privacy_policy.html +3 -3
- data/_sass/content.scss +28 -10
- data/_sass/crypto.scss +2 -2
- data/_sass/saira.scss +8 -8
- data/assets/fonts/forkawesome-webfont.woff2 +0 -0
- metadata +24 -3
@@ -0,0 +1,70 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
Modal para loguearse al fediverso
|
3
|
+
|
4
|
+
@param :action [String] acción que le usuarie quiere realizar desde el fediverso
|
5
|
+
@param :fa [String] nombre del ícono que usa fork-awesome
|
6
|
+
@param :uri [String] la URL sobre la que se interactúa
|
7
|
+
@param :profile [ActivityDrop] Actor
|
8
|
+
{%- endcomment -%}
|
9
|
+
|
10
|
+
{% assign action = include.action %}
|
11
|
+
{% assign fa = include.fa %}
|
12
|
+
{% capture name %}
|
13
|
+
{% include_cached activity_pub/actor.html actor=include.profile %}
|
14
|
+
{% endcapture %}
|
15
|
+
|
16
|
+
{% capture header %}
|
17
|
+
<div class="d-flex align-items-center h1 justify-content-center w-100">
|
18
|
+
<span class="d-flex responsive-header font-weight-bold text-center">
|
19
|
+
<i class="fa fa-{{fa}} text-primary mr-2"></i>
|
20
|
+
<span>
|
21
|
+
{{ site.i18n.login_modal[action.title].text | replace: "$usuarie", name }}
|
22
|
+
</span>
|
23
|
+
<div>
|
24
|
+
<span class="px-3 py-2 m-0 h1" type="button" data-action="click->modal#hide">×</span>
|
25
|
+
<span class="sr-only">{{ site.i18n.close }}</span>
|
26
|
+
</div>
|
27
|
+
</span>
|
28
|
+
</div>
|
29
|
+
{% endcapture %}
|
30
|
+
|
31
|
+
{% capture body %}
|
32
|
+
<p class="mb-2">{{site.i18n.login_modal.top_text | markdownify | replace: "$action", site.i18n.login_modal[action.title].title }}</p>
|
33
|
+
<div class="mt-3 mb-2 h5">{{site.i18n.login_modal.question | markdownify}}</div>
|
34
|
+
<div class="mb-3">
|
35
|
+
<form
|
36
|
+
class="needs-validation"
|
37
|
+
data-controller="authorize-interaction"
|
38
|
+
data-action="authorize-interaction#submit:prevent"
|
39
|
+
data-authorize-interaction-uri-value="{{ include.uri | strip_html | absolute_url | uri_escape }}"
|
40
|
+
>
|
41
|
+
<div class="form-row align-items-center border-lg border-lg-primary py-1">
|
42
|
+
<div class="col-12 col-lg mb-1 mb-lg-0">
|
43
|
+
<label class="sr-only">{{site.i18n.login_modal.placeholder}}</label>
|
44
|
+
<input
|
45
|
+
class="form-control border border-primary border-lg-0"
|
46
|
+
placeholder="{{site.i18n.login_modal.placeholder}}"
|
47
|
+
autocomplete="impp"
|
48
|
+
required
|
49
|
+
data-authorize-interaction-target="instance"
|
50
|
+
data-action="authorize-interaction#revalid"
|
51
|
+
type="search"/>
|
52
|
+
<div class="invalid-feedback">
|
53
|
+
{{- site.i18n.login_modal.authorize_interaction_unsupported -}}
|
54
|
+
</div>
|
55
|
+
</div>
|
56
|
+
|
57
|
+
<div class="col-12 col-lg-auto">
|
58
|
+
<button class="btn btn-primary btn-block py-btn-padding-y lh-btn-line-height f-16 font-weight-bold" type="submit">{{ site.i18n.take_me_home }}</button>
|
59
|
+
</div>
|
60
|
+
</div>
|
61
|
+
</form>
|
62
|
+
</div>
|
63
|
+
<small class="d-block mb-2">{{site.i18n.login_modal.small_text}}</small>
|
64
|
+
<span>{{site.i18n.login_modal.bottom_text | markdownify}}</span>
|
65
|
+
{% endcapture %}
|
66
|
+
|
67
|
+
{% capture footer %}
|
68
|
+
{% endcapture %}
|
69
|
+
|
70
|
+
{% include activity_pub/button.html header=header body=body footer=footer header_class="justify-content-center border-bottom-0" body_class="justify-content-center" footer_class="border-top-0" content_class="p-2" button_class="mx-1" fa=action.icon description=include.description %}
|
@@ -0,0 +1,45 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
Reacción
|
3
|
+
|
4
|
+
@param :activity [String] Reacción de le usuarie
|
5
|
+
@param :fa [String] nombre del ícono que usa fork-awesome
|
6
|
+
@param :actor [String] Usuarie
|
7
|
+
{%- endcomment -%}
|
8
|
+
|
9
|
+
{% assign published = include.activity.published | strip_html %}
|
10
|
+
|
11
|
+
<div class="d-flex">
|
12
|
+
<div class="d-flex flex-column gray px-2 text-right">
|
13
|
+
{% include_cached date.html date=published format=site.i18n.date.format %}
|
14
|
+
{% include_cached date.html date=published format=site.i18n.time.format %}
|
15
|
+
</div>
|
16
|
+
|
17
|
+
<div class="flex-column px-2 flex-grow-1">
|
18
|
+
{% if include.previous.actor == include.activity.actor %}
|
19
|
+
<div class="d-flex">
|
20
|
+
<p class="transparent hover-transparent">
|
21
|
+
{% include_cached activity_pub/actor.html actor=include.activity.actor %}
|
22
|
+
</p>
|
23
|
+
</div>
|
24
|
+
<div class="d-flex">
|
25
|
+
<p class="transparent hover-transparent">
|
26
|
+
{% include_cached activity_pub/actor_mention.html actor=include.activity.actor without_link=true %}
|
27
|
+
</p>
|
28
|
+
</div>
|
29
|
+
{% else %}
|
30
|
+
<div class="d-flex">
|
31
|
+
<p class="">{% include_cached activity_pub/actor.html actor=include.activity.actor %}</p>
|
32
|
+
</div>
|
33
|
+
<div class="d-flex">
|
34
|
+
{% include_cached activity_pub/actor_mention.html actor=include.activity.actor %}
|
35
|
+
</div>
|
36
|
+
{% endif %}
|
37
|
+
</div>
|
38
|
+
|
39
|
+
<div class="flex-column align-self-center px-2 lead">
|
40
|
+
{% assign icon = include.activity.type | equals: 'Announce' | ternary: 'retweet', 'star-o' %}
|
41
|
+
{% assign description = site.i18n.activities[include.activity.type] %}
|
42
|
+
|
43
|
+
{%- include_cached fa.html icon=icon class="lead" description=description -%}
|
44
|
+
</div>
|
45
|
+
</div>
|
@@ -0,0 +1,17 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
Reacciones
|
3
|
+
|
4
|
+
@param :reactions [Array] Reacciones
|
5
|
+
@param :actor [String] Usuarie
|
6
|
+
{%- endcomment -%}
|
7
|
+
|
8
|
+
{% for reaction in include.reactions %}
|
9
|
+
{% assign minus = forloop.index0 | minus: 1 %}
|
10
|
+
{% assign previous = include.reactions[minus] %}
|
11
|
+
|
12
|
+
{%
|
13
|
+
include activity_pub/reaction.html
|
14
|
+
activity=reaction
|
15
|
+
previous=previous
|
16
|
+
%}
|
17
|
+
{% endfor %}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
Texto + enlace al post/artículo al cual se responde
|
3
|
+
|
4
|
+
@param :activity [ActivityDrop] Activity
|
5
|
+
{%- endcomment -%}
|
6
|
+
|
7
|
+
{% if include.activity.available %}
|
8
|
+
{%- capture uri -%}
|
9
|
+
{%- include_cached activity_pub/url.html activity=include.activity -%}
|
10
|
+
{%- endcapture -%}
|
11
|
+
|
12
|
+
{% capture text %}
|
13
|
+
{{- include.activity.name | default: include.activity.summary | strip_html | default: site.i18n.reply.link_text -}}
|
14
|
+
{% endcapture %}
|
15
|
+
|
16
|
+
<div class="py-5 pr-5">
|
17
|
+
<span class="h2">
|
18
|
+
{{- site.i18n.reply.text -}}
|
19
|
+
</span>
|
20
|
+
|
21
|
+
{% include_cached external_link.html href=uri text=text %}
|
22
|
+
</div>
|
23
|
+
{% endif %}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
Modal para mostrar texto
|
3
|
+
|
4
|
+
@param :text [String] contenido del modal
|
5
|
+
@param :fa [String] nombre del ícono que usa fork-awesome
|
6
|
+
{%- endcomment -%}
|
7
|
+
|
8
|
+
{% capture body %}
|
9
|
+
{{ include.text }}
|
10
|
+
{% endcapture %}
|
11
|
+
|
12
|
+
{% capture footer %}
|
13
|
+
{% endcapture %}
|
14
|
+
|
15
|
+
{% assign fa = include.fa %}
|
16
|
+
{% include activity_pub/button.html body=body footer=footer body_class="justify-content-center" footer_class="border-top-0 d-none" content_class="p-2" fa=fa %}
|
@@ -0,0 +1,95 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
Toot card
|
3
|
+
|
4
|
+
@param :component_class [String] Las clases del componente
|
5
|
+
@param :profile [String]
|
6
|
+
@param :activity [String]
|
7
|
+
{%- endcomment -%}
|
8
|
+
|
9
|
+
{% assign extra_class = include.activity.attachment | size | equals: 1 | ternary: 'col', 'col-6' %}
|
10
|
+
|
11
|
+
<div class="d-flex flex-column media {{ include.component_class }}">
|
12
|
+
<div class="d-flex">
|
13
|
+
{%
|
14
|
+
include embed_responsive.html
|
15
|
+
x=1
|
16
|
+
y=1
|
17
|
+
src=include.profile.icon.url
|
18
|
+
alt=include.profile.icon.name
|
19
|
+
width=40
|
20
|
+
embed_class="mr-2 align-self-center w-49px"
|
21
|
+
img_class="h-100 object-fit-cover"
|
22
|
+
%}
|
23
|
+
|
24
|
+
<div class="">
|
25
|
+
<p>{% include_cached activity_pub/actor.html actor=include.profile %}</p>
|
26
|
+
<p>{% include_cached activity_pub/actor_mention.html actor=include.profile %}</p>
|
27
|
+
</div>
|
28
|
+
</div>
|
29
|
+
|
30
|
+
<div class="media-body w-100">
|
31
|
+
{% capture content %}
|
32
|
+
<div class="content mt-2">
|
33
|
+
{{ include.activity.content | sanitize_html }}
|
34
|
+
</div>
|
35
|
+
|
36
|
+
{% unless include.activity.attachment == empty %}
|
37
|
+
<div class="row no-gutters mt-2">
|
38
|
+
{% for attachment in include.activity.attachment %}
|
39
|
+
{% if attachment.mediaType == "video/mp4" %}
|
40
|
+
{% include activity_pub/video_modal.html video=attachment extra=extra_class %}
|
41
|
+
{% else %}
|
42
|
+
{% include activity_pub/image_modal.html image=attachment extra=extra_class %}
|
43
|
+
{% endif %}
|
44
|
+
{% endfor %}
|
45
|
+
</div>
|
46
|
+
{% endunless %}
|
47
|
+
{% endcapture %}
|
48
|
+
|
49
|
+
{% if include.activity.sensitive %}
|
50
|
+
{% capture summary_title %}
|
51
|
+
<strong>{{ site.i18n.sensitive }}:</strong> {{ include.activity.summary }}
|
52
|
+
{% endcapture %}
|
53
|
+
|
54
|
+
{%
|
55
|
+
include details.html
|
56
|
+
element_title=summary_title
|
57
|
+
element_text=content
|
58
|
+
summary_class="align-items-center btn-lg btn-secondary p-2 text-left f-16"
|
59
|
+
component_class="my-3"
|
60
|
+
font_size="ml-3 lead"
|
61
|
+
%}
|
62
|
+
{% else %}
|
63
|
+
{{ content }}
|
64
|
+
{% endif %}
|
65
|
+
|
66
|
+
<div class="d-flex gray justify-content-between my-2 align-items-center">
|
67
|
+
{%- assign timestamp_field = include.activity.updated | ternary: 'updated', 'published' -%}
|
68
|
+
{%- assign timestamp = include.activity[timestamp_field] -%}
|
69
|
+
|
70
|
+
{%- capture timestamp -%}
|
71
|
+
{% include date.html date=timestamp format=site.i18n.date_time.format %}
|
72
|
+
{%- endcapture -%}
|
73
|
+
|
74
|
+
{%- capture uri -%}
|
75
|
+
{%- include_cached activity_pub/url.html activity=include.activity -%}
|
76
|
+
{%- endcapture -%}
|
77
|
+
|
78
|
+
{% include external_link.html href=uri text=timestamp %}
|
79
|
+
|
80
|
+
<div>
|
81
|
+
{% if include.activity.shares.totalItems %}
|
82
|
+
{%- include fa.html icon="retweet" class="px-1" description=site.i18n.total_shares content=include.activity.shares.totalItems -%}
|
83
|
+
{% endif %}
|
84
|
+
|
85
|
+
{% if include.activity.likes.totalItems %}
|
86
|
+
{%- include fa.html icon="star-o" class="px-1" description=site.i18n.total_likes content=include.activity.likes.totalItems -%}
|
87
|
+
{% endif %}
|
88
|
+
</div>
|
89
|
+
|
90
|
+
{%- include fa.html icon="globe" description=site.i18n.globe -%}
|
91
|
+
</div>
|
92
|
+
|
93
|
+
{% include activity_pub/button_bar.html uri=include.activity.id profile=include.profile %}
|
94
|
+
</div>
|
95
|
+
</div>
|
@@ -0,0 +1,20 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
Modal con imagen
|
3
|
+
|
4
|
+
@param :image [Image] la imagen que queremos en el modal, contiene url y alt text
|
5
|
+
{%- endcomment -%}
|
6
|
+
|
7
|
+
{% capture body %}
|
8
|
+
<video src="{{include.video.url}}" controls></video>
|
9
|
+
{% endcapture %}
|
10
|
+
|
11
|
+
<div class="{{ include.extra }} px-1" data-controller="modal">
|
12
|
+
<div class="embed-responsive embed-responsive-16by9">
|
13
|
+
<video
|
14
|
+
class="cursor-pointer min-w-100px w-100 embed-responsive-item object-fit-cover"
|
15
|
+
src="{{include.video.url}}"
|
16
|
+
data-action="click->modal#show"
|
17
|
+
></video>
|
18
|
+
</div>
|
19
|
+
{% include activity_pub/generic_modal.html header_class="text-white" body=body body_class="d-flex justify-content-center" footer_class="d-none" content_class="background-transparent border-0" %}
|
20
|
+
</div>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
{% comment %}
|
2
|
+
|
3
|
+
@param class [String] Extra classes
|
4
|
+
@param extra [String] Extra attributes
|
5
|
+
@param options [Array<Hash>] Options
|
6
|
+
@param selected [Boolean] Default option
|
7
|
+
@param extra [String] Extra attributes
|
8
|
+
@param value [String] Value
|
9
|
+
@param title [String] Title
|
10
|
+
{% endcomment %}
|
11
|
+
|
12
|
+
<select class="custom-select {{ include.class }}" {{ include.extra }}>
|
13
|
+
{% for options in include.options %}
|
14
|
+
<option {{ options.selected }} {{ options.extra }} value="{{ options.value | default: options.title | escape }}">
|
15
|
+
{{- options.title -}}
|
16
|
+
</option>
|
17
|
+
{% endfor %}
|
18
|
+
</select>
|
@@ -0,0 +1,15 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
|
3
|
+
Link externo.
|
4
|
+
|
5
|
+
@param :href [String] La URL
|
6
|
+
@param :class [String] Las clases del link
|
7
|
+
{%- endcomment -%}
|
8
|
+
|
9
|
+
<a
|
10
|
+
class="text-decoration-none {{ include.class }}"
|
11
|
+
href="{{ include.href | uri_escape }}"
|
12
|
+
{{ include.href | start_with: "https://" | value_if: 'rel="noopener" target="_blank"' }}
|
13
|
+
{{ include.href | start_with: "http://" | value_if: 'rel="noopener" target="_blank"' }}>
|
14
|
+
{{ include.text }}
|
15
|
+
</a>
|
data/_includes/fa.html
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
|
3
|
+
Un ícono
|
4
|
+
|
5
|
+
@param :icon [String] El ícono
|
6
|
+
@param :class [String] Las clases
|
7
|
+
@param :description [String] La descripción
|
8
|
+
{%- endcomment -%}
|
9
|
+
|
10
|
+
<i title="{{ include.description | escape_once }}" aria-hidden="true" class="fa fa-{{ include.icon }} {{ include.class }}">{{ include.content }}</i>
|
11
|
+
<span class="sr-only">{{ include.description }}</span>
|
data/_includes/footer.html
CHANGED
@@ -1,32 +1,31 @@
|
|
1
|
-
{%- assign license = site.posts | find:
|
2
|
-
{%- assign code_of_conduct = site.posts | find:
|
3
|
-
{%- assign privacy_policy = site.posts | find:
|
1
|
+
{%- assign license = site.posts | find: 'layout', 'license' -%}
|
2
|
+
{%- assign code_of_conduct = site.posts | find: 'layout', 'code_of_conduct' -%}
|
3
|
+
{%- assign privacy_policy = site.posts | find: 'layout', 'privacy_policy' -%}
|
4
4
|
|
5
5
|
<footer class="p-3">
|
6
6
|
<ul class="list-unstyled">
|
7
7
|
{%- if site.activity_pub_profile -%}
|
8
|
-
|
9
|
-
|
10
|
-
@{{ site.activity_pub_profile -}}
|
11
|
-
</span>
|
8
|
+
{{- site.i18n.footer.fediverse -}}
|
9
|
+
<span> @{{ site.activity_pub_profile -}}</span>
|
12
10
|
</p>
|
13
11
|
{%- endif -%}
|
14
12
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
13
|
+
{% if license %}
|
14
|
+
<li>
|
15
|
+
<a href="{{ license.url }}" rel="license">{{ license.title }}</a>
|
16
|
+
</li>
|
17
|
+
{% endif %}
|
20
18
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
19
|
+
{% if code_of_conduct %}
|
20
|
+
<li>
|
21
|
+
<a href="{{ code_of_conduct.url }}" rel="code-of-conduct">{{ code_of_conduct.title }}</a>
|
22
|
+
</li>
|
23
|
+
{% endif %}
|
26
24
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
25
|
+
{% if privacy_policy %}
|
26
|
+
<li>
|
27
|
+
<a href="{{ privacy_policy.url }}" rel="privacy-policy">{{ privacy_policy.title }}</a>
|
28
|
+
</li>
|
29
|
+
{% endif %}
|
30
|
+
</ul>
|
32
31
|
</footer>
|
data/_includes/navbar.html
CHANGED
@@ -1,9 +1,13 @@
|
|
1
|
-
{% assign about = site.posts | find:
|
1
|
+
{% assign about = site.posts | find: 'layout', 'about' %}
|
2
2
|
|
3
3
|
<nav class="navbar navbar-expand-lg d-print-block" role="navigation" aria-label="{{ site.i18n.menu.title }}">
|
4
4
|
<a class="navbar-brand" href="?#">
|
5
5
|
{% if about.logo.path %}
|
6
|
-
<img
|
6
|
+
<img
|
7
|
+
src="{{ about.logo.path | thumbnail: nil, 30 | uri_escape }}"
|
8
|
+
height="30"
|
9
|
+
alt="{{ about.logo.description | default: about.title }}"
|
10
|
+
>
|
7
11
|
{% else %}
|
8
12
|
{{ about.title }}
|
9
13
|
{% endif %}
|
data/_includes/script.html
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
---
|
2
2
|
layout: default
|
3
3
|
---
|
4
|
-
|
5
|
-
{% assign date_format = site.i18n.date.format | default: "%b %-d, %Y" %}
|
4
|
+
{% assign date_format = site.i18n.date.format | default: '%b %-d, %Y' %}
|
6
5
|
|
7
6
|
<article class="h-entry" itemscope itemtype="http://schema.org/Article">
|
8
7
|
<header>
|
@@ -35,7 +34,8 @@ layout: default
|
|
35
34
|
|
36
35
|
<footer>
|
37
36
|
<a class="u-url" itemprop="url" href="{{ page.url }}" hidden>
|
38
|
-
{{ site.url }}
|
37
|
+
{{ site.url -}}
|
38
|
+
{{- page.url }}
|
39
39
|
</a>
|
40
40
|
|
41
41
|
{%- if page.uuid -%}
|
data/_layouts/default.html
CHANGED
@@ -1,13 +1,13 @@
|
|
1
|
-
<!
|
1
|
+
<!doctype html>
|
2
2
|
<html lang="{{ site.lang }}" dir="{{ site.dir }}">
|
3
3
|
<head>
|
4
4
|
<meta charset="UTF-8">
|
5
|
-
<base href="{% base %}"
|
5
|
+
<base href="{% base %}">
|
6
6
|
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
7
7
|
<meta content="width=device-width, initial-scale=1.0" name="viewport">
|
8
|
-
<meta name="theme-color" content="white"
|
9
|
-
<meta name="color-scheme" content="light"
|
10
|
-
<meta name="referrer" content="strict-origin-when-cross-origin"
|
8
|
+
<meta name="theme-color" content="white">
|
9
|
+
<meta name="color-scheme" content="light">
|
10
|
+
<meta name="referrer" content="strict-origin-when-cross-origin">
|
11
11
|
|
12
12
|
<link href="assets/css/styles.css?{{ site.time | date: '%s' }}" rel="stylesheet" data-turbo-track="reload">
|
13
13
|
|
@@ -21,17 +21,16 @@
|
|
21
21
|
{% feed_meta %}
|
22
22
|
|
23
23
|
{% if page.activity %}
|
24
|
-
|
24
|
+
<link href="{{ page.activity.url | absolute_url }}" rel="alternate" type="application/activity+json">
|
25
25
|
{% endif %}
|
26
26
|
|
27
27
|
{%- if site.activity_pub_profile -%}
|
28
|
-
|
28
|
+
<meta property="profile:username" content="{{ site.activity_pub_profile }}">
|
29
29
|
{%- endif -%}
|
30
30
|
|
31
31
|
{%- if site.actor -%}
|
32
|
-
<link rel="me" href="{{ site.actor.url | absolute_url }}"
|
32
|
+
<link rel="me" href="{{ site.actor.url | absolute_url }}">
|
33
33
|
{%- endif -%}
|
34
|
-
|
35
34
|
</head>
|
36
35
|
<body class="min-vh-100 d-flex flex-column">
|
37
36
|
{% include navbar.html %}
|
data/_layouts/home.html
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
---
|
2
2
|
layout: default
|
3
3
|
---
|
4
|
-
|
5
|
-
{% assign posts = site.posts | where: "layout", "post" %}
|
4
|
+
{% assign posts = site.posts | where: 'layout', 'post' %}
|
6
5
|
|
7
6
|
<section class="home">
|
8
7
|
<header>
|
@@ -14,10 +13,10 @@ layout: default
|
|
14
13
|
|
15
14
|
{%- if site.posts.size > 0 -%}
|
16
15
|
<section class="articles">
|
17
|
-
<h2>{{ site.i18n.home.articles | default:
|
16
|
+
<h2>{{ site.i18n.home.articles | default: 'Articles' }}</h2>
|
18
17
|
{%- for post in posts -%}
|
19
18
|
<article>
|
20
|
-
{%- assign date_format = site.i18n.date_format | default:
|
19
|
+
{%- assign date_format = site.i18n.date_format | default: '%b %-d, %Y' -%}
|
21
20
|
<span class="post-meta">{{ post.date | date: date_format }}</span>
|
22
21
|
<h3>
|
23
22
|
<a class="post-link" href="{{ post.url }}">
|
@@ -28,7 +27,7 @@ layout: default
|
|
28
27
|
<p class="lead">{{ post.description }}</p>
|
29
28
|
</article>
|
30
29
|
|
31
|
-
<hr
|
30
|
+
<hr>
|
32
31
|
{%- endfor -%}
|
33
32
|
</section>
|
34
33
|
{%- endif -%}
|
data/_layouts/license.html
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
---
|
2
2
|
layout: default
|
3
3
|
---
|
4
|
-
|
5
|
-
{% assign date_format = site.i18n.date.format | default: "%b %-d, %Y" %}
|
4
|
+
{% assign date_format = site.i18n.date.format | default: '%b %-d, %Y' %}
|
6
5
|
|
7
6
|
<article class="h-entry" itemscope itemtype="http://schema.org/Article">
|
8
7
|
<header>
|
@@ -35,7 +34,8 @@ layout: default
|
|
35
34
|
|
36
35
|
<footer>
|
37
36
|
<a class="u-url" itemprop="url" href="{{ page.url }}" hidden>
|
38
|
-
{{ site.url }}
|
37
|
+
{{ site.url -}}
|
38
|
+
{{- page.url }}
|
39
39
|
</a>
|
40
40
|
|
41
41
|
{%- if page.uuid -%}
|
data/_layouts/page.html
CHANGED
@@ -1,9 +1,8 @@
|
|
1
1
|
---
|
2
2
|
layout: default
|
3
3
|
---
|
4
|
-
|
5
|
-
{% assign
|
6
|
-
{% assign date_format = site.i18n.date.format | default: "%b %-d, %Y" %}
|
4
|
+
{% assign license = site.posts | find: 'layout', 'license' %}
|
5
|
+
{% assign date_format = site.i18n.date.format | default: '%b %-d, %Y' %}
|
7
6
|
|
8
7
|
<article class="h-entry" itemscope itemtype="http://schema.org/Article">
|
9
8
|
<header>
|
@@ -16,10 +15,10 @@ layout: default
|
|
16
15
|
{%- if page.image.path -%}
|
17
16
|
<picture>
|
18
17
|
{% for size in site.images.sizes %}
|
19
|
-
<source srcset="{{ page.image.path | thumbnail: size }}" media="(max-width: {{ size }}px)"
|
18
|
+
<source srcset="{{ page.image.path | thumbnail: size }}" media="(max-width: {{ size }}px)">
|
20
19
|
{% endfor %}
|
21
20
|
|
22
|
-
<img class="img-fluid" src="{{ page.image.path | thumbnail: 1140 }}" alt="{{ page.image.description }}"
|
21
|
+
<img class="img-fluid" src="{{ page.image.path | thumbnail: 1140 }}" alt="{{ page.image.description }}">
|
23
22
|
</picture>
|
24
23
|
{%- endif -%}
|
25
24
|
|
@@ -44,7 +43,8 @@ layout: default
|
|
44
43
|
|
45
44
|
<footer>
|
46
45
|
<a class="u-url" itemprop="url" href="{{ page.url }}" hidden>
|
47
|
-
{{ site.url }}
|
46
|
+
{{ site.url -}}
|
47
|
+
{{- page.url }}
|
48
48
|
</a>
|
49
49
|
|
50
50
|
{%- if page.uuid -%}
|
data/_layouts/post.html
CHANGED
@@ -1,9 +1,8 @@
|
|
1
1
|
---
|
2
2
|
layout: default
|
3
3
|
---
|
4
|
-
|
5
|
-
{% assign
|
6
|
-
{% assign date_format = site.i18n.date.format | default: "%b %-d, %Y" %}
|
4
|
+
{% assign license = site.posts | find: 'layout', 'license' %}
|
5
|
+
{% assign date_format = site.i18n.date.format | default: '%b %-d, %Y' %}
|
7
6
|
|
8
7
|
<article class="h-entry" itemscope itemtype="http://schema.org/Article">
|
9
8
|
<header>
|
@@ -16,10 +15,10 @@ layout: default
|
|
16
15
|
{%- if page.image.path -%}
|
17
16
|
<picture>
|
18
17
|
{% for size in site.images.sizes %}
|
19
|
-
<source srcset="{{ page.image.path | thumbnail: size }}" media="(max-width: {{ size }}px)"
|
18
|
+
<source srcset="{{ page.image.path | thumbnail: size }}" media="(max-width: {{ size }}px)">
|
20
19
|
{% endfor %}
|
21
20
|
|
22
|
-
<img class="img-fluid" src="{{ page.image.path | thumbnail: 1140 }}" alt="{{ page.image.description }}"
|
21
|
+
<img class="img-fluid" src="{{ page.image.path | thumbnail: 1140 }}" alt="{{ page.image.description }}">
|
23
22
|
</picture>
|
24
23
|
{%- endif -%}
|
25
24
|
|
@@ -44,7 +43,8 @@ layout: default
|
|
44
43
|
|
45
44
|
<footer>
|
46
45
|
<a class="u-url" itemprop="url" href="{{ page.url }}" hidden>
|
47
|
-
{{ site.url }}
|
46
|
+
{{ site.url -}}
|
47
|
+
{{- page.url }}
|
48
48
|
</a>
|
49
49
|
|
50
50
|
{%- if page.uuid -%}
|
@@ -1,8 +1,7 @@
|
|
1
1
|
---
|
2
2
|
layout: default
|
3
3
|
---
|
4
|
-
|
5
|
-
{% assign date_format = site.i18n.date.format | default: "%b %-d, %Y" %}
|
4
|
+
{% assign date_format = site.i18n.date.format | default: '%b %-d, %Y' %}
|
6
5
|
|
7
6
|
<article class="h-entry" itemscope itemtype="http://schema.org/Article">
|
8
7
|
<header>
|
@@ -35,7 +34,8 @@ layout: default
|
|
35
34
|
|
36
35
|
<footer>
|
37
36
|
<a class="u-url" itemprop="url" href="{{ page.url }}" hidden>
|
38
|
-
{{ site.url }}
|
37
|
+
{{ site.url -}}
|
38
|
+
{{- page.url }}
|
39
39
|
</a>
|
40
40
|
|
41
41
|
{%- if page.uuid -%}
|