@openeuropa/bcl-theme-joinup 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 (102) hide show
  1. package/css/oe-bcl-joinup.css +167 -85
  2. package/css/oe-bcl-joinup.css.map +1 -1
  3. package/css/oe-bcl-joinup.min.css +1 -1
  4. package/css/oe-bcl-joinup.min.css.map +1 -1
  5. package/js/oe-bcl-joinup.bundle.js +112 -1
  6. package/js/oe-bcl-joinup.bundle.js.map +1 -1
  7. package/js/oe-bcl-joinup.bundle.min.js +1 -1
  8. package/js/oe-bcl-joinup.bundle.min.js.map +1 -1
  9. package/js/oe-bcl-joinup.esm.js +111 -1
  10. package/js/oe-bcl-joinup.esm.js.map +1 -1
  11. package/js/oe-bcl-joinup.esm.min.js +1 -1
  12. package/js/oe-bcl-joinup.esm.min.js.map +1 -1
  13. package/js/oe-bcl-joinup.umd.js +112 -1
  14. package/js/oe-bcl-joinup.umd.js.map +1 -1
  15. package/js/oe-bcl-joinup.umd.min.js +1 -1
  16. package/js/oe-bcl-joinup.umd.min.js.map +1 -1
  17. package/package.json +7 -7
  18. package/src/js/index.esm.js +2 -0
  19. package/src/js/index.umd.js +2 -0
  20. package/templates/bcl-accordion/accordion.html.twig +42 -46
  21. package/templates/bcl-alert/alert.html.twig +18 -21
  22. package/templates/bcl-badge/badge.html.twig +11 -15
  23. package/templates/bcl-banner/banner.html.twig +34 -37
  24. package/templates/bcl-base-templates/content-type.html.twig +63 -67
  25. package/templates/bcl-base-templates/listing-page.html.twig +31 -31
  26. package/templates/bcl-base-templates/sidebar-search.html.twig +10 -10
  27. package/templates/bcl-blockquote/blockquote.html.twig +17 -20
  28. package/templates/bcl-breadcrumb/breadcrumb.html.twig +24 -28
  29. package/templates/bcl-button/button.html.twig +24 -27
  30. package/templates/bcl-button-group/button-group.html.twig +25 -29
  31. package/templates/bcl-card/card.html.twig +98 -101
  32. package/templates/bcl-card-layout/card-layout.html.twig +34 -37
  33. package/templates/bcl-carousel/carousel.html.twig +64 -67
  34. package/templates/bcl-contact-form/contact-form.html.twig +1 -1
  35. package/templates/bcl-content-banner/content-banner.html.twig +37 -40
  36. package/templates/bcl-date-block/date-block.html.twig +26 -29
  37. package/templates/bcl-description-list/description-list-details.html.twig +6 -9
  38. package/templates/bcl-description-list/description-list-title.html.twig +11 -14
  39. package/templates/bcl-description-list/description-list.html.twig +44 -48
  40. package/templates/bcl-dropdown/dropdown.html.twig +48 -52
  41. package/templates/bcl-event/event.html.twig +7 -7
  42. package/templates/bcl-fact-figures/fact-figures.html.twig +34 -37
  43. package/templates/bcl-featured-media/featured-media.html.twig +42 -46
  44. package/templates/bcl-file/file-translations.html.twig +29 -32
  45. package/templates/bcl-file/file.html.twig +47 -50
  46. package/templates/bcl-footer/footer.html.twig +31 -34
  47. package/templates/bcl-form/form.html.twig +70 -73
  48. package/templates/bcl-form-input/form-input.html.twig +57 -61
  49. package/templates/bcl-gallery/gallery-item.html.twig +20 -23
  50. package/templates/bcl-gallery/gallery.html.twig +62 -66
  51. package/templates/bcl-glossary/glossary-detail.html.twig +19 -19
  52. package/templates/bcl-glossary/glossary-listing.html.twig +6 -6
  53. package/templates/bcl-group/group-landing.html.twig +69 -69
  54. package/templates/bcl-group/group.html.twig +19 -19
  55. package/templates/bcl-header/header.html.twig +71 -82
  56. package/templates/bcl-heading/heading.html.twig +13 -17
  57. package/templates/bcl-icon/icon.html.twig +10 -13
  58. package/templates/bcl-inpage-navigation/inpage-navigation.html.twig +20 -23
  59. package/templates/bcl-landing-page/landing-page.html.twig +33 -33
  60. package/templates/bcl-language-list/language-list-grid.html.twig +25 -28
  61. package/templates/bcl-language-list/language-list-modal.html.twig +52 -52
  62. package/templates/bcl-language-list/language-list.html.twig +33 -37
  63. package/templates/bcl-language-switcher/language-switcher.html.twig +12 -15
  64. package/templates/bcl-link/link.html.twig +24 -27
  65. package/templates/bcl-links-block/links-block.html.twig +30 -34
  66. package/templates/bcl-list-group/list-group.html.twig +43 -47
  67. package/templates/bcl-listing/listing.html.twig +88 -91
  68. package/templates/bcl-mega-menu/mega-menu-items.html.twig +18 -21
  69. package/templates/bcl-mega-menu/mega-menu-submenu.html.twig +28 -26
  70. package/templates/bcl-mega-menu/mega-menu.html.twig +37 -38
  71. package/templates/bcl-modal/modal.html.twig +21 -23
  72. package/templates/bcl-navbar/navbar.html.twig +35 -38
  73. package/templates/bcl-navigation/navigation.html.twig +105 -110
  74. package/templates/bcl-offcanvas/offcanvas.html.twig +33 -36
  75. package/templates/bcl-page/page.html.twig +27 -27
  76. package/templates/bcl-pagination/pagination-item.html.twig +22 -26
  77. package/templates/bcl-pagination/pagination.html.twig +59 -62
  78. package/templates/bcl-pagination-v2/pagination-item.html.twig +31 -35
  79. package/templates/bcl-pagination-v2/pagination.html.twig +79 -82
  80. package/templates/bcl-person/person.html.twig +12 -12
  81. package/templates/bcl-placeholder/placeholder.html.twig +14 -18
  82. package/templates/bcl-progress/progress.html.twig +16 -20
  83. package/templates/bcl-project/project-lists.html.twig +25 -29
  84. package/templates/bcl-project/project.html.twig +35 -35
  85. package/templates/bcl-project-status/project-contributions.html.twig +25 -28
  86. package/templates/bcl-project-status/project-status.html.twig +32 -37
  87. package/templates/bcl-recent-activities/recent-activities.html.twig +13 -16
  88. package/templates/bcl-search/search.html.twig +12 -12
  89. package/templates/bcl-search-form/search-form.html.twig +21 -24
  90. package/templates/bcl-select/select.html.twig +52 -56
  91. package/templates/bcl-spinner/spinner.html.twig +10 -13
  92. package/templates/bcl-subscription/subscription-modal.html.twig +7 -7
  93. package/templates/bcl-subscription/subscription.html.twig +3 -3
  94. package/templates/bcl-subscription-block/subscription-block.html.twig +14 -17
  95. package/templates/bcl-table/table.html.twig +61 -65
  96. package/templates/bcl-textarea/textarea.html.twig +44 -47
  97. package/templates/bcl-timeline/timeline-item.html.twig +12 -15
  98. package/templates/bcl-timeline/timeline.html.twig +42 -45
  99. package/templates/bcl-toasts/toasts.html.twig +56 -60
  100. package/templates/bcl-user/user-compact.html.twig +24 -27
  101. package/templates/bcl-user/user-terms.html.twig +6 -6
  102. package/templates/bcl-user/user.html.twig +117 -117
@@ -1,5 +1,3 @@
1
- {% apply spaceless %}
2
-
3
1
  {# Parameters:
4
2
  - id (string) (default: dropdown-random(1000))
5
3
  - link (boolean) (default: false) - sets trigger to link, default is button
@@ -19,7 +17,7 @@
19
17
  - icon_path (string) (default: '')
20
18
  #}
21
19
 
22
- {% set _id = id|default('dropdown-' ~ random(1000)) %}
20
+ {%- set _id = id|default('dropdown-' ~ random(1000)) %}
23
21
  {% set _link = link ?? false %}
24
22
  {% set _trigger = trigger|default({}) %}
25
23
  {% set _content_block = content_block|default('') %}
@@ -30,16 +28,16 @@
30
28
  {% set _icon_path = icon_path|default('') %}
31
29
  {% set _menu_id = 'mega-menu-' ~ _id %}
32
30
 
33
- {% if attributes is empty %}
34
- {% set attributes = create_attribute() %}
31
+ {%- if attributes is empty %}
32
+ {%- set attributes = create_attribute() %}
35
33
  {% endif %}
36
34
 
37
- {% set _classes = ['bcl-mega-menu'] %}
35
+ {%- set _classes = ['bcl-mega-menu'] %}
38
36
 
39
- {% set attributes = attributes.addClass(_classes) %}
37
+ {%- set attributes = attributes.addClass(_classes) %}
40
38
 
41
- {% if _trigger.attributes is empty %}
42
- {% set _trigger = _trigger|merge({
39
+ {%- if _trigger.attributes is empty %}
40
+ {%- set _trigger = _trigger|merge({
43
41
  attributes: create_attribute()
44
42
  }) %}
45
43
  {% endif %}
@@ -51,19 +49,19 @@
51
49
  .setAttribute('data-bs-toggle', 'dropdown')
52
50
  .setAttribute('data-bs-auto-close', 'outside')
53
51
  .setAttribute('id', _id)
54
- }) %}
52
+ }) -%}
55
53
 
56
54
  <div {{ attributes }}>
57
- {% include '@oe-bcl/bcl-button/button.html.twig' with _trigger|merge({
55
+ {%- include '@oe-bcl/bcl-button/button.html.twig' with _trigger|merge({
58
56
  variant: 'link',
59
57
  clean_class: true,
60
58
  }) only %}
61
- {# Mega menu panel. #}
62
- <nav id="{{ _menu_id }}" class="bcl-mega-menu__container dropdown-menu" aria-labelledby="{{ _id }}" aria-label="Main mega menu">
59
+ {#- Mega menu panel. -#}
60
+ <nav id="{{ _menu_id }}" class="bcl-mega-menu__container dropdown-menu" aria-labelledby="{{ _id }}" aria-label="Main mega menu">{# -#}
63
61
  <div class="container">
64
- {# Mobile back button. #}
62
+ {#- Mobile back button. -#}
65
63
  <div class="container d-lg-none bcl-mega-menu__back-button-block">
66
- {% include '@oe-bcl/bcl-button/button.html.twig' with {
64
+ {%- include '@oe-bcl/bcl-button/button.html.twig' with {
67
65
  label: _back_button_label,
68
66
  icon_position: "before",
69
67
  variant: 'link',
@@ -72,20 +70,20 @@
72
70
  name: "arrow-left",
73
71
  },
74
72
  attributes: create_attribute().addClass(['back-button']).setAttribute('aria-label', 'Back to main menu')
75
- } only %}
73
+ } only -%}
76
74
  </div>
77
- {# Info/summary and submenu columns. #}
78
- <div class="position-relative">
75
+ {#- Info/summary and submenu columns. -#}
76
+ <div class="position-relative">{# -#}
79
77
  <div class="row">
80
- {# Content / summary column. #}
81
- {% if content_block is defined %}
82
- <div class="col-md-12 col-xl-3 position-relative bcl-mega-menu__info">
78
+ {#- Content / summary column. #}
79
+ {%- if content_block is defined -%}
80
+ <div class="col-md-12 col-xl-3 position-relative bcl-mega-menu__info">{# -#}
83
81
  <div class="content-block">
84
82
  {%- block content_block -%}
85
83
  {{ _content_block }}
86
84
  {%- endblock -%}
87
85
  {% if _content_link.path is not empty %}
88
- {% set _content_link = _content_link|merge({
86
+ {%- set _content_link = _content_link|merge({
89
87
  icon: _content_link.icon|default({})|merge({
90
88
  path: _icon_path
91
89
  }),
@@ -93,23 +91,24 @@
93
91
  ? _content_link.attributes
94
92
  : create_attribute()
95
93
  ).addClass('content-link')
96
- }) %}
94
+ }) -%}
97
95
  <p class="m-0">{% include '@oe-bcl/bcl-link/link.html.twig' with _content_link only %}</p>
98
- {% endif %}
99
- </div>
100
- <div class="shadow-container">
101
- <span class="shadow-bg"></span>
102
- </div>
96
+ {%- endif -%}
97
+ </div>{# -#}
98
+ <div class="shadow-container">{# -#}
99
+ <span class="shadow-bg"></span>{# -#}
100
+ </div>{# -#}
103
101
  </div>
104
- {% endif %}
105
- {# Submenu column. #}
102
+ {%- endif %}
103
+ {#- Submenu column. -#}
106
104
  <div class="col-md-12 col-lg-4 col-xl-3 bcl-mega-menu__menu">
107
- {% include '@oe-bcl/bcl-mega-menu/mega-menu-items.html.twig' %}
108
- </div>
109
- </div>
110
- </div>
111
- </div>
112
- </nav>
105
+ <div class="__submenu_body">
106
+ {% include '@oe-bcl/bcl-mega-menu/mega-menu-items.html.twig' %}
107
+ </div>{# -#}
108
+ </div>{# -#}
109
+ </div>{# -#}
110
+ </div>{# -#}
111
+ </div>{# -#}
112
+ </nav>{# -#}
113
113
  </div>
114
-
115
- {% endapply %}
114
+ {#--#}
@@ -1,5 +1,3 @@
1
- {% apply spaceless %}
2
-
3
1
  {# Parameters:
4
2
  - size (string) default('')
5
3
  options: sm, lg, xl, fullscreen
@@ -7,7 +5,8 @@
7
5
  - fullscreen_responsive (string) (default: '')
8
6
  options: sm, md, lg, xl, xxl
9
7
  - static_backdrop (boolean) (default: false)
10
- - verticaly_centered (boolean) (default: false)
8
+ - vertically_centered (boolean) (default: false)
9
+ - verticaly_centered (boolean) (default: false) // deprecated typo
11
10
  - scrollable (boolean) (default: false)
12
11
  - header (block) (default: '')
13
12
  - messages (block) (default: '')
@@ -25,11 +24,11 @@
25
24
  - footer
26
25
  #}
27
26
 
28
- {% set _size = size|default('') %}
27
+ {%- set _size = size|default('') %}
29
28
  {% set _id = id|default('modal-' ~ random(10000)) %}
30
29
  {% set _fullscreen_responsive = fullscreen_responsive|default('') %}
31
30
  {% set _static_backdrop = static_backdrop ?? false %}
32
- {% set _verticaly_centered = verticaly_centered ?? false %}
31
+ {% set _vertically_centered = vertically_centered ?? verticaly_centered ?? false %}
33
32
  {% set _scrollable = scrollable ?? false %}
34
33
  {% set _header = header|default('') %}
35
34
  {% set _header_attributes = header_attributes ?: create_attribute() %}
@@ -39,13 +38,13 @@
39
38
  {% set _footer = footer|default('') %}
40
39
  {% set _footer_attributes = footer_attributes ?: create_attribute() %}
41
40
 
42
- {% set _classes = ['modal', 'fade'] %}
41
+ {%- set _classes = ['modal', 'fade'] %}
43
42
 
44
- {% if attributes is empty %}
45
- {% set attributes = create_attribute() %}
43
+ {%- if attributes is empty %}
44
+ {%- set attributes = create_attribute() %}
46
45
  {% endif %}
47
46
 
48
- {% set attributes = attributes
47
+ {%- set attributes = attributes
49
48
  .setAttribute('id', _id)
50
49
  .setAttribute('tabindex', '-1')
51
50
  .setAttribute('aria-hidden', 'true')
@@ -53,42 +52,41 @@
53
52
  .addClass(_classes)
54
53
  %}
55
54
 
56
- {% if _static_backdrop %}
57
- {% set attributes = attributes.setAttribute('data-bs-backdrop', 'static') %}
58
- {% endif %}
55
+ {%- if _static_backdrop %}
56
+ {%- set attributes = attributes.setAttribute('data-bs-backdrop', 'static') %}
57
+ {% endif -%}
59
58
 
60
59
  <div
61
60
  {{ attributes }}
62
- >
61
+ >{# -#}
63
62
  <div class="modal-dialog
64
63
  {{- _size ? ' modal-' ~ size -}}
65
64
  {{- _fullscreen_responsive ? ' modal-fullscreen-' ~ _fullscreen_responsive ~ '-down' -}}
66
- {{- _verticaly_centered ? ' modal-dialog-centered' -}}
65
+ {{- _vertically_centered ? ' modal-dialog-centered' -}}
67
66
  {{- _scrollable ? ' modal-dialog-scrollable' -}}"
68
- >
67
+ >{# -#}
69
68
  <div class="modal-content">
70
- {% if header is not empty %}
69
+ {%- if header is not empty -%}
71
70
  <div
72
71
  {{- _header_attributes.addClass(['modal-header']) -}}
73
72
  >
74
73
  {%- block header _header -%}
75
74
  </div>
76
- {% endif %}
75
+ {%- endif %}
77
76
  {%- block messages _messages -%}
78
77
  <div
79
78
  {{- _body_attributes.addClass(['modal-body']) -}}
80
79
  >
81
80
  {%- block body _body -%}
82
81
  </div>
83
- {% if footer is not empty %}
82
+ {%- if footer is not empty -%}
84
83
  <div
85
84
  {{- _footer_attributes.addClass(['modal-footer']) -}}
86
85
  >
87
86
  {%- block footer _footer -%}
88
87
  </div>
89
- {% endif %}
90
- </div>
91
- </div>
88
+ {%- endif -%}
89
+ </div>{# -#}
90
+ </div>{# -#}
92
91
  </div>
93
-
94
- {% endapply %}
92
+ {#--#}
@@ -1,5 +1,3 @@
1
- {% apply spaceless %}
2
-
3
1
  {# Parameters:
4
2
  - collapse_id (string) (default: '')
5
3
  - background (string) (default: '')
@@ -26,7 +24,7 @@
26
24
  - right
27
25
  #}
28
26
 
29
- {% set _collapse_id = collapse_id|default('') %}
27
+ {%- set _collapse_id = collapse_id|default('') %}
30
28
  {% set _background = background|default('') %}
31
29
  {% set _brand = brand|default({}) %}
32
30
  {% set _navigation = navigation|default({}) %}
@@ -35,48 +33,48 @@
35
33
  {% set _color_set = color_set|default('light') %}
36
34
  {% set _disable_collapse = disable_collapse ?? false %}
37
35
 
38
- {% set _classes = ['navbar', 'navbar-expand-' ~ _expand] %}
36
+ {%- set _classes = ['navbar', 'navbar-expand-' ~ _expand] %}
39
37
  {% if _background is not empty %}
40
- {% set _classes = _classes|merge(['bg-' ~ _background]) %}
38
+ {%- set _classes = _classes|merge(['bg-' ~ _background]) %}
41
39
  {% endif %}
42
40
  {% if _color_set is not empty %}
43
- {% set _classes = _classes|merge(['navbar-' ~ _color_set]) %}
41
+ {%- set _classes = _classes|merge(['navbar-' ~ _color_set]) %}
44
42
  {% endif %}
45
43
 
46
- {% if attributes is empty %}
47
- {% set attributes = create_attribute() %}
44
+ {%- if attributes is empty %}
45
+ {%- set attributes = create_attribute() %}
48
46
  {% endif %}
49
47
 
50
- {% set attributes = attributes.addClass(_classes) %}
48
+ {%- set attributes = attributes.addClass(_classes) -%}
51
49
 
52
50
  <nav
53
51
  {{ attributes }}
54
- >
52
+ >{# -#}
55
53
  <div class='container'>
56
- {% block branding %}
57
- {% if _brand is not empty %}
54
+ {%- block branding %}
55
+ {%- if _brand is not empty -%}
58
56
  <a class='navbar-brand' href='{{ _brand.link }}'>
59
- {% for logo in _brand.logos %}
57
+ {%- for logo in _brand.logos -%}
60
58
  <img
61
59
  src='{{ logo.src }}'
62
60
  {% if logo.alt is not empty %}
63
61
  alt='{{ logo.alt }}'
64
62
  {% endif %}
65
- {% if logo.class is not empty %}
63
+ {%- if logo.class is not empty %}
66
64
  class='{{ logo.class }}'
67
65
  {% endif %}
68
66
  />
69
- {% endfor %}
67
+ {%- endfor %}
70
68
  {%- if _brand.label is defined -%}
71
69
  <div class="h5 ms-4-5 d-none d-lg-inline-block">
72
70
  {{- _brand.label -}}
73
71
  </div>
74
- {% endif %}
72
+ {%- endif -%}
75
73
  </a>
76
- {% endif %}
77
- {% endblock %}
74
+ {%- endif %}
75
+ {%- endblock %}
78
76
 
79
- {% if not _disable_collapse %}
77
+ {%- if not _disable_collapse -%}
80
78
  <button
81
79
  class="navbar-toggler"
82
80
  type="button"
@@ -85,25 +83,24 @@
85
83
  aria-controls='{{ _collapse_id }}'
86
84
  aria-expanded="false"
87
85
  aria-label="Toggle navigation"
88
- >
89
- <span class="navbar-toggler-icon"></span>
90
- </button>
86
+ >{# -#}
87
+ <span class="navbar-toggler-icon"></span>{# -#}
88
+ </button>{# -#}
91
89
  <div class="collapse navbar-collapse" id='{{ _collapse_id }}'>
92
- {% endif %}
93
- {% block navigation %}
94
- {% if _navigation is not empty %}
95
- {% include '@oe-bcl/bcl-navigation/navigation.html.twig' with _navigation only %}
96
- {% endif %}
97
- {% endblock %}
98
- {% block right %}
99
- {% if _form is not empty %}
100
- {% include '@oe-bcl/bcl-form/form.html.twig' with _form only %}
101
- {% endif %}
102
- {% endblock %}
103
- {% if not _disable_collapse %}
90
+ {%- endif %}
91
+ {%- block navigation %}
92
+ {%- if _navigation is not empty %}
93
+ {%- include '@oe-bcl/bcl-navigation/navigation.html.twig' with _navigation only %}
94
+ {%- endif %}
95
+ {%- endblock %}
96
+ {%- block right %}
97
+ {%- if _form is not empty %}
98
+ {%- include '@oe-bcl/bcl-form/form.html.twig' with _form only %}
99
+ {%- endif %}
100
+ {%- endblock %}
101
+ {%- if not _disable_collapse -%}
104
102
  </div>
105
- {% endif %}
106
- </div>
103
+ {%- endif -%}
104
+ </div>{# -#}
107
105
  </nav>
108
-
109
- {% endapply %}
106
+ {#--#}
@@ -1,7 +1,6 @@
1
1
  {% import _self as navigation %}
2
- {% apply spaceless %}
3
2
 
4
- {# Parameters:
3
+ {#- Parameters:
5
4
  - id (string) (default: '')
6
5
  - pills (boolean) (default: false)
7
6
  - tabs (boolean) (default: false) - If tabs is set to true, the nav should also be set to true for accessibility reasons
@@ -25,120 +24,119 @@
25
24
  - attributes (drupal attrs)
26
25
  #}
27
26
 
28
- {# Define main macro #}
27
+ {#- Define main macro #}
29
28
  {% macro render(items, pills, tabs, tabs_content, vertical, full_width, alignment, id, nav, navbar, attributes) %}
30
- {% apply spaceless %}
31
- {% import _self as navigation %}
29
+ {%- import _self as navigation %}
32
30
 
33
- {% set _id = id|default('') %}
34
- {% set _pills = pills ?? false %}
35
- {% set _tabs = tabs ?? false %}
36
- {% set _vertical = vertical ?? false %}
37
- {% set _full_width = full_width ?? false %}
38
- {% set _alignment = alignment|default('') %}
39
- {% set _tabs_content = tabs_content ?? false %}
40
- {% set _nav = nav ?? false %}
41
- {% set _navbar = navbar ?? false %}
42
- {% set _items = items|default([]) %}
31
+ {%- set _id = id|default('') %}
32
+ {%- set _pills = pills ?? false %}
33
+ {%- set _tabs = tabs ?? false %}
34
+ {%- set _vertical = vertical ?? false %}
35
+ {%- set _full_width = full_width ?? false %}
36
+ {%- set _alignment = alignment|default('') %}
37
+ {%- set _tabs_content = tabs_content ?? false %}
38
+ {%- set _nav = nav ?? false %}
39
+ {%- set _navbar = navbar ?? false %}
40
+ {%- set _items = items|default([]) %}
43
41
 
44
- {% if _navbar %}
45
- {% set _classes = ['navbar-nav'] %}
46
- {% else %}
47
- {% set _classes = ['nav'] %}
48
- {% endif %}
49
- {% if _pills %}
50
- {% set _classes = _classes|merge(['nav-pills']) %}
51
- {% endif %}
52
- {% if _tabs %}
53
- {% set _classes = _classes|merge(['nav-tabs']) %}
54
- {% endif %}
55
- {% if _vertical %}
56
- {% set _classes = _classes|merge(['flex-column']) %}
57
- {% endif %}
58
- {% if _full_width %}
59
- {% set _classes = _classes|merge(['nav-fill']) %}
60
- {% endif %}
61
- {% if _alignment is not empty %}
62
- {% set _classes = _classes|merge(['justify-content-' ~ _alignment]) %}
63
- {% endif %}
42
+ {%- if _navbar %}
43
+ {%- set _classes = ['navbar-nav'] %}
44
+ {%- else %}
45
+ {%- set _classes = ['nav'] %}
46
+ {%- endif %}
47
+ {%- if _pills %}
48
+ {%- set _classes = _classes|merge(['nav-pills']) %}
49
+ {%- endif %}
50
+ {%- if _tabs %}
51
+ {%- set _classes = _classes|merge(['nav-tabs']) %}
52
+ {%- endif %}
53
+ {%- if _vertical %}
54
+ {%- set _classes = _classes|merge(['flex-column']) %}
55
+ {%- endif %}
56
+ {%- if _full_width %}
57
+ {%- set _classes = _classes|merge(['nav-fill']) %}
58
+ {%- endif %}
59
+ {%- if _alignment is not empty %}
60
+ {%- set _classes = _classes|merge(['justify-content-' ~ _alignment]) %}
61
+ {%- endif %}
64
62
 
65
- {% if attributes is empty %}
66
- {% set attributes = create_attribute() %}
67
- {% endif %}
63
+ {%- if attributes is empty %}
64
+ {%- set attributes = create_attribute() %}
65
+ {%- endif %}
68
66
 
69
- {% if _id is not empty %}
70
- {% set attributes = attributes.setAttribute('id', _id) %}
71
- {% endif %}
67
+ {%- if _id is not empty %}
68
+ {%- set attributes = attributes.setAttribute('id', _id) %}
69
+ {%- endif %}
72
70
 
73
- {% if _tabs %}
74
- {% set attributes = attributes.setAttribute('role', 'tablist') %}
75
- {% endif %}
76
- {% set attributes = attributes.addClass(_classes) %}
71
+ {%- if _tabs %}
72
+ {%- set attributes = attributes.setAttribute('role', 'tablist') %}
73
+ {%- endif %}
74
+ {%- set attributes = attributes.addClass(_classes) %}
77
75
 
78
- {% if _nav %}
76
+ {%- if _nav -%}
79
77
  <nav
80
78
  {{ attributes }}
81
79
  >
82
- {% else %}
80
+ {%- else -%}
83
81
  <ul
84
82
  {{ attributes }}
85
83
  >
86
- {% endif %}
87
- {% if _items is not empty and _items is iterable %}
88
- {% for _item in items %}
89
- {% set _nav_class = 'nav-item' %}
90
- {% if _item.dropdown %}
91
- {% set _nav_class = _nav_class ~ ' dropdown' %}
92
- {% set _item = _item|merge({remove_wrapper: true}) %}
93
- {% endif %}
94
- {% if _item.dropdown or _item.mega_menu %}
95
- {% set _item_classes = [] %}
96
- {% else %}
97
- {% set _item_classes = ['nav-link'] %}
98
- {% endif %}
99
- {% if _item.active %}
100
- {% set _item_classes = _item_classes|merge(['active']) %}
101
- {% endif %}
102
- {% if _item.attributes is empty %}
103
- {% set _item = _item|merge({
84
+ {%- endif %}
85
+ {%- if _items is not empty and _items is iterable %}
86
+ {%- for _item in items %}
87
+ {%- set _nav_class = 'nav-item' %}
88
+ {%- if _item.dropdown %}
89
+ {%- set _nav_class = _nav_class ~ ' dropdown' %}
90
+ {%- set _item = _item|merge({remove_wrapper: true}) %}
91
+ {%- endif %}
92
+ {%- if _item.dropdown or _item.mega_menu %}
93
+ {%- set _item_classes = [] %}
94
+ {%- else %}
95
+ {%- set _item_classes = ['nav-link'] %}
96
+ {%- endif %}
97
+ {%- if _item.active %}
98
+ {%- set _item_classes = _item_classes|merge(['active']) %}
99
+ {%- endif %}
100
+ {%- if _item.attributes is empty %}
101
+ {%- set _item = _item|merge({
104
102
  attributes: create_attribute()
105
103
  }) %}
106
- {% endif %}
107
- {% set _item = _item|merge({
104
+ {%- endif %}
105
+ {%- set _item = _item|merge({
108
106
  attributes: _item.attributes.addClass(_item_classes),
109
107
  clean_class: true}) %}
110
- {% if not _nav %}
108
+ {%- if not _nav -%}
111
109
  <li
112
110
  class="{{ _nav_class }}"
113
111
  {% if _tabs %}
114
112
  role="tab"
115
113
  {% endif %}
116
114
  >
117
- {% elseif _tabs and _item.dropdown is not defined %}
118
- {% set _item = _item|merge({
115
+ {%- elseif _tabs and _item.dropdown is not defined %}
116
+ {%- set _item = _item|merge({
119
117
  attributes: _item.attributes.setAttribute("role", "tab"),
120
- })
118
+ })
121
119
  %}
122
- {% endif %}
123
- {% if _item.dropdown is defined %}
124
- {% if _tabs %}
125
- {% set _item = _item|merge({
120
+ {%- endif %}
121
+ {%- if _item.dropdown is defined %}
122
+ {%- if _tabs %}
123
+ {%- set _item = _item|merge({
126
124
  inside_navigation: true,
127
125
  trigger: _item.trigger|merge({
128
126
  attributes: _item.trigger.attributes.setAttribute("role", "tab"),
129
127
  }),
130
128
  }) %}
131
- {% endif %}
132
- {% include '@oe-bcl/bcl-dropdown/dropdown.html.twig' with _item only %}
133
- {% elseif _item.button is defined %}
134
- {% include '@oe-bcl/bcl-button/button.html.twig' with _item only %}
135
- {% elseif _item.mega_menu is defined %}
136
- {% include '@oe-bcl/bcl-mega-menu/mega-menu.html.twig' with _item only %}
137
- {% else %}
138
- {% include '@oe-bcl/bcl-link/link.html.twig' with _item only %}
139
- {% endif %}
140
- {% if _item.navigation is defined and _item.navigation.items is not empty and _item.navigation.items is iterable %}
141
- {{ navigation.render(
129
+ {%- endif %}
130
+ {%- include '@oe-bcl/bcl-dropdown/dropdown.html.twig' with _item only %}
131
+ {%- elseif _item.button is defined %}
132
+ {%- include '@oe-bcl/bcl-button/button.html.twig' with _item only %}
133
+ {%- elseif _item.mega_menu is defined %}
134
+ {%- include '@oe-bcl/bcl-mega-menu/mega-menu.html.twig' with _item only %}
135
+ {%- else %}
136
+ {%- include '@oe-bcl/bcl-link/link.html.twig' with _item only %}
137
+ {%- endif %}
138
+ {%- if _item.navigation is defined and _item.navigation.items is not empty and _item.navigation.items is iterable %}
139
+ {{- navigation.render(
142
140
  _item.navigation.items,
143
141
  _item.navigation.pills,
144
142
  _item.navigation.tabs,
@@ -151,39 +149,36 @@
151
149
  _item.navigation.navbar,
152
150
  _item.navigation.attributes
153
151
  ) }}
154
- {% endif %}
155
- {% if not _nav %}
152
+ {%- endif %}
153
+ {%- if not _nav -%}
156
154
  </li>
157
- {% endif %}
158
- {% endfor %}
159
- {% endif %}
160
- {% if _nav %}
155
+ {%- endif %}
156
+ {%- endfor %}
157
+ {%- endif %}
158
+ {%- if _nav -%}
161
159
  </nav>
162
- {% else %}
160
+ {%- else -%}
163
161
  </ul>
164
- {% endif %}
165
- {% if _tabs_content %}
162
+ {%- endif %}
163
+ {%- if _tabs_content -%}
166
164
  <div class="tab-content">
167
165
  {%- block contents -%}
168
166
  {% if _items is not empty and _items is iterable %}
169
- {% for _item in _items %}
170
- {% if _item.content is not empty %}
171
- {% set _content_class = 'tab-pane fade' %}
172
- {% if _item.active %}
173
- {% set _content_class = _content_class ~ ' show active' %}
174
- {% endif %}
167
+ {%- for _item in _items %}
168
+ {%- if _item.content is not empty %}
169
+ {%- set _content_class = 'tab-pane fade' %}
170
+ {%- if _item.active %}
171
+ {%- set _content_class = _content_class ~ ' show active' %}
172
+ {%- endif -%}
175
173
  <div class="{{ _content_class }}" id="{{ _item.target }}" role="tabpanel" aria-labelledby="{{ _item.id }}">
176
174
  {{- _item.content -}}
177
175
  </div>
178
- {% endif %}
179
- {% endfor %}
180
- {% endif %}
176
+ {%- endif %}
177
+ {%- endfor %}
178
+ {%- endif %}
181
179
  {%- endblock -%}
182
180
  </div>
183
- {% endif %}
184
- {% endapply %}
185
- {% endmacro %}
186
-
187
- {{ navigation.render(items, pills, tabs, tabs_content, vertical, full_width, alignment, id, nav, navbar, attributes) }}
181
+ {%- endif %}
182
+ {%- endmacro %}
188
183
 
189
- {% endapply %}
184
+ {{- navigation.render(items, pills, tabs, tabs_content, vertical, full_width, alignment, id, nav, navbar, attributes) -}}