@eeacms/volto-eea-design-system 1.33.1 → 1.34.1

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/CHANGELOG.md CHANGED
@@ -4,6 +4,16 @@ All notable changes to this project will be documented in this file. Dates are d
4
4
 
5
5
  Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
6
6
 
7
+ ### [1.34.1](https://github.com/eea/volto-eea-design-system/compare/1.34.0...1.34.1) - 14 October 2024
8
+
9
+ #### :hammer_and_wrench: Others
10
+
11
+ - fixed crash of datahub due to missing children on actions props on server side first render [David Ichim - [`64aafb7`](https://github.com/eea/volto-eea-design-system/commit/64aafb7451a0f08daeead1b22b0ba0676b641857)]
12
+ ### [1.34.0](https://github.com/eea/volto-eea-design-system/compare/1.33.1...1.34.0) - 11 October 2024
13
+
14
+ #### :hammer_and_wrench: Others
15
+
16
+ - Update package.json [Ichim David - [`015ed44`](https://github.com/eea/volto-eea-design-system/commit/015ed44a8c624a5ceaedf131425ab83f9b3832a4)]
7
17
  ### [1.33.1](https://github.com/eea/volto-eea-design-system/compare/1.33.0...1.33.1) - 19 September 2024
8
18
 
9
19
  #### :house: Internal changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eeacms/volto-eea-design-system",
3
- "version": "1.33.1",
3
+ "version": "1.34.1",
4
4
  "description": "@eeacms/volto-eea-design-system: Volto add-on",
5
5
  "main": "src/index.js",
6
6
  "author": "European Environment Agency: IDM2 A-Team",
@@ -94,15 +94,29 @@ Banner.Action = React.forwardRef(function (
94
94
  });
95
95
 
96
96
  Banner.Content = ({ children, actions }) => {
97
+ // actions can be a single child or an array of children
98
+ // when we disable actions we get an array of false or undefined
99
+ const actionsWithChildren = actions
100
+ ? React.Children.toArray(actions.props?.children).some(Boolean)
101
+ : false;
102
+
97
103
  return (
98
104
  <div className="content">
99
105
  <Grid>
100
- <Grid.Column mobile={10} tablet={9} computer={9}>
101
- {children}
102
- </Grid.Column>
103
- <Grid.Column mobile={2} tablet={3} computer={3} className="actions">
104
- {actions}
105
- </Grid.Column>
106
+ {actionsWithChildren ? (
107
+ <>
108
+ <Grid.Column mobile={10} tablet={9} computer={9}>
109
+ {children}
110
+ </Grid.Column>
111
+ <Grid.Column mobile={2} tablet={3} computer={3} className="actions">
112
+ {actions}
113
+ </Grid.Column>
114
+ </>
115
+ ) : (
116
+ <Grid.Column mobile={12} tablet={12} computer={12}>
117
+ {children}
118
+ </Grid.Column>
119
+ )}
106
120
  </Grid>
107
121
  </div>
108
122
  );
@@ -15,6 +15,7 @@ const Breadcrumbs = ({
15
15
  sections = [],
16
16
  icon = 'ri-arrow-right-s-line',
17
17
  size = 'tiny',
18
+ linkLevels = 1,
18
19
  }) => {
19
20
  return sections.length > 0 ? (
20
21
  <Segment className="breadcrumbs" attached vertical>
@@ -31,7 +32,7 @@ const Breadcrumbs = ({
31
32
  <Breadcrumb.Divider key={`divider-${item.href}`}>
32
33
  <Icon className={icon}></Icon>
33
34
  </Breadcrumb.Divider>
34
- {index < items.length - 1 ? (
35
+ {index < items.length - linkLevels ? (
35
36
  <Link key={item.key} to={item.href} className="section">
36
37
  {item.title}
37
38
  </Link>
@@ -8,20 +8,25 @@
8
8
  --------------------*/
9
9
 
10
10
  .eea.banner {
11
+ --text-color: @white;
11
12
  position: relative;
12
13
  width: 100%;
14
+ max-width: @bannerMaxWidth;
13
15
  background: @bannerBackgroundColor;
14
- color: @white;
16
+ color: @bannerTextColor;
15
17
 
16
18
  .gradient {
17
19
  background: @backgroundGradient;
18
20
  opacity: @backgroundGradientOpacity;
21
+ height: 100%;
19
22
 
20
23
  .content {
24
+ width: 100%;
21
25
  padding: @mobileContentPadding;
22
26
 
23
27
  .ui.grid {
24
28
  align-items: flex-end;
29
+ width: 100%;
25
30
  }
26
31
 
27
32
  .title {
@@ -107,6 +112,53 @@
107
112
  }
108
113
  }
109
114
 
115
+ .light-header {
116
+ .container {
117
+ width: 100%;
118
+ max-width: 1300px !important;
119
+ }
120
+ .eea.banner {
121
+ --text-color: @bannerHomepageColor;
122
+
123
+ .content-type {
124
+ color: @secondaryColorCSSVar;
125
+ font-weight: bold;
126
+ }
127
+
128
+ .gradient .content .subtitle {
129
+ margin: 0 0 0.5rem 0;
130
+ }
131
+ }
132
+ }
133
+
134
+ .homepage-header .banner {
135
+ --text-color: @bannerHomepageColor;
136
+ height: 500px;
137
+
138
+ .content-type {
139
+ color: @secondaryColorCSSVar;
140
+ font-size: @h2;
141
+ font-weight: bold;
142
+ }
143
+ .container {
144
+ display: flex;
145
+ height: 100%;
146
+ align-items: flex-end;
147
+ }
148
+
149
+ .content {
150
+ padding: 0 !important;
151
+ margin-bottom: 2rem;
152
+ }
153
+ .grid {
154
+ text-align: center;
155
+ }
156
+ .wrapper {
157
+ justify-content: center;
158
+ }
159
+ }
160
+
161
+
110
162
  /*Share Popup*/
111
163
 
112
164
  .ui.popup.share-popup {
@@ -201,7 +253,14 @@
201
253
  }
202
254
  }
203
255
 
256
+ .light-header .eea.banner .gradient .content {
257
+ padding: @computerContentPadding;
258
+ }
259
+
204
260
  @media only screen and (min-width: @computerBreakpoint) {
261
+ .hero-header .banner {
262
+ height: 800px;
263
+ }
205
264
  .eea.banner {
206
265
  .image {
207
266
  .gradient .content {
@@ -211,6 +270,9 @@
211
270
 
212
271
  .gradient .content {
213
272
  padding: @computerContentPadding;
273
+ .light-header & {
274
+ padding: @computerContentPaddingWithImage;
275
+ }
214
276
 
215
277
  .title {
216
278
  margin: @computerTitleMargin;
@@ -3,6 +3,9 @@
3
3
  *******************************/
4
4
 
5
5
  @bannerBackgroundColor : @secondaryColor;
6
+ @bannerTextColor : @textColorCSSVar;
7
+ @bannerMaxWidth: 100% !important;
8
+ @bannerHomepageColor : @blue-grey-6;
6
9
 
7
10
  /* Background Image */
8
11
  @imageBackgroundRepeat : no-repeat;
@@ -5,7 +5,7 @@
5
5
 
6
6
  .context-navigation {
7
7
  max-width : @widescreenSidenavMaxWidth;
8
- background : @sidenavBackground;
8
+ // background : @sidenavBackground;
9
9
  margin-right : @sidenavMarginRight;
10
10
  padding-left : @sidenavPaddingLeft;
11
11
  overflow : @sidenavOverflow;
@@ -115,18 +115,27 @@
115
115
  }
116
116
 
117
117
  /*******************************
118
- Side navigation
118
+ Side navigation
119
119
  *******************************/
120
120
  .accordion-header {
121
121
  cursor: pointer;
122
122
  justify-content: space-between;
123
123
  align-items: center;
124
124
  padding: @sidenavAccordionHeaderPadding;
125
+ font-weight: @sidenavItemFontWeight;
126
+ background-color: @sidenavAccordionHeaderBackgroundColor;
127
+ box-shadow: @sidenavBoxShadow;
125
128
  }
126
129
 
130
+ .context-navigation-list {
131
+ width: @sidenavMaxWidth;
132
+ box-shadow: @sidenavBoxShadow;
133
+ background-color: @sidenavBackground;
134
+ }
127
135
  .context-navigation-list .title-link {
128
136
  display: block;
129
137
  color: @sidenavItemColor;
138
+ margin: 0 @sidenavItemMargin;
130
139
  font-size : @sidenavItemFontSize;
131
140
  font-weight: @sidenavItemFontWeight;
132
141
  }
@@ -134,7 +143,6 @@
134
143
  font-weight: @sidenavLevelTwoItemFontWeight;
135
144
  }
136
145
  .context-navigation {
137
- box-shadow: @sidenavBoxShadow;
138
146
 
139
147
  .current {
140
148
  color: @sidenavItemActiveColor;
@@ -151,11 +159,16 @@
151
159
  font-weight: @sidenavItemFontWeight;
152
160
  padding: @sidenavFolderItemPadding;
153
161
  text-align: left;
162
+ margin: @sidenavItemMargin;
154
163
  &:not([aria-expanded="true"]) {
155
164
  border-bottom: @sidenavContentBorderBottom;
156
165
  }
157
166
  }
158
-
167
+ .context-navigation-list.accordion-list {
168
+ max-height: @sidenavAccordionListMaxHeight;
169
+ overflow-y: auto;
170
+ -webkit-overflow-scrolling: touch;
171
+ }
159
172
  .accordion-list {
160
173
  margin-top: 0;
161
174
  margin-bottom: 0;
@@ -2,14 +2,14 @@
2
2
  Sidebar Nav
3
3
  *******************************/
4
4
 
5
- @sidenavMaxWidth: 350px;
6
- @widescreenSidenavMaxWidth: 300px;
5
+ @sidenavMaxWidth: 315px;
6
+ @widescreenSidenavMaxWidth: 315px;
7
7
  @mobileSidenavMaxWidth: 100%;
8
8
  @sidenavBackground: @grey-0;
9
- @sidenavMarginRight: @rem-space-4;
9
+ @sidenavMarginRight: 0;
10
10
  @sidenavPaddingLeft: 0;
11
11
  @sidenavOverflow: inherit;
12
- @sidenavMargin: @rem-space-8 auto;
12
+ @sidenavMargin: auto;
13
13
  @sidenavShadowColor: @grey-3;
14
14
  @sidenavBoxShadow: 0px 3px 3px @sidenavShadowColor;
15
15
 
@@ -19,6 +19,8 @@
19
19
  @sidenavHeaderFontWeight: @font-weight-7;
20
20
  @sidenavHeaderPadding: @rem-space-4;
21
21
  @sidenavAccordionHeaderPadding: @rem-space-2 @rem-space-4;
22
+ @sidenavAccordionHeaderBackgroundColor: white;
23
+ @sidenavAccordionListMaxHeight: 86dvh;
22
24
  @sidenavHeaderBorderBottom: @2px solid @blue-grey-5;
23
25
  @sidenavHeaderIconMarginRight: @rem-space-4;
24
26
 
@@ -38,6 +40,7 @@
38
40
  @sidenavItemHoverBackground: @blue-grey-5;
39
41
  @sidenavItemHoverColor: @grey-0;
40
42
  @sidenavLastItemMarginBottom: @rem-space-2;
43
+ @sidenavItemMargin: 2px;
41
44
 
42
45
  /* Third level item */
43
46
  @subparItemPaddingLeft: @rem-space-12;
@@ -15,8 +15,13 @@
15
15
  .eea.header {
16
16
  /* So child can have position sticky */
17
17
  display: initial;
18
+ &:has(.eea-side-menu) {
19
+ margin-bottom: 3.7rem;
20
+ }
21
+
18
22
  }
19
23
 
24
+
20
25
  /*----------------------------------------------------------------------------
21
26
  HEADER TOP BAR
22
27
  ----------------------------------------------------------------------------*/
@@ -224,6 +229,15 @@
224
229
  content: ' ';
225
230
  }
226
231
 
232
+ .light-header {
233
+ .main.bar.transparency:before {
234
+ background: linear-gradient(0deg, rgba(96, 96, 96, 0.2), #3d5265 100%);
235
+ }
236
+ #page-header {
237
+ margin-bottom: 2rem;
238
+ }
239
+ }
240
+
227
241
  .main.bar {
228
242
  background: @headerMainSectionBackground;
229
243
  scrollbar-gutter: stable;
@@ -28,6 +28,11 @@
28
28
  }
29
29
  }
30
30
 
31
+ .ui.checkbox.toggle label::before,
32
+ .ui.checkbox.toggle label::after {
33
+ z-index: auto;
34
+ }
35
+
31
36
  /* Helper text for disabled element */
32
37
  .ui.disabled.checkbox + label,
33
38
  .ui.disabled.radio.checkbox + label {
@@ -34,6 +34,7 @@
34
34
  @font-size-8: 2.25rem;
35
35
  @font-size-9: 2.5rem;
36
36
  @font-size-10: 2.75rem;
37
+ @font-size-11: 4.5rem;
37
38
  @font-size-fluid-0: clamp(1.125rem, 2vw, 1.25rem);
38
39
  @font-size-fluid-1: clamp(1.25rem, 4vw, 1.625rem);
39
40
  @font-size-fluid-2: clamp(1.5rem, 6vw, 2rem);