sutty-jekyll-theme 0.3.6 → 0.3.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +2 -2
  3. data/README.md +9 -10
  4. data/_data/en.yml +38 -38
  5. data/_data/es.yml +38 -38
  6. data/_data/layouts/about.yml +2 -2
  7. data/_data/layouts/code_of_conduct.yml +2 -2
  8. data/_data/layouts/license.yml +2 -2
  9. data/_data/layouts/page.yml +2 -2
  10. data/_data/layouts/post.yml +2 -2
  11. data/_data/layouts/privacy_policy.yml +2 -2
  12. data/_data/layouts/theme.yml +4 -2
  13. data/_includes/activity_pub/actor.html +11 -0
  14. data/_includes/activity_pub/actor_mention.html +28 -0
  15. data/_includes/activity_pub/button.html +22 -0
  16. data/_includes/activity_pub/button_bar.html +16 -0
  17. data/_includes/activity_pub/cards.html +28 -0
  18. data/_includes/activity_pub/fediverse_interactions.html +2 -0
  19. data/_includes/activity_pub/generic_modal.html +55 -0
  20. data/_includes/activity_pub/image_modal.html +27 -0
  21. data/_includes/activity_pub/interactions.html +78 -0
  22. data/_includes/activity_pub/login_modal.html +70 -0
  23. data/_includes/activity_pub/reaction.html +45 -0
  24. data/_includes/activity_pub/reactions.html +17 -0
  25. data/_includes/activity_pub/replying_to.html +23 -0
  26. data/_includes/activity_pub/text_modal.html +16 -0
  27. data/_includes/activity_pub/toot_card.html +95 -0
  28. data/_includes/activity_pub/url.html +8 -0
  29. data/_includes/activity_pub/video_modal.html +20 -0
  30. data/_includes/bootstrap/custom_select.html +18 -0
  31. data/_includes/external_link.html +15 -0
  32. data/_includes/fa.html +11 -0
  33. data/_includes/footer.html +21 -22
  34. data/_includes/navbar.html +6 -2
  35. data/_includes/script.html +1 -1
  36. data/_layouts/code_of_conduct.html +3 -3
  37. data/_layouts/default.html +8 -9
  38. data/_layouts/home.html +4 -5
  39. data/_layouts/license.html +3 -3
  40. data/_layouts/page.html +6 -6
  41. data/_layouts/post.html +6 -6
  42. data/_layouts/privacy_policy.html +3 -3
  43. data/_sass/content.scss +27 -9
  44. data/_sass/crypto.scss +2 -2
  45. data/_sass/saira.scss +8 -8
  46. data/assets/fonts/forkawesome-webfont.woff2 +0 -0
  47. metadata +24 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0fb7d796783265b455a34c6763891408cba91cf2c4767eb554fd65242a882a64
4
- data.tar.gz: af9d5c24ce8ea627a38e6ad15e2fc143250eed671ebbdaf58dbc642978153a13
3
+ metadata.gz: ac74baf2767051d60fb9c82212882a14c1644a4ef794fcb8ea17d6be33955b6a
4
+ data.tar.gz: '036885954690f8844e22d29ee8714c82421dc0d0b7ace3bf73aba86a64adcfca'
5
5
  SHA512:
6
- metadata.gz: 1678cfe03872b3da3f183228b45f7f75e057490365e0d4df91a3d86be262649da9a78e550b103a19346be187dc2babe54383d8d6a73302efb84057f2e1949bf5
7
- data.tar.gz: 28948a5775bd55135335374a7cfaa8db76f18d564232e306c4b179e5832df26125c75001857539ab635eabcf71fcdb5e28470629351f5a1fb4befb8a4c0aa278
6
+ metadata.gz: 8079ec851e60b9dcbc5d12d28a5f48241e2cf6b5a28ae9c21c4798ad9806b7fc0517e415a17602f409513ec28045f23e185bf6665ad66ca02357245273895b1f
7
+ data.tar.gz: '0951654294402c63175deacad4479634a7df1b8a977c6c1f936dcfc897522d3b9a14e02863d5df13e437aa7d65466da9ade5713e87d85950c154d469c0cc4c0f'
data/CHANGELOG.md CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
  ## 0.1.2 - 2020-04-09
4
4
 
5
- * You can put custom CSS in _sass/custom.css
5
+ - You can put custom CSS in \_sass/custom.css
6
6
 
7
7
  ## 0.1.1 - 2020-04-07
8
8
 
9
- * Responsive images
9
+ - Responsive images
10
10
 
11
11
  ## 0.1.0 - 2020-03-06
12
12
 
data/README.md CHANGED
@@ -32,7 +32,7 @@ Add the gem and this to your `_config.yml`:
32
32
  theme: sutty-jekyll-theme
33
33
  sasl:
34
34
  load_paths:
35
- - node_modules
35
+ - node_modules
36
36
  ```
37
37
 
38
38
  Also, install [Bootstrap 4.4](https://getbootstrap.com/) using NPM or
@@ -50,11 +50,11 @@ latin characters.
50
50
 
51
51
  ### Customization
52
52
 
53
- * **Change logo:** Add your own logo in `_includes/logo.svg`, you can
53
+ - **Change logo:** Add your own logo in `_includes/logo.svg`, you can
54
54
  add some metadata, check the [source
55
55
  file](https://0xacab.org/sutty/jekyll/sutty-jekyll-theme/-/blob/master/_includes/logo.svg).
56
56
 
57
- * **I18n / Edit menu:** This can be done by installing
57
+ - **I18n / Edit menu:** This can be done by installing
58
58
  [jekyll-locales](https://rubygems.org/gems/jekyll-locales/) and
59
59
  modifying the `_data/LANGUAGE.yml` files:
60
60
 
@@ -62,7 +62,7 @@ latin characters.
62
62
  ---
63
63
  locale: English
64
64
  # Leave empty for theme default
65
- date_format: '%m/%d/%Y'
65
+ date_format: "%m/%d/%Y"
66
66
  # This modifies the logo metadata if any (see _includes/logo.svg)
67
67
  site:
68
68
  title: Your site name
@@ -71,11 +71,11 @@ latin characters.
71
71
  home:
72
72
  articles: Articles
73
73
  menu:
74
- title: 'Menu'
75
- active: '(current)'
74
+ title: "Menu"
75
+ active: "(current)"
76
76
  items:
77
- - url: 'https://sutty.nl/'
78
- text: 'Sutty'
77
+ - url: "https://sutty.nl/"
78
+ text: "Sutty"
79
79
  ```
80
80
 
81
81
  `items` is an Array of Hashes with `url` and `text` keys.
@@ -105,7 +105,7 @@ your site will regenerate and you should see the changes in the browser
105
105
  after a refresh, just like normal.
106
106
 
107
107
  When your theme is released, only the files in `_layouts`, `_includes`,
108
- `_sass` and `assets` will be bundled. To add a custom directory or file
108
+ `_sass` and `assets` will be bundled. To add a custom directory or file
109
109
  to your theme-gem, please edit the regexp in
110
110
  `sutty-jekyll-theme.gemspec` accordingly.
111
111
 
@@ -113,4 +113,3 @@ to your theme-gem, please edit the regexp in
113
113
 
114
114
  The theme is available as anti-fascist software under the terms of the
115
115
  [Anti Fascist MIT License](LICENSE.txt).
116
-
data/_data/en.yml CHANGED
@@ -5,47 +5,47 @@ date:
5
5
  published_at: "Published at"
6
6
  last_modified_at: "Last modification"
7
7
  abbr_day_names:
8
- - "Mon"
9
- - "Tue"
10
- - "Wed"
11
- - "Thu"
12
- - "Fri"
13
- - "Sat"
14
- - "Sun"
8
+ - "Mon"
9
+ - "Tue"
10
+ - "Wed"
11
+ - "Thu"
12
+ - "Fri"
13
+ - "Sat"
14
+ - "Sun"
15
15
  day_names:
16
- - "Monday"
17
- - "Tuesday"
18
- - "Wednesday"
19
- - "Thursday"
20
- - "Friday"
21
- - "Saturday"
22
- - "Sunday"
16
+ - "Monday"
17
+ - "Tuesday"
18
+ - "Wednesday"
19
+ - "Thursday"
20
+ - "Friday"
21
+ - "Saturday"
22
+ - "Sunday"
23
23
  abbr_month_names:
24
- - "Jan"
25
- - "Feb"
26
- - "Mar"
27
- - "Apr"
28
- - "May"
29
- - "Jun"
30
- - "Jul"
31
- - "Aug"
32
- - "Sep"
33
- - "Oct"
34
- - "Nov"
35
- - "Dec"
24
+ - "Jan"
25
+ - "Feb"
26
+ - "Mar"
27
+ - "Apr"
28
+ - "May"
29
+ - "Jun"
30
+ - "Jul"
31
+ - "Aug"
32
+ - "Sep"
33
+ - "Oct"
34
+ - "Nov"
35
+ - "Dec"
36
36
  month_names:
37
- - "January"
38
- - "February"
39
- - "March"
40
- - "April"
41
- - "May"
42
- - "June"
43
- - "July"
44
- - "August"
45
- - "September"
46
- - "October"
47
- - "November"
48
- - "December"
37
+ - "January"
38
+ - "February"
39
+ - "March"
40
+ - "April"
41
+ - "May"
42
+ - "June"
43
+ - "July"
44
+ - "August"
45
+ - "September"
46
+ - "October"
47
+ - "November"
48
+ - "December"
49
49
  time:
50
50
  am: "am"
51
51
  pm: "pm"
data/_data/es.yml CHANGED
@@ -5,47 +5,47 @@ date:
5
5
  published_at: "Publicado en"
6
6
  last_modified_at: "Última modificación"
7
7
  abbr_day_names:
8
- - "Lun"
9
- - "Mar"
10
- - "Mié"
11
- - "Jue"
12
- - "Vie"
13
- - "Sáb"
14
- - "Dom"
8
+ - "Lun"
9
+ - "Mar"
10
+ - "Mié"
11
+ - "Jue"
12
+ - "Vie"
13
+ - "Sáb"
14
+ - "Dom"
15
15
  day_names:
16
- - "Lunes"
17
- - "Martes"
18
- - "Miércoles"
19
- - "Jueves"
20
- - "Viernes"
21
- - "Sábado"
22
- - "Domingo"
16
+ - "Lunes"
17
+ - "Martes"
18
+ - "Miércoles"
19
+ - "Jueves"
20
+ - "Viernes"
21
+ - "Sábado"
22
+ - "Domingo"
23
23
  abbr_month_names:
24
- - "Ene"
25
- - "Feb"
26
- - "Mar"
27
- - "Abr"
28
- - "May"
29
- - "Jun"
30
- - "Jul"
31
- - "Ago"
32
- - "Sep"
33
- - "Oct"
34
- - "Nov"
35
- - "Dic"
24
+ - "Ene"
25
+ - "Feb"
26
+ - "Mar"
27
+ - "Abr"
28
+ - "May"
29
+ - "Jun"
30
+ - "Jul"
31
+ - "Ago"
32
+ - "Sep"
33
+ - "Oct"
34
+ - "Nov"
35
+ - "Dic"
36
36
  month_names:
37
- - "Enero"
38
- - "Febrero"
39
- - "Marzo"
40
- - "Abril"
41
- - "Mayo"
42
- - "Junio"
43
- - "Julio"
44
- - "Agosto"
45
- - "Septiembre"
46
- - "Octubre"
47
- - "Noviembre"
48
- - "Diciembre"
37
+ - "Enero"
38
+ - "Febrero"
39
+ - "Marzo"
40
+ - "Abril"
41
+ - "Mayo"
42
+ - "Junio"
43
+ - "Julio"
44
+ - "Agosto"
45
+ - "Septiembre"
46
+ - "Octubre"
47
+ - "Noviembre"
48
+ - "Diciembre"
49
49
  time:
50
50
  am: "am"
51
51
  pm: "pm"
@@ -143,8 +143,8 @@ draft:
143
143
  es: "Borrador"
144
144
  en: "Draft"
145
145
  help:
146
- es: "Al activar \"Borrador\" este contenido se mantendrá disponible en el panel, pero no se publica en el sitio como los demás contenidos al tocar \"Publicar todos los cambios\""
147
- en: "By activating \"Draft\", this content will remain available on the dashboard, but will not be published on the site when you tap \"Publish all changes\" (other content which does not have this option selected will)."
146
+ es: 'Al activar "Borrador" este contenido se mantendrá disponible en el panel, pero no se publica en el sitio como los demás contenidos al tocar "Publicar todos los cambios"'
147
+ en: 'By activating "Draft", this content will remain available on the dashboard, but will not be published on the site when you tap "Publish all changes" (other content which does not have this option selected will).'
148
148
  order:
149
149
  type: "order"
150
150
  label:
@@ -48,8 +48,8 @@ draft:
48
48
  es: "Borrador"
49
49
  en: "Draft"
50
50
  help:
51
- es: "Al activar \"Borrador\" este contenido se mantendrá disponible en el panel, pero no se publica en el sitio como los demás contenidos al tocar \"Publicar todos los cambios\""
52
- en: "By activating \"Draft\", this content will remain available on the dashboard, but will not be published on the site when you tap \"Publish all changes\" (other content which does not have this option selected will)."
51
+ es: 'Al activar "Borrador" este contenido se mantendrá disponible en el panel, pero no se publica en el sitio como los demás contenidos al tocar "Publicar todos los cambios"'
52
+ en: 'By activating "Draft", this content will remain available on the dashboard, but will not be published on the site when you tap "Publish all changes" (other content which does not have this option selected will).'
53
53
  order:
54
54
  type: "order"
55
55
  label:
@@ -48,8 +48,8 @@ draft:
48
48
  es: "Borrador"
49
49
  en: "Draft"
50
50
  help:
51
- es: "Al activar \"Borrador\" este contenido se mantendrá disponible en el panel, pero no se publica en el sitio como los demás contenidos al tocar \"Publicar todos los cambios\""
52
- en: "By activating \"Draft\", this content will remain available on the dashboard, but will not be published on the site when you tap \"Publish all changes\" (other content which does not have this option selected will)."
51
+ es: 'Al activar "Borrador" este contenido se mantendrá disponible en el panel, pero no se publica en el sitio como los demás contenidos al tocar "Publicar todos los cambios"'
52
+ en: 'By activating "Draft", this content will remain available on the dashboard, but will not be published on the site when you tap "Publish all changes" (other content which does not have this option selected will).'
53
53
  order:
54
54
  type: "order"
55
55
  label:
@@ -88,8 +88,8 @@ draft:
88
88
  es: "Borrador"
89
89
  en: "Draft"
90
90
  help:
91
- es: "Al activar \"Borrador\" este contenido se mantendrá disponible en el panel, pero no se publica en el sitio como los demás contenidos al tocar \"Publicar todos los cambios\""
92
- en: "By activating \"Draft\", this content will remain available on the dashboard, but will not be published on the site when you tap \"Publish all changes\" (other content which does not have this option selected will)."
91
+ es: 'Al activar "Borrador" este contenido se mantendrá disponible en el panel, pero no se publica en el sitio como los demás contenidos al tocar "Publicar todos los cambios"'
92
+ en: 'By activating "Draft", this content will remain available on the dashboard, but will not be published on the site when you tap "Publish all changes" (other content which does not have this option selected will).'
93
93
  order:
94
94
  type: "order"
95
95
  label:
@@ -104,8 +104,8 @@ draft:
104
104
  es: "Borrador"
105
105
  en: "Draft"
106
106
  help:
107
- es: "Al activar \"Borrador\" este contenido se mantendrá disponible en el panel, pero no se publica en el sitio como los demás contenidos al tocar \"Publicar todos los cambios\""
108
- en: "By activating \"Draft\", this content will remain available on the dashboard, but will not be published on the site when you tap \"Publish all changes\" (other content which does not have this option selected will)."
107
+ es: 'Al activar "Borrador" este contenido se mantendrá disponible en el panel, pero no se publica en el sitio como los demás contenidos al tocar "Publicar todos los cambios"'
108
+ en: 'By activating "Draft", this content will remain available on the dashboard, but will not be published on the site when you tap "Publish all changes" (other content which does not have this option selected will).'
109
109
  order:
110
110
  type: "order"
111
111
  label:
@@ -48,8 +48,8 @@ draft:
48
48
  es: "Borrador"
49
49
  en: "Draft"
50
50
  help:
51
- es: "Al activar \"Borrador\" este contenido se mantendrá disponible en el panel, pero no se publica en el sitio como los demás contenidos al tocar \"Publicar todos los cambios\""
52
- en: "By activating \"Draft\", this content will remain available on the dashboard, but will not be published on the site when you tap \"Publish all changes\" (other content which does not have this option selected will)."
51
+ es: 'Al activar "Borrador" este contenido se mantendrá disponible en el panel, pero no se publica en el sitio como los demás contenidos al tocar "Publicar todos los cambios"'
52
+ en: 'By activating "Draft", this content will remain available on the dashboard, but will not be published on the site when you tap "Publish all changes" (other content which does not have this option selected will).'
53
53
  order:
54
54
  type: "order"
55
55
  label:
@@ -27,6 +27,7 @@ font_family_sans_serif:
27
27
  es:
28
28
  "": "Default"
29
29
  Roboto: "Roboto"
30
+ Roboto Mono: "Roboto Mono"
30
31
  Saira: "Saira"
31
32
  font_family_monospace:
32
33
  type: "predefined_value"
@@ -63,6 +64,7 @@ headings_font_family:
63
64
  en:
64
65
  "": "Default"
65
66
  Roboto: "Roboto"
67
+ Roboto Mono: "Roboto Mono"
66
68
  Saira: "Saira"
67
69
  es:
68
70
  "": "Default"
@@ -283,8 +285,8 @@ draft:
283
285
  es: "Borrador"
284
286
  en: "Draft"
285
287
  help:
286
- es: "Al activar \"Borrador\" este contenido se mantendrá disponible en el panel, pero no se publica en el sitio como los demás contenidos al tocar \"Publicar todos los cambios\""
287
- en: "By activating \"Draft\", this content will remain available on the dashboard, but will not be published on the site when you tap \"Publish all changes\" (other content which does not have this option selected will)."
288
+ es: 'Al activar "Borrador" este contenido se mantendrá disponible en el panel, pero no se publica en el sitio como los demás contenidos al tocar "Publicar todos los cambios"'
289
+ en: 'By activating "Draft", this content will remain available on the dashboard, but will not be published on the site when you tap "Publish all changes" (other content which does not have this option selected will).'
288
290
  order:
289
291
  type: "order"
290
292
  label:
@@ -0,0 +1,11 @@
1
+ {% comment %}
2
+ Render actor's name if it's available, otherwise just return the link.
3
+
4
+ @param actor [ActivityDrop] Actor
5
+ {% endcomment %}
6
+
7
+ {% if include.actor.available %}
8
+ <span>{{ include.actor.name | strip_html }}</span>
9
+ {% else %}
10
+ <span>{{ include.actor }}</span>
11
+ {% endif %}
@@ -0,0 +1,28 @@
1
+ {% comment %}
2
+ @param actor [ActivityDrop] Actor
3
+ @param without_link [Boolean] Don't link
4
+ {% endcomment %}
5
+
6
+ {% if include.actor.available %}
7
+ {% assign id = include.actor.id | strip_html %}
8
+ {% assign instance_hostname = id | split: '/' %}
9
+ {% assign instance_hostname = instance_hostname[2] %}
10
+
11
+ {% capture mention %}
12
+ @<span>{{- include.actor.preferredUsername | strip_html -}}@{{- instance_hostname -}}</span>
13
+ {% endcapture %}
14
+
15
+ {% capture mention %}
16
+ <span class="h-card" translate="no">
17
+ {% if include.without_link %}
18
+ <span class="mention">{{- mention -}}</span>
19
+ {% else %}
20
+ {% include_cached external_link.html class="u-url mention" href=id text=mention %}
21
+ {% endif %}
22
+ </span>
23
+ {% endcapture %}
24
+
25
+ {{ mention | normalize_whitespace }}
26
+ {% else %}
27
+ {{ include.actor }}
28
+ {% endif %}
@@ -0,0 +1,22 @@
1
+ {%- comment -%}
2
+ Un botón con link, por ejemplo para Support Us. Si el link es externo,
3
+ agregar el parámetro de seguridad noopener.
4
+
5
+ @param :fa [String]
6
+ @param :header [Capture] el contenido del encabezado
7
+ @param :body [Capture] el contenido del cuerpo principal
8
+ @param :footer [Capture] el contenido del footer
9
+ @param :header_class [String] las clases que lleva el encabezado
10
+ @param :body_class [String] las clases que lleva el cuerpo principal
11
+ @param :footer_class [String] las clases que lleva el footer
12
+ @param :content_class [String] las clases que lleva todo el bloque de contenido
13
+ @param :button_class [String] las clases que lleva cada botón
14
+ {%- endcomment -%}
15
+
16
+ <div class="d-inline {{include.button_class}}" data-controller="modal">
17
+ <button class="btn btn-sm" data-action="click->modal#show">
18
+ {%- include_cached fa.html icon=include.fa class="lead" description=include.description -%}
19
+ </button>
20
+
21
+ {% include activity_pub/generic_modal.html header=include.header body=include.body footer=include.footer header_class=include.header_class body_class=include.body_class footer_class=include.footer_class content_class=include.content_class %}
22
+ </div>
@@ -0,0 +1,16 @@
1
+ {%- comment -%}
2
+ Botonera para botones de íconos.
3
+
4
+ @param :uri [String] La URL sobre la que se interactua
5
+ @param :profile [ActivityDrop] Actor
6
+ {%- endcomment -%}
7
+
8
+ {% assign uri = include.uri | default: include.url | default: 'YOU FORGOT THIS PARAM' | strip_html %}
9
+ {% assign actions = site.data.actions.actions %}
10
+
11
+ <div class="d-flex">
12
+ {% for action in actions %}
13
+ {% assign fa = action.icon %}
14
+ {% include activity_pub/login_modal.html action=action fa=fa uri=uri profile=include.profile description=action.title %}
15
+ {% endfor %}
16
+ </div>
@@ -0,0 +1,28 @@
1
+ {%- comment -%}
2
+ Nested cards
3
+
4
+ @param :profile [ActivityDrop] Actor
5
+ @param :activity [ActivityDrop] Note
6
+ @param :replies [ActivityDrop] Collection
7
+ {%- endcomment -%}
8
+
9
+ {%
10
+ include activity_pub/toot_card.html
11
+ profile=include.profile
12
+ activity=include.activity
13
+ component_class="my-3"
14
+ %}
15
+
16
+ {% if include.replies.available %}
17
+ {% assign replies = include.replies.all_items | sort: 'published' %}
18
+ {% for reply in replies %}
19
+ <blockquote class="border-left border-gray-light border-width-3 pl-3">
20
+ {%
21
+ include activity_pub/cards.html
22
+ profile=reply.attributedTo
23
+ activity=reply
24
+ replies=reply.replies
25
+ %}
26
+ </blockquote>
27
+ {% endfor %}
28
+ {% endif %}
@@ -0,0 +1,2 @@
1
+ {% assign extra = 'data-action="tabs#toggle" data-tabs-target="value"' %}
2
+ {% include_cached bootstrap/custom_select.html extra=extra options=site.i18n.fediverse_interactions %}
@@ -0,0 +1,55 @@
1
+ {%- comment -%}
2
+ Modal preparado para recibir contenido + header y footer
3
+
4
+ @param :header [Capture] contenido del header
5
+ @param :body [Capture] contenido del modal
6
+ @param :footer [Capture] contenido del footer
7
+ @param :header_class [String] clases del header
8
+ @param :body_class [String] clases del cuerpo principal
9
+ @param :footer_class [String] clases del header
10
+ @param :content_class [String] clases todo el bloque
11
+ {%- endcomment -%}
12
+
13
+ {% assign header = include.header %}
14
+ {% assign header_class = include.header_class %}
15
+ {% assign body = include.body %}
16
+ {% assign body_class = include.body_class %}
17
+ {% assign footer = include.footer %}
18
+ {% assign footer_class = include.footer_class %}
19
+ {% assign content_class = include.content_class %}
20
+
21
+ <div
22
+ class="modal fade mw-100vw"
23
+ tabindex="-1"
24
+ aria-hidden="true"
25
+ data-modal-target="modal"
26
+ data-action="keydown->modal#hideWithEscape"
27
+ >
28
+ <div class="modal-backdrop fade zindex-backdrop" data-modal-target="backdrop" data-action="click->modal#hide"></div>
29
+ <div class="modal-dialog modal-dialog-scrollable modal-dialog-centered modal-lg zindex-modal" role="document">
30
+ <div class="modal-content {{content_class}}">
31
+ {% if header %}
32
+ <div class="modal-header {{header_class}}">
33
+ {{ header }}
34
+ </div>
35
+ {% else %}
36
+ <div class="modal-header justify-content-end border-bottom-0 p-0 {{header_class}}">
37
+ <span class="px-3 py-2 m-0 h1 font-weight-bold" type="button" data-action="click->modal#hide">&times</span>
38
+ <span class="sr-only">{{ site.i18n.close }}</span>
39
+ </div>
40
+ {% endif %}
41
+
42
+ <div class="modal-body {{body_class}}">
43
+ {{ body }}
44
+ </div>
45
+
46
+ <div class="modal-footer flex-nowrap {{footer_class}}">
47
+ {% if footer %}
48
+ {{ footer }}
49
+ {% else %}
50
+ <button class="btn btn-secondary m-0" type="button" data-action="modal#hide">{{ site.i18n.close }}</button>
51
+ {% endif %}
52
+ </div>
53
+ </div>
54
+ </div>
55
+ </div>
@@ -0,0 +1,27 @@
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
+ {% assign alt = include.image.name | strip_html | escape %}
8
+ {% assign src = include.image.url | strip_html | uri_escape %}
9
+ {% assign extra = 'data-action="click->modal#show"' %}
10
+
11
+ {% capture body %}
12
+ <img class="background-white mw-100" title="{{ alt }}" alt="{{ alt }}" src="{{ src }}">
13
+ {% endcapture %}
14
+
15
+ <div class="{{ include.extra }} px-1" data-controller="modal">
16
+ {%
17
+ include embed_responsive.html
18
+ x=16
19
+ y=9
20
+ src=src
21
+ alt=alt
22
+ extra=extra
23
+ width=300
24
+ img_class="cursor-pointer min-w-100px w-100 object-fit-cover"
25
+ %}
26
+ {% 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" %}
27
+ </div>
@@ -0,0 +1,78 @@
1
+ {% comment %}
2
+ @param activity [ActivityDrop]
3
+ {% endcomment %}
4
+
5
+ {% assign items = site.i18n.fediverse_interactions %}
6
+ {% assign reactions = '' | split: ',' %}
7
+ {% assign activities = reactions %}
8
+
9
+ {% if page.activity.replies.available %}
10
+ {% assign activities = page.activity.replies.all_items | sort: 'published' %}
11
+ {% endif %}
12
+
13
+ {% if include.activity.likes.available %}
14
+ {% assign reactions = reactions | concat: include.activity.likes.all_items %}
15
+ {% endif %}
16
+
17
+ {% if include.activity.shares.available %}
18
+ {% assign reactions = reactions | concat: include.activity.shares.all_items %}
19
+ {% endif %}
20
+
21
+ {% assign reactions = reactions | sort: 'published' %}
22
+
23
+ {% assign all_interactions = activities | concat: reactions | sort: 'published' %}
24
+
25
+ <div class="w-100" data-controller="tabs" data-tabs-hide-class="hide" data-tabs-show-class="show">
26
+ {% include_cached activity_pub/button_bar.html uri=include.activity.id profile=include.profile %}
27
+
28
+ <hr>
29
+
30
+ <h3 class="text-uppercase">{{ site.i18n.ver_interacciones }}</h3>
31
+
32
+ <div class="d-flex flex-row align-items-center mt-2 mb-5">
33
+ {% include_cached activity_pub/fediverse_interactions.html %}
34
+
35
+ {% assign text = site.i18n.help | markdownify | replace: '<a ', "<a target='_blank' rel='noopener' " %}
36
+ {% include_cached activity_pub/text_modal.html text=text fa="question-circle-o" %}
37
+ </div>
38
+
39
+ <div class="w-100 d-none fade hide" data-tabs-target="tab" id="conversation">
40
+ {% unless activities == empty %}
41
+ {% for activity in activities %}
42
+ {% include_cached activity_pub/cards.html activity=activity profile=activity.attributedTo replies=activity.replies %}
43
+ {% endfor %}
44
+ {% else %}
45
+ <p class="h1">
46
+ {{ site.i18n.no_interactions_yet.conversation }}
47
+ <p>
48
+ {% endunless %}
49
+ </div>
50
+
51
+ <div class="w-100 d-none fade hide" data-tabs-target="tab" id="reactions">
52
+ {% unless reactions == empty %}
53
+ {% include_cached activity_pub/reactions.html reactions=reactions %}
54
+ {% else %}
55
+ <p class="h1">
56
+ {{ site.i18n.no_interactions_yet.reactions }}
57
+ <p>
58
+ {% endunless %}
59
+ </div>
60
+
61
+ <div class="w-100 fade show" data-tabs-target="tab" id="both">
62
+ {% unless all_interactions == empty %}
63
+ {% for interaction in all_interactions %}
64
+ {% assign minus = forloop.index0 | minus: 1 %}
65
+ {% assign previous = all_interactions[minus] %}
66
+ {% if interaction.type == 'Announce' or interaction.type == 'Like' %}
67
+ {% include_cached activity_pub/reaction.html activity=interaction previous=previous %}
68
+ {% else %}
69
+ {% include_cached activity_pub/cards.html activity=interaction profile=interaction.attributedTo replies=interaction.replies %}
70
+ {% endif %}
71
+ {% endfor %}
72
+ {% else %}
73
+ <p class="h1">
74
+ {{ site.i18n.no_interactions_yet.both }}
75
+ <p>
76
+ {% endunless %}
77
+ </div>
78
+ </div>