@openeuropa/bcl-theme-default 0.19.0 → 0.22.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.
- package/bcl-builder.config.js +11 -4
- package/css/oe-bcl-default.css +1288 -400
- package/css/oe-bcl-default.css.map +1 -1
- package/css/oe-bcl-default.min.css +1 -1
- package/css/oe-bcl-default.min.css.map +1 -1
- package/icons/bcl-default-icons.svg +1 -0
- package/icons/icons-flag.svg +1 -1
- package/js/oe-bcl-default.bundle.js +242 -76
- package/js/oe-bcl-default.bundle.js.map +1 -1
- package/js/oe-bcl-default.bundle.min.js +1 -1
- package/js/oe-bcl-default.bundle.min.js.map +1 -1
- package/js/oe-bcl-default.esm.js +236 -75
- package/js/oe-bcl-default.esm.js.map +1 -1
- package/js/oe-bcl-default.esm.min.js +1 -1
- package/js/oe-bcl-default.esm.min.js.map +1 -1
- package/js/oe-bcl-default.umd.js +242 -76
- package/js/oe-bcl-default.umd.js.map +1 -1
- package/js/oe-bcl-default.umd.min.js +1 -1
- package/js/oe-bcl-default.umd.min.js.map +1 -1
- package/logos/ec/{logo-ec--ar.svg → positive/logo-ec--ar.svg} +0 -0
- package/logos/ec/{logo-ec--bg.svg → positive/logo-ec--bg.svg} +0 -0
- package/logos/ec/{logo-ec--ca.svg → positive/logo-ec--ca.svg} +0 -0
- package/logos/ec/{logo-ec--cs.svg → positive/logo-ec--cs.svg} +0 -0
- package/logos/ec/{logo-ec--da.svg → positive/logo-ec--da.svg} +0 -0
- package/logos/ec/{logo-ec--de.svg → positive/logo-ec--de.svg} +0 -0
- package/logos/ec/{logo-ec--el.svg → positive/logo-ec--el.svg} +0 -0
- package/logos/ec/{logo-ec--en.svg → positive/logo-ec--en.svg} +0 -0
- package/logos/ec/{logo-ec--es.svg → positive/logo-ec--es.svg} +0 -0
- package/logos/ec/{logo-ec--et.svg → positive/logo-ec--et.svg} +0 -0
- package/logos/ec/{logo-ec--fi.svg → positive/logo-ec--fi.svg} +0 -0
- package/logos/ec/{logo-ec--fr.svg → positive/logo-ec--fr.svg} +0 -0
- package/logos/ec/{logo-ec--ga.svg → positive/logo-ec--ga.svg} +0 -0
- package/logos/ec/{logo-ec--hr.svg → positive/logo-ec--hr.svg} +0 -0
- package/logos/ec/{logo-ec--hu.svg → positive/logo-ec--hu.svg} +0 -0
- package/logos/ec/{logo-ec--is.svg → positive/logo-ec--is.svg} +0 -0
- package/logos/ec/{logo-ec--it.svg → positive/logo-ec--it.svg} +0 -0
- package/logos/ec/{logo-ec--lt.svg → positive/logo-ec--lt.svg} +0 -0
- package/logos/ec/{logo-ec--lv.svg → positive/logo-ec--lv.svg} +0 -0
- package/logos/ec/{logo-ec--mt.svg → positive/logo-ec--mt.svg} +0 -0
- package/logos/ec/{logo-ec--nl.svg → positive/logo-ec--nl.svg} +0 -0
- package/logos/ec/{logo-ec--no.svg → positive/logo-ec--no.svg} +0 -0
- package/logos/ec/{logo-ec--pl.svg → positive/logo-ec--pl.svg} +0 -0
- package/logos/ec/{logo-ec--pt.svg → positive/logo-ec--pt.svg} +0 -0
- package/logos/ec/{logo-ec--ro.svg → positive/logo-ec--ro.svg} +0 -0
- package/logos/ec/{logo-ec--sk.svg → positive/logo-ec--sk.svg} +0 -0
- package/logos/ec/{logo-ec--sl.svg → positive/logo-ec--sl.svg} +0 -0
- package/logos/ec/{logo-ec--sv.svg → positive/logo-ec--sv.svg} +0 -0
- package/logos/ec/{logo-ec--tr.svg → positive/logo-ec--tr.svg} +0 -0
- package/logos/eu/condensed-version/negative/logo-eu--ar.svg +18 -0
- package/logos/eu/condensed-version/negative/logo-eu--bg.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--ca.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--cs.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--da.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--de.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--el.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--en.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--es.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--et.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--fi.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--fr.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--ga.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--hr.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--hu.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--is.svg +8 -0
- package/logos/eu/condensed-version/negative/logo-eu--it.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--lt.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--lv.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--mt.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--nl.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--no.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--pl.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--pt.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--ro.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--sk.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--sl.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--sv.svg +7 -0
- package/logos/eu/condensed-version/negative/logo-eu--tr.svg +7 -0
- package/logos/eu/standard-version/negative/logo-eu--ar.svg +18 -0
- package/logos/eu/standard-version/negative/logo-eu--bg.svg +17 -0
- package/logos/eu/standard-version/negative/logo-eu--ca.svg +16 -0
- package/logos/eu/standard-version/negative/logo-eu--cs.svg +17 -0
- package/logos/eu/standard-version/negative/logo-eu--da.svg +23 -0
- package/logos/eu/standard-version/negative/logo-eu--de.svg +21 -0
- package/logos/eu/standard-version/negative/logo-eu--el.svg +19 -0
- package/logos/eu/standard-version/negative/logo-eu--en.svg +18 -0
- package/logos/eu/standard-version/negative/logo-eu--es.svg +17 -0
- package/logos/eu/standard-version/negative/logo-eu--et.svg +16 -0
- package/logos/eu/standard-version/negative/logo-eu--fi.svg +19 -0
- package/logos/eu/standard-version/negative/logo-eu--fr.svg +20 -0
- package/logos/eu/standard-version/negative/logo-eu--ga.svg +21 -0
- package/logos/eu/standard-version/negative/logo-eu--hr.svg +18 -0
- package/logos/eu/standard-version/negative/logo-eu--hu.svg +16 -0
- package/logos/eu/standard-version/negative/logo-eu--is.svg +20 -0
- package/logos/eu/standard-version/negative/logo-eu--it.svg +18 -0
- package/logos/eu/standard-version/negative/logo-eu--lt.svg +19 -0
- package/logos/eu/standard-version/negative/logo-eu--lv.svg +21 -0
- package/logos/eu/standard-version/negative/logo-eu--mt.svg +19 -0
- package/logos/eu/standard-version/negative/logo-eu--nl.svg +17 -0
- package/logos/eu/standard-version/negative/logo-eu--no.svg +20 -0
- package/logos/eu/standard-version/negative/logo-eu--pl.svg +19 -0
- package/logos/eu/standard-version/negative/logo-eu--pt.svg +18 -0
- package/logos/eu/standard-version/negative/logo-eu--ro.svg +21 -0
- package/logos/eu/standard-version/negative/logo-eu--sk.svg +17 -0
- package/logos/eu/standard-version/negative/logo-eu--sl.svg +18 -0
- package/logos/eu/standard-version/negative/logo-eu--sv.svg +22 -0
- package/logos/eu/standard-version/negative/logo-eu--tr.svg +18 -0
- package/package.json +14 -9
- package/src/icons/icons.js +356 -0
- package/src/js/gallery/gallery.js +168 -0
- package/src/js/index.esm.js +2 -0
- package/src/js/index.umd.js +2 -0
- package/src/scss/_badge.scss +5 -5
- package/src/scss/_banners.scss +4 -4
- package/src/scss/_bcl-offcanvas.scss +7 -0
- package/src/scss/_carousel.scss +85 -0
- package/src/scss/_circular-progress-bar.scss +122 -0
- package/src/scss/_gallery.scss +269 -0
- package/src/scss/_header.scss +46 -45
- package/src/scss/_inpage-navigation.scss +6 -0
- package/src/scss/_language-list.scss +51 -0
- package/src/scss/_pagination.scss +8 -0
- package/src/scss/_reset.scss +9 -0
- package/src/scss/_search-form.scss +4 -2
- package/src/scss/base/_colors.scss +17 -6
- package/src/scss/base/_utilities.scss +35 -4
- package/src/scss/base/_variables.scss +10 -1
- package/src/scss/oe-bcl-default.scss +5 -0
- package/templates/bcl-alert/alert.html.twig +13 -5
- package/templates/bcl-badge/badge.html.twig +4 -4
- package/templates/bcl-banner/banner.html.twig +16 -9
- package/templates/bcl-base-templates/listing-page.html.twig +13 -13
- package/templates/bcl-breadcrumb/breadcrumb.html.twig +2 -2
- package/templates/bcl-card/card.html.twig +42 -20
- package/templates/bcl-card-layout/card-layout.html.twig +6 -1
- package/templates/bcl-carousel/carousel.html.twig +26 -5
- package/templates/bcl-content-banner/content-banner.html.twig +39 -33
- package/templates/bcl-date-block/date-block.html.twig +29 -9
- package/templates/bcl-description-list/description-list.html.twig +23 -12
- package/templates/bcl-fact-figures/fact-figures.html.twig +9 -5
- package/templates/bcl-file/file.html.twig +11 -8
- package/templates/bcl-footer/footer.html.twig +3 -1
- package/templates/bcl-form/form.html.twig +7 -4
- package/templates/bcl-gallery/gallery.html.twig +206 -0
- package/templates/bcl-header/header.html.twig +31 -15
- package/templates/bcl-heading/heading.html.twig +42 -0
- package/templates/bcl-language-list/language-list-grid.html.twig +68 -0
- package/templates/bcl-language-list/language-list-modal.html.twig +58 -0
- package/templates/bcl-language-list/language-list.html.twig +111 -0
- package/templates/bcl-language-switcher/language-switcher.html.twig +44 -0
- package/templates/bcl-link/link.html.twig +1 -1
- package/templates/bcl-links-block/links-block.html.twig +9 -3
- package/templates/bcl-listing/listing.html.twig +12 -8
- package/templates/bcl-modal/modal.html.twig +12 -1
- package/templates/bcl-navbar/navbar.html.twig +39 -28
- package/templates/bcl-page/page.html.twig +1 -1
- package/templates/bcl-pagination/pagination.html.twig +123 -9
- package/templates/bcl-person/person.html.twig +44 -0
- package/templates/bcl-project/project-lists.html.twig +67 -0
- package/templates/bcl-project/project.html.twig +84 -49
- package/templates/bcl-project-status/project-contributions.html.twig +56 -0
- package/templates/bcl-project-status/project-status.html.twig +13 -24
- package/templates/bcl-select/select.html.twig +13 -3
- package/templates/bcl-subscription/subscription-modal.html.twig +24 -0
- package/templates/bcl-subscription/subscription.html.twig +10 -0
- package/templates/bcl-subscription-block/subscription-block.html.twig +36 -0
- package/templates/bcl-timeline/timeline.html.twig +10 -7
- package/templates/bcl-user/user-view-compact.html.twig +9 -2
- package/templates/bcl-user/user-view.html.twig +0 -10
- package/icons/bootstrap-icons.svg +0 -1
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
|
|
15
15
|
{% set _title = title|default('') %}
|
|
16
16
|
{% set _title_tag = title_tag|default('div') %}
|
|
17
|
+
{% set _title_attributes = title_attributes ?: create_attribute() %}
|
|
17
18
|
{% set _description = description|default('') %}
|
|
18
19
|
{% set _link = link|default({}) %}
|
|
19
20
|
{% set _image = image|default('') %}
|
|
@@ -28,11 +29,13 @@
|
|
|
28
29
|
{% set _content_class = _content_class ~ " " ~ _content_classes %}
|
|
29
30
|
{% endif %}
|
|
30
31
|
|
|
31
|
-
{% set _title_classes =
|
|
32
|
+
{% set _title_classes = ['display-6'] %}
|
|
32
33
|
{% if _description is not empty or _link is not empty %}
|
|
33
|
-
{% set _title_classes = _title_classes
|
|
34
|
+
{% set _title_classes = _title_classes|merge(['mb-3']) %}
|
|
34
35
|
{% endif %}
|
|
35
36
|
|
|
37
|
+
{% set _title_attributes = _title_attributes.addClass(_title_classes) %}
|
|
38
|
+
|
|
36
39
|
{% set _classes = [
|
|
37
40
|
'bcl-banner',
|
|
38
41
|
_shade ? 'shade',
|
|
@@ -53,14 +56,18 @@
|
|
|
53
56
|
{% endif %}
|
|
54
57
|
<div class="container">
|
|
55
58
|
<div class="{{ _content_class }}">
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
{% include '@oe-bcl/bcl-link/link.html.twig' with _link only %}
|
|
59
|
+
{% if _title is not empty %}
|
|
60
|
+
{% include '@oe-bcl/bcl-heading/heading.html.twig' with {
|
|
61
|
+
title: _title,
|
|
62
|
+
title_tag: _title_tag,
|
|
63
|
+
attributes: _title_attributes,
|
|
64
|
+
} only %}
|
|
63
65
|
{% endif %}
|
|
66
|
+
{% if _description is not empty %}
|
|
67
|
+
<p class="mb-4">{{ _description }}</p>
|
|
68
|
+
{% endif %}
|
|
69
|
+
{% if _link.path %}
|
|
70
|
+
{% include '@oe-bcl/bcl-link/link.html.twig' with _link only %}
|
|
64
71
|
{% endif %}
|
|
65
72
|
</div>
|
|
66
73
|
</div>
|
|
@@ -17,32 +17,32 @@
|
|
|
17
17
|
{% block content_top %}
|
|
18
18
|
{% include '@oe-bcl/bcl-button/button.html.twig' with filter_button only %}
|
|
19
19
|
<div class="row">
|
|
20
|
-
<div class="col-md-6 col-lg-8">
|
|
21
|
-
<h4>
|
|
20
|
+
<div class="col-md-6 col-lg-8 align-self-center">
|
|
21
|
+
<h4 class="mb-0">
|
|
22
22
|
<span class="text-capitalize">
|
|
23
23
|
{{- _page_title -}}
|
|
24
24
|
</span>
|
|
25
25
|
({{ listing.items.length }})
|
|
26
26
|
</h4>
|
|
27
27
|
</div>
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
28
|
+
{% if badges is not empty and badges is iterable %}
|
|
29
|
+
<div class="col-md-12 order-md-2 mt-3">
|
|
30
|
+
{% for badge in badges %}
|
|
31
|
+
{% include '@oe-bcl/bcl-badge/badge.html.twig' with badge|merge({
|
|
32
|
+
attributes: create_attribute().addClass(["mb-2", "me-2"])
|
|
33
|
+
}) only %}
|
|
34
|
+
{% endfor %}
|
|
35
|
+
</div>
|
|
36
|
+
{% endif %}
|
|
37
37
|
<div class="col-md-6 col-lg-4 mt-3 mt-md-0">
|
|
38
38
|
<div class="float-md-end d-md-flex align-items-center mb-4 mb-md-0">
|
|
39
39
|
{% include '@oe-bcl/bcl-select/select.html.twig' with sort_select|merge({
|
|
40
|
-
attributes: create_attribute().addClass(['ms-md-2
|
|
40
|
+
attributes: create_attribute().addClass(['ms-md-2']),
|
|
41
41
|
}) only %}
|
|
42
42
|
</div>
|
|
43
43
|
</div>
|
|
44
44
|
</div>
|
|
45
|
-
<hr class="d-none d-md-block mb-4"/>
|
|
45
|
+
<hr class="d-none d-md-block mb-4-75"/>
|
|
46
46
|
{% endblock %}
|
|
47
47
|
|
|
48
48
|
{% block content %}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
{% set _classes = 'breadcrumb' %}
|
|
8
8
|
{% set _links = links|default([]) %}
|
|
9
|
-
{% set
|
|
9
|
+
{% set _icon_path = icon_path|default('') %}
|
|
10
10
|
|
|
11
11
|
{% if attributes is empty %}
|
|
12
12
|
{% set attributes = create_attribute() %}
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
icon_position: 'before',
|
|
42
42
|
icon: {
|
|
43
43
|
name: "arrow-left",
|
|
44
|
-
path:
|
|
44
|
+
path: _icon_path,
|
|
45
45
|
attributes: create_attribute().addClass(['d-md-none ms-0 me-2']),
|
|
46
46
|
},
|
|
47
47
|
}) %}
|
|
@@ -44,6 +44,11 @@
|
|
|
44
44
|
- extra_classes_header (string) (default: '')
|
|
45
45
|
- extra_classes_footer (string) (default: '')
|
|
46
46
|
- badges (array of badge object) (default: [])
|
|
47
|
+
|
|
48
|
+
Blocks
|
|
49
|
+
- card_date
|
|
50
|
+
- card_badges
|
|
51
|
+
- card_links
|
|
47
52
|
#}
|
|
48
53
|
|
|
49
54
|
{% set _title = title|default({}) %}
|
|
@@ -66,6 +71,7 @@
|
|
|
66
71
|
{% set _extra_classes_header = extra_classes_header|default('') %}
|
|
67
72
|
{% set _extra_classes_footer = extra_classes_footer|default('') %}
|
|
68
73
|
{% set _badges = badges|default([]) %}
|
|
74
|
+
{% set _links = links|default([]) %}
|
|
69
75
|
{% set _classes = ['card'] %}
|
|
70
76
|
{% if _text_color is not empty %}
|
|
71
77
|
{% set _classes = _classes|merge(['text-' ~ _text_color]) %}
|
|
@@ -145,7 +151,9 @@
|
|
|
145
151
|
<div class='{{ _horizontal_grid.left_col_classes }}'>
|
|
146
152
|
{% endif %}
|
|
147
153
|
{% if _date is not empty %}
|
|
148
|
-
{%
|
|
154
|
+
{% block card_date %}
|
|
155
|
+
{% include '@oe-bcl/bcl-date-block/date-block.html.twig' with _date only %}
|
|
156
|
+
{% endblock %}
|
|
149
157
|
{% elseif _image is not empty and _image.position != "bottom" %}
|
|
150
158
|
<img
|
|
151
159
|
src="{{ _image.path }}"
|
|
@@ -192,28 +200,42 @@
|
|
|
192
200
|
{%- if _content is not empty -%}
|
|
193
201
|
{{- _content -}}
|
|
194
202
|
{%- endif -%}
|
|
195
|
-
{
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
{%
|
|
199
|
-
{%
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
attributes: _badge.attributes.addClass('mb-2')
|
|
205
|
-
})
|
|
206
|
-
%}
|
|
207
|
-
{% if not loop.last %}
|
|
203
|
+
{% block card_badges %}
|
|
204
|
+
{%- if _badges is not empty and _badges is iterable -%}
|
|
205
|
+
<div class="mt-2-5">
|
|
206
|
+
{% for _badge in _badges %}
|
|
207
|
+
{% if _badge.attributes is empty %}
|
|
208
|
+
{% set _badge = _badge|merge({
|
|
209
|
+
attributes: create_attribute()
|
|
210
|
+
}) %}
|
|
211
|
+
{% endif %}
|
|
208
212
|
{% set _badge = _badge|merge({
|
|
209
|
-
attributes: _badge.attributes.addClass('
|
|
213
|
+
attributes: _badge.attributes.addClass('mb-2')
|
|
210
214
|
})
|
|
211
215
|
%}
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
216
|
+
{% if not loop.last %}
|
|
217
|
+
{% set _badge = _badge|merge({
|
|
218
|
+
attributes: _badge.attributes.addClass('me-2')
|
|
219
|
+
})
|
|
220
|
+
%}
|
|
221
|
+
{% endif %}
|
|
222
|
+
{% include '@oe-bcl/bcl-badge/badge.html.twig' with _badge only %}
|
|
223
|
+
|
|
224
|
+
{% endfor %}
|
|
225
|
+
</div>
|
|
226
|
+
{%- endif -%}
|
|
227
|
+
{% endblock %}
|
|
228
|
+
{% block card_links %}
|
|
229
|
+
{%- if _links is not empty and _links is iterable -%}
|
|
230
|
+
<div class="mt-2-5 mb-2">
|
|
231
|
+
{% for _link in _links %}
|
|
232
|
+
<div class="mb-3 mb-md-0 d-block d-md-inline-block me-4-5">
|
|
233
|
+
{% include '@oe-bcl/bcl-link/link.html.twig' with _link only %}
|
|
234
|
+
</div>
|
|
235
|
+
{% endfor %}
|
|
236
|
+
</div>
|
|
237
|
+
{%- endif -%}
|
|
238
|
+
{% endblock %}
|
|
217
239
|
</div>
|
|
218
240
|
{% if _horizontal %}
|
|
219
241
|
</div>
|
|
@@ -14,6 +14,9 @@
|
|
|
14
14
|
options: ['0', '1', '2', '3', '4', '5']
|
|
15
15
|
- equal_height (boolean) (default: false)
|
|
16
16
|
- cols_extra_classes (string) (default: '')
|
|
17
|
+
|
|
18
|
+
Blocks
|
|
19
|
+
- card_layout_card
|
|
17
20
|
#}
|
|
18
21
|
|
|
19
22
|
{% set _type = type|default('group') %}
|
|
@@ -69,7 +72,9 @@
|
|
|
69
72
|
{% if _type == 'grid' or _type == 'masonry' %}
|
|
70
73
|
<div class="{{ _cols_classes }}">
|
|
71
74
|
{% endif %}
|
|
72
|
-
{%
|
|
75
|
+
{% block card_layout_card %}
|
|
76
|
+
{% include '@oe-bcl/bcl-card/card.html.twig' with _item only %}
|
|
77
|
+
{% endblock %}
|
|
73
78
|
{% if _type == 'grid' or _type == 'masonry' %}
|
|
74
79
|
</div>
|
|
75
80
|
{% endif %}
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
image: (string) <img> tag
|
|
12
12
|
caption (string)
|
|
13
13
|
caption_classes (string)
|
|
14
|
+
caption_title (string)
|
|
14
15
|
interval (integer) (default: 0)
|
|
15
16
|
}
|
|
16
17
|
...
|
|
@@ -20,6 +21,7 @@
|
|
|
20
21
|
- previous_label (string) (default: '')
|
|
21
22
|
- next_label (string) (default: '')
|
|
22
23
|
- with_indicators (boolean) (default: false)
|
|
24
|
+
- rounded_indicators (boolean) (default: false)
|
|
23
25
|
#}
|
|
24
26
|
|
|
25
27
|
{% set _id = id|default('') %}
|
|
@@ -29,6 +31,7 @@
|
|
|
29
31
|
{% set _prev_label = prev_label|default('') %}
|
|
30
32
|
{% set _next_label = next_label|default('') %}
|
|
31
33
|
{% set _with_indicators = with_indicators|default(false) %}
|
|
34
|
+
{% set _rounded_indicators = rounded_indicators|default(false) %}
|
|
32
35
|
{% set _classes = ['carousel slide'] %}
|
|
33
36
|
{% set _autoinit = autoinit ?? true %}
|
|
34
37
|
{% set _autoplay = autoplay ?? true %}
|
|
@@ -59,6 +62,10 @@
|
|
|
59
62
|
{% set attributes = attributes.setAttribute('data-bs-touch', 'false') %}
|
|
60
63
|
{% endif %}
|
|
61
64
|
|
|
65
|
+
{% if _rounded_indicators %}
|
|
66
|
+
{% set attributes = attributes.addClass('rounded-indicators') %}
|
|
67
|
+
{% endif %}
|
|
68
|
+
|
|
62
69
|
{% if not _autoplay %}
|
|
63
70
|
{% set attributes = attributes.setAttribute('data-bs-interval', 'false') %}
|
|
64
71
|
{% endif %}
|
|
@@ -69,7 +76,7 @@
|
|
|
69
76
|
{{ attributes }}
|
|
70
77
|
>
|
|
71
78
|
{% if _with_indicators %}
|
|
72
|
-
<div class="carousel-indicators">
|
|
79
|
+
<div class="carousel-indicators d-none d-md-flex">
|
|
73
80
|
{% for _i in 0..(_items|length - 1) %}
|
|
74
81
|
{% set button_attributes = create_attribute()
|
|
75
82
|
.setAttribute('aria-label', 'Slide ' ~ (_i + 1))
|
|
@@ -102,15 +109,29 @@
|
|
|
102
109
|
{% if _item.image is defined and _item.image is not empty %}
|
|
103
110
|
{{ _item.image }}
|
|
104
111
|
{% endif %}
|
|
105
|
-
{% if _item.caption is defined and _item.caption is not empty %}
|
|
112
|
+
{% if (_item.caption is defined and _item.caption is not empty) or (_item.link is defined and _item.link is not empty) %}
|
|
106
113
|
{% set _caption_classes = 'carousel-caption' %}
|
|
107
|
-
{% if _item.
|
|
108
|
-
{% set _caption_classes = _caption_classes ~ ' '
|
|
114
|
+
{% if _item.caption is not empty and _item.link is empty %}
|
|
115
|
+
{% set _caption_classes = _caption_classes ~ ' d-none d-md-block' %}
|
|
109
116
|
{% endif %}
|
|
110
117
|
<div
|
|
111
118
|
class="{{ _caption_classes }}"
|
|
112
119
|
>
|
|
113
|
-
{
|
|
120
|
+
{% if _item.caption is not empty or _item.caption_title is not empty %}
|
|
121
|
+
{% if _item.caption_classes is defined and _item.caption_classes is not empty %}
|
|
122
|
+
<div class="{{ _item.caption_classes }}">
|
|
123
|
+
{% endif %}
|
|
124
|
+
{% if _item.caption_title is not empty %}
|
|
125
|
+
<h5>{{ _item.caption_title }}</h5>
|
|
126
|
+
{% endif %}
|
|
127
|
+
{{- _item.caption -}}
|
|
128
|
+
{% if _item.caption_classes is defined and _item.caption_classes is not empty %}
|
|
129
|
+
</div>
|
|
130
|
+
{% endif %}
|
|
131
|
+
{% endif %}
|
|
132
|
+
{% if _item.link is defined and _item.link is not empty %}
|
|
133
|
+
{% include '@oe-bcl/bcl-link/link.html.twig' with _item.link only %}
|
|
134
|
+
{% endif %}
|
|
114
135
|
</div>
|
|
115
136
|
{% endif %}
|
|
116
137
|
</div>
|
|
@@ -4,11 +4,13 @@
|
|
|
4
4
|
Parameters:
|
|
5
5
|
- "background" (string) (default: 'white')
|
|
6
6
|
options: [ white, gray ]
|
|
7
|
-
- "banner" (object)
|
|
8
7
|
- "title" (object)
|
|
9
8
|
- "image" (object)
|
|
9
|
+
- "image_size" (string)
|
|
10
|
+
options: ['sm', 'md', 'lg']
|
|
10
11
|
- "content" (string)
|
|
11
12
|
- "badges" (array of objects of type badge)
|
|
13
|
+
- "links" (array of objects of type link)
|
|
12
14
|
- "action_button" (object of type button) (default: {})
|
|
13
15
|
- "service_buttons" (array of objects of type button) (default: [])
|
|
14
16
|
- "attributes" (drupal attrs)
|
|
@@ -18,6 +20,7 @@
|
|
|
18
20
|
{% set _action_button = action_button|default({}) %}
|
|
19
21
|
{% set _service_buttons = service_buttons|default([]) %}
|
|
20
22
|
{% set _image = image|default({}) %}
|
|
23
|
+
{% set _image_size = image_size|default('md') %}
|
|
21
24
|
|
|
22
25
|
{% set _css_classes = [
|
|
23
26
|
'bcl-content-banner',
|
|
@@ -45,34 +48,39 @@
|
|
|
45
48
|
{% set attributes = create_attribute() %}
|
|
46
49
|
{% endif %}
|
|
47
50
|
|
|
51
|
+
{% set _body_classes = 'pt-0 px-0 pb-0' %}
|
|
52
|
+
{% set _left_col_classes = '' %}
|
|
53
|
+
{% set _right_col_classes = 'col-md-8 col-lg-9 col-xxl-8' %}
|
|
54
|
+
|
|
55
|
+
{% if _image is not empty %}
|
|
56
|
+
{% set _left_col_classes = 'col-8 col-md-4 col-lg-3 offset-2 offset-md-0' %}
|
|
57
|
+
{% set _right_col_classes = 'col-md-8 col-lg-9 col-xxl-8' %}
|
|
58
|
+
{% set _body_classes = 'pt-4 pt-md-0 px-0 px-md-3 pb-0' %}
|
|
59
|
+
{% if _image_size == 'lg' %}
|
|
60
|
+
{% set _left_col_classes = 'col-md-4' %}
|
|
61
|
+
{% set _right_col_classes = 'col-md-8' %}
|
|
62
|
+
{% endif %}
|
|
63
|
+
{% if _image_size == 'sm' %}
|
|
64
|
+
{% set _left_col_classes = 'col-6 col-md-4 col-lg-2 offset-3 offset-md-0' %}
|
|
65
|
+
{% endif %}
|
|
66
|
+
{% endif %}
|
|
67
|
+
|
|
68
|
+
{% set _horizontal_classes = {
|
|
69
|
+
left_col_classes: _left_col_classes,
|
|
70
|
+
right_col_classes: _right_col_classes,
|
|
71
|
+
} %}
|
|
72
|
+
|
|
48
73
|
{% set _card = {
|
|
49
74
|
title: title|default({})|merge({
|
|
50
75
|
tag: 'h2',
|
|
51
76
|
attributes: create_attribute().addClass(['fw-bold']),
|
|
52
77
|
}),
|
|
53
78
|
horizontal: true,
|
|
54
|
-
horizontal_grid:
|
|
55
|
-
right_col_classes: 'col-md-8 col-lg-9 col-xxl-8',
|
|
56
|
-
},
|
|
79
|
+
horizontal_grid: _horizontal_classes,
|
|
57
80
|
extra_classes_header: 'bg-transparent pt-0 pb-0 border-0',
|
|
58
|
-
extra_classes_body:
|
|
81
|
+
extra_classes_body: _body_classes,
|
|
59
82
|
} %}
|
|
60
83
|
|
|
61
|
-
{% if _image is not empty %}
|
|
62
|
-
{% set _card = _card|merge({
|
|
63
|
-
horizontal_grid: _card.horizontal_grid|merge({
|
|
64
|
-
left_col_classes: 'col-md-4 col-lg-3',
|
|
65
|
-
}),
|
|
66
|
-
extra_classes_body: 'pt-md-0 px-0 px-md-3 pb-0',
|
|
67
|
-
}) %}
|
|
68
|
-
{% else %}
|
|
69
|
-
{% set _card = _card|merge({
|
|
70
|
-
horizontal_grid: {
|
|
71
|
-
right_col_classes: 'col-md-8 col-lg-9 col-xxl-8',
|
|
72
|
-
},
|
|
73
|
-
}) %}
|
|
74
|
-
{% endif %}
|
|
75
|
-
|
|
76
84
|
{% set _css_classes = _css_classes|merge([_modifiers[_background]]) %}
|
|
77
85
|
{% set _attributes = attributes.addClass(['bg-transparent', 'border-0']) %}
|
|
78
86
|
|
|
@@ -82,24 +90,22 @@
|
|
|
82
90
|
|
|
83
91
|
<div class="{{ _css_classes|join(' ') }}">
|
|
84
92
|
<div class="container">
|
|
85
|
-
|
|
86
|
-
{% include '@oe-bcl/bcl-card/card.html.twig' with _card %}
|
|
93
|
+
{% include '@oe-bcl/bcl-card/card.html.twig' with _card %}
|
|
87
94
|
|
|
88
|
-
{% if _action_button is not empty %}
|
|
89
|
-
<div class="
|
|
90
|
-
|
|
95
|
+
{% if _service_buttons is not empty or _action_button is not empty %}
|
|
96
|
+
<div class="d-flex justify-content-end mt-2 align-items-center">
|
|
97
|
+
{% if _service_buttons is not empty %}
|
|
98
|
+
{% for _button in _service_buttons %}
|
|
99
|
+
{% include '@oe-bcl/bcl-button/button.html.twig' with _button only %}
|
|
100
|
+
{% endfor %}
|
|
101
|
+
{% endif %}
|
|
102
|
+
{% if _action_button is not empty %}
|
|
103
|
+
<div class="d-grid d-md-block ms-3">
|
|
91
104
|
{% include '@oe-bcl/bcl-button/button.html.twig' with _action_button only %}
|
|
92
105
|
</div>
|
|
106
|
+
{% endif %}
|
|
93
107
|
</div>
|
|
94
108
|
{% endif %}
|
|
95
|
-
{% if _service_buttons is not empty %}
|
|
96
|
-
<div class="d-flex justify-content-end">
|
|
97
|
-
{% for _button in _service_buttons %}
|
|
98
|
-
{% include '@oe-bcl/bcl-button/button.html.twig' with _button only %}
|
|
99
|
-
{% endfor %}
|
|
100
|
-
</div>
|
|
101
|
-
{% endif %}
|
|
102
|
-
</div>
|
|
103
109
|
</div>
|
|
104
110
|
</div>
|
|
105
111
|
|
|
@@ -7,24 +7,29 @@
|
|
|
7
7
|
- "month" (string) (default: '')
|
|
8
8
|
- "date_time" (string) (default: '')
|
|
9
9
|
- "year" (integer) (default: '')
|
|
10
|
+
- "end_day" (integer) (default: '')
|
|
11
|
+
- "end_month" (string) (default: '')
|
|
12
|
+
- "end_year" (integer) (default: '')
|
|
10
13
|
#}
|
|
11
14
|
|
|
12
15
|
{% set _month = month|default('') %}
|
|
13
16
|
{% set _day = day|default('') %}
|
|
14
17
|
{% set _year = year|default('') %}
|
|
15
18
|
{% set _date_time = date_time|default('') %}
|
|
19
|
+
{% set _end_day = end_day|default('') %}
|
|
20
|
+
{% set _end_month = end_month|default('') %}
|
|
21
|
+
{% set _end_year = end_year|default('') %}
|
|
16
22
|
{% set _variant = variant|default('') %}
|
|
17
23
|
{% set _css_classes = [
|
|
18
24
|
'bcl-date-block',
|
|
19
|
-
'd-flex',
|
|
20
|
-
'flex-column',
|
|
21
|
-
'align-items-center',
|
|
22
|
-
'justify-content-center',
|
|
23
25
|
'bg-date',
|
|
24
|
-
'
|
|
25
|
-
'pt-2',
|
|
26
|
-
'rounded-top',
|
|
26
|
+
'rounded',
|
|
27
27
|
'mw-date',
|
|
28
|
+
'text-center',
|
|
29
|
+
'd-flex',
|
|
30
|
+
'flex-column',
|
|
31
|
+
'ratio',
|
|
32
|
+
'ratio-1x1'
|
|
28
33
|
] %}
|
|
29
34
|
|
|
30
35
|
{% if attributes is empty %}
|
|
@@ -38,8 +43,23 @@
|
|
|
38
43
|
{% endif %}
|
|
39
44
|
|
|
40
45
|
<time {{ attributes }}>
|
|
41
|
-
<span class="
|
|
42
|
-
|
|
46
|
+
<span class="d-flex flex-column pt-2">
|
|
47
|
+
<span class="d-flex flex-column align-item-center justify-content-center bg-white border border-bottom-0 w-100 h-100 fs-5 text-uppercase">
|
|
48
|
+
<span class="d-block">{{- _day ~ ' ' ~ _month ~ ((_end_day or _end_month) ? ' - ' ) -}}</span>
|
|
49
|
+
{%- if _end_day is not empty -%}
|
|
50
|
+
{{- _end_day -}}
|
|
51
|
+
{% endif %}
|
|
52
|
+
{% if _end_month is not empty %}
|
|
53
|
+
{{- _end_month -}}
|
|
54
|
+
{%- endif -%}
|
|
55
|
+
</span>
|
|
56
|
+
<span class="bg-lighter border w-100 rounded-bottom py-1">
|
|
57
|
+
{{- _year -}}
|
|
58
|
+
{%- if _end_year is not empty -%}
|
|
59
|
+
{{ ' - ' ~ _end_year }}
|
|
60
|
+
{%- endif -%}
|
|
61
|
+
</span>
|
|
62
|
+
</span>
|
|
43
63
|
</time>
|
|
44
64
|
|
|
45
65
|
{% endspaceless %}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
Parameters:
|
|
5
5
|
- title: (string) (default: "")
|
|
6
6
|
- title_tag: (string) (default: "h2")
|
|
7
|
+
- title_attributes (drupal attrs)
|
|
7
8
|
- "items" (array) (default: []): format: [
|
|
8
9
|
{
|
|
9
10
|
"term" (object or array of object) -format: {
|
|
@@ -22,6 +23,7 @@
|
|
|
22
23
|
|
|
23
24
|
{% set _title = title|default('') %}
|
|
24
25
|
{% set _title_tag = title_tag|default('h2') %}
|
|
26
|
+
{% set _title_attributes = title_attributes ?: create_attribute() %}
|
|
25
27
|
{% set _items = items|default([]) %}
|
|
26
28
|
{% set _variant = variant|default('') %}
|
|
27
29
|
|
|
@@ -34,10 +36,11 @@
|
|
|
34
36
|
{% endif %}
|
|
35
37
|
|
|
36
38
|
{% if _title is not empty %}
|
|
37
|
-
{%
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
39
|
+
{% include '@oe-bcl/bcl-heading/heading.html.twig' with {
|
|
40
|
+
title: _title,
|
|
41
|
+
title_tag: _title_tag,
|
|
42
|
+
attributes: _title_attributes,
|
|
43
|
+
} only %}
|
|
41
44
|
{% endif %}
|
|
42
45
|
|
|
43
46
|
<dl
|
|
@@ -63,10 +66,14 @@
|
|
|
63
66
|
{% include '@oe-bcl/bcl-icon/icon.html.twig' with _term.icon|merge({
|
|
64
67
|
attributes: create_attribute().addClass(_icon_classes)
|
|
65
68
|
}) only %}
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
69
|
+
<p class="mb-0 d-inline-block">{{ _term.label }}</p>
|
|
70
|
+
{%- elseif _term.color is not empty -%}
|
|
71
|
+
<div class="d-flex align-items-center">
|
|
72
|
+
<span class="p-2 me-2 d-inline-block rounded-1 {{ _term.color }}"></span>{{- _term.label -}}
|
|
73
|
+
</div>
|
|
74
|
+
{%- else -%}
|
|
75
|
+
{{- _term.label -}}
|
|
76
|
+
{%- endif -%}
|
|
70
77
|
</dt>
|
|
71
78
|
{% endfor %}
|
|
72
79
|
{% if _variant == 'horizontal' %}
|
|
@@ -87,6 +94,10 @@
|
|
|
87
94
|
attributes: create_attribute().addClass(_icon_classes)
|
|
88
95
|
}) only -%}
|
|
89
96
|
<p class="mb-0 d-inline-block">{{ _item.term.label }}</p>
|
|
97
|
+
{%- elseif _item.term.color is not empty -%}
|
|
98
|
+
<div class="d-flex align-items-center">
|
|
99
|
+
<span class="p-2 me-2 d-inline-block rounded-1 {{ _item.term.color }}"></span>{{- _item.term.label -}}
|
|
100
|
+
</div>
|
|
90
101
|
{%- else -%}
|
|
91
102
|
{{- _item.term.label -}}
|
|
92
103
|
{%- endif -%}
|
|
@@ -96,10 +107,10 @@
|
|
|
96
107
|
{% if _item.definition is not empty %}
|
|
97
108
|
{% if _item.definition is iterable %}
|
|
98
109
|
{% if _variant == 'horizontal' %}
|
|
99
|
-
<
|
|
110
|
+
<dd>
|
|
100
111
|
{% endif %}
|
|
101
112
|
{% for _definition in _item.definition %}
|
|
102
|
-
<dd>
|
|
113
|
+
{% if _variant == 'horizontal' %}<div>{% else %}<dd>{% endif %}
|
|
103
114
|
{%- if _definition.button is defined -%}
|
|
104
115
|
{% include '@oe-bcl/bcl-button/button.html.twig' with _definition.button only %}
|
|
105
116
|
{%- elseif _definition.link is defined %}
|
|
@@ -115,10 +126,10 @@
|
|
|
115
126
|
{{- _definition.label -}}
|
|
116
127
|
{%- endif -%}
|
|
117
128
|
{%- endif -%}
|
|
118
|
-
</dd>
|
|
129
|
+
{% if _variant == 'horizontal' %}</div>{% else %}</dd>{% endif %}
|
|
119
130
|
{% endfor %}
|
|
120
131
|
{% if _variant == 'horizontal' %}
|
|
121
|
-
</
|
|
132
|
+
</dd>
|
|
122
133
|
{% endif %}
|
|
123
134
|
{% else %}
|
|
124
135
|
<dd>
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
- "gutter" (int) (default: 4)
|
|
19
19
|
- "equal_height" (boolean) (default: false)
|
|
20
20
|
- "cols_extra_classes" (string) (default: '')
|
|
21
|
-
- "
|
|
21
|
+
- "icon_path" (string) (default: '')
|
|
22
22
|
- "link_more" (object of type link) (default {})
|
|
23
23
|
#}
|
|
24
24
|
|
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
|
|
27
27
|
{% set _title = title|default('') %}
|
|
28
28
|
{% set _title_tag = title_tag|default('h2') %}
|
|
29
|
+
{% set _title_attributes = title_attributes ?: create_attribute().addClass(['fw-bold']) %}
|
|
29
30
|
{% set _variant = variant|default('default') %}
|
|
30
31
|
{% set _css_classes = ['bcl-fact-figures', 'bcl-fact-figures--' ~ _variant] %}
|
|
31
32
|
{% set _display_icons = display_icons ?? true %}
|
|
@@ -37,7 +38,7 @@
|
|
|
37
38
|
{% set _equal_height = equal_height|default(false) %}
|
|
38
39
|
{% set _cols_extra_classes = cols_extra_classes|default('') %}
|
|
39
40
|
{% set _cols_classes = 'col' %}
|
|
40
|
-
{% set
|
|
41
|
+
{% set _icon_path = icon_path|default('') %}
|
|
41
42
|
{% set _link_more = link_more|default({}) %}
|
|
42
43
|
{% set _wrapper_classes = [] %}
|
|
43
44
|
|
|
@@ -68,8 +69,11 @@
|
|
|
68
69
|
|
|
69
70
|
<div {{ attributes }}>
|
|
70
71
|
{% if _title is not empty %}
|
|
71
|
-
{%
|
|
72
|
-
|
|
72
|
+
{% include '@oe-bcl/bcl-heading/heading.html.twig' with {
|
|
73
|
+
title: _title,
|
|
74
|
+
title_tag: _title_tag,
|
|
75
|
+
attributes: _title_attributes,
|
|
76
|
+
} only %}
|
|
73
77
|
{% endif %}
|
|
74
78
|
<div
|
|
75
79
|
{% if _wrapper_classes is not empty %}
|
|
@@ -83,7 +87,7 @@
|
|
|
83
87
|
{% if _item.icon is defined and _item.icon is not empty and _display_icons %}
|
|
84
88
|
{% set _item = _item|merge({
|
|
85
89
|
icon: _item.icon|merge({
|
|
86
|
-
path:
|
|
90
|
+
path: _icon_path,
|
|
87
91
|
size: 'l',
|
|
88
92
|
})
|
|
89
93
|
}) %}
|