@openeuropa/bcl-theme-default 0.4298.202511051800 → 0.4360.202601141610

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.
Files changed (114) hide show
  1. package/css/oe-bcl-ckeditor5.min.css +1 -1
  2. package/css/oe-bcl-ckeditor5.min.css.map +1 -1
  3. package/css/oe-bcl-default.css +167 -85
  4. package/css/oe-bcl-default.css.map +1 -1
  5. package/css/oe-bcl-default.min.css +1 -1
  6. package/css/oe-bcl-default.min.css.map +1 -1
  7. package/js/oe-bcl-default.bundle.js +112 -1
  8. package/js/oe-bcl-default.bundle.js.map +1 -1
  9. package/js/oe-bcl-default.bundle.min.js +1 -1
  10. package/js/oe-bcl-default.bundle.min.js.map +1 -1
  11. package/js/oe-bcl-default.esm.js +111 -1
  12. package/js/oe-bcl-default.esm.js.map +1 -1
  13. package/js/oe-bcl-default.esm.min.js +1 -1
  14. package/js/oe-bcl-default.esm.min.js.map +1 -1
  15. package/js/oe-bcl-default.umd.js +112 -1
  16. package/js/oe-bcl-default.umd.js.map +1 -1
  17. package/js/oe-bcl-default.umd.min.js +1 -1
  18. package/js/oe-bcl-default.umd.min.js.map +1 -1
  19. package/package.json +5 -5
  20. package/src/js/header/header.js +91 -0
  21. package/src/js/index.esm.js +2 -0
  22. package/src/js/index.umd.js +2 -0
  23. package/src/js/mega-menu/mega-menu.js +57 -0
  24. package/src/scss/_header.scss +6 -2
  25. package/src/scss/_input.scss +72 -31
  26. package/src/scss/_mega-menu.scss +57 -58
  27. package/src/scss/_multiselect-2.scss +21 -11
  28. package/src/scss/_pagination.scss +1 -0
  29. package/src/scss/_search-form.scss +4 -0
  30. package/src/scss/base/_colors.scss +1 -0
  31. package/src/scss/base/_mixins.scss +12 -0
  32. package/templates/bcl-accordion/accordion.html.twig +42 -46
  33. package/templates/bcl-alert/alert.html.twig +18 -21
  34. package/templates/bcl-badge/badge.html.twig +11 -15
  35. package/templates/bcl-banner/banner.html.twig +34 -37
  36. package/templates/bcl-base-templates/content-type.html.twig +63 -67
  37. package/templates/bcl-base-templates/listing-page.html.twig +31 -31
  38. package/templates/bcl-base-templates/sidebar-search.html.twig +10 -10
  39. package/templates/bcl-blockquote/blockquote.html.twig +17 -20
  40. package/templates/bcl-breadcrumb/breadcrumb.html.twig +24 -28
  41. package/templates/bcl-button/button.html.twig +24 -27
  42. package/templates/bcl-button-group/button-group.html.twig +25 -29
  43. package/templates/bcl-card/card.html.twig +98 -101
  44. package/templates/bcl-card-layout/card-layout.html.twig +34 -37
  45. package/templates/bcl-carousel/carousel.html.twig +64 -67
  46. package/templates/bcl-contact-form/contact-form.html.twig +1 -1
  47. package/templates/bcl-content-banner/content-banner.html.twig +37 -40
  48. package/templates/bcl-date-block/date-block.html.twig +26 -29
  49. package/templates/bcl-description-list/description-list-details.html.twig +6 -9
  50. package/templates/bcl-description-list/description-list-title.html.twig +11 -14
  51. package/templates/bcl-description-list/description-list.html.twig +44 -48
  52. package/templates/bcl-dropdown/dropdown.html.twig +48 -52
  53. package/templates/bcl-event/event.html.twig +7 -7
  54. package/templates/bcl-fact-figures/fact-figures.html.twig +34 -37
  55. package/templates/bcl-featured-media/featured-media.html.twig +42 -46
  56. package/templates/bcl-file/file-translations.html.twig +29 -32
  57. package/templates/bcl-file/file.html.twig +47 -50
  58. package/templates/bcl-footer/footer.html.twig +31 -34
  59. package/templates/bcl-form/form.html.twig +70 -73
  60. package/templates/bcl-form-input/form-input.html.twig +57 -61
  61. package/templates/bcl-gallery/gallery-item.html.twig +20 -23
  62. package/templates/bcl-gallery/gallery.html.twig +62 -66
  63. package/templates/bcl-glossary/glossary-detail.html.twig +19 -19
  64. package/templates/bcl-glossary/glossary-listing.html.twig +6 -6
  65. package/templates/bcl-group/group-landing.html.twig +69 -69
  66. package/templates/bcl-group/group.html.twig +19 -19
  67. package/templates/bcl-header/header.html.twig +71 -82
  68. package/templates/bcl-heading/heading.html.twig +13 -17
  69. package/templates/bcl-icon/icon.html.twig +10 -13
  70. package/templates/bcl-inpage-navigation/inpage-navigation.html.twig +20 -23
  71. package/templates/bcl-landing-page/landing-page.html.twig +33 -33
  72. package/templates/bcl-language-list/language-list-grid.html.twig +25 -28
  73. package/templates/bcl-language-list/language-list-modal.html.twig +52 -52
  74. package/templates/bcl-language-list/language-list.html.twig +33 -37
  75. package/templates/bcl-language-switcher/language-switcher.html.twig +12 -15
  76. package/templates/bcl-link/link.html.twig +24 -27
  77. package/templates/bcl-links-block/links-block.html.twig +30 -34
  78. package/templates/bcl-list-group/list-group.html.twig +43 -47
  79. package/templates/bcl-listing/listing.html.twig +88 -91
  80. package/templates/bcl-mega-menu/mega-menu-items.html.twig +18 -21
  81. package/templates/bcl-mega-menu/mega-menu-submenu.html.twig +28 -26
  82. package/templates/bcl-mega-menu/mega-menu.html.twig +37 -38
  83. package/templates/bcl-modal/modal.html.twig +21 -23
  84. package/templates/bcl-navbar/navbar.html.twig +35 -38
  85. package/templates/bcl-navigation/navigation.html.twig +105 -110
  86. package/templates/bcl-offcanvas/offcanvas.html.twig +33 -36
  87. package/templates/bcl-page/page.html.twig +27 -27
  88. package/templates/bcl-pagination/pagination-item.html.twig +22 -26
  89. package/templates/bcl-pagination/pagination.html.twig +59 -62
  90. package/templates/bcl-pagination-v2/pagination-item.html.twig +31 -35
  91. package/templates/bcl-pagination-v2/pagination.html.twig +79 -82
  92. package/templates/bcl-person/person.html.twig +12 -12
  93. package/templates/bcl-placeholder/placeholder.html.twig +14 -18
  94. package/templates/bcl-progress/progress.html.twig +16 -20
  95. package/templates/bcl-project/project-lists.html.twig +25 -29
  96. package/templates/bcl-project/project.html.twig +35 -35
  97. package/templates/bcl-project-status/project-contributions.html.twig +25 -28
  98. package/templates/bcl-project-status/project-status.html.twig +32 -37
  99. package/templates/bcl-recent-activities/recent-activities.html.twig +13 -16
  100. package/templates/bcl-search/search.html.twig +12 -12
  101. package/templates/bcl-search-form/search-form.html.twig +21 -24
  102. package/templates/bcl-select/select.html.twig +52 -56
  103. package/templates/bcl-spinner/spinner.html.twig +10 -13
  104. package/templates/bcl-subscription/subscription-modal.html.twig +7 -7
  105. package/templates/bcl-subscription/subscription.html.twig +3 -3
  106. package/templates/bcl-subscription-block/subscription-block.html.twig +14 -17
  107. package/templates/bcl-table/table.html.twig +61 -65
  108. package/templates/bcl-textarea/textarea.html.twig +44 -47
  109. package/templates/bcl-timeline/timeline-item.html.twig +12 -15
  110. package/templates/bcl-timeline/timeline.html.twig +42 -45
  111. package/templates/bcl-toasts/toasts.html.twig +56 -60
  112. package/templates/bcl-user/user-compact.html.twig +24 -27
  113. package/templates/bcl-user/user-terms.html.twig +6 -6
  114. package/templates/bcl-user/user.html.twig +117 -117
@@ -1,5 +1,3 @@
1
- {% apply spaceless %}
2
-
3
1
  {# Parameters:
4
2
  - flush (boolean) (default: false)
5
3
  - horizontal (string) (default: '')
@@ -27,58 +25,58 @@
27
25
  - attributes (drupal attrs)
28
26
  #}
29
27
 
30
- {% set _flush = flush ?? false %}
28
+ {%- set _flush = flush ?? false %}
31
29
  {% set _horizontal = horizontal|default('') %}
32
30
  {% set _id = id|default('') %}
33
31
  {% set _type = type|default('unordered') %}
34
32
  {% set _items = items|default([]) %}
35
33
 
36
- {% set _classes = ['list-group'] %}
34
+ {%- set _classes = ['list-group'] %}
37
35
 
38
- {% if _flush %}
39
- {% set _classes = _classes|merge(['list-group-flush']) %}
36
+ {%- if _flush %}
37
+ {%- set _classes = _classes|merge(['list-group-flush']) %}
40
38
  {% endif %}
41
39
  {% if _type == 'ordered' %}
42
- {% set _classes = _classes|merge(['list-group-numbered']) %}
40
+ {%- set _classes = _classes|merge(['list-group-numbered']) %}
43
41
  {% endif %}
44
42
  {% if _horizontal is not empty %}
45
- {% set _classes = _classes|merge(['list-group-' ~ _horizontal]) %}
43
+ {%- set _classes = _classes|merge(['list-group-' ~ _horizontal]) %}
46
44
  {% endif %}
47
45
 
48
- {% if attributes is empty %}
49
- {% set attributes = create_attribute() %}
46
+ {%- if attributes is empty %}
47
+ {%- set attributes = create_attribute() %}
50
48
  {% endif %}
51
49
 
52
- {% if _id is not empty %}
53
- {% set attributes = attributes.setAttribute('id', _id) %}
50
+ {%- if _id is not empty %}
51
+ {%- set attributes = attributes.setAttribute('id', _id) %}
54
52
  {% endif %}
55
53
  {% set attributes = attributes.addClass(_classes) %}
56
54
 
57
- {% if _type == 'unordered' %}
55
+ {%- if _type == 'unordered' -%}
58
56
  <ul
59
57
  {{ attributes }}
60
58
  >
61
- {% endif %}
62
- {% if _type == 'ordered' %}
59
+ {%- endif %}
60
+ {% if _type == 'ordered' -%}
63
61
  <ol
64
62
  {{ attributes }}
65
63
  >
66
- {% endif %}
67
- {% if _type == 'actionable' %}
64
+ {%- endif %}
65
+ {% if _type == 'actionable' -%}
68
66
  <div
69
67
  {{ attributes }}
70
68
  >
71
- {% endif %}
69
+ {%- endif %}
72
70
  {% if _items is not empty and _items is iterable %}
73
- {% for _item in _items %}
74
- {% if _type == 'unordered' or _type == 'ordered' %}
75
- {% set _item_class = 'list-group-item' %}
76
- {% if _item.variant is not empty %}
77
- {% set _item_class = _item_class ~ ' list-group-item-' ~ _item.variant %}
78
- {% endif %}
79
- {% if _item.extra_classes is not empty %}
80
- {% set _item_class = _item_class ~ ' ' ~ _item.extra_classes %}
81
- {% endif %}
71
+ {%- for _item in _items %}
72
+ {%- if _type == 'unordered' or _type == 'ordered' %}
73
+ {%- set _item_class = 'list-group-item' %}
74
+ {%- if _item.variant is not empty %}
75
+ {%- set _item_class = _item_class ~ ' list-group-item-' ~ _item.variant %}
76
+ {%- endif %}
77
+ {%- if _item.extra_classes is not empty %}
78
+ {%- set _item_class = _item_class ~ ' ' ~ _item.extra_classes %}
79
+ {%- endif -%}
82
80
  <li class="{{ _item_class }}">
83
81
  {%- if _item.input is defined -%}
84
82
  {% include '@oe-bcl/bcl-form-input/form-input.html.twig' with _item only %}
@@ -89,32 +87,30 @@
89
87
  {%- endif -%}
90
88
  {%- endif -%}
91
89
  </li>
92
- {% else %}
93
- {% if _item.attributes is empty %}
94
- {% set _item = _item|merge({
90
+ {%- else %}
91
+ {%- if _item.attributes is empty %}
92
+ {%- set _item = _item|merge({
95
93
  attributes: create_attribute()
96
94
  }) %}
97
- {% endif %}
98
- {% set _item = _item|merge({
95
+ {%- endif %}
96
+ {%- set _item = _item|merge({
99
97
  clean_class: true,
100
98
  attributes: _item.attributes.addClass(['list-group-item', 'list-group-item-action'])
101
99
  }) %}
102
- {% if _item.button is defined %}
103
- {% include '@oe-bcl/bcl-button/button.html.twig' with _item only %}
104
- {% else %}
105
- {% include '@oe-bcl/bcl-link/link.html.twig' with _item only %}
106
- {% endif %}
107
- {% endif %}
108
- {% endfor %}
100
+ {%- if _item.button is defined %}
101
+ {%- include '@oe-bcl/bcl-button/button.html.twig' with _item only %}
102
+ {%- else %}
103
+ {%- include '@oe-bcl/bcl-link/link.html.twig' with _item only %}
104
+ {%- endif %}
105
+ {%- endif %}
106
+ {%- endfor %}
109
107
  {% endif %}
110
- {% if _type == 'unordered' %}
108
+ {% if _type == 'unordered' -%}
111
109
  </ul>
112
- {% endif %}
113
- {% if _type == 'ordered' %}
110
+ {%- endif %}
111
+ {% if _type == 'ordered' -%}
114
112
  </ol>
115
- {% endif %}
116
- {% if _type == 'actionable' %}
113
+ {%- endif %}
114
+ {% if _type == 'actionable' -%}
117
115
  </div>
118
- {% endif %}
119
-
120
- {% endapply %}
116
+ {%- endif -%}
@@ -1,5 +1,3 @@
1
- {% apply spaceless %}
2
-
3
1
  {# Parameters:
4
2
  - title: (string) (default: '')
5
3
  - title_tag: (string) (default: 'h2')
@@ -16,7 +14,7 @@
16
14
  - attributes (drupal attrs)
17
15
  #}
18
16
 
19
- {% set _title = title|default('') %}
17
+ {%- set _title = title|default('') %}
20
18
  {% set _title_tag = title_tag|default('h2') %}
21
19
  {% set _title_link = title_link|default({}) %}
22
20
  {% set _title_attributes = title_attributes ?: create_attribute() %}
@@ -26,7 +24,7 @@
26
24
  {% set _alignment = alignment|default('') %}
27
25
  {% set _image_size = image_size|default('') %}
28
26
 
29
- {% set _classes = ['bcl-listing', 'bcl-listing--' ~ _variant] %}
27
+ {%- set _classes = ['bcl-listing', 'bcl-listing--' ~ _variant] %}
30
28
  {% set _cards = [] %}
31
29
  {% set _card_layout = {
32
30
  type: 'grid',
@@ -35,16 +33,16 @@
35
33
  attributes: create_attribute(),
36
34
  } %}
37
35
 
38
- {% if attributes is empty %}
39
- {% set attributes = create_attribute() %}
36
+ {%- if attributes is empty %}
37
+ {%- set attributes = create_attribute() %}
40
38
  {% endif %}
41
39
 
42
- {% set attributes = attributes.addClass(_classes) %}
40
+ {%- set attributes = attributes.addClass(_classes) -%}
43
41
 
44
42
  <div {{ attributes }}>
45
43
 
46
- {% if _title is not empty %}
47
- {% include '@oe-bcl/bcl-heading/heading.html.twig' with {
44
+ {%- if _title is not empty %}
45
+ {%- include '@oe-bcl/bcl-heading/heading.html.twig' with {
48
46
  title: _title,
49
47
  title_tag: _title_tag,
50
48
  title_link: _title_link,
@@ -52,37 +50,37 @@
52
50
  } only %}
53
51
  {% endif %}
54
52
 
55
- {% if _items is not empty %}
56
- {% for _card in _items %}
57
- {% set _alignment_class = '' %}
58
- {% set _image_classes = _card.image.classes ?: '' %}
59
- {% set _start_col_classes = 'bcl-card-start-col mb-3 mb-lg-0' %}
60
- {% set _end_col_classes = 'col-12 col-md' %}
61
- {% if _image_size is not empty %}
62
- {% set _start_col_classes = _start_col_classes ~ ' bcl-size-' ~ _image_size %}
63
- {% endif %}
64
- {% if 'd-none' in _image_classes %}
65
- {% set _start_col_classes = _start_col_classes ~ ' d-none d-md-block' %}
66
- {% endif %}
67
- {% if _alignment is not empty %}
68
- {% set _alignment_class = ' align-self-' ~ _alignment %}
69
- {% endif %}
70
- {% set _card_classes = [] %}
71
- {% set _card_attributes = card.attributes ? card.attributes : create_attribute() %}
72
- {% set _card_title_attributes = card.title_attributes ? card.title_attributes : create_attribute() %}
73
- {% set _card = _card|merge({
74
- title_attributes: _card_title_attributes.addClass(['fs-5'])
53
+ {%- if _items is not empty %}
54
+ {%- for _card in _items %}
55
+ {%- set _alignment_class = '' %}
56
+ {%- set _image_classes = _card.image.classes ?: '' %}
57
+ {%- set _start_col_classes = 'bcl-card-start-col mb-3 mb-lg-0' %}
58
+ {%- set _end_col_classes = 'col-12 col-md' %}
59
+ {%- if _image_size is not empty %}
60
+ {%- set _start_col_classes = _start_col_classes ~ ' bcl-size-' ~ _image_size %}
61
+ {%- endif %}
62
+ {%- if 'd-none' in _image_classes %}
63
+ {%- set _start_col_classes = _start_col_classes ~ ' d-none d-md-block' %}
64
+ {%- endif %}
65
+ {%- if _alignment is not empty %}
66
+ {%- set _alignment_class = ' align-self-' ~ _alignment %}
67
+ {%- endif %}
68
+ {%- set _card_classes = [] %}
69
+ {%- set _card_attributes = card.attributes ? card.attributes : create_attribute() %}
70
+ {%- set _card_title_attributes = card.title_attributes ? card.title_attributes : create_attribute() %}
71
+ {%- set _card = _card|merge({
72
+ title_attributes: _card_title_attributes.addClass(['h5'])
75
73
  }) %}
76
74
 
77
- {% if _variant == 'default-1-col' or _variant == 'default-2-col' or _variant == 'default-3-col' %}
78
- {% set _card_classes = [
75
+ {%- if _variant == 'default-1-col' or _variant == 'default-2-col' or _variant == 'default-3-col' %}
76
+ {%- set _card_classes = [
79
77
  'listing-item',
80
78
  'border-bottom',
81
79
  'border-md-0',
82
80
  'border-0',
83
81
  ] %}
84
- {% set _card_attributes = _card_attributes.addClass(_card_classes) %}
85
- {% set _card = _card|merge({
82
+ {%- set _card_attributes = _card_attributes.addClass(_card_classes) %}
83
+ {%- set _card = _card|merge({
86
84
  horizontal: true,
87
85
  extra_classes_body: 'p-0 pb-md-0 pb-3',
88
86
  attributes: _card_attributes,
@@ -91,109 +89,108 @@
91
89
  right_col_classes: _end_col_classes ~ _alignment_class,
92
90
  }
93
91
  }) %}
94
-
95
- {% if _variant == 'default-2-col' %}
96
- {% set _card_layout = _card_layout|merge({
92
+
93
+ {%- if _variant == 'default-2-col' %}
94
+ {%- set _card_layout = _card_layout|merge({
97
95
  responsive_columns: 2,
98
96
  }) %}
99
- {% elseif _variant == 'default-3-col' %}
100
- {% set _card_layout = _card_layout|merge({
97
+ {%- elseif _variant == 'default-3-col' %}
98
+ {%- set _card_layout = _card_layout|merge({
101
99
  attributes: _card_layout.attributes.addClass(['row-cols-md-2']),
102
100
  responsive_columns: 3,
103
101
  responsiveness: 'xl',
104
102
  }) %}
105
- {% endif %}
106
- {% endif %}
103
+ {%- endif %}
104
+ {%- endif %}
107
105
 
108
- {% if _variant == 'highlight-1-col' %}
109
- {% set _card_classes = [
106
+ {%- if _variant == 'highlight-1-col' %}
107
+ {%- set _card_classes = [
110
108
  'listing-item--highlight',
111
109
  'border-0',
112
110
  'bg-lighter'
113
111
  ] %}
114
- {% set _card_attributes = _card_attributes.addClass(_card_classes) %}
115
- {% set _card = _card|merge({
112
+ {%- set _card_attributes = _card_attributes.addClass(_card_classes) %}
113
+ {%- set _card = _card|merge({
116
114
  wrapper_class: 'col',
117
115
  attributes: _card_attributes,
118
116
  }) %}
119
- {% if _card.image is defined and _card.image is not empty %}
120
- {% set _card = _card|merge({
117
+ {%- if _card.image is defined and _card.image is not empty %}
118
+ {%- set _card = _card|merge({
121
119
  extra_classes_body: "pt-0",
122
120
  }) %}
123
- {% endif %}
124
- {% set _card_layout = _card_layout|merge({
121
+ {%- endif %}
122
+ {%- set _card_layout = _card_layout|merge({
125
123
  cols_extra_classes: 'mt-4-5',
126
124
  }) %}
127
- {% if _card.image is not empty %}
128
- {% set _image_classes = _card.image.classes ?: '' %}
129
- {% if not _alignment == 'center' %}
130
- {% set _image_classes = _image_classes ? _image_classes ~ ' mb-3' : 'mb-3' %}
131
- {% endif %}
132
- {% set _card = _card|merge({image: _card.image|merge({
125
+ {%- if _card.image is not empty %}
126
+ {%- set _image_classes = _card.image.classes ?: '' %}
127
+ {%- if not _alignment == 'center' %}
128
+ {%- set _image_classes = _image_classes ? _image_classes ~ ' mb-3' : 'mb-3' %}
129
+ {%- endif %}
130
+ {%- set _card = _card|merge({image: _card.image|merge({
133
131
  classes: _image_classes,
134
132
  })}) %}
135
- {% endif %}
133
+ {%- endif %}
136
134
 
137
- {% endif %}
135
+ {%- endif %}
138
136
 
139
- {% if _variant == 'highlight-2-col' or variant == 'highlight-3-col' %}
140
- {% set _card_classes = [
137
+ {%- if _variant == 'highlight-2-col' or variant == 'highlight-3-col' %}
138
+ {%- set _card_classes = [
141
139
  'listing-item--highlight',
142
140
  'border-0',
143
141
  'bg-lighter',
144
142
  'h-100',
145
143
  'rounded-2'
146
144
  ] %}
147
- {% set _card_attributes = _card_attributes.addClass(_card_classes) %}
148
- {% set _card = _card|merge({
145
+ {%- set _card_attributes = _card_attributes.addClass(_card_classes) %}
146
+ {%- set _card = _card|merge({
149
147
  wrapper_class: 'col',
150
148
  attributes: _card_attributes,
151
149
  }) %}
152
- {% if _card.image is defined and _card.image is not empty %}
153
- {% set _card = _card|merge({
150
+ {%- if _card.image is defined and _card.image is not empty %}
151
+ {%- set _card = _card|merge({
154
152
  extra_classes_body: 'pt-0',
155
153
  }) %}
156
- {% endif %}
157
- {% if _card.image is not empty %}
158
- {% set _image_classes = _card.image.classes ?: '' %}
159
- {% if not _alignment == 'center' %}
160
- {% set _image_classes = _image_classes ? _image_classes ~ ' mb-3' : 'mb-3' %}
161
- {% endif %}
162
- {% set _card = _card|merge({image: _card.image|merge({
154
+ {%- endif %}
155
+ {%- if _card.image is not empty %}
156
+ {%- set _image_classes = _card.image.classes ?: '' %}
157
+ {%- if not _alignment == 'center' %}
158
+ {%- set _image_classes = _image_classes ? _image_classes ~ ' mb-3' : 'mb-3' %}
159
+ {%- endif %}
160
+ {%- set _card = _card|merge({image: _card.image|merge({
163
161
  classes: _image_classes,
164
162
  })}) %}
165
- {% endif %}
166
- {% set _card_layout = _card_layout|merge({ gutter: '4' }) %}
167
- {% if variant == 'highlight-2-col' %}
168
- {% set _card_layout = _card_layout|merge({ responsive_columns: 2 }) %}
169
- {% else %}
170
- {% set _card_layout = _card_layout|merge({ responsive_columns: 3 }) %}
171
- {% endif %}
172
- {% endif %}
173
-
174
- {% if _card.image is empty and _card.date is empty %}
175
- {% set _card = _card|merge({
163
+ {%- endif %}
164
+ {%- set _card_layout = _card_layout|merge({ gutter: '4' }) %}
165
+ {%- if variant == 'highlight-2-col' %}
166
+ {%- set _card_layout = _card_layout|merge({ responsive_columns: 2 }) %}
167
+ {%- else %}
168
+ {%- set _card_layout = _card_layout|merge({ responsive_columns: 3 }) %}
169
+ {%- endif %}
170
+ {%- endif %}
171
+
172
+ {%- if _card.image is empty and _card.date is empty %}
173
+ {%- set _card = _card|merge({
176
174
  horizontal: false,
177
175
  }) %}
178
- {% endif %}
176
+ {%- endif %}
179
177
 
180
- {% set _cards = _cards|merge([_card]) %}
181
- {% endfor %}
178
+ {%- set _cards = _cards|merge([_card]) %}
179
+ {%- endfor %}
182
180
  {% endif %}
183
181
 
184
- {% include "@oe-bcl/bcl-card-layout/card-layout.html.twig" with _card_layout|merge({ items: _cards }) only %}
182
+ {%- include "@oe-bcl/bcl-card-layout/card-layout.html.twig" with _card_layout|merge({ items: _cards }) only %}
185
183
 
186
- {% if _link is not empty %}
187
- {% set _link_attributes = _link.attributes ? _link.attributes : create_attribute() %}
188
- {% set _link_attributes = _link_attributes.addClass(['mt-3-5', 'd-inline-block']) %}
189
- {% include '@oe-bcl/bcl-link/link.html.twig' with _link|merge({
184
+ {%- if _link is not empty %}
185
+ {%- set _link_attributes = _link.attributes ? _link.attributes : create_attribute() %}
186
+ {%- set _link_attributes = _link_attributes.addClass(['mt-3-5', 'd-inline-block']) %}
187
+ {%- include '@oe-bcl/bcl-link/link.html.twig' with _link|merge({
190
188
  attributes: _link_attributes,
191
189
  icon: _link.icon|merge({
192
190
  name: 'chevron-right',
193
191
  size: 'xs',
194
192
  }),
195
193
  }) only %}
196
- {% endif %}
194
+ {% endif -%}
197
195
  </div>
198
-
199
- {% endapply %}
196
+ {#--#}
@@ -1,35 +1,32 @@
1
- {% apply spaceless %}
2
-
3
1
  {% set _label = label ?? null %}
4
2
  {% set _items = items ?? [] %}
5
3
  {% set _icon_path = icon_path ?? '' %}
6
4
  {% set _level = level ?? 1 %}
7
- {% set _see_all = see_all ?? null %}
5
+ {% set _see_all = see_all ?? null -%}
8
6
 
9
7
  <ul class="bcl-mega-menu__items __level-{{ _level }}">
10
- {% for _item in _items %}
11
- {% set _li_attributes = _item.li_attributes ?? create_attribute() %}
12
- {% if _item.items is defined and _item.items is not empty %}
13
- {# This is a parent item. #}
8
+ {%- for _item in _items %}
9
+ {%- set _li_attributes = _item.li_attributes ?? create_attribute() %}
10
+ {%- if _item.items is defined and _item.items is not empty %}
11
+ {#- This is a parent item. -#}
14
12
  <li{{ _li_attributes.addClass('__parent') }}>
15
- {% include '@oe-bcl/bcl-mega-menu/mega-menu-submenu.html.twig' with _item|merge({
13
+ {%- include '@oe-bcl/bcl-mega-menu/mega-menu-submenu.html.twig' with _item|merge({
16
14
  icon_path: _icon_path,
17
15
  level: _level + 1,
18
- }) only %}
16
+ }) only -%}
19
17
  </li>
20
- {% else %}
21
- {# This is a leaf item. #}
18
+ {%- else %}
19
+ {#- This is a leaf item. -#}
22
20
  <li{{ _li_attributes.addClass('__leaf') }}>
23
- {% if _item.path is empty %}
24
- {# This is a nolink item. #}
21
+ {%- if _item.path is empty %}
22
+ {#- This is a nolink item. -#}
25
23
  <span{{ _item.attributes ?? '' }}>{{ _item.label }}</span>
26
- {% else %}
27
- {# This is a link. #}
28
- {% include '@oe-bcl/bcl-link/link.html.twig' with _item only %}
29
- {% endif %}
24
+ {%- else %}
25
+ {#- This is a link. #}
26
+ {%- include '@oe-bcl/bcl-link/link.html.twig' with _item only %}
27
+ {%- endif -%}
30
28
  </li>
31
- {% endif %}
32
- {% endfor %}
29
+ {%- endif %}
30
+ {%- endfor -%}
33
31
  </ul>
34
-
35
- {% endapply %}
32
+ {#--#}
@@ -1,15 +1,13 @@
1
- {% apply spaceless %}
2
-
3
1
  {% set _items = items ?? [] %}
4
2
  {% set _trigger = trigger ?? null %}
5
3
  {% set _icon_path = icon_path ?? '' %}
6
4
  {% set _level = level ?? 2 %}
7
5
  {% set _see_all = see_all ?? null %}
8
6
 
9
- {% set _trigger_id = _trigger.id|default('mm-trigger-' ~ random(10000)) %}
7
+ {%- set _trigger_id = _trigger.id|default('mm-trigger-' ~ random(10000)) %}
10
8
  {% set _panel_id = 'mm-panel-' ~ _trigger_id %}
11
9
 
12
- {% set _trigger_attributes = _trigger.attributes ?? create_attribute() %}
10
+ {%- set _trigger_attributes = _trigger.attributes ?? create_attribute() %}
13
11
  {% set _trigger = _trigger|merge({
14
12
  attributes: _trigger_attributes
15
13
  .setAttribute('id', _trigger_id)
@@ -21,45 +19,49 @@
21
19
  }) %}
22
20
  {% include '@oe-bcl/bcl-button/button.html.twig' with _trigger only %}
23
21
 
24
- {# Add an optional "See all" link as last item. #}
22
+ {%- set _see_all_link = null %}
23
+ {# Prepare an optional "See all" link rendered outside the list. #}
25
24
  {% if _see_all is not empty %}
26
- {# Wrap the label for an ellipsis. #}
27
- {% set _see_all_label %}
25
+ {%- set _see_all_label -%}
28
26
  <span>{{- _see_all.label -}}</span>
29
- {% endset %}
30
- {% set _see_all_attr = (_see_all.attributes is defined ? _see_all.attributes : create_attribute()) %}
31
- {% set _see_all = _see_all|merge({
27
+ {%- endset %}
28
+ {%- set _see_all_attr = (_see_all.attributes is defined ? _see_all.attributes : create_attribute()) %}
29
+ {%- set _see_all_link = _see_all|merge({
32
30
  label: _see_all_label,
33
31
  icon: {
32
+ size: 'xs',
34
33
  name: 'arrow-right',
35
34
  path: _icon_path,
36
35
  },
37
- li_attributes: create_attribute()
38
- .addClass('__see_all'),
39
36
  attributes: _see_all_attr
40
37
  .addClass(['see-all-button'])
41
38
  .setAttribute('aria-label', 'See all items in ‘' ~ _trigger.label ~ '’')
42
39
  }) %}
43
- {% set _items = _items|merge([_see_all]) %}
44
40
  {% endif %}
45
41
  {% set submenu_attributes = create_attribute()
46
42
  .setAttribute('id', _panel_id)
47
- .setAttribute('hidden', '')
43
+ .setAttribute('hidden', true)
48
44
  .setAttribute('role', 'group')
49
45
  .setAttribute('aria-labelledby', _trigger_id)
50
46
  .addClass('bcl-mega-menu__submenu', '__level-' ~ _level)
51
- %}
47
+ -%}
52
48
  <div{{ submenu_attributes }}>
53
- {% if _trigger %}
54
- <div class="__header">
55
- <p class="__label">{{ _trigger.label }}</p>
49
+ {%- if _trigger -%}
50
+ <div class="__header">{# -#}
51
+ <p class="__label">{{ _trigger.label }}</p>{# -#}
52
+ </div>
53
+ {%- endif %}
54
+ <div class="__submenu_body">
55
+ {%- include '@oe-bcl/bcl-mega-menu/mega-menu-items.html.twig' with {
56
+ items: _items,
57
+ icon_path: _icon_path,
58
+ level: _level,
59
+ } only -%}
60
+ {%- if _see_all_link -%}
61
+ <div class="__see_all">
62
+ {% include '@oe-bcl/bcl-link/link.html.twig' with _see_all_link only %}
63
+ </div>
64
+ {%- endif -%}
56
65
  </div>
57
- {% endif %}
58
- {% include '@oe-bcl/bcl-mega-menu/mega-menu-items.html.twig' with {
59
- items: _items,
60
- icon_path: _icon_path,
61
- level: _level,
62
- } only %}
63
66
  </div>
64
-
65
- {% endapply %}
67
+ {#--#}