@eeacms/volto-eea-design-system 1.13.2 → 1.15.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.
@@ -21,6 +21,15 @@ export default {
21
21
  defaultValue: { summary: 'null' },
22
22
  },
23
23
  },
24
+ titleMaxLines: {
25
+ name: 'Title max lines',
26
+ options: ['none', '1', '2', '3', '4', '5'],
27
+ control: { type: 'select' },
28
+ table: {
29
+ category: 'Content',
30
+ defaultValue: { summary: '2' },
31
+ },
32
+ },
24
33
  inverted: {
25
34
  description: 'Inverted card',
26
35
  table: {
@@ -43,7 +52,11 @@ const Template = (args) => (
43
52
  <Card
44
53
  className={`icon text-center ${
45
54
  args.variant === 'default' ? '' : args.variant
46
- } ${args.inverted ? 'inverted' : ''}`}
55
+ } ${args.inverted ? 'inverted' : ''} ${
56
+ args.titleMaxLines === 'none'
57
+ ? 'title-max-0-lines'
58
+ : 'title-max-' + args.titleMaxLines + '-lines'
59
+ }`}
47
60
  >
48
61
  {args.hasLink ? (
49
62
  <a href={args.href} aria-label={args.title}>
@@ -70,6 +83,7 @@ const Template = (args) => (
70
83
  export const Default = Template.bind({});
71
84
  Default.args = {
72
85
  variant: 'default',
86
+ titleMaxLines: '2',
73
87
  inverted: false,
74
88
  title: 'Lorem Ipsum',
75
89
  icon: 'ri-leaf-line',
@@ -116,7 +130,11 @@ const GridTemplate = (args) => (
116
130
  <Card
117
131
  className={`icon text-center ${
118
132
  args.variant === 'default' ? '' : args.variant
119
- } ${args.inverted ? 'inverted' : ''}`}
133
+ } ${args.inverted ? 'inverted' : ''} ${
134
+ args.titleMaxLines === 'none'
135
+ ? 'title-max-0-lines'
136
+ : 'title-max-' + args.titleMaxLines + '-lines'
137
+ }`}
120
138
  >
121
139
  {args.hasLink ? (
122
140
  <a href={args.href} aria-label={card.title}>
@@ -146,6 +164,7 @@ const GridTemplate = (args) => (
146
164
  export const GridIconCard = GridTemplate.bind({});
147
165
  GridIconCard.args = {
148
166
  variant: 'default',
167
+ titleMaxLines: '2',
149
168
  inverted: false,
150
169
  hasLink: true,
151
170
  href: '/#',
@@ -186,6 +205,7 @@ GridIconCard.argTypes = {
186
205
  cards: {
187
206
  description: 'array with cards data',
188
207
  table: {
208
+ category: 'Content',
189
209
  type: {
190
210
  summary: 'Object',
191
211
  },
@@ -39,6 +39,14 @@ const TopItem = ({ children, className, id }) => (
39
39
  </div>
40
40
  );
41
41
 
42
+ const onKeyDownHandler = (event) => {
43
+ if (event.key === 'Enter') {
44
+ event.preventDefault();
45
+ event.target.click();
46
+ //event.target.focus();
47
+ }
48
+ };
49
+
42
50
  const TopDropdownMenu = ({
43
51
  children,
44
52
  className,
@@ -69,6 +77,8 @@ const TopDropdownMenu = ({
69
77
  closeOnChange={true}
70
78
  closeOnBlur={false}
71
79
  closeOnEscape={true}
80
+ openOnFocus={false}
81
+ onKeyDown={onKeyDownHandler}
72
82
  >
73
83
  <Dropdown.Menu role="option">{children}</Dropdown.Menu>
74
84
  </Dropdown>
@@ -85,6 +95,8 @@ const TopDropdownMenu = ({
85
95
  closeOnChange={true}
86
96
  closeOnBlur={false}
87
97
  closeOnEscape={true}
98
+ openOnFocus={false}
99
+ onKeyDown={onKeyDownHandler}
88
100
  >
89
101
  <Dropdown.Menu role="option">{children}</Dropdown.Menu>
90
102
  </Dropdown>
@@ -2,6 +2,7 @@ import React, { useEffect } from 'react';
2
2
  import { Container, Input, List } from 'semantic-ui-react';
3
3
  import { withRouter, Link } from 'react-router-dom';
4
4
  import { useClickOutside } from '@eeacms/volto-eea-design-system/helpers';
5
+ import { handleEnterKeyPress } from '@eeacms/volto-eea-design-system/helpers';
5
6
 
6
7
  const getRandomItems = (arr, max) => {
7
8
  return (
@@ -37,7 +38,6 @@ function HeaderSearchPopUp({
37
38
  } = activeView || {};
38
39
  const { suggestionsTitle, suggestions, maxToShow } = searchSuggestions || {};
39
40
 
40
- const [text, setText] = React.useState('');
41
41
  const [visibleSuggestions, setVisibileSuggestions] = React.useState(
42
42
  getRandomItems(suggestions, maxToShow),
43
43
  );
@@ -48,12 +48,8 @@ function HeaderSearchPopUp({
48
48
 
49
49
  useClickOutside({ targetRefs: [nodeRef, ...triggerRefs], callback: onClose });
50
50
 
51
- const onChangeText = (event, { value }) => {
52
- setText(value);
53
- event.preventDefault();
54
- };
55
-
56
51
  const onSubmit = (event) => {
52
+ const text = searchInputRef?.current?.inputRef?.current?.value;
57
53
  history.push(`${path}?q=${text}`);
58
54
 
59
55
  if (window?.searchContext?.resetSearch) {
@@ -79,12 +75,14 @@ function HeaderSearchPopUp({
79
75
  <form method="get" onSubmit={onSubmit}>
80
76
  <Input
81
77
  ref={searchInputRef}
82
- className="search"
83
- onChange={onChangeText}
84
- icon={{
85
- className: 'ri-search-line',
86
- link: true,
78
+ className="icon search"
79
+ action={{
80
+ className: 'icon ri-search-line',
81
+ 'aria-label': 'Submit search',
87
82
  onClick: onSubmit,
83
+ onKeyDown: (event) => {
84
+ handleEnterKeyPress(event, onSubmit);
85
+ },
88
86
  }}
89
87
  placeholder={placeholder}
90
88
  fluid
@@ -1,4 +1,4 @@
1
- import { React } from 'react';
1
+ import React from 'react';
2
2
  import { Button, Segment, Image, Icon } from 'semantic-ui-react';
3
3
 
4
4
  import Popup from './Popup';
@@ -1,10 +1,19 @@
1
1
  import React from 'react';
2
2
  import { Statistic, Container, Button } from 'semantic-ui-react';
3
- import CountUp, { useCountUp } from 'react-countup';
3
+ import { CountUp, useCountUp } from '@eeacms/countup';
4
4
 
5
5
  export default {
6
6
  title: 'Components/Statistic',
7
7
  component: Statistic,
8
+ args: {
9
+ label: 'Statistic Label',
10
+ value: 'Value',
11
+ size: 'small',
12
+ horizontal: false,
13
+ linked: false,
14
+ inverted: false,
15
+ backgroundVariant: 'primary',
16
+ },
8
17
  argTypes: {
9
18
  size: {
10
19
  control: {
@@ -43,39 +52,65 @@ export default {
43
52
  type: { summary: 'string' },
44
53
  },
45
54
  },
55
+
56
+ label: {
57
+ description: 'label content of the Statistic',
58
+ },
59
+ value: {
60
+ description: 'value content of the statistic',
61
+ },
62
+ inverted: {
63
+ description: 'Is the theme inverted',
64
+ table: {
65
+ type: {
66
+ summary: 'boolean',
67
+ },
68
+ },
69
+ },
70
+ linked: {
71
+ description: 'Add link to statistic',
72
+ table: {
73
+ type: {
74
+ summary: 'boolean',
75
+ },
76
+ },
77
+ },
46
78
  },
47
79
  };
48
80
 
49
- const Template = (args) => (
50
- <div
51
- className={`full-width color-bg-${
52
- args.inverted ? args.backgroundVariant : ''
53
- }`}
54
- >
55
- <Container>
56
- <Statistic.Group {...args}>
57
- {args.elements &&
58
- args.elements.map((element, index) => (
59
- <Statistic
60
- as="a"
61
- href={element.href}
62
- key={index}
63
- {...element}
64
- ></Statistic>
65
- ))}
66
- {!args.elements && (
67
- <>
68
- {args.linked ? (
69
- <Statistic as="a" href="/#" {...args}></Statistic>
70
- ) : (
71
- <Statistic {...args}></Statistic>
72
- )}{' '}
73
- </>
74
- )}
75
- </Statistic.Group>
76
- </Container>
77
- </div>
78
- );
81
+ const Template = (args) => {
82
+ const { backgroundVariant, elements, linked, ...sematicProps } = args;
83
+ return (
84
+ <div
85
+ className={`full-width color-bg-${
86
+ sematicProps.inverted ? backgroundVariant : ''
87
+ }`}
88
+ >
89
+ <Container>
90
+ <Statistic.Group {...sematicProps}>
91
+ {elements &&
92
+ elements.map((element, index) => (
93
+ <Statistic
94
+ as="a"
95
+ href={element.href}
96
+ key={index}
97
+ {...element}
98
+ ></Statistic>
99
+ ))}
100
+ {!elements && (
101
+ <>
102
+ {linked ? (
103
+ <Statistic as="a" href="/#" {...sematicProps}></Statistic>
104
+ ) : (
105
+ <Statistic {...sematicProps}></Statistic>
106
+ )}{' '}
107
+ </>
108
+ )}
109
+ </Statistic.Group>
110
+ </Container>
111
+ </div>
112
+ );
113
+ };
79
114
 
80
115
  export const Default = Template.bind({});
81
116
  Default.args = {
@@ -192,7 +227,7 @@ const CustomTemplate = (args) => (
192
227
  <Container>
193
228
  <Statistic.Group {...args}>
194
229
  {args.elements &&
195
- args.elements.map((element, index) => (
230
+ args.elements.map((element) => (
196
231
  <a href={element.href} className="ui small statistic">
197
232
  <div className={`value ${args.valueVariation}`}>
198
233
  {element.value}
@@ -300,34 +335,62 @@ Custom.argTypes = {
300
335
  ////////////////////////////////// Animation Stories
301
336
 
302
337
  const AnimationTemplate = (args) => {
303
- const { start, reset, pauseResume } = useCountUp({
304
- ref: 'counter',
338
+ const [run, setRun] = React.useState(true);
339
+ const { reset, value } = useCountUp({
305
340
  start: args.start,
306
341
  end: args.end,
307
- delay: args.delay,
308
342
  duration: args.duration,
309
- decimals: args.decimals,
310
- decimal: args.decimal,
311
- prefix: args.prefix,
312
- suffix: args.suffix,
343
+ decimalPlaces: args.decimals,
344
+ decimalSeparator: args.decimal,
345
+ formatter: (value) => {
346
+ let prefix = args.prefix || '';
347
+ let suffix = args.suffix || '';
348
+ let valueFixed = value.toFixed(args.decimals);
349
+
350
+ if (args.decimal === ',')
351
+ return (
352
+ prefix + new Intl.NumberFormat('ro-RO').format(valueFixed) + suffix
353
+ );
354
+ else return prefix + valueFixed + suffix;
355
+ },
356
+ isCounting: run,
357
+ useIntersection: false,
313
358
  });
314
359
 
315
360
  return (
316
361
  <Container>
317
362
  <Statistic.Group {...args}>
318
363
  <a href="/#" className="ui small statistic">
319
- <div className="value secondary" id="counter"></div>
364
+ <div className="value secondary">{value}</div>
320
365
  <div className="label tertiary">Count up label</div>
321
366
  </a>
322
367
  </Statistic.Group>
323
368
  <br />
324
- <Button secondary onClick={start}>
369
+ <Button
370
+ secondary
371
+ onClick={() => {
372
+ reset();
373
+ setRun(true);
374
+ }}
375
+ >
325
376
  Start
326
377
  </Button>
327
- <Button primary onClick={reset}>
378
+ <Button
379
+ primary
380
+ onClick={() => {
381
+ reset();
382
+ setRun(false);
383
+ }}
384
+ >
328
385
  Reset
329
386
  </Button>
330
- <Button primary inverted onClick={pauseResume}>
387
+ <Button
388
+ primary
389
+ inverted
390
+ onClick={() => {
391
+ setRun(!run);
392
+ }}
393
+ >
331
394
  Pause/Resume
332
395
  </Button>
333
396
  </Container>
@@ -335,10 +398,10 @@ const AnimationTemplate = (args) => {
335
398
  };
336
399
 
337
400
  export const Animation = AnimationTemplate.bind({});
401
+
338
402
  Animation.args = {
339
403
  start: 0,
340
404
  end: 5000,
341
- delay: 0,
342
405
  duration: 5,
343
406
  decimals: 0,
344
407
  prefix: '',
@@ -347,9 +410,17 @@ Animation.args = {
347
410
  size: 'small',
348
411
  horizontal: false,
349
412
  };
413
+ Animation.argTypes = {
414
+ decimal: {
415
+ name: 'decimal',
416
+ defaultValue: '.',
417
+ options: ['.', ','],
418
+ control: { type: 'select' },
419
+ },
420
+ };
350
421
  Animation.parameters = { controls: { exclude: ['Background when inverted'] } };
351
422
 
352
- const CountupStatistics = (args) => (
423
+ const CountUpStatistics = (args) => (
353
424
  <div
354
425
  className={`full-width color-bg-${
355
426
  args.inverted ? args.backgroundVariant : ''
@@ -358,10 +429,10 @@ const CountupStatistics = (args) => (
358
429
  <Container>
359
430
  <Statistic.Group id="counter" {...args}>
360
431
  {args.elements &&
361
- args.elements.map((element, index) => (
432
+ args.elements.map((element) => (
362
433
  <a href={element.href} className="ui small statistic">
363
434
  <div className={`value ${args.valueVariation}`}>
364
- <CountUp end={element.value} />
435
+ <CountUp end={element.value} isCounting={true} />
365
436
  </div>
366
437
  <div className={`label ${args.labelVariation}`}>
367
438
  {element.label}
@@ -375,27 +446,27 @@ const CountupStatistics = (args) => (
375
446
  </Container>
376
447
  </div>
377
448
  );
378
- export const AnimationGroup = CountupStatistics.bind({});
449
+ export const AnimationGroup = CountUpStatistics.bind({});
379
450
  AnimationGroup.args = {
380
451
  elements: [
381
452
  {
382
453
  ...Default.args,
383
454
  label: 'label 1',
384
- value: '50',
455
+ value: 50,
385
456
  slate: 'Text from slate',
386
457
  href: '/#',
387
458
  },
388
459
  {
389
460
  ...Default.args,
390
461
  label: 'label 2',
391
- value: '500',
462
+ value: 500,
392
463
  slate: 'Text from slate',
393
464
  href: '/#',
394
465
  },
395
466
  {
396
467
  ...Default.args,
397
468
  label: 'label 3',
398
- value: '5000',
469
+ value: 5000,
399
470
  slate: 'Text from slate',
400
471
  href: '/#',
401
472
  },
@@ -409,56 +480,3 @@ AnimationGroup.args = {
409
480
  inverted: false,
410
481
  backgroundVariant: 'primary',
411
482
  };
412
- AnimationGroup.argTypes = {
413
- widths: {
414
- control: {
415
- type: 'select',
416
- options: ['one', 'two', 'three', 'four', 'five'],
417
- },
418
- description: 'statistic column size',
419
- table: {
420
- type: {
421
- summary: 'string',
422
- },
423
- defaultValue: {
424
- summary: ' "" ',
425
- },
426
- },
427
- },
428
- valueVariation: {
429
- name: 'Value variation',
430
- defaultValue: 'tertiary',
431
- options: ['primary', 'secondary', 'tertiary'],
432
- control: { type: 'select' },
433
- description: 'Text color variation',
434
- table: {
435
- category: 'Color variations',
436
- defaultValue: { summary: 'tertiary' },
437
- type: { summary: 'string' },
438
- },
439
- },
440
- labelVariation: {
441
- name: 'Value variation',
442
- defaultValue: 'tertiary',
443
- options: ['primary', 'secondary', 'tertiary'],
444
- control: { type: 'select' },
445
- description: 'Text color variation',
446
- table: {
447
- category: 'Color variations',
448
- defaultValue: { summary: 'tertiary' },
449
- type: { summary: 'string' },
450
- },
451
- },
452
- extraVariation: {
453
- name: 'Extra info variation',
454
- defaultValue: 'tertiary',
455
- options: ['primary', 'secondary', 'tertiary'],
456
- control: { type: 'select' },
457
- description: 'Text color variation',
458
- table: {
459
- category: 'Color variations',
460
- defaultValue: { summary: 'tertiary' },
461
- type: { summary: 'string' },
462
- },
463
- },
464
- };
@@ -81,6 +81,7 @@
81
81
  .accordion-title:not(.active) .ui.input input {
82
82
  color: @textColorCSSVar;
83
83
  }
84
+
84
85
  .ui.input input {
85
86
  border: @border;
86
87
 
@@ -121,7 +122,19 @@ textarea.fluid {
121
122
  font-weight: @bold;
122
123
  }
123
124
 
124
- i.icon {
125
+ .icon {
126
+ position: absolute;
127
+ top: 0;
128
+ right: 0;
129
+ height: 100%;
130
+ margin: 0;
131
+ background-color: transparent !important;
132
+ box-shadow: none !important;
133
+ line-height: 1;
134
+ text-align: center;
135
+ }
136
+
137
+ .icon:before {
125
138
  color: @white;
126
139
  font-size: 16px;
127
140
  opacity: 1;
@@ -129,18 +142,18 @@ textarea.fluid {
129
142
  }
130
143
 
131
144
  .ui.fluid.icon.input.search > input::-webkit-input-placeholder {
132
- opacity: 0.9;
133
145
  color: rgb(255, 255, 255);
146
+ opacity: 0.9;
134
147
  }
135
148
 
136
149
  .ui.fluid.icon.input.search > input::-moz-placeholder {
137
- opacity: 0.9;
138
150
  color: rgb(255, 255, 255);
151
+ opacity: 0.9;
139
152
  }
140
153
 
141
154
  .ui.fluid.icon.input.search > input::-ms-input-placeholder {
142
- opacity: 0.9;
143
155
  color: rgb(255, 255, 255);
156
+ opacity: 0.9;
144
157
  }
145
158
 
146
159
  @media only screen and (min-width: @tabletBreakpoint) {
@@ -150,7 +163,7 @@ textarea.fluid {
150
163
  font-size: 18px;
151
164
  }
152
165
 
153
- i.icon {
166
+ .icon:before {
154
167
  font-size: 18px;
155
168
  }
156
169
  }
@@ -164,7 +177,7 @@ textarea.fluid {
164
177
  font-size: 40px;
165
178
  }
166
179
 
167
- i.icon {
180
+ .icon:before {
168
181
  font-size: 38px;
169
182
  }
170
183
  }
@@ -33,30 +33,34 @@
33
33
 
34
34
  /* Link */
35
35
  .ui.low.labels .label:hover,
36
- .ui.low.label:hover{
36
+ .ui.low.label:hover {
37
37
  background-color: @lowImportanceHoverBackground;
38
38
  border-color: @lowImportanceHoverBackground;
39
39
  }
40
40
 
41
41
  .ui.medium.labels .label:hover,
42
- .ui.medium.label:hover{
42
+ .ui.medium.label:hover {
43
43
  background-color: @mediumImportanceHoverBackground;
44
44
  border-color: @mediumImportanceHoverBackground;
45
45
  }
46
46
 
47
47
  .ui.high.labels .label:hover,
48
- .ui.high.label:hover{
48
+ .ui.high.label:hover {
49
49
  background-color: @highImportanceHoverBackground;
50
50
  border-color: @highImportanceHoverBackground;
51
51
  }
52
52
 
53
53
  .ui.highlight.labels .label:hover,
54
- .ui.highlight.label:hover{
54
+ .ui.highlight.label:hover {
55
55
  background-color: @highlightImportanceHoverBackground;
56
56
  border-color: @highlightImportanceHoverBackground;
57
57
  }
58
58
 
59
59
  /* Ribbon */
60
+ .ui.ribbon.label {
61
+ z-index: @ribbonLabelZindex;
62
+ }
63
+
60
64
  .ui.low.ribbon.label {
61
65
  border-color: @lowImportanceBackground;
62
66
  }
@@ -79,6 +83,7 @@
79
83
  color: @lowImportanceBasicTextColor;
80
84
  border-color: @lowImportanceBackground;
81
85
  }
86
+
82
87
  .ui.basic.low.labels a.label:hover,
83
88
  .ui.basic.low.label:hover {
84
89
  background-color: @white;
@@ -91,6 +96,7 @@
91
96
  color: @mediumImportanceBasicTextColor;
92
97
  border-color: @mediumImportanceBackground;
93
98
  }
99
+
94
100
  .ui.basic.medium.labels a.label:hover,
95
101
  .ui.basic.medium.label:hover {
96
102
  background-color: @white;
@@ -103,6 +109,7 @@
103
109
  color: @highImportanceBasicTextColor;
104
110
  border-color: @highImportanceBackground;
105
111
  }
112
+
106
113
  .ui.basic.high.labels a.label:hover,
107
114
  .ui.basic.high.label:hover {
108
115
  background-color: @white;
@@ -115,6 +122,7 @@
115
122
  color: @highlightImportanceBasicTextColor;
116
123
  border-color: @highlightImportanceBackground;
117
124
  }
125
+
118
126
  .ui.basic.highlight.labels a.label:hover,
119
127
  .ui.basic.highlight.label:hover {
120
128
  background-color: @white;
@@ -136,19 +136,21 @@
136
136
  @ribbonTriangleSize: 1.2em;
137
137
  @ribbonShadowColor: rgba(0, 0, 0, 0.15);
138
138
 
139
+ @ribbonLabelZindex: 1;
140
+
139
141
  @ribbonMargin: 1rem;
140
142
  @ribbonOffset: calc(-@ribbonMargin - @ribbonTriangleSize);
141
143
  @ribbonDistance: calc(@ribbonMargin + @ribbonTriangleSize);
142
- @rightRibbonOffset: calc(100% + @ribbonMargin + @ribbonTriangleSize);
144
+ @rightRibbonOffset: calc(100% + @ribbonMargin + @ribbonTriangleSize);
143
145
 
144
146
  @ribbonImageTopDistance: 1rem;
145
147
  @ribbonImageMargin: 0.05rem; /* Rounding Offset on Triangle */
146
148
  @ribbonImageOffset: calc(-@ribbonImageMargin - @ribbonTriangleSize);
147
- @rightRibbonImageOffset: calc(100% + @ribbonImageMargin + @ribbonTriangleSize);
149
+ @rightRibbonImageOffset: calc(100% + @ribbonImageMargin + @ribbonTriangleSize);
148
150
 
149
151
  @ribbonTableMargin: @relativeMini; /* Rounding Offset on Triangle */
150
152
  @ribbonTableOffset: calc(-@ribbonTableMargin - @ribbonTriangleSize);
151
- @rightRibbonTableOffset: calc(100% + @ribbonTableMargin + @ribbonTriangleSize);
153
+ @rightRibbonTableOffset: calc(100% + @ribbonTableMargin + @ribbonTriangleSize);
152
154
 
153
155
 
154
156
  /* Colors */
@@ -159,10 +161,10 @@
159
161
  @highlightImportanceBackground: @secondaryColor;
160
162
 
161
163
  /* Hover Colors */
162
- @lowImportanceHoverBackground: darken(@deepBlue,5);
163
- @mediumImportanceHoverBackground: darken(#346F83,5);
164
- @highImportanceHoverBackground: darken(#005293,5);
165
- @highlightImportanceHoverBackground: darken(@secondaryColor,5);
164
+ @lowImportanceHoverBackground: darken(@deepBlue, 5);
165
+ @mediumImportanceHoverBackground: darken(#346F83, 5);
166
+ @highImportanceHoverBackground: darken(#005293, 5);
167
+ @highlightImportanceHoverBackground: darken(@secondaryColor, 5);
166
168
 
167
169
  @importanceHoverTextColor: @white;
168
170
 
@@ -271,11 +273,11 @@
271
273
  --------------------*/
272
274
 
273
275
  /* Sizing */
274
- @mini : @9px;
275
- @tiny : @10px;
276
- @small : @11px;
277
- @medium : @12px;
278
- @large : @absoluteMedium;
279
- @big : @absoluteBig;
280
- @huge : @absoluteHuge;
281
- @massive : @absoluteMassive;
276
+ @mini: @9px;
277
+ @tiny: @10px;
278
+ @small: @11px;
279
+ @medium: @12px;
280
+ @large: @absoluteMedium;
281
+ @big: @absoluteBig;
282
+ @huge: @absoluteHuge;
283
+ @massive: @absoluteMassive;
@@ -16,6 +16,7 @@
16
16
  margin-right: -50vw;
17
17
  left: 50%;
18
18
  right: 50%;
19
+ z-index: @contentBoxBeforeZIndex;
19
20
  }
20
21
 
21
22
  .content-box {
@@ -28,7 +29,6 @@
28
29
  padding-top: @contentBoxContainerMarginTop;
29
30
  padding-bottom: @contentBoxContainerMarginBottom;
30
31
  position: relative;
31
- z-index: @contentBoxContainerZIndex;
32
32
  }
33
33
 
34
34
  &.primary {