@openeuropa/bcl-theme-default 0.13.0 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bcl-builder.config.js +4 -0
- package/css/oe-bcl-default.css +243 -29
- package/css/oe-bcl-default.css.map +1 -1
- package/css/oe-bcl-default.min.css +1 -1
- package/css/oe-bcl-default.min.css.map +1 -1
- package/icons/bcl-default-icons.svg +1 -0
- package/icons/icons-flag.svg +1 -0
- package/js/oe-bcl-default.bundle.js +53 -21
- package/js/oe-bcl-default.bundle.js.map +1 -1
- package/js/oe-bcl-default.bundle.min.js +1 -1
- package/js/oe-bcl-default.bundle.min.js.map +1 -1
- package/js/oe-bcl-default.esm.min.js.map +1 -1
- package/js/oe-bcl-default.umd.js +61 -24
- package/js/oe-bcl-default.umd.js.map +1 -1
- package/js/oe-bcl-default.umd.min.js +1 -1
- package/js/oe-bcl-default.umd.min.js.map +1 -1
- package/package.json +6 -5
- package/src/scss/_badge.scss +15 -0
- package/src/scss/_banners.scss +8 -6
- package/src/scss/_bcl-offcanvas.scss +4 -4
- package/src/scss/_footer.scss +16 -7
- package/src/scss/_header.scss +86 -17
- package/src/scss/_inpage-navigation.scss +1 -1
- package/src/scss/_multiselect.scss +3 -2
- package/src/scss/_utilities.scss +9 -0
- package/src/scss/_variables.scss +11 -6
- package/src/scss/oe-bcl-default.scss +1 -0
- package/templates/bcl-accordion/accordion.html.twig +9 -0
- package/templates/bcl-alert/alert.html.twig +4 -0
- package/templates/bcl-badge/badge.html.twig +9 -1
- package/templates/bcl-banner/banner.html.twig +12 -5
- package/templates/bcl-base-templates/content-type.html.twig +120 -0
- package/templates/bcl-base-templates/listing-page.html.twig +63 -0
- package/templates/{bcl-group-landing-listing/group-landing-listing-offcanvas.html.twig → bcl-base-templates/sidebar-search.html.twig} +0 -1
- package/templates/bcl-blockquote/blockquote.html.twig +4 -0
- package/templates/bcl-breadcrumb/breadcrumb.html.twig +6 -2
- package/templates/bcl-button/button.html.twig +8 -2
- package/templates/bcl-button-group/button-group.html.twig +4 -0
- package/templates/bcl-card/card.html.twig +28 -29
- package/templates/bcl-card-layout/card-layout.html.twig +4 -0
- package/templates/bcl-carousel/carousel.html.twig +4 -0
- package/templates/bcl-content-banner/content-banner.html.twig +107 -0
- package/templates/bcl-date-block/date-block.html.twig +4 -0
- package/templates/bcl-description-list/description-list.html.twig +114 -0
- package/templates/bcl-event/event.html.twig +41 -0
- package/templates/bcl-fact-figures/fact-figures.html.twig +13 -5
- package/templates/bcl-featured-media/featured-media.html.twig +53 -5
- package/templates/bcl-file/file.html.twig +209 -0
- package/templates/bcl-footer/footer.html.twig +4 -1
- package/templates/bcl-form/form.html.twig +4 -0
- package/templates/bcl-group/group-landing.html.twig +101 -0
- package/templates/bcl-group/group.html.twig +27 -0
- package/templates/bcl-header/header.html.twig +11 -2
- package/templates/bcl-inpage-navigation/inpage-navigation.html.twig +14 -1
- package/templates/bcl-landing-page/landing-page.html.twig +46 -52
- package/templates/bcl-links-block/links-block.html.twig +5 -2
- package/templates/bcl-list-group/list-group.html.twig +6 -0
- package/templates/bcl-listing/listing.html.twig +29 -16
- package/templates/bcl-navbar/navbar.html.twig +22 -20
- package/templates/bcl-navigation/navigation.html.twig +135 -110
- package/templates/bcl-offcanvas/offcanvas.html.twig +4 -0
- package/templates/bcl-page/page.html.twig +64 -0
- package/templates/bcl-pagination/pagination.html.twig +5 -1
- package/templates/bcl-placeholder/placeholder.html.twig +43 -0
- package/templates/bcl-progress/progress.html.twig +4 -0
- package/templates/bcl-recent-activities/recent-activities.html.twig +4 -0
- package/templates/bcl-search/search.html.twig +10 -40
- package/templates/bcl-search-form/search-form.html.twig +52 -0
- package/templates/bcl-select/select.html.twig +6 -0
- package/templates/bcl-table/table.html.twig +4 -0
- package/templates/bcl-timeline/timeline.html.twig +16 -1
- package/templates/bcl-toast/toasts.html.twig +4 -0
- package/templates/bcl-user/user-edit.html.twig +38 -0
- package/templates/{bcl-user-view → bcl-user}/user-view-compact.html.twig +5 -1
- package/templates/bcl-user/user-view.html.twig +96 -0
- package/templates/bcl-group-landing/group-landing.html.twig +0 -106
- package/templates/bcl-group-landing-listing/group-landing-listing.html.twig +0 -69
- package/templates/bcl-search/search-offcanvas.html.twig +0 -8
- package/templates/bcl-user-edit/edit-contents.html.twig +0 -32
- package/templates/bcl-user-edit/user-edit.html.twig +0 -19
- package/templates/bcl-user-listing/user-listing-offcanvas.html.twig +0 -8
- package/templates/bcl-user-listing/user-listing.html.twig +0 -45
- package/templates/bcl-user-view/user-view.html.twig +0 -106
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@openeuropa/bcl-theme-default",
|
|
3
3
|
"author": "European Commission",
|
|
4
4
|
"license": "EUPL-1.2",
|
|
5
|
-
"version": "0.
|
|
5
|
+
"version": "0.17.0",
|
|
6
6
|
"description": "OE - BCL theme default",
|
|
7
7
|
"scripts": {
|
|
8
8
|
"build": "npm-run-all build:*",
|
|
@@ -13,9 +13,10 @@
|
|
|
13
13
|
"prepublish": "npm run build"
|
|
14
14
|
},
|
|
15
15
|
"devDependencies": {
|
|
16
|
-
"@
|
|
17
|
-
"@openeuropa/bcl-
|
|
18
|
-
"@openeuropa/bcl-
|
|
16
|
+
"@ecl/resources-flag-icons": "3.1.3",
|
|
17
|
+
"@openeuropa/bcl-bootstrap": "^0.17.0",
|
|
18
|
+
"@openeuropa/bcl-builder": "^0.17.0",
|
|
19
|
+
"@openeuropa/bcl-twig-templates": "^0.17.0",
|
|
19
20
|
"copyfiles": "2.4.1",
|
|
20
21
|
"cross-env": "7.0.3",
|
|
21
22
|
"glob": "7.2.0",
|
|
@@ -39,5 +40,5 @@
|
|
|
39
40
|
"design-system",
|
|
40
41
|
"twig"
|
|
41
42
|
],
|
|
42
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "07ff24de8a209d80750a32cd52dfe9663fabf8e2"
|
|
43
44
|
}
|
package/src/scss/_badge.scss
CHANGED
|
@@ -83,3 +83,18 @@ a {
|
|
|
83
83
|
font-size: 0.75em; // Default size in Bootstrap
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
|
+
|
|
87
|
+
@each $color, $value in $theme-colors {
|
|
88
|
+
.badge-outline-#{$color} {
|
|
89
|
+
border: $border-width solid $value;
|
|
90
|
+
color: $value !important;
|
|
91
|
+
background: transparent !important;
|
|
92
|
+
.icon--close {
|
|
93
|
+
background: $value;
|
|
94
|
+
color: $white;
|
|
95
|
+
@if $color == light {
|
|
96
|
+
color: $black;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
package/src/scss/_banners.scss
CHANGED
|
@@ -91,13 +91,15 @@
|
|
|
91
91
|
border-left: 4px solid transparent;
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
|
+
}
|
|
94
95
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
96
|
+
.bcl-banner.full-width,
|
|
97
|
+
.bcl-content-banner {
|
|
98
|
+
left: 50%;
|
|
99
|
+
width: 100vw;
|
|
100
|
+
margin-left: -50vw;
|
|
101
|
+
border-radius: 0;
|
|
102
|
+
position: relative;
|
|
101
103
|
}
|
|
102
104
|
|
|
103
105
|
.bcl-banner__content {
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
@media screen and (min-width: 992px) {
|
|
1
|
+
@include media-breakpoint-up(lg) {
|
|
4
2
|
.bcl-offcanvas {
|
|
5
3
|
position: relative;
|
|
6
4
|
width: auto;
|
|
7
|
-
visibility: visible !important;
|
|
5
|
+
visibility: visible !important; // stylelint-disable-line declaration-no-important
|
|
8
6
|
border: none;
|
|
9
7
|
transform: none;
|
|
8
|
+
|
|
10
9
|
.offcanvas-body {
|
|
11
10
|
overflow: visible;
|
|
12
11
|
}
|
|
13
12
|
}
|
|
13
|
+
|
|
14
14
|
.bcl-offcanvas + .offcanvas-backdrop {
|
|
15
15
|
display: none;
|
|
16
16
|
}
|
package/src/scss/_footer.scss
CHANGED
|
@@ -2,17 +2,26 @@
|
|
|
2
2
|
|
|
3
3
|
$footer-border-color: #adb5bd !default;
|
|
4
4
|
|
|
5
|
-
.bcl-footer {
|
|
6
|
-
background: $
|
|
5
|
+
.bcl-footer--neutral {
|
|
6
|
+
background: $gray-600;
|
|
7
|
+
a,
|
|
8
|
+
p {
|
|
9
|
+
color: $white;
|
|
10
|
+
}
|
|
7
11
|
}
|
|
8
12
|
|
|
9
|
-
.bcl-footer
|
|
10
|
-
|
|
13
|
+
.bcl-footer--eu,
|
|
14
|
+
.eu__footer {
|
|
15
|
+
background: $eu-light-blue;
|
|
11
16
|
}
|
|
12
17
|
|
|
13
|
-
.bcl-footer
|
|
14
|
-
.
|
|
15
|
-
|
|
18
|
+
.bcl-footer--ec,
|
|
19
|
+
.ec__footer {
|
|
20
|
+
background: $ec-blue;
|
|
21
|
+
a,
|
|
22
|
+
p {
|
|
23
|
+
color: $white;
|
|
24
|
+
}
|
|
16
25
|
}
|
|
17
26
|
|
|
18
27
|
.bcl-footer *[class*="border-"] {
|
package/src/scss/_header.scss
CHANGED
|
@@ -21,13 +21,11 @@ $header-link-active-background: #003776 !default;
|
|
|
21
21
|
padding-bottom: map-get($spacers, 3);
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
.bcl-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
.ec__header .bcl-header__navbar {
|
|
30
|
-
background: $header-background;
|
|
24
|
+
.bcl-header--neutral {
|
|
25
|
+
.bcl-header__project,
|
|
26
|
+
.bcl-header__navbar {
|
|
27
|
+
background: $gray-600;
|
|
28
|
+
}
|
|
31
29
|
}
|
|
32
30
|
|
|
33
31
|
.bcl-navbar-header {
|
|
@@ -38,8 +36,20 @@ $header-link-active-background: #003776 !default;
|
|
|
38
36
|
color: $eu-blue;
|
|
39
37
|
}
|
|
40
38
|
|
|
41
|
-
.bcl-header
|
|
42
|
-
|
|
39
|
+
.bcl-header--ec,
|
|
40
|
+
.ec__header {
|
|
41
|
+
.bcl-header__project,
|
|
42
|
+
.bcl-header__navbar {
|
|
43
|
+
background: $header-background;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.nav-link {
|
|
47
|
+
color: $ec-blue;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.bcl-header:not(.bcl-header--neutral) .bcl-header__project {
|
|
52
|
+
padding-top: map-get($spacers, 3);
|
|
43
53
|
}
|
|
44
54
|
|
|
45
55
|
.bcl-header__navbar .navbar-nav .nav-link {
|
|
@@ -76,13 +86,14 @@ $header-link-active-background: #003776 !default;
|
|
|
76
86
|
transform: translate(-11px, 5px);
|
|
77
87
|
}
|
|
78
88
|
|
|
79
|
-
.bcl-header__project
|
|
89
|
+
.bcl-header__project .bcl-header__site-name {
|
|
80
90
|
display: inline-block;
|
|
81
91
|
margin-bottom: 0;
|
|
82
92
|
font-size: 1.3rem;
|
|
83
93
|
font-weight: 300;
|
|
84
94
|
color: $white;
|
|
85
95
|
vertical-align: middle;
|
|
96
|
+
max-width: 80%;
|
|
86
97
|
}
|
|
87
98
|
|
|
88
99
|
.bcl-header .navbar-toggler {
|
|
@@ -96,6 +107,12 @@ $header-link-active-background: #003776 !default;
|
|
|
96
107
|
background: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
|
|
97
108
|
}
|
|
98
109
|
|
|
110
|
+
@media only screen and (max-width: 400px) {
|
|
111
|
+
.bcl-header--neutral .bcl-header__project-logo {
|
|
112
|
+
display: none;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
99
116
|
@include media-breakpoint-down(sm) {
|
|
100
117
|
.bcl-header .navbar:first-child .nav-link {
|
|
101
118
|
padding: 0.5rem 0.4rem;
|
|
@@ -103,48 +120,100 @@ $header-link-active-background: #003776 !default;
|
|
|
103
120
|
}
|
|
104
121
|
|
|
105
122
|
@include media-breakpoint-up(md) {
|
|
106
|
-
.
|
|
107
|
-
|
|
123
|
+
.bcl-header--ec,
|
|
124
|
+
.ec__header {
|
|
125
|
+
.navbar-brand img {
|
|
126
|
+
width: 180px;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
@include media-breakpoint-down(lg) {
|
|
132
|
+
.bcl-header__project {
|
|
133
|
+
min-height: map-get($spacers, 5);
|
|
134
|
+
padding-top: map-get($spacers, 3);
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
.bcl-header nav + nav {
|
|
138
|
+
min-height: map-get($spacers, 5);
|
|
139
|
+
|
|
140
|
+
.navbar-toggler {
|
|
141
|
+
position: static;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.container {
|
|
145
|
+
justify-content: right;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
.bcl-header__navbar {
|
|
150
|
+
.navbar-collapse {
|
|
151
|
+
max-width: 100%;
|
|
152
|
+
.nav-item {
|
|
153
|
+
&.dropdown {
|
|
154
|
+
max-width: 100%;
|
|
155
|
+
a {
|
|
156
|
+
white-space: normal;
|
|
157
|
+
}
|
|
158
|
+
.dropdown-menu {
|
|
159
|
+
max-width: 100%;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
108
164
|
}
|
|
109
165
|
}
|
|
110
166
|
|
|
111
167
|
@include media-breakpoint-up(lg) {
|
|
112
168
|
.bcl-header__project.light,
|
|
169
|
+
.bcl-header--ec .bcl-header__project.light,
|
|
113
170
|
.ec__header .bcl-header__project.light {
|
|
114
171
|
background: $white;
|
|
115
172
|
}
|
|
116
|
-
|
|
173
|
+
|
|
174
|
+
.bcl-header__site-name {
|
|
117
175
|
padding-left: map-get($spacers, 4);
|
|
118
176
|
font-weight: 500;
|
|
119
177
|
}
|
|
120
|
-
|
|
178
|
+
|
|
179
|
+
.bcl-header__project.light .bcl-header__site-name {
|
|
121
180
|
color: $black;
|
|
122
181
|
}
|
|
182
|
+
|
|
123
183
|
.bcl-header .navbar-toggler {
|
|
124
184
|
position: relative;
|
|
125
185
|
right: 0;
|
|
126
186
|
bottom: 0;
|
|
127
187
|
}
|
|
188
|
+
|
|
128
189
|
.bcl-header .navbar-brand img {
|
|
129
190
|
width: auto;
|
|
130
191
|
}
|
|
192
|
+
|
|
131
193
|
.bcl-header__navbar .navbar-collapse {
|
|
132
194
|
padding-bottom: 0;
|
|
133
195
|
}
|
|
196
|
+
|
|
134
197
|
.bcl-header__navbar .nav-link.active {
|
|
135
198
|
padding-top: $spacer;
|
|
136
199
|
padding-bottom: $spacer;
|
|
137
200
|
margin-top: -#{map-get($spacers, 2)};
|
|
138
201
|
margin-bottom: -#{map-get($spacers, 2)};
|
|
139
202
|
}
|
|
203
|
+
|
|
140
204
|
.bcl-header__navbar .dropdown-menu {
|
|
141
205
|
z-index: 1050; // Make sure dropdown overlaps the search offcanvas
|
|
142
206
|
}
|
|
143
|
-
|
|
207
|
+
|
|
208
|
+
.bcl-header:not(.bcl-header--neutral) .bcl-header__project {
|
|
144
209
|
padding-bottom: map-get($spacers, 3);
|
|
145
210
|
}
|
|
146
|
-
|
|
147
|
-
|
|
211
|
+
|
|
212
|
+
.bcl-header--ec,
|
|
213
|
+
.ec__header {
|
|
214
|
+
.navbar-brand img {
|
|
215
|
+
width: 285px;
|
|
216
|
+
}
|
|
148
217
|
}
|
|
149
218
|
}
|
|
150
219
|
|
|
@@ -3,8 +3,9 @@
|
|
|
3
3
|
no-descending-specificity,
|
|
4
4
|
function-calc-no-unspaced-operator,
|
|
5
5
|
*/
|
|
6
|
-
@use "slim-select/src/slim-select/slimselect.scss" with
|
|
7
|
-
|
|
6
|
+
@use "slim-select/src/slim-select/slimselect.scss" with (
|
|
7
|
+
$primary-color: $primary
|
|
8
|
+
);
|
|
8
9
|
|
|
9
10
|
// Multiselect Spacers
|
|
10
11
|
$multiselect-spacers: (
|
package/src/scss/_utilities.scss
CHANGED
package/src/scss/_variables.scss
CHANGED
|
@@ -61,12 +61,10 @@ $spacers-extended: (
|
|
|
61
61
|
$spacers: map-merge($spacers, $spacers-extended);
|
|
62
62
|
$gutters: $spacers;
|
|
63
63
|
|
|
64
|
-
//
|
|
65
|
-
$
|
|
66
|
-
$
|
|
67
|
-
$
|
|
68
|
-
$form-select-height: 3rem !default;
|
|
69
|
-
$form-select-height-md: 2.375rem !default;
|
|
64
|
+
// accordion
|
|
65
|
+
$accordion-button-active-color: $accordion-button-color;
|
|
66
|
+
$accordion-button-active-bg: $lighter;
|
|
67
|
+
$accordion-border-color: $gray-300;
|
|
70
68
|
|
|
71
69
|
// Badges
|
|
72
70
|
$badge-font-weight: $font-weight-normal; // 400
|
|
@@ -75,3 +73,10 @@ $badge-font-size-desktop: 1rem; // 16px
|
|
|
75
73
|
|
|
76
74
|
// banners
|
|
77
75
|
$banner-content-border-color: $primary;
|
|
76
|
+
|
|
77
|
+
// Forms
|
|
78
|
+
$form-check-input-size-lg: $form-check-input-width + 0.3em !default;
|
|
79
|
+
$form-font-size: $font-size-base !default;
|
|
80
|
+
$form-font-size-lg: $font-size-base + 0.25rem !default;
|
|
81
|
+
$form-select-height: 3rem !default;
|
|
82
|
+
$form-select-height-md: 2.375rem !default;
|
|
@@ -27,6 +27,7 @@
|
|
|
27
27
|
@import "@openeuropa/bcl-bootstrap/scss/accordion";
|
|
28
28
|
@import "@openeuropa/bcl-bootstrap/scss/breadcrumb";
|
|
29
29
|
@import "@openeuropa/bcl-bootstrap/scss/pagination";
|
|
30
|
+
@import "@openeuropa/bcl-bootstrap/scss/placeholders";
|
|
30
31
|
@import "@openeuropa/bcl-bootstrap/scss/badge";
|
|
31
32
|
@import "@openeuropa/bcl-bootstrap/scss/alert";
|
|
32
33
|
@import "@openeuropa/bcl-bootstrap/scss/progress";
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
{
|
|
9
9
|
title: (string),
|
|
10
10
|
content: (block),
|
|
11
|
+
stay_open (boolean) (default: false) stay open after another selected
|
|
11
12
|
},
|
|
12
13
|
...
|
|
13
14
|
]
|
|
@@ -23,6 +24,11 @@
|
|
|
23
24
|
{% if _flush %}
|
|
24
25
|
{% set _classes = _classes|merge(['accordion-flush']) %}
|
|
25
26
|
{% endif %}
|
|
27
|
+
|
|
28
|
+
{% if attributes is empty %}
|
|
29
|
+
{% set attributes = create_attribute() %}
|
|
30
|
+
{% endif %}
|
|
31
|
+
|
|
26
32
|
{% set attributes = attributes.addClass(_classes).setAttribute('id', 'accordion-' ~ _id) %}
|
|
27
33
|
|
|
28
34
|
{% if _items is not empty %}
|
|
@@ -55,7 +61,10 @@
|
|
|
55
61
|
id="collapse-{{ _id }}-{{ loop.index }}"
|
|
56
62
|
class="accordion-collapse collapse{{ _open_item ? ' show' }}"
|
|
57
63
|
aria-labelledby="heading-{{ _id }}-{{ loop.index }}"
|
|
64
|
+
role="region"
|
|
65
|
+
{% if not _item.stay_open %}
|
|
58
66
|
data-bs-parent="#accordion-{{ _id }}"
|
|
67
|
+
{% endif %}
|
|
59
68
|
>
|
|
60
69
|
<div class="accordion-body">
|
|
61
70
|
{%- set _content = _item.content|default('') %}
|
|
@@ -37,6 +37,10 @@
|
|
|
37
37
|
{% set _classes = _classes|merge(['fade', 'show']) %}
|
|
38
38
|
{% endif %}
|
|
39
39
|
|
|
40
|
+
{% if attributes is empty %}
|
|
41
|
+
{% set attributes = create_attribute() %}
|
|
42
|
+
{% endif %}
|
|
43
|
+
|
|
40
44
|
{% set attributes = attributes.addClass(_classes).setAttribute('role', 'alert') %}
|
|
41
45
|
|
|
42
46
|
<div {{ attributes }}>
|
|
@@ -8,13 +8,15 @@
|
|
|
8
8
|
- dismissible (boolean) (default: false)
|
|
9
9
|
- assistive_text (string) (default: '')
|
|
10
10
|
- rounded_pill (boolean) (default: false)
|
|
11
|
+
- outline (boolean) (default: false)
|
|
11
12
|
- icons_path (string) (default: '')
|
|
12
13
|
#}
|
|
13
14
|
|
|
14
15
|
{% set _rounded_pill = rounded_pill|default(false) %}
|
|
16
|
+
{% set _outline = outline|default(false) %}
|
|
15
17
|
{% set _background = background|default('primary') %}
|
|
16
18
|
{% set _label = label|default('') %}
|
|
17
|
-
{% set _classes = ['badge'
|
|
19
|
+
{% set _classes = ['badge'] %}
|
|
18
20
|
{% set _url = url|default('') %}
|
|
19
21
|
{% set _icons_path = icons_path|default('') %}
|
|
20
22
|
{% set _title = title|default(_label) %}
|
|
@@ -25,6 +27,12 @@
|
|
|
25
27
|
{% set _classes = _classes|merge(['rounded-pill']) %}
|
|
26
28
|
{% endif %}
|
|
27
29
|
|
|
30
|
+
{% if _outline %}
|
|
31
|
+
{% set _classes = _classes|merge([ 'badge-outline-' ~ _background]) %}
|
|
32
|
+
{% else %}
|
|
33
|
+
{% set _classes = _classes|merge([ 'bg-' ~ _background]) %}
|
|
34
|
+
{% endif %}
|
|
35
|
+
|
|
28
36
|
{% if _background in ['light', 'warning', 'info'] %}
|
|
29
37
|
{% set _classes = _classes|merge(['text-dark']) %}
|
|
30
38
|
{% endif %}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
{# Parameters:
|
|
4
4
|
- title: (string) (default: "")
|
|
5
|
+
- title_tag: (string) (default: "div")
|
|
5
6
|
- description: (string) (default: "")
|
|
6
7
|
- link: (link object) (default: {}): predefined structure for Link component
|
|
7
8
|
- image: (string) <img> tag
|
|
@@ -11,14 +12,15 @@
|
|
|
11
12
|
- content_classes: (string) (default: "")
|
|
12
13
|
#}
|
|
13
14
|
|
|
14
|
-
{% set _title = title|default(
|
|
15
|
-
{% set
|
|
15
|
+
{% set _title = title|default('') %}
|
|
16
|
+
{% set _title_tag = title_tag|default('div') %}
|
|
17
|
+
{% set _description = description|default('') %}
|
|
16
18
|
{% set _link = link|default({}) %}
|
|
17
|
-
{% set _image = image|default(
|
|
19
|
+
{% set _image = image|default('') %}
|
|
18
20
|
{% set _shade = shade|default(false) %}
|
|
19
21
|
{% set _hero = hero|default(false) %}
|
|
20
22
|
{% set _full_width = full_width|default(false) %}
|
|
21
|
-
{% set _content_classes = content_classes|default(
|
|
23
|
+
{% set _content_classes = content_classes|default('') %}
|
|
22
24
|
|
|
23
25
|
|
|
24
26
|
{% set _content_class = 'bcl-banner__content' %}
|
|
@@ -38,6 +40,11 @@
|
|
|
38
40
|
_hero ? 'hero',
|
|
39
41
|
_full_width ? 'full-width'
|
|
40
42
|
] %}
|
|
43
|
+
|
|
44
|
+
{% if attributes is empty %}
|
|
45
|
+
{% set attributes = create_attribute() %}
|
|
46
|
+
{% endif %}
|
|
47
|
+
|
|
41
48
|
{% set attributes = attributes.addClass(_classes) %}
|
|
42
49
|
|
|
43
50
|
<div {{ attributes }}>
|
|
@@ -47,7 +54,7 @@
|
|
|
47
54
|
<div class="container">
|
|
48
55
|
<div class="{{ _content_class }}">
|
|
49
56
|
{% if _title is not empty %}
|
|
50
|
-
<
|
|
57
|
+
<{{ _title_tag }} class="{{ _title_classes }}">{{ _title }}</{{ _title_tag }}>
|
|
51
58
|
{% if _description is not empty %}
|
|
52
59
|
<p class="mb-4">{{ _description }}</p>
|
|
53
60
|
{% endif %}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
{% spaceless %}
|
|
2
|
+
|
|
3
|
+
{#
|
|
4
|
+
Parameters:
|
|
5
|
+
- with_header (boolean) (default: false)
|
|
6
|
+
- with_footer (boolean) (default: false)
|
|
7
|
+
- with_banner (boolean) (default: false)
|
|
8
|
+
- with_sidebar (boolean) (default: false)
|
|
9
|
+
- sidebar_size (string) (default: 'normal')
|
|
10
|
+
options: ['normal', 'large']
|
|
11
|
+
- landing (boolean) (default: false)
|
|
12
|
+
- content_type (string) (default: '')
|
|
13
|
+
- attributes (drupal attrs)
|
|
14
|
+
|
|
15
|
+
BLOCKS:
|
|
16
|
+
- header
|
|
17
|
+
- footer
|
|
18
|
+
- content
|
|
19
|
+
- sidebar
|
|
20
|
+
- banner
|
|
21
|
+
- feedback
|
|
22
|
+
- share
|
|
23
|
+
- related
|
|
24
|
+
#}
|
|
25
|
+
|
|
26
|
+
{% set _with_header = header|default(false) %}
|
|
27
|
+
{% set _with_footer = footer|default(false) %}
|
|
28
|
+
{% set _with_banner = banner|default(false) %}
|
|
29
|
+
{% set _with_sidebar = sidebar|default(false) %}
|
|
30
|
+
{% set _sidebar_size = sidebar_size|default('normal') %}
|
|
31
|
+
{% set _landing = landing|default(false) %}
|
|
32
|
+
{% set _content_type = content_type|default('') %}
|
|
33
|
+
{% set _classes = ['bcl-node-type'] %}
|
|
34
|
+
|
|
35
|
+
{% if _with_sidebar %}
|
|
36
|
+
{% set _col_classes = {
|
|
37
|
+
left: [
|
|
38
|
+
'col-12',
|
|
39
|
+
],
|
|
40
|
+
right: [
|
|
41
|
+
'col-12',
|
|
42
|
+
],
|
|
43
|
+
} %}
|
|
44
|
+
|
|
45
|
+
{% if _sidebar_size == 'normal' %}
|
|
46
|
+
{% set _col_classes = _col_classes|merge({
|
|
47
|
+
left: _col_classes.left|merge(['col-lg-3']),
|
|
48
|
+
right: _col_classes.right|merge(['col-lg-9', 'col-xxl-8']),
|
|
49
|
+
}) %}
|
|
50
|
+
{% endif %}
|
|
51
|
+
|
|
52
|
+
{% if _sidebar_size == 'large' %}
|
|
53
|
+
{% set _col_classes = _col_classes|merge({
|
|
54
|
+
left: _col_classes.left|merge(['col-lg-4']),
|
|
55
|
+
right: _col_classes.right|merge(['col-lg-8']),
|
|
56
|
+
}) %}
|
|
57
|
+
{% endif %}
|
|
58
|
+
{% endif %}
|
|
59
|
+
|
|
60
|
+
{% if _content_type is not empty %}
|
|
61
|
+
{% set _classes = _classes|merge(['bcl-' ~ _content_type]) %}
|
|
62
|
+
{% endif %}
|
|
63
|
+
|
|
64
|
+
{% if attributes is empty %}
|
|
65
|
+
{% set attributes = create_attribute() %}
|
|
66
|
+
{% endif %}
|
|
67
|
+
|
|
68
|
+
{% if _with_header %}
|
|
69
|
+
{% include '@oe-bcl/bcl-header/header.html.twig' with header only %}
|
|
70
|
+
{% endif %}
|
|
71
|
+
|
|
72
|
+
<main {{ attributes }}>
|
|
73
|
+
{% if _with_banner %}
|
|
74
|
+
{% block banner %}
|
|
75
|
+
{% include '@oe-bcl/bcl-content-banner/content-banner.html.twig' with banner only %}
|
|
76
|
+
{% endblock %}
|
|
77
|
+
{% endif %}
|
|
78
|
+
|
|
79
|
+
<div class="container mt-md-4-75 mt-4">
|
|
80
|
+
<div class="row">
|
|
81
|
+
{% if _with_sidebar %}
|
|
82
|
+
<div class="{{ _col_classes.left|join(' ') }}">
|
|
83
|
+
{% block sidebar %}{% endblock %}
|
|
84
|
+
</div>
|
|
85
|
+
<div class="{{ _col_classes.right|join(' ') }}">
|
|
86
|
+
{% else %}
|
|
87
|
+
{% if _landing %}
|
|
88
|
+
<div class="col-12">
|
|
89
|
+
{% else %}
|
|
90
|
+
<div class="col-12 col-lg-10 col-xl-9 col-xxl-8">
|
|
91
|
+
{% endif %}
|
|
92
|
+
{% endif %}
|
|
93
|
+
{% block content_top %}
|
|
94
|
+
{{ content_top }}
|
|
95
|
+
{% endblock %}
|
|
96
|
+
{% block content %}
|
|
97
|
+
{{ content }}
|
|
98
|
+
{% endblock %}
|
|
99
|
+
{% block content_bottom %}
|
|
100
|
+
{{ content_bottom }}
|
|
101
|
+
{% endblock %}
|
|
102
|
+
{% block related %}
|
|
103
|
+
{{ related }}
|
|
104
|
+
{% endblock %}
|
|
105
|
+
</div>
|
|
106
|
+
</div>
|
|
107
|
+
</main>
|
|
108
|
+
|
|
109
|
+
{% block feedback %}
|
|
110
|
+
{{ feedback }}
|
|
111
|
+
{% endblock %}
|
|
112
|
+
{% block share %}
|
|
113
|
+
{{ share }}
|
|
114
|
+
{% endblock %}
|
|
115
|
+
|
|
116
|
+
{% if _with_footer %}
|
|
117
|
+
{% include '@oe-bcl/bcl-footer/footer.html.twig' with footer only %}
|
|
118
|
+
{% endif %}
|
|
119
|
+
|
|
120
|
+
{% endspaceless %}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
{#
|
|
2
|
+
Parameters:
|
|
3
|
+
- listing (object) (default: {})
|
|
4
|
+
- pagination (object) (default: {})
|
|
5
|
+
- sidebar (object) (default: '')
|
|
6
|
+
- page_title (string) (default: '')
|
|
7
|
+
#}
|
|
8
|
+
|
|
9
|
+
{% extends "@oe-bcl/bcl-base-templates/content-type.html.twig" %}
|
|
10
|
+
|
|
11
|
+
{% set _listing = listing|default({}) %}
|
|
12
|
+
{% set _pagination = pagination|default({}) %}
|
|
13
|
+
{% set _search = search|default({}) %}
|
|
14
|
+
{% set _sidebar = sidebar|default({}) %}
|
|
15
|
+
{% set _page_title = page_title|default({}) %}
|
|
16
|
+
|
|
17
|
+
{% block content_top %}
|
|
18
|
+
{% include '@oe-bcl/bcl-button/button.html.twig' with filter_button only %}
|
|
19
|
+
<div class="row">
|
|
20
|
+
<div class="col-md-6 col-lg-8">
|
|
21
|
+
<h4>
|
|
22
|
+
<span class="text-capitalize">
|
|
23
|
+
{{- _page_title -}}
|
|
24
|
+
</span>
|
|
25
|
+
({{ listing.items.length }})
|
|
26
|
+
</h4>
|
|
27
|
+
</div>
|
|
28
|
+
<div class="col-md-12 order-md-2 mt-3 mt-md-1">
|
|
29
|
+
{% if badges is not empty and badges is iterable %}
|
|
30
|
+
{% for badge in badges %}
|
|
31
|
+
{% include '@oe-bcl/bcl-badge/badge.html.twig' with badge|merge({
|
|
32
|
+
attributes: create_attribute().addClass(["mb-2", "me-2"])
|
|
33
|
+
}) only %}
|
|
34
|
+
{% endfor %}
|
|
35
|
+
{% endif %}
|
|
36
|
+
</div>
|
|
37
|
+
<div class="col-md-6 col-lg-4 mt-3 mt-md-0">
|
|
38
|
+
<div class="float-md-end d-md-flex align-items-center mb-4 mb-md-0">
|
|
39
|
+
{% include '@oe-bcl/bcl-select/select.html.twig' with sort_select|merge({
|
|
40
|
+
attributes: create_attribute().addClass(['ms-md-2 mb-2']),
|
|
41
|
+
}) only %}
|
|
42
|
+
</div>
|
|
43
|
+
</div>
|
|
44
|
+
</div>
|
|
45
|
+
<hr class="d-none d-md-block mb-4"/>
|
|
46
|
+
{% endblock %}
|
|
47
|
+
|
|
48
|
+
{% block content %}
|
|
49
|
+
{% if _listing is not empty %}
|
|
50
|
+
{% include '@oe-bcl/bcl-listing/listing.html.twig' with _listing %}
|
|
51
|
+
{% endif %}
|
|
52
|
+
{% endblock %}
|
|
53
|
+
|
|
54
|
+
{% block content_bottom %}
|
|
55
|
+
{% if _pagination is not empty %}
|
|
56
|
+
<hr class="d-none d-md-block mt-4-5">
|
|
57
|
+
{% include '@oe-bcl/bcl-pagination/pagination.html.twig' with _pagination only %}
|
|
58
|
+
{% endif %}
|
|
59
|
+
{% endblock %}
|
|
60
|
+
|
|
61
|
+
{% block sidebar %}
|
|
62
|
+
{% include '@oe-bcl/bcl-base-templates/sidebar-search.html.twig' with _sidebar only %}
|
|
63
|
+
{% endblock %}
|