@openeuropa/bcl-theme-default 0.17.0 → 0.20.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.
Files changed (255) hide show
  1. package/bcl-builder.config.js +21 -4
  2. package/css/oe-bcl-default.css +910 -355
  3. package/css/oe-bcl-default.css.map +1 -1
  4. package/css/oe-bcl-default.min.css +1 -1
  5. package/css/oe-bcl-default.min.css.map +1 -1
  6. package/icons/bcl-default-icons.svg +1 -1
  7. package/icons/icons-flag.svg +1 -1
  8. package/js/oe-bcl-default.bundle.js +117 -72
  9. package/js/oe-bcl-default.bundle.js.map +1 -1
  10. package/js/oe-bcl-default.bundle.min.js +1 -1
  11. package/js/oe-bcl-default.bundle.min.js.map +1 -1
  12. package/js/oe-bcl-default.esm.js.map +1 -1
  13. package/js/oe-bcl-default.esm.min.js.map +1 -1
  14. package/js/oe-bcl-default.umd.js +117 -72
  15. package/js/oe-bcl-default.umd.js.map +1 -1
  16. package/js/oe-bcl-default.umd.min.js +1 -1
  17. package/js/oe-bcl-default.umd.min.js.map +1 -1
  18. package/js/slimselect.min.js +1 -1
  19. package/logos/ec/logo-ec--mute.svg +52 -0
  20. package/logos/ec/negative/logo-ec--ar.svg +83 -0
  21. package/logos/ec/negative/logo-ec--bg.svg +59 -0
  22. package/logos/ec/negative/logo-ec--ca.svg +88 -0
  23. package/logos/ec/negative/logo-ec--cs.svg +86 -0
  24. package/logos/ec/negative/logo-ec--da.svg +91 -0
  25. package/logos/ec/negative/logo-ec--de.svg +93 -0
  26. package/logos/ec/negative/logo-ec--el.svg +89 -0
  27. package/logos/ec/negative/logo-ec--en.svg +90 -0
  28. package/logos/ec/negative/logo-ec--es.svg +87 -0
  29. package/logos/ec/negative/logo-ec--et.svg +87 -0
  30. package/logos/ec/negative/logo-ec--fi.svg +88 -0
  31. package/logos/ec/negative/logo-ec--fr.svg +92 -0
  32. package/logos/ec/negative/logo-ec--ga.svg +90 -0
  33. package/logos/ec/negative/logo-ec--hr.svg +88 -0
  34. package/logos/ec/negative/logo-ec--hu.svg +58 -0
  35. package/logos/ec/negative/logo-ec--is.svg +105 -0
  36. package/logos/ec/negative/logo-ec--it.svg +95 -0
  37. package/logos/ec/negative/logo-ec--lt.svg +87 -0
  38. package/logos/ec/negative/logo-ec--lv.svg +87 -0
  39. package/logos/ec/negative/logo-ec--mt.svg +98 -0
  40. package/logos/ec/negative/logo-ec--nl.svg +89 -0
  41. package/logos/ec/negative/logo-ec--no.svg +90 -0
  42. package/logos/ec/negative/logo-ec--pl.svg +89 -0
  43. package/logos/ec/negative/logo-ec--pt.svg +58 -0
  44. package/logos/ec/negative/logo-ec--ro.svg +94 -0
  45. package/logos/ec/negative/logo-ec--sk.svg +87 -0
  46. package/logos/ec/negative/logo-ec--sl.svg +88 -0
  47. package/logos/ec/negative/logo-ec--sv.svg +94 -0
  48. package/logos/ec/negative/logo-ec--tr.svg +87 -0
  49. package/logos/ec/positive/logo-ec--ar.svg +82 -0
  50. package/logos/ec/positive/logo-ec--bg.svg +233 -0
  51. package/logos/ec/positive/logo-ec--ca.svg +87 -0
  52. package/logos/ec/positive/logo-ec--cs.svg +207 -0
  53. package/logos/ec/positive/logo-ec--da.svg +235 -0
  54. package/logos/ec/positive/logo-ec--de.svg +243 -0
  55. package/logos/ec/positive/logo-ec--el.svg +204 -0
  56. package/logos/ec/positive/logo-ec--en.svg +233 -0
  57. package/logos/ec/positive/logo-ec--es.svg +210 -0
  58. package/logos/ec/positive/logo-ec--et.svg +207 -0
  59. package/logos/ec/positive/logo-ec--fi.svg +219 -0
  60. package/logos/ec/positive/logo-ec--fr.svg +1 -0
  61. package/logos/ec/positive/logo-ec--ga.svg +221 -0
  62. package/logos/ec/positive/logo-ec--hr.svg +216 -0
  63. package/logos/ec/positive/logo-ec--hu.svg +218 -0
  64. package/logos/ec/positive/logo-ec--is.svg +105 -0
  65. package/logos/ec/positive/logo-ec--it.svg +241 -0
  66. package/logos/ec/positive/logo-ec--lt.svg +203 -0
  67. package/logos/ec/positive/logo-ec--lv.svg +212 -0
  68. package/logos/ec/positive/logo-ec--mt.svg +239 -0
  69. package/logos/ec/positive/logo-ec--nl.svg +231 -0
  70. package/logos/ec/positive/logo-ec--no.svg +89 -0
  71. package/logos/ec/positive/logo-ec--pl.svg +225 -0
  72. package/logos/ec/positive/logo-ec--pt.svg +228 -0
  73. package/logos/ec/positive/logo-ec--ro.svg +225 -0
  74. package/logos/ec/positive/logo-ec--sk.svg +217 -0
  75. package/logos/ec/positive/logo-ec--sl.svg +216 -0
  76. package/logos/ec/positive/logo-ec--sv.svg +254 -0
  77. package/logos/ec/positive/logo-ec--tr.svg +87 -0
  78. package/logos/eu/condensed-version/negative/logo-eu--ar.svg +18 -0
  79. package/logos/eu/condensed-version/negative/logo-eu--bg.svg +7 -0
  80. package/logos/eu/condensed-version/negative/logo-eu--ca.svg +7 -0
  81. package/logos/eu/condensed-version/negative/logo-eu--cs.svg +7 -0
  82. package/logos/eu/condensed-version/negative/logo-eu--da.svg +7 -0
  83. package/logos/eu/condensed-version/negative/logo-eu--de.svg +7 -0
  84. package/logos/eu/condensed-version/negative/logo-eu--el.svg +7 -0
  85. package/logos/eu/condensed-version/negative/logo-eu--en.svg +7 -0
  86. package/logos/eu/condensed-version/negative/logo-eu--es.svg +7 -0
  87. package/logos/eu/condensed-version/negative/logo-eu--et.svg +7 -0
  88. package/logos/eu/condensed-version/negative/logo-eu--fi.svg +7 -0
  89. package/logos/eu/condensed-version/negative/logo-eu--fr.svg +7 -0
  90. package/logos/eu/condensed-version/negative/logo-eu--ga.svg +7 -0
  91. package/logos/eu/condensed-version/negative/logo-eu--hr.svg +7 -0
  92. package/logos/eu/condensed-version/negative/logo-eu--hu.svg +7 -0
  93. package/logos/eu/condensed-version/negative/logo-eu--is.svg +8 -0
  94. package/logos/eu/condensed-version/negative/logo-eu--it.svg +7 -0
  95. package/logos/eu/condensed-version/negative/logo-eu--lt.svg +7 -0
  96. package/logos/eu/condensed-version/negative/logo-eu--lv.svg +7 -0
  97. package/logos/eu/condensed-version/negative/logo-eu--mt.svg +7 -0
  98. package/logos/eu/condensed-version/negative/logo-eu--nl.svg +7 -0
  99. package/logos/eu/condensed-version/negative/logo-eu--no.svg +7 -0
  100. package/logos/eu/condensed-version/negative/logo-eu--pl.svg +7 -0
  101. package/logos/eu/condensed-version/negative/logo-eu--pt.svg +7 -0
  102. package/logos/eu/condensed-version/negative/logo-eu--ro.svg +7 -0
  103. package/logos/eu/condensed-version/negative/logo-eu--sk.svg +7 -0
  104. package/logos/eu/condensed-version/negative/logo-eu--sl.svg +7 -0
  105. package/logos/eu/condensed-version/negative/logo-eu--sv.svg +7 -0
  106. package/logos/eu/condensed-version/negative/logo-eu--tr.svg +7 -0
  107. package/logos/eu/condensed-version/positive/logo-eu--ar.svg +29 -0
  108. package/logos/eu/condensed-version/positive/logo-eu--bg.svg +20 -0
  109. package/logos/eu/condensed-version/positive/logo-eu--ca.svg +16 -0
  110. package/logos/eu/condensed-version/positive/logo-eu--cs.svg +20 -0
  111. package/logos/eu/condensed-version/positive/logo-eu--da.svg +20 -0
  112. package/logos/eu/condensed-version/positive/logo-eu--de.svg +20 -0
  113. package/logos/eu/condensed-version/positive/logo-eu--el.svg +20 -0
  114. package/logos/eu/condensed-version/positive/logo-eu--en.svg +20 -0
  115. package/logos/eu/condensed-version/positive/logo-eu--es.svg +20 -0
  116. package/logos/eu/condensed-version/positive/logo-eu--et.svg +20 -0
  117. package/logos/eu/condensed-version/positive/logo-eu--fi.svg +20 -0
  118. package/logos/eu/condensed-version/positive/logo-eu--fr.svg +20 -0
  119. package/logos/eu/condensed-version/positive/logo-eu--ga.svg +20 -0
  120. package/logos/eu/condensed-version/positive/logo-eu--hr.svg +20 -0
  121. package/logos/eu/condensed-version/positive/logo-eu--hu.svg +20 -0
  122. package/logos/eu/condensed-version/positive/logo-eu--is.svg +17 -0
  123. package/logos/eu/condensed-version/positive/logo-eu--it.svg +20 -0
  124. package/logos/eu/condensed-version/positive/logo-eu--lt.svg +20 -0
  125. package/logos/eu/condensed-version/positive/logo-eu--lv.svg +20 -0
  126. package/logos/eu/condensed-version/positive/logo-eu--mt.svg +20 -0
  127. package/logos/eu/condensed-version/positive/logo-eu--nl.svg +20 -0
  128. package/logos/eu/condensed-version/positive/logo-eu--no.svg +16 -0
  129. package/logos/eu/condensed-version/positive/logo-eu--pl.svg +20 -0
  130. package/logos/eu/condensed-version/positive/logo-eu--pt.svg +20 -0
  131. package/logos/eu/condensed-version/positive/logo-eu--ro.svg +20 -0
  132. package/logos/eu/condensed-version/positive/logo-eu--sk.svg +20 -0
  133. package/logos/eu/condensed-version/positive/logo-eu--sl.svg +20 -0
  134. package/logos/eu/condensed-version/positive/logo-eu--sv.svg +20 -0
  135. package/logos/eu/condensed-version/positive/logo-eu--tr.svg +16 -0
  136. package/logos/eu/logo-eu--mute.svg +10 -0
  137. package/logos/eu/standard-version/negative/logo-eu--ar.svg +18 -0
  138. package/logos/eu/standard-version/negative/logo-eu--bg.svg +17 -0
  139. package/logos/eu/standard-version/negative/logo-eu--ca.svg +16 -0
  140. package/logos/eu/standard-version/negative/logo-eu--cs.svg +17 -0
  141. package/logos/eu/standard-version/negative/logo-eu--da.svg +23 -0
  142. package/logos/eu/standard-version/negative/logo-eu--de.svg +21 -0
  143. package/logos/eu/standard-version/negative/logo-eu--el.svg +19 -0
  144. package/logos/eu/standard-version/negative/logo-eu--en.svg +18 -0
  145. package/logos/eu/standard-version/negative/logo-eu--es.svg +17 -0
  146. package/logos/eu/standard-version/negative/logo-eu--et.svg +16 -0
  147. package/logos/eu/standard-version/negative/logo-eu--fi.svg +19 -0
  148. package/logos/eu/standard-version/negative/logo-eu--fr.svg +20 -0
  149. package/logos/eu/standard-version/negative/logo-eu--ga.svg +21 -0
  150. package/logos/eu/standard-version/negative/logo-eu--hr.svg +18 -0
  151. package/logos/eu/standard-version/negative/logo-eu--hu.svg +16 -0
  152. package/logos/eu/standard-version/negative/logo-eu--is.svg +20 -0
  153. package/logos/eu/standard-version/negative/logo-eu--it.svg +18 -0
  154. package/logos/eu/standard-version/negative/logo-eu--lt.svg +19 -0
  155. package/logos/eu/standard-version/negative/logo-eu--lv.svg +21 -0
  156. package/logos/eu/standard-version/negative/logo-eu--mt.svg +19 -0
  157. package/logos/eu/standard-version/negative/logo-eu--nl.svg +17 -0
  158. package/logos/eu/standard-version/negative/logo-eu--no.svg +20 -0
  159. package/logos/eu/standard-version/negative/logo-eu--pl.svg +19 -0
  160. package/logos/eu/standard-version/negative/logo-eu--pt.svg +18 -0
  161. package/logos/eu/standard-version/negative/logo-eu--ro.svg +21 -0
  162. package/logos/eu/standard-version/negative/logo-eu--sk.svg +17 -0
  163. package/logos/eu/standard-version/negative/logo-eu--sl.svg +18 -0
  164. package/logos/eu/standard-version/negative/logo-eu--sv.svg +22 -0
  165. package/logos/eu/standard-version/negative/logo-eu--tr.svg +18 -0
  166. package/logos/eu/standard-version/positive/logo-eu--ar.svg +27 -0
  167. package/logos/eu/standard-version/positive/logo-eu--bg.svg +34 -0
  168. package/logos/eu/standard-version/positive/logo-eu--ca.svg +27 -0
  169. package/logos/eu/standard-version/positive/logo-eu--cs.svg +32 -0
  170. package/logos/eu/standard-version/positive/logo-eu--da.svg +38 -0
  171. package/logos/eu/standard-version/positive/logo-eu--de.svg +36 -0
  172. package/logos/eu/standard-version/positive/logo-eu--el.svg +34 -0
  173. package/logos/eu/standard-version/positive/logo-eu--en.svg +33 -0
  174. package/logos/eu/standard-version/positive/logo-eu--es.svg +32 -0
  175. package/logos/eu/standard-version/positive/logo-eu--et.svg +31 -0
  176. package/logos/eu/standard-version/positive/logo-eu--fi.svg +34 -0
  177. package/logos/eu/standard-version/positive/logo-eu--fr.svg +35 -0
  178. package/logos/eu/standard-version/positive/logo-eu--ga.svg +36 -0
  179. package/logos/eu/standard-version/positive/logo-eu--hr.svg +33 -0
  180. package/logos/eu/standard-version/positive/logo-eu--hu.svg +31 -0
  181. package/logos/eu/standard-version/positive/logo-eu--is.svg +31 -0
  182. package/logos/eu/standard-version/positive/logo-eu--it.svg +33 -0
  183. package/logos/eu/standard-version/positive/logo-eu--lt.svg +34 -0
  184. package/logos/eu/standard-version/positive/logo-eu--lv.svg +36 -0
  185. package/logos/eu/standard-version/positive/logo-eu--mt.svg +34 -0
  186. package/logos/eu/standard-version/positive/logo-eu--nl.svg +32 -0
  187. package/logos/eu/standard-version/positive/logo-eu--no.svg +31 -0
  188. package/logos/eu/standard-version/positive/logo-eu--pl.svg +34 -0
  189. package/logos/eu/standard-version/positive/logo-eu--pt.svg +33 -0
  190. package/logos/eu/standard-version/positive/logo-eu--ro.svg +36 -0
  191. package/logos/eu/standard-version/positive/logo-eu--sk.svg +32 -0
  192. package/logos/eu/standard-version/positive/logo-eu--sl.svg +33 -0
  193. package/logos/eu/standard-version/positive/logo-eu--sv.svg +37 -0
  194. package/logos/eu/standard-version/positive/logo-eu--tr.svg +29 -0
  195. package/package.json +16 -9
  196. package/src/icons/icons.js +337 -0
  197. package/src/scss/_badge.scss +5 -5
  198. package/src/scss/_banners.scss +4 -4
  199. package/src/scss/_breadcrumb.scss +1 -0
  200. package/src/scss/_button.scss +6 -0
  201. package/src/scss/_circular-progress-bar.scss +120 -0
  202. package/src/scss/_footer.scss +3 -0
  203. package/src/scss/_header.scss +51 -47
  204. package/src/scss/_icon.scss +2 -5
  205. package/src/scss/_inpage-navigation.scss +10 -0
  206. package/src/scss/_language-list.scss +51 -0
  207. package/src/scss/_reset.scss +9 -0
  208. package/src/scss/base/_colors.scss +12 -0
  209. package/src/scss/{_utilities.scss → base/_utilities.scss} +39 -4
  210. package/src/scss/{_variables.scss → base/_variables.scss} +14 -2
  211. package/src/scss/oe-bcl-default.scss +8 -2
  212. package/templates/bcl-accordion/accordion.html.twig +7 -2
  213. package/templates/bcl-alert/alert.html.twig +5 -5
  214. package/templates/bcl-badge/badge.html.twig +5 -5
  215. package/templates/bcl-base-templates/content-type.html.twig +14 -0
  216. package/templates/bcl-blockquote/blockquote.html.twig +18 -3
  217. package/templates/bcl-breadcrumb/breadcrumb.html.twig +2 -2
  218. package/templates/bcl-card/card.html.twig +19 -2
  219. package/templates/bcl-card-layout/card-layout.html.twig +6 -1
  220. package/templates/bcl-contact-form/contact-form.html.twig +5 -0
  221. package/templates/bcl-content-banner/content-banner.html.twig +38 -21
  222. package/templates/bcl-date-block/date-block.html.twig +3 -4
  223. package/templates/bcl-description-list/description-list.html.twig +39 -13
  224. package/templates/bcl-event/event.html.twig +5 -22
  225. package/templates/bcl-fact-figures/fact-figures.html.twig +5 -5
  226. package/templates/bcl-featured-media/featured-media.html.twig +3 -1
  227. package/templates/bcl-file/file.html.twig +6 -5
  228. package/templates/bcl-footer/footer.html.twig +1 -1
  229. package/templates/bcl-form/form.html.twig +26 -0
  230. package/templates/bcl-header/header.html.twig +31 -15
  231. package/templates/bcl-language-list/language-list-grid.html.twig +68 -0
  232. package/templates/bcl-language-list/language-list-modal.html.twig +58 -0
  233. package/templates/bcl-language-list/language-list.html.twig +111 -0
  234. package/templates/bcl-language-switcher/language-switcher.html.twig +44 -0
  235. package/templates/bcl-link/link.html.twig +1 -1
  236. package/templates/bcl-links-block/links-block.html.twig +2 -2
  237. package/templates/bcl-listing/listing.html.twig +10 -3
  238. package/templates/bcl-modal/modal.html.twig +12 -1
  239. package/templates/bcl-navbar/navbar.html.twig +39 -28
  240. package/templates/bcl-navigation/navigation.html.twig +8 -3
  241. package/templates/bcl-page/page.html.twig +1 -1
  242. package/templates/bcl-pagination/pagination.html.twig +8 -0
  243. package/templates/bcl-progress/progress.html.twig +6 -1
  244. package/templates/bcl-project/project.html.twig +112 -0
  245. package/templates/bcl-project-status/project-status.html.twig +128 -0
  246. package/templates/bcl-recent-activities/recent-activities.html.twig +1 -1
  247. package/templates/bcl-select/select.html.twig +3 -0
  248. package/templates/bcl-subscription/subscription-modal.html.twig +24 -0
  249. package/templates/bcl-subscription/subscription.html.twig +10 -0
  250. package/templates/bcl-subscription-block/subscription-block.html.twig +36 -0
  251. package/templates/bcl-timeline/timeline.html.twig +3 -3
  252. package/templates/bcl-toast/toasts.html.twig +1 -0
  253. package/templates/bcl-user/user-view-compact.html.twig +9 -2
  254. package/templates/bcl-user/user-view.html.twig +2 -12
  255. package/icons/bootstrap-icons.svg +0 -1
@@ -0,0 +1,111 @@
1
+ {% spaceless %}
2
+
3
+ {# Parameters:
4
+ - overlay (boolean) (default: false)
5
+ - inside_container (boolean) (default: false)
6
+ - variant (string) (default: 'neutral')
7
+ - title (string) (default: '')
8
+ - logo (object) (default: {}) format: {
9
+ path (string),
10
+ alt (string),
11
+ class (string),
12
+ }
13
+ - icon_path (string) (default: '')
14
+ - eu_category (string) (default: '');
15
+ - non_eu_category (string) (default: '')
16
+ - items (array) (default: [])
17
+ - "lang" (string) (default: '')
18
+ - "label" (string) (default: '')
19
+ - "path" (string) (default: '')
20
+ - "active (boolean) (default: false)
21
+ - non_eu_items (array) (default: [])
22
+ - "lang" (string) (default: '')
23
+ - "label" (string) (default: '')
24
+ - "path" (string) (default: '')
25
+ - "active (boolean) (default: false)
26
+ - close_label (string) (default: '')
27
+ #}
28
+
29
+ {% set _overlay = overlay|default(false) %}
30
+ {% set _inside_container = inside_container|default(false) %}
31
+ {% set _variant = variant|default('neutral') %}
32
+ {% set _title = title|default('') %}
33
+ {% set _logo = logo|default({}) %}
34
+ {% set _icon_path = icon_path|default('') %}
35
+ {% set _eu_category = eu_category|default('') %}
36
+ {% set _non_eu_category = non_eu_category|default('') %}
37
+ {% set _items = items|default([]) %}
38
+ {% set _non_eu_items = non_eu_items|default([]) %}
39
+ {% set _close_label = close_label|default('') %}
40
+
41
+ {% if attributes is empty %}
42
+ {% set attributes = create_attribute() %}
43
+ {% endif %}
44
+
45
+ {% if _overlay %}
46
+ {% include '@oe-bcl/bcl-language-list/language-list-modal.html.twig' %}
47
+ {% else %}
48
+ {% set attributes = attributes.addClass(['bcl-language-list', 'bcl-language-list--' ~ _variant]) %}
49
+
50
+ {% if not _inside_container %}
51
+ {% set attributes = attributes.addClass(['pt-5']) %}
52
+ {% endif %}
53
+
54
+ <div
55
+ {{ attributes }}
56
+ >
57
+ {% if _logo is not empty %}
58
+ <div class="container">
59
+ {% if _title is empty %}
60
+ <div class="text-center">
61
+ {% endif %}
62
+ <div class="d-inline-flex align-items-center">
63
+ <img
64
+ {% if _logo.path is not empty %}
65
+ src="{{ _logo.path }}"
66
+ {% endif %}
67
+ {% if _logo.alt is not empty %}
68
+ alt="{{ _logo.alt }}"
69
+ {% endif %}
70
+ {% if _logo.class is not empty %}
71
+ class="{{ _logo.class }}"
72
+ {% endif %}
73
+ />
74
+ {% if _title is not empty %}
75
+ <h5 class="h5 ms-4">{{ _title }}</h5>
76
+ {% endif %}
77
+ </div>
78
+ {% if _title is empty %}
79
+ </div>
80
+ {% endif %}
81
+ </div>
82
+ {% endif %}
83
+
84
+ {% if _items is not empty or _non_eu_items is not empty %}
85
+ <div class="main pt-4">
86
+ {% if not (_variant == 'neutral' and _inside_container) %}
87
+ <div class="container">
88
+ {% endif %}
89
+ {% if _items is not empty and _items is iterable %}
90
+ {% include '@oe-bcl/bcl-language-list/language-list-grid.html.twig' with {
91
+ items: _items,
92
+ icon_path: _icon_path,
93
+ category: eu_category,
94
+ } only %}
95
+ {% endif %}
96
+ {% if _non_eu_items is not empty and _non_eu_items is iterable %}
97
+ {% include '@oe-bcl/bcl-language-list/language-list-grid.html.twig' with {
98
+ items: _non_eu_items,
99
+ icon_path: _icon_path,
100
+ category: non_eu_category,
101
+ } only %}
102
+ {% endif %}
103
+ {% if not (_variant == 'neutral' and _inside_container) %}
104
+ </div>
105
+ {% endif %}
106
+ </div>
107
+ {% endif %}
108
+ </div>
109
+ {% endif %}
110
+
111
+ {% endspaceless %}
@@ -0,0 +1,44 @@
1
+ {% spaceless %}
2
+
3
+ {# Parameters:
4
+ - id (string) (default: collapse-{random number 0-1000}) - collapse custom id - optional
5
+ - message (alert object) (default: {})
6
+ - expandable (button object) (default: [])
7
+ - language (array of link object) (default: [])
8
+ #}
9
+
10
+ {% set _id = id|default('collapse-' ~ random(1000)) %}
11
+ {% set _message = message|default({}) %}
12
+ {% set _expandable = expandable|default({}) %}
13
+ {% set _languages = languages|default([]) %}
14
+
15
+ {% set _expandable_attributes = _expandable.attributes ?: create_attribute() %}
16
+
17
+ {% set _expandable_attributes = _expandable_attributes
18
+ .setAttribute('data-bs-toggle', 'collapse')
19
+ .setAttribute('autocomplete', 'off')
20
+ .setAttribute('aria-expanded', 'false')
21
+ .setAttribute('aria-controls', _id)
22
+ .setAttribute('data-bs-target', '#' ~ _id)
23
+ %}
24
+
25
+ {% include '@oe-bcl/bcl-alert/alert.html.twig' with _message only %}
26
+
27
+ {% include '@oe-bcl/bcl-button/button.html.twig' with _expandable|merge({
28
+ attributes: _expandable_attributes
29
+ }) only %}
30
+
31
+ <div class="collapse mt-3" id="{{ _id }}">
32
+ <div
33
+ class="d-md-grid"
34
+ style="grid-auto-flow: column; grid-template-rows: repeat(4, 1fr)"
35
+ >
36
+ {% for language in languages %}
37
+ {% include '@oe-bcl/bcl-link/link.html.twig' with language|merge({
38
+ attributes: create_attribute().addClass(["btn", "btn-link", "d-block", "ps-0", "text-start"])
39
+ }) only %}
40
+ {% endfor %}
41
+ </div>
42
+ </div>
43
+
44
+ {% endspaceless %}
@@ -65,7 +65,7 @@
65
65
  {% set attributes = attributes.setAttribute('id', _id) %}
66
66
  {% endif %}
67
67
  {% if _standalone %}
68
- {% set _classes = _classes|merge(['text-underline-hover']) %}
68
+ {% set _classes = _classes|merge(['standalone']) %}
69
69
  {% endif %}
70
70
  {% if _classes is not empty %}
71
71
  {% set attributes = attributes.addClass(_classes) %}
@@ -21,7 +21,7 @@
21
21
  {% endif %}
22
22
 
23
23
  {% if _background == "gray" %}
24
- {% set attributes = attributes.addClass(["bg-light", "px-4", "py-3"]) %}
24
+ {% set attributes = attributes.addClass(["bg-light", "px-4", "py-3", "rounded-2"]) %}
25
25
  {% endif %}
26
26
 
27
27
  <div
@@ -41,7 +41,7 @@
41
41
  {% endif %}
42
42
  {% set _link = _link|merge({
43
43
  clean_class: true,
44
- attributes: _link.attributes.addClass(["pb-3", "d-inline-block"])
44
+ attributes: _link.attributes.addClass(["pb-3", "d-inline-block", "standalone"])
45
45
  }) %}
46
46
  {% set _list_item_classes = "list-unstyled" %}
47
47
  {% if _variant == "horizontal" %}
@@ -47,12 +47,13 @@
47
47
  {% set _max_width = '' %}
48
48
  {% set _image = {} %}
49
49
  {% if _card.image is not empty %}
50
- {% set _max_width = 'mw-listing-img' %}
50
+ {% set _image_classes = _card.image.classes ?: '' %}
51
51
  {% if not _alignment == 'center' %}
52
- {% set _image_classes = _card.image.classes ? _card.image.classes ~ ' mb-3' : 'mb-3' %}
52
+ {% set _image_classes = _image_classes ? _image_classes ~ ' mb-3' : 'mb-3' %}
53
53
  {% endif %}
54
+ {% set _max_width = 'mw-listing-img' %}
54
55
  {% set _card = _card|merge({image: _card.image|merge({
55
- classes: _image_classes
56
+ classes: _image_classes,
56
57
  })}) %}
57
58
  {% elseif _card.date is not empty %}
58
59
  {% set _max_width = 'mw-date mb-3' %}
@@ -168,6 +169,12 @@
168
169
  {% endif %}
169
170
  {% endif %}
170
171
 
172
+ {% if _card.image is empty and _card.date is empty %}
173
+ {% set _card = _card|merge({
174
+ horizontal: false,
175
+ }) %}
176
+ {% endif %}
177
+
171
178
  {% set _cards = _cards|merge([_card]) %}
172
179
  {% endfor %}
173
180
  {% endif %}
@@ -3,17 +3,22 @@
3
3
  {# Parameters:
4
4
  - size (string) (sm, lg, xl, fullscreen) default('')
5
5
  - id (boolean) (default: 'modal-' ~ random(1000))
6
+ - fullscreen_responsive (string) (default: '')
7
+ options: sm, md, lg, xl, xxl
6
8
  - static_backdrop (boolean) (default: false)
7
9
  - verticaly_centered (boolean) (default: false)
8
10
  - scrollable (boolean) (default: false)
9
11
  - header (block) (default: '')
12
+ - messages (block) (default: '')
10
13
  - body (block) (default: '')
11
14
  - footer (block) (default: '')
12
15
  #}
13
16
  {% set _size = size|default('') %}
14
17
  {% set _id = id|default('modal-' ~ random(1000)) %}
18
+ {% set _fullscreen_responsive = fullscreen_responsive|default('') %}
15
19
  {% set _header = header|default('') %}
16
20
  {% set _body = body|default('') %}
21
+ {% set _messages = messages|default('') %}
17
22
  {% set _static_backdrop = static_backdrop|default(false) %}
18
23
  {% set _verticaly_centered = verticaly_centered|default(false) %}
19
24
  {% set _scrollable = scrollable|default(false) %}
@@ -28,7 +33,7 @@
28
33
  .setAttribute('id', _id)
29
34
  .setAttribute('tabindex', '-1')
30
35
  .setAttribute('aria-hidden', 'true')
31
- .setAttribute('aria-labelledby', _id ~ 'Label')
36
+ .setAttribute('aria-label', _id ~ 'Label')
32
37
  .addClass(_classes)
33
38
  %}
34
39
 
@@ -37,20 +42,26 @@
37
42
  >
38
43
  <div class="modal-dialog
39
44
  {{- _size ? ' modal-' ~ size -}}
45
+ {{- _fullscreen_responsive ? ' modal-fullscreen-' ~ _fullscreen_responsive ~ '-down' -}}
40
46
  {{- _verticaly_centered ? ' modal-dialog-centered' -}}
41
47
  {{- _scrollable ? ' modal-dialog-scrollable' -}}"
42
48
  {{- _static_backdrop ? ' data-bs-backdrop="static"' -}}
43
49
  >
44
50
  <div class="modal-content">
51
+ {% if header is not empty %}
45
52
  <div class="modal-header">
46
53
  {%- block header _header -%}
47
54
  </div>
55
+ {% endif %}
56
+ {%- block messages _messages -%}
48
57
  <div class="modal-body">
49
58
  {%- block body _body -%}
50
59
  </div>
60
+ {% if footer is not empty %}
51
61
  <div class="modal-footer">
52
62
  {%- block footer _footer -%}
53
63
  </div>
64
+ {% endif %}
54
65
  </div>
55
66
  </div>
56
67
  </div>
@@ -18,6 +18,11 @@
18
18
  - color_set (string) (default: 'light')
19
19
  options ['light', 'dark']
20
20
  - disable_collapse (boolean) (default: false)
21
+
22
+ Blocks
23
+ - branding
24
+ - navigation
25
+ - right
21
26
  #}
22
27
  {% set _collapse_id = collapse_id|default('') %}
23
28
  {% set _background = background|default('') %}
@@ -45,26 +50,28 @@
45
50
  {{ attributes }}
46
51
  >
47
52
  <div class='container'>
48
- {% if _brand is not empty %}
49
- <a class='navbar-brand' href='{{ _brand.link }}'>
50
- {% for logo in _brand.logos %}
51
- <img
52
- src='{{ logo.src }}'
53
- {% if logo.alt is not empty %}
54
- alt='{{ logo.alt }}'
55
- {% endif %}
56
- {% if logo.class is not empty %}
57
- class='{{ logo.class }}'
58
- {% endif %}
59
- />
60
- {% endfor %}
61
- {%- if _brand.label is defined -%}
62
- <div class="h5 ms-4-5 d-none d-lg-inline-block">
63
- {{- _brand.label -}}
64
- </div>
65
- {% endif %}
66
- </a>
67
- {% endif %}
53
+ {% block branding %}
54
+ {% if _brand is not empty %}
55
+ <a class='navbar-brand' href='{{ _brand.link }}'>
56
+ {% for logo in _brand.logos %}
57
+ <img
58
+ src='{{ logo.src }}'
59
+ {% if logo.alt is not empty %}
60
+ alt='{{ logo.alt }}'
61
+ {% endif %}
62
+ {% if logo.class is not empty %}
63
+ class='{{ logo.class }}'
64
+ {% endif %}
65
+ />
66
+ {% endfor %}
67
+ {%- if _brand.label is defined -%}
68
+ <div class="h5 ms-4-5 d-none d-lg-inline-block">
69
+ {{- _brand.label -}}
70
+ </div>
71
+ {% endif %}
72
+ </a>
73
+ {% endif %}
74
+ {% endblock %}
68
75
 
69
76
  {% if not _disable_collapse %}
70
77
  <button
@@ -79,16 +86,20 @@
79
86
  <span class='navbar-toggler-icon'></span>
80
87
  </button>
81
88
  <div class='collapse navbar-collapse' id='{{ _collapse_id }}'>
89
+ {% endif %}
90
+ {% block navigation %}
91
+ {% if _navigation is not empty %}
92
+ {% include '@oe-bcl/bcl-navigation/navigation.html.twig' with _navigation only %}
82
93
  {% endif %}
83
- {% if _navigation is not empty %}
84
- {% include '@oe-bcl/bcl-navigation/navigation.html.twig' with _navigation only %}
85
- {% endif %}
86
- {% if _form is not empty %}
87
- {% include '@oe-bcl/bcl-form/form.html.twig' with _form only %}
88
- {% endif %}
89
- {% if not _disable_collapse %}
90
- </div>
94
+ {% endblock %}
95
+ {% block right %}
96
+ {% if _form is not empty %}
97
+ {% include '@oe-bcl/bcl-form/form.html.twig' with _form only %}
91
98
  {% endif %}
99
+ {% endblock %}
100
+ {% if not _disable_collapse %}
101
+ </div>
102
+ {% endif %}
92
103
  </div>
93
104
  </nav>
94
105
 
@@ -3,7 +3,7 @@
3
3
 
4
4
  {# Parameters:
5
5
  - pills (boolean) (default: false)
6
- - tabs (boolean) (default: false)
6
+ - tabs (boolean) (default: false) - If tabs is set to true, the nav should also be set to true for accessibility reasons
7
7
  - vertical (boolean) (default: false)
8
8
  - full_width (boolean) (default: false)
9
9
  - alignment (string) (default: '')
@@ -68,7 +68,7 @@
68
68
  {% set attributes = attributes.setAttribute('id', _id) %}
69
69
  {% endif %}
70
70
 
71
- {% if not _nav and _tabs %}
71
+ {% if _tabs %}
72
72
  {% set attributes = attributes.setAttribute('role', 'tablist') %}
73
73
  {% endif %}
74
74
  {% set attributes = attributes.addClass(_classes) %}
@@ -109,9 +109,14 @@
109
109
  <li
110
110
  class="{{ _nav_class }}"
111
111
  {% if _tabs %}
112
- role="presentation"
112
+ role="tab"
113
113
  {% endif %}
114
114
  >
115
+ {% elseif _tabs %}
116
+ {% set _item = _item|merge({
117
+ attributes: _item.attributes.setAttribute("role", "tab"),
118
+ })
119
+ %}
115
120
  {% endif %}
116
121
  {% if _item.dropdown is defined %}
117
122
  {% include '@oe-bcl/bcl-dropdown/dropdown.html.twig' with _item only %}
@@ -5,7 +5,7 @@
5
5
  {% endblock %}
6
6
 
7
7
  {% block content %}
8
- <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi sit amet eleifend tortor. In facilisis eros vitae turpis ullamcorper,
8
+ <p id="content">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi sit amet eleifend tortor. In facilisis eros vitae turpis ullamcorper,
9
9
  a euismod dolor lacinia. Nam facilisis ipsum et sollicitudin imperdiet. Curabitur a efficitur ante. Phasellus non felis laoreet,
10
10
  posuere ante ut, rhoncus tortor. Proin sed erat vel nisl luctus vulputate. Nunc tristique ultricies turpis, eu dictum enim ultrices vel.
11
11
  Sed posuere at leo sit amet placerat. Sed dapibus viverra urna ac pretium. Praesent et laoreet erat, eget volutpat metus. Duis ac augue
@@ -12,6 +12,7 @@
12
12
  - path (string)
13
13
  - label (string)
14
14
  - disabled (boolean)
15
+ - aria_label (string)
15
16
  - icon (Icon component)
16
17
  }
17
18
  - next (object)
@@ -19,6 +20,7 @@
19
20
  - path (string)
20
21
  - label (string)
21
22
  - disabled (boolean)
23
+ - aria_label (string)
22
24
  - icon (Icon component)
23
25
  }
24
26
  - items (array of objects)
@@ -75,6 +77,9 @@
75
77
  tabindex="-1"
76
78
  aria-disabled="true"
77
79
  {% endif %}
80
+ {%- if _prev.aria_label -%}
81
+ aria-label="{{ _prev.aria_label }}"
82
+ {%- endif -%}
78
83
  >
79
84
  {%- if _enable_icon -%}
80
85
  {%- if _prev.icon is not empty -%}
@@ -127,6 +132,9 @@
127
132
  tabindex="-1"
128
133
  aria-disabled="true"
129
134
  {% endif %}
135
+ {%- if _next.aria_label -%}
136
+ aria-label="{{ _next.aria_label }}"
137
+ {%- endif -%}
130
138
  >
131
139
  {%- if _enable_icon -%}
132
140
  {%- if _next.icon is not empty -%}
@@ -6,6 +6,7 @@
6
6
  - max (int) (default: 100)
7
7
  - striped (boolean) (default: false)
8
8
  - animated (boolean) (default: false)
9
+ - hidden_label (boolean) (default: false)
9
10
  - label (string) (default: '')
10
11
  - bar_label (string) (default: '')
11
12
  - variant (string) (default: '')
@@ -17,6 +18,7 @@
17
18
  {% set _max = max|default(100) %}
18
19
  {% set _striped = striped|default(false) %}
19
20
  {% set _animated = animated|default(false) %}
21
+ {% set _hidden_label = hidden_label|default(false) %}
20
22
  {% set _label = label|default('') %}
21
23
  {% set _bar_label = bar_label|default('') %}
22
24
  {% set _variant = variant|default('') %}
@@ -53,10 +55,13 @@
53
55
  role="progressbar"
54
56
  style="width: {{ _progress }}%"
55
57
  aria-valuenow="{{ _progress }}"
58
+ aria-label="{{ _progress }}"
56
59
  aria-valuemin="{{ _min }}"
57
60
  aria-valuemax="{{ _max }}"
58
61
  >
59
- {{- _bar_label -}}
62
+ {%- if not _hidden_label -%}
63
+ {{- _bar_label -}}
64
+ {%- endif -%}
60
65
  </div>
61
66
  </div>
62
67
  {% if _message is not empty %}
@@ -0,0 +1,112 @@
1
+ {% extends '@oe-bcl/bcl-base-templates/content-type.html.twig' %}
2
+
3
+ {% block sidebar %}
4
+ {% include '@oe-bcl/bcl-inpage-navigation/inpage-navigation.html.twig' with sidebar only %}
5
+ {% endblock %}
6
+
7
+ {% block content %}
8
+
9
+ {% if project_status.main_title is not empty %}
10
+ <h3
11
+ class="fw-bold mb-4"
12
+ {% if project_status.main_title_id is not empty %}
13
+ id="{{ project_status.main_title_id }}"
14
+ {% endif %}
15
+ >{{- project_status.main_title -}}</h3>
16
+ {% endif %}
17
+ {% include '@oe-bcl/bcl-project-status/project-status.html.twig' with project_status %}
18
+
19
+ {% if status_lists.main_title is not empty %}
20
+ <h3
21
+ class="fw-bold my-4"
22
+ {% if status_lists.main_title_id is not empty %}
23
+ id="{{ status_lists.main_title_id }}"
24
+ {% endif %}
25
+ >{{- status_lists.main_title -}}</h3>
26
+ {% endif %}
27
+ {% if status_lists.listing is defined and status_lists.listing is not empty %}
28
+ {% for lists in status_lists.listing %}
29
+ {% if lists.title is not empty %}
30
+ <h4 class="fw-bold mb-3">{{ lists.title }}</h4>
31
+ {% endif %}
32
+ {% for list in lists.content %}
33
+ {% include '@oe-bcl/bcl-description-list/description-list.html.twig' with list only %}
34
+ {% endfor %}
35
+ {% endfor %}
36
+ {% endif %}
37
+
38
+ {% if first_paragraphs is defined and first_paragraphs is not empty %}
39
+ {% for paragraph in first_paragraphs %}
40
+ <h3
41
+ class="fw-bold mb-4 pt-3"
42
+ id="{{ paragraph.title_id }}"
43
+ >
44
+ {{- paragraph.title -}}
45
+ </h3>
46
+
47
+ {{- paragraph.content -}}
48
+ {% endfor %}
49
+ {% endif %}
50
+
51
+ {% if content_lists.main_title is not empty %}
52
+ <h3
53
+ class="fw-bold my-4"
54
+ {% if content_lists.main_title_id is not empty %}
55
+ id="{{ content_lists.main_title_id }}"
56
+ {% endif %}
57
+ >{{- content_lists.main_title -}}</h3>
58
+ {% endif %}
59
+ {% if content_lists.listing is defined and content_lists.listing is not empty %}
60
+ {% for lists in content_lists.listing %}
61
+ {% if lists.title is not empty %}
62
+ <h4 class="fw-bold mb-3">{{ lists.title }}</h4>
63
+ {% endif %}
64
+ {% for list in lists.content %}
65
+ {% include '@oe-bcl/bcl-description-list/description-list.html.twig' with list only %}
66
+ {% endfor %}
67
+ {% endfor %}
68
+ {% endif %}
69
+
70
+ {% if second_paragraphs is defined and second_paragraphs is not empty %}
71
+ {% for paragraph in second_paragraphs %}
72
+ <h3
73
+ class="fw-bold mb-4 pt-2"
74
+ id="{{ paragraph.title_id }}"
75
+ >
76
+ {{- paragraph.title -}}
77
+ </h3>
78
+ {{- paragraph.content -}}
79
+ {% endfor %}
80
+ {% endif %}
81
+
82
+ {% if gallery.main_title is not empty %}
83
+ <h3
84
+ class="fw-bold my-4"
85
+ {% if gallery.main_title_id is not empty %}
86
+ id="{{ gallery.main_title_id }}"
87
+ {% endif %}
88
+ >{{- gallery.main_title -}}</h3>
89
+ {% endif %}
90
+ {% if gallery.listing is defined and gallery.listing is not empty %}
91
+ <div class="mt-3">
92
+ {% for showcase in gallery.listing %}
93
+ <div class="mb-2-5 pb-4">
94
+ {% if showcase.carousel %}
95
+ {% include '@oe-bcl/bcl-carousel/carousel.html.twig' with showcase only %}
96
+ {% else %}
97
+ {% include '@oe-bcl/bcl-featured-media/featured-media.html.twig' with showcase only %}
98
+ {% endif %}
99
+ </div>
100
+ {% endfor %}
101
+ </div>
102
+ {% endif %}
103
+
104
+ {% if social_block is not empty %}
105
+ {% block social_block %}
106
+ {{ social_buttons }}
107
+ {% include '@oe-bcl/bcl-button/button.html.twig' with button_social_modal only %}
108
+ {% include '@oe-bcl/bcl-modal/modal.html.twig' with social_modal only %}
109
+ {% endblock %}
110
+ {% endif %}
111
+
112
+ {% endblock %}