imagen-jekyll-theme 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE.txt +168 -0
- data/README.md +176 -0
- data/_config.yml +47 -0
- data/_data/components.yml +18 -0
- data/_data/en.yml +109 -0
- data/_data/es.yml +162 -0
- data/_data/fixtures/grilla.yml +37 -0
- data/_data/forms/subir_imagen.yml +43 -0
- data/_data/full_width_components.yml +4 -0
- data/_data/layouts/about.yml +155 -0
- data/_data/layouts/code_of_conduct.yml +60 -0
- data/_data/layouts/imagen.yml +67 -0
- data/_data/layouts/license.yml +60 -0
- data/_data/layouts/menu.yml +72 -0
- data/_data/layouts/post.yml +100 -0
- data/_data/layouts/privacy_policy.yml +60 -0
- data/_data/layouts/theme.yml +293 -0
- data/_data/manifest.json +14535 -0
- data/_data/schema.yml +9 -0
- data/_data/sutty.yml +6 -0
- data/_data/theme.yml +173 -0
- data/_includes/boolean.html +38 -0
- data/_includes/buttons/button.html +9 -0
- data/_includes/buttons/copy.html +28 -0
- data/_includes/buttons/generic.html +15 -0
- data/_includes/buttons/link.html +14 -0
- data/_includes/contact.html +17 -0
- data/_includes/content.html +9 -0
- data/_includes/descriptor.html +18 -0
- data/_includes/device_detector.html +30 -0
- data/_includes/email.html +9 -0
- data/_includes/embed_responsive.html +16 -0
- data/_includes/file.html +43 -0
- data/_includes/floating_alert.html +6 -0
- data/_includes/footer.html +5 -0
- data/_includes/form/boolean.html +1 -0
- data/_includes/form/content.html +1 -0
- data/_includes/form/email.html +1 -0
- data/_includes/form/file.html +1 -0
- data/_includes/form/hidden.html +1 -0
- data/_includes/form/image.html +1 -0
- data/_includes/form/input.html +1 -0
- data/_includes/form/markdown_content.html +1 -0
- data/_includes/form/number.html +1 -0
- data/_includes/form/predefined_array.html +1 -0
- data/_includes/form/section.html +1 -0
- data/_includes/form/separator.html +1 -0
- data/_includes/form/string.html +1 -0
- data/_includes/form/submit.html +1 -0
- data/_includes/form/tel.html +1 -0
- data/_includes/form/text.html +1 -0
- data/_includes/form/url.html +1 -0
- data/_includes/grilla.html +21 -0
- data/_includes/headings/generic.html +14 -0
- data/_includes/headings/h1.html +9 -0
- data/_includes/headings/h2.html +9 -0
- data/_includes/headings/h3.html +9 -0
- data/_includes/headings/with_link.html +15 -0
- data/_includes/hidden.html +5 -0
- data/_includes/image.html +57 -0
- data/_includes/imagen.html +13 -0
- data/_includes/imagen_enviada.html +6 -0
- data/_includes/imagen_enviada_error.html +9 -0
- data/_includes/imagen_grilla.html +31 -0
- data/_includes/input.html +61 -0
- data/_includes/item.html +38 -0
- data/_includes/logo.html +12 -0
- data/_includes/markdown_content.html +9 -0
- data/_includes/menu.html +69 -0
- data/_includes/notification.html +5 -0
- data/_includes/number.html +9 -0
- data/_includes/pack.html +10 -0
- data/_includes/password.html +10 -0
- data/_includes/picture.html +25 -0
- data/_includes/predefined_array.html +47 -0
- data/_includes/preload_font.html +1 -0
- data/_includes/question_mark_button.html +6 -0
- data/_includes/script.html +5 -0
- data/_includes/search.html +25 -0
- data/_includes/section.html +1 -0
- data/_includes/send_message.html +6 -0
- data/_includes/separator.html +1 -0
- data/_includes/share.html +22 -0
- data/_includes/share_box.html +31 -0
- data/_includes/stretched_link.html +15 -0
- data/_includes/string.html +12 -0
- data/_includes/subir_imagen.html +29 -0
- data/_includes/submit.html +18 -0
- data/_includes/svg/arrow-left.svg +29 -0
- data/_includes/svg/check.svg +1 -0
- data/_includes/svg/copy-icon.svg +1 -0
- data/_includes/svg/done-icon.svg +1 -0
- data/_includes/svg/location.svg +13 -0
- data/_includes/svg/menu.svg +8 -0
- data/_includes/svg/photo.svg +7 -0
- data/_includes/svg/signo-pregunta.svg +16 -0
- data/_includes/svg/x.svg +3 -0
- data/_includes/tel.html +9 -0
- data/_includes/text.html +40 -0
- data/_includes/theme/blue_button.html +1 -0
- data/_includes/theme/button_with_copy.html +1 -0
- data/_includes/theme/button_with_link.html +5 -0
- data/_includes/theme/buttons.html +33 -0
- data/_includes/theme/colors.html +14 -0
- data/_includes/theme/content.html +41 -0
- data/_includes/theme/descriptor.html +1 -0
- data/_includes/theme/embed_responsive.html +10 -0
- data/_includes/theme/font_sizes.html +18 -0
- data/_includes/theme/footer.html +1 -0
- data/_includes/theme/grilla.html +3 -0
- data/_includes/theme/imagen.html +8 -0
- data/_includes/theme/imagen_enviada.html +5 -0
- data/_includes/theme/imagen_enviada_error.html +7 -0
- data/_includes/theme/imagen_grilla.html +8 -0
- data/_includes/theme/letter_spacing.html +3 -0
- data/_includes/theme/menu.html +1 -0
- data/_includes/theme/picture.html +5 -0
- data/_includes/theme/question.html +2 -0
- data/_includes/theme/subir_imagen.html +1 -0
- data/_includes/toggler/toggler.html +21 -0
- data/_includes/toggler/toggler_label.html +21 -0
- data/_includes/toggler/toggler_related.html +23 -0
- data/_includes/toggler.html +19 -0
- data/_includes/toggler_label.html +22 -0
- data/_includes/toggler_related.html +24 -0
- data/_includes/url.html +9 -0
- data/_layouts/ayuda.html +40 -0
- data/_layouts/code_of_conduct.html +45 -0
- data/_layouts/default.html +93 -0
- data/_layouts/home.html +49 -0
- data/_layouts/imagen.html +45 -0
- data/_layouts/imagen_enviada.html +17 -0
- data/_layouts/imagenes.html +21 -0
- data/_layouts/institucional.html +20 -0
- data/_layouts/license.html +45 -0
- data/_layouts/login.html +26 -0
- data/_layouts/page.html +5 -0
- data/_layouts/post.html +71 -0
- data/_layouts/privacy_policy.html +45 -0
- data/_layouts/subir_imagen.html +19 -0
- data/_layouts/theme.html +60 -0
- data/_sass/accessibility.scss +46 -0
- data/_sass/content.scss +28 -0
- data/_sass/editor.scss +17 -0
- data/_sass/embed.scss +13 -0
- data/_sass/floating_alert.scss +48 -0
- data/_sass/fonts.scss +36 -0
- data/_sass/menu.scss +36 -0
- data/_sass/share_box.scss +26 -0
- data/_sass/snap.scss +60 -0
- data/_sass/toggler.scss +20 -0
- data/_sass/utilities.scss +531 -0
- data/assets/css/styles.scss +39 -0
- data/assets/data/site.json +10 -0
- data/assets/fonts/Helvetica.woff2 +0 -0
- data/assets/fonts/forkawesome-webfont.woff2 +0 -0
- data/assets/fonts/roboto/v27/KFOjCnqEu92Fr1Mu51TzBhc9-subset.woff2 +0 -0
- data/assets/fonts/roboto/v27/KFOkCnqEu92Fr1MmgWxP-subset.woff2 +0 -0
- data/assets/fonts/roboto/v27/KFOkCnqEu92Fr1Mu52xP-subset.woff2 +0 -0
- data/assets/fonts/roboto/v27/KFOlCnqEu92Fr1MmWUlvAw-subset.woff2 +0 -0
- data/assets/fonts/roboto/v27/KFOmCnqEu92Fr1Me5Q-subset.woff2 +0 -0
- data/assets/js/env.js +8 -0
- data/assets/js/pack.5JQIOXYX.js +48 -0
- data/assets/js/pack.5JQIOXYX.js.map +7 -0
- metadata +544 -0
@@ -0,0 +1,57 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
|
3
|
+
Form: type image
|
4
|
+
|
5
|
+
@param :field [Integer] El campo del formulario
|
6
|
+
@param :image_class [String] Las clases del componente
|
7
|
+
{%- endcomment -%}
|
8
|
+
|
9
|
+
{%- assign name = include.field[0] -%}
|
10
|
+
{%- assign id = include.field[1].id | default: name -%}
|
11
|
+
{%- assign label = include.field[1].label[site.locale] -%}
|
12
|
+
{%- assign help = include.field[1].help[site.locale] -%}
|
13
|
+
{%- assign placeholder = include.field[1].placeholder[site.locale] -%}
|
14
|
+
|
15
|
+
<div data-controller="drop" class="text-center">
|
16
|
+
<div
|
17
|
+
data-action="drop->drop#loadFile dragover->drop#preventDefaultDrag"
|
18
|
+
class="custom-file rounded-4 background-input-form align-items-center px-22 px-md-33 h-100 w-140px">
|
19
|
+
<div
|
20
|
+
class="w-100 justify-content-center position-relative">
|
21
|
+
<input
|
22
|
+
data-drop-target="input"
|
23
|
+
data-action="drop#changePreview"
|
24
|
+
{% if help %}
|
25
|
+
aria-describedby="help-{{ id }}"
|
26
|
+
{% endif %}
|
27
|
+
{% if include.field[1].required %}
|
28
|
+
required
|
29
|
+
{% endif %}
|
30
|
+
type="file"
|
31
|
+
name="{{ name }}[path]"
|
32
|
+
id="{{ id }}"
|
33
|
+
accept="image/png,image/jpeg,image/webp"
|
34
|
+
class="custom-file-input position-absolute top-0 left-0 cursor-pointer" />
|
35
|
+
|
36
|
+
<label for="{{ id }}" class="d-block stroke-blue mx-auto align-items-center cursor-pointer pt-12">
|
37
|
+
<div class="p-3 d-none" data-drop-target="container">
|
38
|
+
<div class="embed-responsive embed-responsive-1by1">
|
39
|
+
<img class="embed-responsive-item" src="" data-drop-target="preview" />
|
40
|
+
</div>
|
41
|
+
</div>
|
42
|
+
|
43
|
+
{%- include_cached svg/photo.svg -%}
|
44
|
+
|
45
|
+
<div class="text-center px-38 pb-12 pt-2 blue f-13">
|
46
|
+
<p>{{ label }}</p>
|
47
|
+
</div>
|
48
|
+
</label>
|
49
|
+
|
50
|
+
{%- if help -%}
|
51
|
+
<small id="help-{{ id }}" class="form-text f-13 background-light rounded-2 p-19 my-3 dark">
|
52
|
+
{{ help }}
|
53
|
+
</small>
|
54
|
+
{%- endif -%}
|
55
|
+
</div>
|
56
|
+
</div>
|
57
|
+
</div>
|
@@ -0,0 +1,13 @@
|
|
1
|
+
<div id="imagen-{{ include.imagen.uuid }}" class="position-relative">
|
2
|
+
<div class="embed-responsive embed-responsive-1by1">
|
3
|
+
<picture class="embed-responsive-item">
|
4
|
+
<img
|
5
|
+
class="w-100 h-100 fit-cover"
|
6
|
+
src="{{ include.imagen.image.path | thumbnail: 512, 512 | uri_escape }}"
|
7
|
+
description="{{ include.imagen.image.description | default: include.imagen.title | escape_once }}"
|
8
|
+
/>
|
9
|
+
</picture>
|
10
|
+
</div>
|
11
|
+
|
12
|
+
<a class="stretched-link" href="{{ include.imagen.url | uri_escape }}"></a>
|
13
|
+
</div>
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<div class="background-gray rounded-4 black {{ include.class }}">
|
2
|
+
<div class="d-flex flex-column align-items-center py-5">
|
3
|
+
{{ include.svg }}
|
4
|
+
<p class="py-4">{{ include.content }}</p>
|
5
|
+
</div>
|
6
|
+
</div>
|
7
|
+
<div class="d-flex align-items-center justify-content-center my-3">
|
8
|
+
{% include buttons/link.html href=include.href content=site.i18n.subir_nuevamente class="btn-primary f-20 rounded-5 px-3" %}
|
9
|
+
</div>
|
@@ -0,0 +1,31 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
|
3
|
+
Imagen de la grilla con descriptor
|
4
|
+
|
5
|
+
@param :src [String] La url de la imagen
|
6
|
+
@param :alt [String] La descripción de la imagen
|
7
|
+
@param :component_class [String] Las clases del componente embed_responsive
|
8
|
+
@param :title [String] El título
|
9
|
+
@param :author [String] El autor
|
10
|
+
@param :href [String] La URL de la imagen
|
11
|
+
{%- endcomment -%}
|
12
|
+
|
13
|
+
<section class="d-flex flex-column p-2 position-relative">
|
14
|
+
{%- include_cached stretched_link.html
|
15
|
+
href=include.href
|
16
|
+
alt=include.alt -%}
|
17
|
+
|
18
|
+
{%- include_cached embed_responsive.html
|
19
|
+
x=1
|
20
|
+
y=1
|
21
|
+
src=include.src
|
22
|
+
alt=include.alt
|
23
|
+
width=include.width
|
24
|
+
component_class="mb-1" -%}
|
25
|
+
|
26
|
+
{%- include_cached descriptor.html
|
27
|
+
title=include.title
|
28
|
+
estudiante=include.estudiante
|
29
|
+
title_class="line-clamp-3"
|
30
|
+
class="py-10 px-15 rounded-3" -%}
|
31
|
+
</section>
|
@@ -0,0 +1,61 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
|
3
|
+
Form: type input
|
4
|
+
|
5
|
+
@param :form [String] El formulario
|
6
|
+
@param :field [Integer] El campo del formulario
|
7
|
+
@param :input_class [String] Las clases del componente
|
8
|
+
{%- endcomment -%}
|
9
|
+
|
10
|
+
{% if include.form %}
|
11
|
+
{%- assign name = include.field[0] | append: ']' | prepend: '[' | prepend: include.form -%}
|
12
|
+
{%- assign id = include.field[1].id | default: name | replace: '[', '_' | remove: ']' -%}
|
13
|
+
{% else %}
|
14
|
+
{%- assign name = include.field[0] -%}
|
15
|
+
{%- assign id = include.field[1].id | default: name %}
|
16
|
+
{% endif %}
|
17
|
+
|
18
|
+
{%- assign label = include.field[1].label[site.locale] -%}
|
19
|
+
{%- assign help = include.field[1].help[site.locale] -%}
|
20
|
+
{%- assign error = include.field[1].error[site.locale] -%}
|
21
|
+
{%- assign autocomplete = include.field[1].autocomplete -%}
|
22
|
+
{%- assign placeholder = include.field[1].placeholder[site.locale] -%}
|
23
|
+
|
24
|
+
<div class="form-group blue">
|
25
|
+
{% if include.field[1].label %}
|
26
|
+
<label for="{{ id }}" class="f-17 pl-2">
|
27
|
+
{{ label }}
|
28
|
+
{% if include.field[1].required %}*{% endif %}
|
29
|
+
</label>
|
30
|
+
{% endif %}
|
31
|
+
|
32
|
+
<input
|
33
|
+
{% if include.field[1].placeholder %}
|
34
|
+
placeholder="{{ placeholder }}"
|
35
|
+
{% endif %}
|
36
|
+
{{ include.field[1].extra.input }}
|
37
|
+
{% if help %}
|
38
|
+
aria-describedby="help-{{ id }}"
|
39
|
+
{% endif %}
|
40
|
+
{% if include.field[1].required %}
|
41
|
+
required
|
42
|
+
{% endif %}
|
43
|
+
{{ include.field[1].readonly | value_if: 'readonly' }}
|
44
|
+
type="{{ include.field[1].type }}"
|
45
|
+
name="{{ name }}"
|
46
|
+
id="{{ id }}"
|
47
|
+
{% if autocomplete %}
|
48
|
+
autocomplete="{{ autocomplete }}"
|
49
|
+
{% endif %}
|
50
|
+
class="form-control {{ include.input_class }}" />
|
51
|
+
|
52
|
+
{%- if error -%}
|
53
|
+
<div class="invalid-feedback">{{ error }}</div>
|
54
|
+
{%- endif -%}
|
55
|
+
|
56
|
+
{%- if help -%}
|
57
|
+
<small id="help-{{ id }}" class="form-text">
|
58
|
+
{{ help }}
|
59
|
+
</small>
|
60
|
+
{%- endif -%}
|
61
|
+
</div>
|
data/_includes/item.html
ADDED
@@ -0,0 +1,38 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
El ítem tiene un dropdown si tiene sub ítems o si tiene categorías.
|
3
|
+
{%- endcomment -%}
|
4
|
+
{%- assign dropdown = include.item.items | present -%}
|
5
|
+
{%- unless dropdown -%}
|
6
|
+
{%- assign dropdown = include.item.categories | present -%}
|
7
|
+
{%- endunless -%}
|
8
|
+
|
9
|
+
<div class="nav-item w-100 w-lg-auto {{ dropdown | value_if: 'dropdown d-flex flex-wrap' }}">
|
10
|
+
{%- comment -%}
|
11
|
+
La URL del item puede ser:
|
12
|
+
* El artículo vinculado
|
13
|
+
* El vínculo escrito manualmente
|
14
|
+
* La primera categoría de la lista
|
15
|
+
* La dirección propia (en el caso de categorías)
|
16
|
+
{%- endcomment -%}
|
17
|
+
<a
|
18
|
+
href="{{ include.item.post.url | default: include.item.link | default: include.item.categories[0].url | default: include.item.url }}"
|
19
|
+
class="nav-link flex-grow-1 flex-grow-lg-0">
|
20
|
+
{{ include.item.title }}
|
21
|
+
</a>
|
22
|
+
|
23
|
+
{%- if dropdown -%}
|
24
|
+
<button class="dropdown-toggle border-0 background-white w-5 w-lg-auto pl-lg-3"></button>
|
25
|
+
<div class="dropdown-menu w-100 w-lg-auto flex-grow-1 flex-grow-lg-0">
|
26
|
+
{% for item in include.item.items %}
|
27
|
+
{%- include_cached item.html item=item -%}
|
28
|
+
{% endfor %}
|
29
|
+
|
30
|
+
{%- comment -%}
|
31
|
+
Esto necesita `replace` en sutty-archives
|
32
|
+
{%- endcomment -%}
|
33
|
+
{%- for item in include.item.categories offset: 1 -%}
|
34
|
+
{%- include_cached item.html item=item -%}
|
35
|
+
{%- endfor -%}
|
36
|
+
</div>
|
37
|
+
{%- endif -%}
|
38
|
+
</div>
|
data/_includes/logo.html
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
{% comment%}
|
2
|
+
|
3
|
+
componente para crear los logos con urls
|
4
|
+
|
5
|
+
@param url [ Url ]
|
6
|
+
@param title [ String ]
|
7
|
+
@param src [ Url ]
|
8
|
+
|
9
|
+
{% endcomment %}
|
10
|
+
|
11
|
+
{% include stretched_link.html href=include.institucional.url alt=include.institucional.title %}
|
12
|
+
{% include picture.html src=include.institucional.src width=150 img_class='w-100' %}
|
data/_includes/menu.html
ADDED
@@ -0,0 +1,69 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
Menú
|
3
|
+
{%- endcomment -%}
|
4
|
+
|
5
|
+
{%- assign about = site.posts | find: 'layout', 'about' -%}
|
6
|
+
{%- assign items = site.posts | where: 'layout', 'menu' | where: 'item', null -%}
|
7
|
+
{%- assign menu_id = page.uuid | prepend: 'm-' -%}
|
8
|
+
|
9
|
+
|
10
|
+
{%- capture menu_svg -%}
|
11
|
+
{% include_cached svg/menu.svg %}
|
12
|
+
{%- endcapture -%}
|
13
|
+
|
14
|
+
<nav class="position-relative px-0" data-controller="body-scroll">
|
15
|
+
<div class="row no-gutters justify-content-between align-items-center container mx-auto py-3">
|
16
|
+
<a class="d-flex" href="/">
|
17
|
+
<i class="fa fa-home fa-2x primary" aria-hidden="true"></i>
|
18
|
+
</a>
|
19
|
+
<div class="col d-flex justify-content-end align-items-center ">
|
20
|
+
{%- capture menu_svg -%}
|
21
|
+
<div class="stroke-primary">
|
22
|
+
{% include_cached svg/menu.svg %}
|
23
|
+
</div>
|
24
|
+
{%- endcapture -%}
|
25
|
+
|
26
|
+
<div class="m-2 w-20px">
|
27
|
+
{% include_cached toggler_label.html class='fill-black d-block cursor-pointer' id=menu_id content=menu_svg %}
|
28
|
+
</div>
|
29
|
+
</div>
|
30
|
+
</div>
|
31
|
+
|
32
|
+
{% include_cached toggler.html id=menu_id extra='data-action="body-scroll#toggle"' %}
|
33
|
+
|
34
|
+
<div class="toggled position-absolute top-0 left-0 w-100 h-100vh pb-5 z-index-modal background-white">
|
35
|
+
<div class="container">
|
36
|
+
<div class="d-flex align-items-center justify-content-end m-0 mt-4 p-2">
|
37
|
+
<div class="d-flex m-0 no-gutters justify-content-center fill-primary">
|
38
|
+
{%- capture x_svg -%}
|
39
|
+
<div class="w-20px fill-primary">
|
40
|
+
{% include_cached svg/x.svg %}
|
41
|
+
</div>
|
42
|
+
{%- endcapture -%}
|
43
|
+
{% include_cached toggler_label.html class='stroke-primary cursor-pointer' id=menu_id content=x_svg %}
|
44
|
+
</div>
|
45
|
+
</div>
|
46
|
+
|
47
|
+
<div class="row align-items-center justify-content-center justify-content-md-start mt-5 w-100 text-center no-gutters text-md-left">
|
48
|
+
<ul class="p-0">
|
49
|
+
{% for item in items %}
|
50
|
+
<li class="list-unstyled f-26 text-primary font-weight-bolder">
|
51
|
+
{% include_cached item.html item=item class="mb-4 px-3" %}
|
52
|
+
</li>
|
53
|
+
{% endfor %}
|
54
|
+
<li class="list-unstyled f-26 " data-controller="logout">
|
55
|
+
{% capture sign_out %}
|
56
|
+
<i class="fa fa-2x fa-sign-out primary pr-3" aria-hidden="true"></i>
|
57
|
+
<p class="f-26 text-primary font-weight-bolder hover-black">{{ site.i18n.close }}</p>
|
58
|
+
{% endcapture %}
|
59
|
+
{% include_cached buttons/link.html
|
60
|
+
content=sign_out
|
61
|
+
class="d-flex flex-row align-items-center justify-content-center justify-content-md-start mb-4 px-3"
|
62
|
+
extra='style="all: unset; cursor: pointer;" data-action="logout#logout"'
|
63
|
+
%}
|
64
|
+
</li>
|
65
|
+
</ul>
|
66
|
+
</div>
|
67
|
+
</div>
|
68
|
+
</div>
|
69
|
+
</nav>
|
data/_includes/pack.html
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
{%- include_cached script.html src="assets/js/env.js" -%}
|
2
|
+
{%- if jekyll.environment == "production" -%}
|
3
|
+
{%- for pack in site.data.manifest.outputs -%}
|
4
|
+
{%- unless pack[1].entryPoint -%}{%- continue -%}{%- endunless -%}
|
5
|
+
{%- assign src = pack[0] -%}
|
6
|
+
{%- include_cached script.html src=src -%}
|
7
|
+
{%- endfor -%}
|
8
|
+
{%- else -%}
|
9
|
+
{%- include_cached script.html src="pack.js" -%}
|
10
|
+
{%- endif -%}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
|
3
|
+
Form: type password
|
4
|
+
|
5
|
+
@param :form [String] El formulario
|
6
|
+
@param :field [Integer] El campo del formulario
|
7
|
+
@param :input_class [String] Las clases del componente
|
8
|
+
{%- endcomment -%}
|
9
|
+
|
10
|
+
{% include input.html field=include.field form=include.form input_class=include.input_class %}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
|
3
|
+
Una imagen.
|
4
|
+
|
5
|
+
@param :src [String] La url de la imagen
|
6
|
+
@param :alt [String] La descripción de la imagen
|
7
|
+
@param :width [Integer]
|
8
|
+
@param :class [String] Las clases del componente picture
|
9
|
+
@param :img_class [String] Las clases de la imagen
|
10
|
+
{%- endcomment -%}
|
11
|
+
|
12
|
+
<picture class="{{ include.class }}">
|
13
|
+
<source
|
14
|
+
srcset="
|
15
|
+
{%- for pixel_density in site.data.theme.pixel_densities %}
|
16
|
+
{%- assign w = include.width | times: pixel_density -%}
|
17
|
+
{{- include.src | thumbnail: w | uri_escape }} {{ pixel_density }}x,
|
18
|
+
{% endfor -%}
|
19
|
+
" />
|
20
|
+
|
21
|
+
<img
|
22
|
+
class="{{ include.img_class }}"
|
23
|
+
src="{{ include.src | thumbnail: include.width | uri_escape }}"
|
24
|
+
alt="{{ include.alt | escape_once }}" />
|
25
|
+
</picture>
|
@@ -0,0 +1,47 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
|
3
|
+
Form: type predefined_array
|
4
|
+
|
5
|
+
@param :field [Integer] El campo del formulario
|
6
|
+
@param :array_class [String] Las clases del componente
|
7
|
+
{%- endcomment -%}
|
8
|
+
|
9
|
+
{%- assign name = include.field[0] -%}
|
10
|
+
{%- assign id = include.field[1].id | default: name -%}
|
11
|
+
{%- assign label = include.field[1].label[site.locale] -%}
|
12
|
+
{%- assign help = include.field[1].help[site.locale] -%}
|
13
|
+
{%- assign autocomplete = include.field[1].autocomplete -%}
|
14
|
+
|
15
|
+
<div class="form-group">
|
16
|
+
<label for="{{ id }}">
|
17
|
+
{{ label }}
|
18
|
+
{% if include.field[1].required %}*{% endif %}
|
19
|
+
</label>
|
20
|
+
|
21
|
+
<select
|
22
|
+
{% if help %}
|
23
|
+
aria-describedby="help-{{ id }}"
|
24
|
+
{% endif %}
|
25
|
+
{% if include.field[1].required %}
|
26
|
+
required
|
27
|
+
{% endif %}
|
28
|
+
name="{{ name }}"
|
29
|
+
id="{{ id }}"
|
30
|
+
{% if autocomplete %}
|
31
|
+
autocomplete="{{ autocomplete }}"
|
32
|
+
{% endif %}
|
33
|
+
class="form-control {{ include.array_class }}">
|
34
|
+
|
35
|
+
<option value="" selected></option>
|
36
|
+
|
37
|
+
{%- for option in include.field[1].values[site.locale] -%}
|
38
|
+
<option value="{{ option }}">{{ option }}</option>
|
39
|
+
{%- endfor -%}
|
40
|
+
</select>
|
41
|
+
|
42
|
+
{%- if help -%}
|
43
|
+
<small id="help-{{ id }}" class="form-text">
|
44
|
+
{{ help }}
|
45
|
+
</small>
|
46
|
+
{%- endif -%}
|
47
|
+
</div>
|
@@ -0,0 +1 @@
|
|
1
|
+
<link rel="preload" as="font" type="font/woff2" crossorigin href="{{ include.font }}?{{ site.time | date: '%s' }}" />
|
@@ -0,0 +1,25 @@
|
|
1
|
+
{%- assign param = include.param | default: 'search' -%}
|
2
|
+
|
3
|
+
<form method="get" action="" class="form-inline" data-controller="search" data-action="search#search">
|
4
|
+
<div class="form-group">
|
5
|
+
<label for="{{ param }}_q" class="sr-only">{{ site.i18n.search.label }}</label>
|
6
|
+
|
7
|
+
<div class="input-group flex-nowrap">
|
8
|
+
<div class="input-group-prepend">
|
9
|
+
<span class="input-group-text fa fa-search border-0 pt-2"></span>
|
10
|
+
</div>
|
11
|
+
|
12
|
+
<input
|
13
|
+
class="border-0 form-control"
|
14
|
+
type="search"
|
15
|
+
required
|
16
|
+
id="{{ param }}_q"
|
17
|
+
name="q"
|
18
|
+
placeholder="{{ site.i18n.search.submit }}"
|
19
|
+
data-search-target="q"
|
20
|
+
autocomplete="off" />
|
21
|
+
</div>
|
22
|
+
</div>
|
23
|
+
|
24
|
+
<input class="sr-only" type="submit" value="{{ site.i18n.search.submit }}" />
|
25
|
+
</form>
|
@@ -0,0 +1 @@
|
|
1
|
+
<h2 id="{{ include.field[0] }}">{{ include.field[1].title }}</h2>
|
@@ -0,0 +1,6 @@
|
|
1
|
+
<div class="d-flex align-items-center justify-content-between w-100 mb-4">
|
2
|
+
<div class="input-group margin-bottom-sm">
|
3
|
+
<input class="form-control" type="text" placeholder="Escribir descripción">
|
4
|
+
{% include buttons/button.html content="Enviar" class="bg-primary text-white " %}
|
5
|
+
</div>
|
6
|
+
</div>
|
@@ -0,0 +1 @@
|
|
1
|
+
<hr/>
|
@@ -0,0 +1,22 @@
|
|
1
|
+
{% capture url %}{{ site.url }}{{ include.url }}{% endcapture %}
|
2
|
+
|
3
|
+
{% unless include.share.url == '%url' %}
|
4
|
+
{% assign url = url | default: '' | component_escape %}
|
5
|
+
{% endunless %}
|
6
|
+
{% assign title = include.title | default: '' | component_escape %}
|
7
|
+
{% assign description = include.description | default: '' | component_escape %}
|
8
|
+
{% assign tags = include.tags | join: ',' | default: '' | component_escape %}
|
9
|
+
|
10
|
+
<a
|
11
|
+
{% if include.share.url == '%url' %}
|
12
|
+
download
|
13
|
+
{% else %}
|
14
|
+
target="_blank"
|
15
|
+
{% endif %}
|
16
|
+
rel="noopener nofollow noreferrer"
|
17
|
+
title="{{ include.share.title }}"
|
18
|
+
class="d-flex flex-column align-items-center p-3"
|
19
|
+
href="{{ include.share.url | replace: '%url', url | replace: '%title', title | replace: '%description', description | replace: '%tags', tags }}">
|
20
|
+
<i class="fa fa-fw fa-2x fa-{{ include.share.icon }}"></i>
|
21
|
+
<span>{{ include.share.title }}</span>
|
22
|
+
</a>
|
@@ -0,0 +1,31 @@
|
|
1
|
+
{%- assign title = include.title | unescape -%}
|
2
|
+
{%- assign text = include.description | strip_html | unescape -%}
|
3
|
+
{%- assign url = site.url | append: "/" | append: include.url -%}
|
4
|
+
{%- assign id = include.id | default: 'share' -%}
|
5
|
+
|
6
|
+
{% capture label %}
|
7
|
+
{{ site.i18n.share.text }}
|
8
|
+
<i class="fa fa-{{ site.i18n.share.icon }}"></i>
|
9
|
+
{% endcapture %}
|
10
|
+
|
11
|
+
{% include_cached toggler_label.html id=id content=label %}
|
12
|
+
|
13
|
+
{%- capture extra -%}
|
14
|
+
data-controller="share"
|
15
|
+
data-action="share#share"
|
16
|
+
data-share-title-value="{{ title | escape }}"
|
17
|
+
data-share-text-value="{{ text | escape }}"
|
18
|
+
data-share-url-value="{{ url | escape }}"
|
19
|
+
{%- endcapture -%}
|
20
|
+
|
21
|
+
{%- include_cached toggler.html id=id extra=extra -%}
|
22
|
+
|
23
|
+
<div class="share-box toggled d-flex align-items-center justify-content-center">
|
24
|
+
<div class="box background-white color-redpink row no-gutters align-items-center justify-content-center p-3">
|
25
|
+
{% for share in site.i18n.share.items %}
|
26
|
+
<div class="col-4">
|
27
|
+
{% include_cached share.html share=share url=include.url title=include.title description=text tags=include.tags %}
|
28
|
+
</div>
|
29
|
+
{% endfor %}
|
30
|
+
</div>
|
31
|
+
</div>
|
@@ -0,0 +1,15 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
|
3
|
+
Para asignar un enlace a un bloque contenedor.
|
4
|
+
|
5
|
+
@param :href [String] La URL
|
6
|
+
@param :alt [String] La descripción
|
7
|
+
{%- endcomment -%}
|
8
|
+
|
9
|
+
<a
|
10
|
+
class="stretched-link black hover-black text-decoration-none"
|
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
|
+
<span class="sr-only">{{ include.alt }}</span>
|
15
|
+
</a>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
|
3
|
+
Form: type string
|
4
|
+
|
5
|
+
@param :field [Integer] El campo del formulario
|
6
|
+
@param :input_class [String] Las clases del componente
|
7
|
+
{%- endcomment -%}
|
8
|
+
|
9
|
+
{% assign f = field %}
|
10
|
+
{% assign f.type = 'text' %}
|
11
|
+
|
12
|
+
{% include input.html field=f input_class=include.input_class %}
|
@@ -0,0 +1,29 @@
|
|
1
|
+
{% comment %}
|
2
|
+
El formulario se envía a la API. La definición del formulario se
|
3
|
+
encuentra en _data/forms/subir_imagen.yml
|
4
|
+
{% endcomment %}
|
5
|
+
|
6
|
+
{%- assign imagen_enviada = site.pages | find: 'layout', 'imagen_enviada' -%}
|
7
|
+
|
8
|
+
<form
|
9
|
+
data-turbo="false"
|
10
|
+
data-controller="contact autofill-profile"
|
11
|
+
data-contact-delay-value="30"
|
12
|
+
data-contact-submit-value="{{ include.form.submit.label[site.locale] | escape }}"
|
13
|
+
action="https://api.{{ site.hostname }}/v1/sites/{{ site.hostname }}/posts/imagen"
|
14
|
+
enctype="multipart/form-data"
|
15
|
+
method="post">
|
16
|
+
{%- for field in include.form -%}
|
17
|
+
{% assign template = field[1].type | append: '.html' %}
|
18
|
+
<div class="col{{ field[1].col | default: 12 | prepend: '-' }} px-0">
|
19
|
+
{% include {{ template }}
|
20
|
+
field=field
|
21
|
+
input_class="background-input-form border-0 px-4"
|
22
|
+
text_class="background-input-form border-0 h-117px p-4 resize-none"
|
23
|
+
submit_class="rounded-4 f-25 px-34" %}
|
24
|
+
|
25
|
+
</div>
|
26
|
+
{%- endfor -%}
|
27
|
+
|
28
|
+
<input type="hidden" value="{{ imagen_enviada.url | absolute_url }}" name="redirect_to" />
|
29
|
+
</form>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
|
3
|
+
Form: type submit
|
4
|
+
|
5
|
+
@param :field [Integer] El campo del formulario
|
6
|
+
@param :submit_class [String] Las clases del componente
|
7
|
+
{%- endcomment -%}
|
8
|
+
|
9
|
+
<div class="text-center mt-64">
|
10
|
+
<input
|
11
|
+
{{ include.field[1].extra }}
|
12
|
+
type="submit"
|
13
|
+
data-contact-target="submit"
|
14
|
+
class="btn btn-primary position-relative {{ include.submit_class }}"
|
15
|
+
value="{{ include.field[1].label[site.locale] }}" />
|
16
|
+
|
17
|
+
{% include question_mark_button.html href="ayuda/" %}
|
18
|
+
</div>
|
@@ -0,0 +1,29 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
2
|
+
<svg
|
3
|
+
width="24"
|
4
|
+
height="24"
|
5
|
+
fill="none"
|
6
|
+
style="-webkit-print-color-adjust:exact"
|
7
|
+
version="1.1"
|
8
|
+
viewBox="947 226 24 24"
|
9
|
+
id="svg27"
|
10
|
+
xmlns="http://www.w3.org/2000/svg"
|
11
|
+
xmlns:svg="http://www.w3.org/2000/svg">
|
12
|
+
<defs
|
13
|
+
id="defs31" />
|
14
|
+
<g
|
15
|
+
id="shape-0ac05513-ebf0-8010-8001-d07414f1514f"
|
16
|
+
transform="translate(-57 -42)">
|
17
|
+
<circle
|
18
|
+
style="fill:#155aa8;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.93096;stroke-linecap:square;stroke-linejoin:round;paint-order:markers stroke fill"
|
19
|
+
id="path366"
|
20
|
+
cx="-1015.9839"
|
21
|
+
cy="280.01611"
|
22
|
+
r="11.983887"
|
23
|
+
transform="scale(-1,1)" />
|
24
|
+
<path
|
25
|
+
id="path18"
|
26
|
+
style="fill:#ffffff;stroke-width:0.028"
|
27
|
+
d="m 1015.7005,273.01609 c 0.2936,0 0.5882,0.11454 0.8125,0.34375 0.4504,0.46029 0.4504,1.2077 0,1.66797 l -3.7305,3.8125 h 9.0528 c 0.6338,0 1.1484,0.52618 1.1484,1.17578 0,0.6496 -0.5146,1.17578 -1.1484,1.17578 h -9.0528 l 3.7305,3.8125 c 0.4504,0.46026 0.4504,1.20771 0,1.66797 -0.4486,0.45839 -1.1746,0.45839 -1.6231,0 l -5.4765,-5.5957 c -0.5724,-0.585 -0.5724,-1.53613 0,-2.1211 l 5.4765,-5.5957 c 0.2243,-0.22921 0.517,-0.34375 0.8106,-0.34375 z" />
|
28
|
+
</g>
|
29
|
+
</svg>
|
@@ -0,0 +1 @@
|
|
1
|
+
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="89" xmlns="http://www.w3.org/2000/svg" height="64" id="screenshot-af433826-ab75-80b9-8002-01765a96c4e7" viewBox="2611 111 89 64" style="-webkit-print-color-adjust: exact;" fill="none" version="1.1"><g id="shape-af433826-ab75-80b9-8002-01765a96c4e7"><g class="fills" id="fills-af433826-ab75-80b9-8002-01765a96c4e7"><path rx="0" ry="0" d="M2698.138,112.875C2700.621,115.374,2700.621,119.434,2698.138,121.933L2647.286,173.125C2644.803,175.625,2640.771,175.625,2638.288,173.125L2612.862,147.529C2610.379,145.030,2610.379,140.970,2612.862,138.471C2615.345,135.971,2619.378,135.971,2621.861,138.471L2642.797,159.527L2689.159,112.875C2691.642,110.375,2695.675,110.375,2698.138,112.875ZZ" style="fill: rgb(21, 90, 168); fill-opacity: 1;"/></g></g></svg>
|