vanilla-framework 2.37.0 → 3.0.0-beta.2

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 (143) hide show
  1. package/README.md +1 -1
  2. package/_index.scss +1 -0
  3. package/package.json +11 -9
  4. package/scss/_base_blockquotes.scss +2 -2
  5. package/scss/_base_button.scss +9 -27
  6. package/scss/_base_code.scss +8 -9
  7. package/scss/_base_details.scss +3 -3
  8. package/scss/_base_forms-range.scss +1 -45
  9. package/scss/_base_forms.scss +12 -23
  10. package/scss/_base_grid-definitions.scss +2 -23
  11. package/scss/_base_hr.scss +1 -1
  12. package/scss/_base_icon-definitions.scss +0 -24
  13. package/scss/_base_lists.scss +5 -5
  14. package/scss/_base_media.scss +1 -6
  15. package/scss/_base_placeholders.scss +27 -30
  16. package/scss/_base_tables.scss +7 -7
  17. package/scss/_base_typography-definitions.scss +50 -58
  18. package/scss/_base_typography.scss +8 -18
  19. package/scss/_global_functions.scss +3 -11
  20. package/scss/_layouts_application-panels.scss +1 -1
  21. package/scss/_layouts_application.scss +1 -1
  22. package/scss/_layouts_fluid-breakout.scss +40 -150
  23. package/scss/_patterns_accordion.scss +16 -71
  24. package/scss/_patterns_article-pagination.scss +3 -6
  25. package/scss/_patterns_breadcrumbs.scss +1 -1
  26. package/scss/_patterns_buttons.scss +1 -35
  27. package/scss/_patterns_card.scss +8 -8
  28. package/scss/_patterns_chip.scss +89 -47
  29. package/scss/_patterns_code-snippet.scss +7 -7
  30. package/scss/_patterns_contextual-menu.scss +1 -1
  31. package/scss/_patterns_divider.scss +4 -4
  32. package/scss/_patterns_form-help-text.scss +2 -2
  33. package/scss/_patterns_form-password-toggle.scss +0 -6
  34. package/scss/_patterns_form-tick-elements.scss +217 -27
  35. package/scss/_patterns_form-validation.scss +2 -2
  36. package/scss/_patterns_forms.scss +7 -7
  37. package/scss/_patterns_grid.scss +6 -20
  38. package/scss/_patterns_heading-icon.scss +7 -7
  39. package/scss/_patterns_headings.scss +0 -26
  40. package/scss/_patterns_icons.scss +0 -58
  41. package/scss/_patterns_label.scss +1 -1
  42. package/scss/_patterns_links.scss +4 -33
  43. package/scss/_patterns_list-tree.scss +0 -1
  44. package/scss/_patterns_lists.scss +17 -32
  45. package/scss/_patterns_logo-section.scss +7 -5
  46. package/scss/_patterns_matrix.scss +19 -21
  47. package/scss/_patterns_media-object.scss +4 -4
  48. package/scss/_patterns_modal.scss +9 -9
  49. package/scss/_patterns_navigation.scss +317 -312
  50. package/scss/_patterns_notifications.scss +15 -57
  51. package/scss/_patterns_pagination.scss +6 -6
  52. package/scss/_patterns_pull-quotes.scss +4 -4
  53. package/scss/_patterns_search-and-filter.scss +8 -8
  54. package/scss/_patterns_search-box.scss +2 -3
  55. package/scss/_patterns_separator.scss +4 -4
  56. package/scss/_patterns_side-navigation.scss +12 -15
  57. package/scss/_patterns_strip.scss +1 -1
  58. package/scss/_patterns_switch.scss +11 -11
  59. package/scss/_patterns_table-expanding.scss +0 -13
  60. package/scss/_patterns_table-icons.scss +2 -2
  61. package/scss/_patterns_table-mobile-card.scss +4 -11
  62. package/scss/_patterns_table-of-contents.scss +1 -1
  63. package/scss/_patterns_tabs.scss +2 -2
  64. package/scss/_patterns_tooltips.scss +5 -5
  65. package/scss/_settings_breakpoints.scss +2 -3
  66. package/scss/_settings_colors.scss +18 -0
  67. package/scss/_settings_grid.scss +1 -4
  68. package/scss/_settings_spacing.scss +76 -98
  69. package/scss/_settings_system.scss +1 -7
  70. package/scss/_utilities_baseline-grid.scss +1 -1
  71. package/scss/_utilities_content-align.scss +2 -2
  72. package/scss/_utilities_embedded-media.scss +2 -2
  73. package/scss/_utilities_equal-height.scss +1 -1
  74. package/scss/_utilities_floats.scss +4 -4
  75. package/scss/_utilities_hide.scss +8 -8
  76. package/scss/_utilities_image-position.scss +1 -1
  77. package/scss/_utilities_show.scss +2 -6
  78. package/scss/_utilities_vertical-spacing.scss +6 -12
  79. package/scss/_vanilla.scss +0 -11
  80. package/scss/_base_forms-tick-elements.scss +0 -607
  81. package/scss/_base_typography-max-widths.scss +0 -36
  82. package/scss/_patterns_code-copyable.scss +0 -43
  83. package/scss/_patterns_code-numbered.scss +0 -13
  84. package/scss/_patterns_inline-images.scss +0 -37
  85. package/scss/_patterns_subnav.scss +0 -210
  86. package/scss/standalone/base.scss +0 -2
  87. package/scss/standalone/custom.scss +0 -7
  88. package/scss/standalone/dark.scss +0 -11
  89. package/scss/standalone/example.scss +0 -15
  90. package/scss/standalone/import.scss +0 -2
  91. package/scss/standalone/layouts_fluid-breakout-full.scss +0 -8
  92. package/scss/standalone/layouts_fluid-breakout.scss +0 -8
  93. package/scss/standalone/patterns_accordion.scss +0 -6
  94. package/scss/standalone/patterns_article-pagination.scss +0 -4
  95. package/scss/standalone/patterns_breadcrumbs.scss +0 -4
  96. package/scss/standalone/patterns_buttons.scss +0 -9
  97. package/scss/standalone/patterns_card.scss +0 -9
  98. package/scss/standalone/patterns_chip.scss +0 -6
  99. package/scss/standalone/patterns_code-copyable.scss +0 -4
  100. package/scss/standalone/patterns_code-numbered.scss +0 -4
  101. package/scss/standalone/patterns_code-snippet.scss +0 -6
  102. package/scss/standalone/patterns_contextual-menu.scss +0 -9
  103. package/scss/standalone/patterns_divider.scss +0 -7
  104. package/scss/standalone/patterns_form-password-toggle.scss +0 -19
  105. package/scss/standalone/patterns_form-tick-elements.scss +0 -13
  106. package/scss/standalone/patterns_forms.scss +0 -17
  107. package/scss/standalone/patterns_grid.scss +0 -4
  108. package/scss/standalone/patterns_heading-icon.scss +0 -4
  109. package/scss/standalone/patterns_headings.scss +0 -4
  110. package/scss/standalone/patterns_icons-additional.scss +0 -104
  111. package/scss/standalone/patterns_icons.scss +0 -7
  112. package/scss/standalone/patterns_image.scss +0 -4
  113. package/scss/standalone/patterns_inline-images.scss +0 -4
  114. package/scss/standalone/patterns_label.scss +0 -4
  115. package/scss/standalone/patterns_links.scss +0 -4
  116. package/scss/standalone/patterns_list-tree.scss +0 -4
  117. package/scss/standalone/patterns_lists.scss +0 -4
  118. package/scss/standalone/patterns_logo-section.scss +0 -4
  119. package/scss/standalone/patterns_matrix.scss +0 -4
  120. package/scss/standalone/patterns_media-object.scss +0 -4
  121. package/scss/standalone/patterns_modal.scss +0 -9
  122. package/scss/standalone/patterns_muted-heading.scss +0 -4
  123. package/scss/standalone/patterns_navigation.scss +0 -4
  124. package/scss/standalone/patterns_notifications.scss +0 -11
  125. package/scss/standalone/patterns_pagination.scss +0 -7
  126. package/scss/standalone/patterns_pull-quotes.scss +0 -4
  127. package/scss/standalone/patterns_search-and-filter.scss +0 -8
  128. package/scss/standalone/patterns_search-box.scss +0 -15
  129. package/scss/standalone/patterns_separator.scss +0 -4
  130. package/scss/standalone/patterns_side-navigation.scss +0 -11
  131. package/scss/standalone/patterns_skip-link.scss +0 -8
  132. package/scss/standalone/patterns_slider.scss +0 -4
  133. package/scss/standalone/patterns_strip.scss +0 -10
  134. package/scss/standalone/patterns_subnav.scss +0 -9
  135. package/scss/standalone/patterns_switch.scss +0 -4
  136. package/scss/standalone/patterns_tab-buttons.scss +0 -7
  137. package/scss/standalone/patterns_table-expanding.scss +0 -10
  138. package/scss/standalone/patterns_table-mobile-card.scss +0 -10
  139. package/scss/standalone/patterns_table-of-contents.scss +0 -7
  140. package/scss/standalone/patterns_table-overflow.scss +0 -10
  141. package/scss/standalone/patterns_table-sortable.scss +0 -10
  142. package/scss/standalone/patterns_tabs.scss +0 -4
  143. package/scss/standalone/patterns_tooltips.scss +0 -6
@@ -1,22 +1,10 @@
1
1
  @import 'settings';
2
2
 
3
- @mixin vf-p-grid-modifications {
4
- @include deprecate('3.0.0', 'vf-p-grid-modifications mixin will be removed') {
5
- .row {
6
- width: 100%;
7
- }
8
- }
9
- }
10
-
11
3
  // CSS grid implementation of columns for all screens sizes
12
4
  @mixin vf-grid-column($col) {
13
5
  @supports (display: grid) {
14
6
  grid-column-end: span #{$col};
15
7
 
16
- // reset flex box fallback styles
17
- margin-left: 0;
18
- width: auto;
19
-
20
8
  //nesting
21
9
  @if $col > 1 {
22
10
  & .row {
@@ -31,7 +19,7 @@
31
19
  // (see https://github.com/canonical-web-and-design/vanilla-framework/issues/3199)
32
20
  .grid-demo [class*='#{$grid-column-prefix}'] {
33
21
  background: transparentize($color-negative, 0.9);
34
- margin-bottom: $spv-outer--small;
22
+ margin-bottom: $spv--small;
35
23
  }
36
24
 
37
25
  .row {
@@ -39,7 +27,7 @@
39
27
  }
40
28
 
41
29
  // mobile grid
42
- @media (max-width: $threshold-4-6-col) {
30
+ @media (max-width: $threshold-4-6-col - 1) {
43
31
  @for $i from $grid-columns-small through 1 {
44
32
  .#{$grid-small-col-prefix}#{$i} {
45
33
  @include vf-grid-column($i);
@@ -50,7 +38,7 @@
50
38
  }
51
39
 
52
40
  // tablet grid
53
- @media (min-width: $threshold-4-6-col) and (max-width: $threshold-6-12-col) {
41
+ @media (min-width: $threshold-4-6-col) and (max-width: $threshold-6-12-col - 1) {
54
42
  @for $i from $grid-columns-medium through 1 {
55
43
  .#{$grid-medium-col-prefix}#{$i} {
56
44
  @include vf-grid-column($i);
@@ -65,9 +53,7 @@
65
53
  @for $i from $grid-columns through 1 {
66
54
  // set col-* to span respective number of columns on desktop
67
55
  .#{$grid-large-col-prefix}#{$i} {
68
- // on large screens provide flex box column implementation for IE
69
56
  // on smaller screens let them display full width one under another
70
- @include vf-grid-flex-column($i);
71
57
  @include vf-grid-column($i);
72
58
  }
73
59
  }
@@ -108,11 +94,11 @@
108
94
  @each $label, $breakpoint-min, $breakpoint-max, $col-count in $offsets {
109
95
  $query: null;
110
96
  @if $breakpoint-min == 0 {
111
- $query: '(max-width: #{$breakpoint-max})';
97
+ $query: '(max-width: #{$breakpoint-max - 1})';
112
98
  } @else if $breakpoint-max == -1 {
113
99
  $query: '(min-width: #{$breakpoint-min})';
114
100
  } @else {
115
- $query: '(min-width: #{$breakpoint-min}) and (max-width: #{$breakpoint-max})';
101
+ $query: '(min-width: #{$breakpoint-min}) and (max-width: #{$breakpoint-max - 1})';
116
102
  }
117
103
 
118
104
  @media #{$query} {
@@ -141,7 +127,7 @@
141
127
  position: absolute;
142
128
  right: map-get($grid-margin-widths, small);
143
129
 
144
- @media (min-width: $threshold-4-6-col) and (max-width: $threshold-6-12-col) {
130
+ @media (min-width: $threshold-4-6-col) and (max-width: $threshold-6-12-col - 1) {
145
131
  left: map-get($grid-margin-widths, medium);
146
132
  right: map-get($grid-margin-widths, medium);
147
133
  }
@@ -2,9 +2,9 @@
2
2
 
3
3
  @mixin vf-p-heading-icon {
4
4
  .p-heading-icon {
5
- margin-bottom: $spv-outer--scaleable;
5
+ margin-bottom: $spv--x-large;
6
6
 
7
- @media (min-width: $breakpoint-medium) {
7
+ @media (min-width: $breakpoint-heading-threshold) {
8
8
  margin-bottom: 0;
9
9
  }
10
10
  }
@@ -21,13 +21,13 @@
21
21
  flex-shrink: 0;
22
22
  height: map-get($icon-sizes, heading-icon--small);
23
23
  margin-bottom: 0;
24
- margin-right: $sph-inner;
25
- margin-top: map-get($nudges, nudge--h3-mobile);
24
+ margin-right: $sph--large;
25
+ margin-top: map-get($nudges, h3-mobile);
26
26
  width: map-get($icon-sizes, heading-icon--small);
27
27
 
28
- @media (min-width: $breakpoint-medium) {
28
+ @media (min-width: $breakpoint-heading-threshold) {
29
29
  height: map-get($icon-sizes, heading-icon);
30
- margin-top: map-get($nudges, nudge--h3);
30
+ margin-top: map-get($nudges, h3);
31
31
  width: map-get($icon-sizes, heading-icon);
32
32
  }
33
33
  }
@@ -38,7 +38,7 @@
38
38
  margin-top: $sp-x-small;
39
39
  width: map-get($icon-sizes, heading-icon--x-small);
40
40
 
41
- @media (min-width: $breakpoint-medium) {
41
+ @media (min-width: $breakpoint-heading-threshold) {
42
42
  height: map-get($icon-sizes, heading-icon--small);
43
43
  margin-top: 0;
44
44
  width: map-get($icon-sizes, heading-icon--small);
@@ -25,30 +25,4 @@
25
25
  .p-heading--6 {
26
26
  @extend %vf-heading-6;
27
27
  }
28
-
29
- @include deprecate('3.0.0', 'Use the `p-heading--1`, `p-heading--2`, ... instead') {
30
- .p-heading--one {
31
- @extend %vf-heading-1;
32
- }
33
-
34
- .p-heading--two {
35
- @extend %vf-heading-2;
36
- }
37
-
38
- .p-heading--three {
39
- @extend %vf-heading-3;
40
- }
41
-
42
- .p-heading--four {
43
- @extend %vf-heading-4;
44
- }
45
-
46
- .p-heading--five {
47
- @extend %vf-heading-5;
48
- }
49
-
50
- .p-heading--six {
51
- @extend %vf-heading-6;
52
- }
53
- }
54
28
  }
@@ -8,7 +8,6 @@
8
8
  @include vf-p-icon-expand;
9
9
  @include vf-p-icon-collapse;
10
10
  @include vf-p-icon-chevron;
11
- @include vf-p-icon-contextual-menu;
12
11
  @include vf-p-icon-close;
13
12
  @include vf-p-icon-help;
14
13
  @include vf-p-icon-info;
@@ -24,7 +23,6 @@
24
23
  @include vf-p-icon-success;
25
24
  @include vf-p-icon-share;
26
25
  @include vf-p-icon-user;
27
- @include vf-p-icon-question;
28
26
  @include vf-p-icon-spinner;
29
27
  @include vf-p-icon-facebook;
30
28
  @include vf-p-icon-github;
@@ -32,12 +30,9 @@
32
30
  @include vf-p-icon-instagram;
33
31
  @include vf-p-icon-linkedin;
34
32
  @include vf-p-icon-youtube;
35
- @include vf-p-icon-canonical;
36
- @include vf-p-icon-ubuntu;
37
33
  @include vf-p-icon-rss;
38
34
  @include vf-p-icon-email;
39
35
  @include vf-p-icon-sizes;
40
- @include vf-p-icon-in-button;
41
36
  @include vf-p-icon-show;
42
37
  @include vf-p-icon-hide;
43
38
  }
@@ -46,7 +41,6 @@
46
41
  // stylelint-disable selector-max-type
47
42
  h1,
48
43
  .p-heading--1,
49
- .p-heading--one,
50
44
  .u-match-h1 {
51
45
  [class*='p-icon'] {
52
46
  @include vf-icon-size($x-height);
@@ -57,7 +51,6 @@
57
51
 
58
52
  h2,
59
53
  .p-heading--2,
60
- .p-heading--two,
61
54
  .u-match-h2 {
62
55
  [class*='p-icon'] {
63
56
  @include vf-icon-size($x-height);
@@ -68,7 +61,6 @@
68
61
 
69
62
  h3,
70
63
  .p-heading--3,
71
- .p-heading--three,
72
64
  .u-match-h3 {
73
65
  [class*='p-icon'] {
74
66
  @include vf-icon-size($default-icon-size);
@@ -79,7 +71,6 @@
79
71
 
80
72
  h4,
81
73
  .p-heading--4,
82
- .p-heading--four,
83
74
  .u-match-h4 {
84
75
  [class*='p-icon'] {
85
76
  vertical-align: 0;
@@ -166,20 +157,6 @@
166
157
  }
167
158
  }
168
159
 
169
- @mixin vf-p-icon-contextual-menu {
170
- @include deprecate('3.0.0', 'Use the `p-icon--chevron` class instead') {
171
- .p-icon--contextual-menu {
172
- @extend %icon;
173
- @include vf-icon-contextual-menu($color-mid-dark);
174
-
175
- [class*='--dark'] &,
176
- &.is-light {
177
- @include vf-icon-contextual-menu($color-mid-x-light);
178
- }
179
- }
180
- }
181
- }
182
-
183
160
  @mixin vf-p-icon-close {
184
161
  .p-icon--close {
185
162
  @extend %icon;
@@ -346,12 +323,6 @@
346
323
  }
347
324
  }
348
325
 
349
- @mixin vf-p-icon-question {
350
- @include deprecate('3.0.0', 'Use the `p-icon--help` class instead') {
351
- // moved to vf-p-icon-help
352
- }
353
- }
354
-
355
326
  @mixin vf-p-icon-spinner {
356
327
  .p-icon--spinner {
357
328
  @extend %icon;
@@ -406,24 +377,6 @@
406
377
  }
407
378
  }
408
379
 
409
- @mixin vf-p-icon-canonical {
410
- @include deprecate('3.0.0', 'Removing icon from framework please use an alternative icon from our social set') {
411
- .p-icon--canonical {
412
- @extend %social-icon;
413
- @include vf-icon-canonical;
414
- }
415
- }
416
- }
417
-
418
- @mixin vf-p-icon-ubuntu {
419
- @include deprecate('3.0.0', 'Removing icon from framework please use an alternative icon from our social set') {
420
- .p-icon--ubuntu {
421
- @extend %social-icon;
422
- @include vf-icon-ubuntu;
423
- }
424
- }
425
- }
426
-
427
380
  @mixin vf-p-icon-rss {
428
381
  .p-icon--rss {
429
382
  @extend %social-icon;
@@ -456,17 +409,6 @@
456
409
  }
457
410
  }
458
411
 
459
- @mixin vf-p-icon-in-button {
460
- @include deprecate('3.0.0', 'No longer necessary') {
461
- // Style overides for icons within a button
462
- [class*='p-button-'] {
463
- [class*='p-icon-'] {
464
- top: 0;
465
- }
466
- }
467
- }
468
- }
469
-
470
412
  @mixin vf-p-icon-applications {
471
413
  .p-icon--applications {
472
414
  @extend %icon;
@@ -9,7 +9,7 @@
9
9
  border-radius: $border-radius;
10
10
  display: inline-block;
11
11
  font-weight: $font-weight-bold;
12
- padding: map-get($nudges, nudge--x-small) $sph-inner--small;
12
+ padding: map-get($nudges, x-small) $sph--small;
13
13
  text-align: center;
14
14
  text-decoration: none;
15
15
  white-space: nowrap;
@@ -42,18 +42,13 @@
42
42
  @include vf-focus;
43
43
 
44
44
  left: 0;
45
- padding: $spv-inner--x-small;
45
+ padding: $spv--x-small;
46
46
  position: relative;
47
47
  top: 0;
48
48
  z-index: 999999;
49
49
  }
50
50
  }
51
51
 
52
- // include external link styles only if CSS mask is supported
53
- @supports (mask-size: 1em) or (-webkit-mask-size: 1em) {
54
- @include vf-mask-supported;
55
- }
56
-
57
52
  .p-top {
58
53
  align-items: center;
59
54
  display: flex;
@@ -62,7 +57,7 @@
62
57
  border-bottom: 1px solid $colors--light-theme--border-default;
63
58
  content: '';
64
59
  flex-grow: 1;
65
- margin: $spv-outer--scaleable 0 calc(#{$spv-outer--scaleable} - 1px) 0;
60
+ margin: $spv--x-large 0 calc(#{$spv--x-large} - 1px) 0;
66
61
  }
67
62
 
68
63
  &::after {
@@ -70,37 +65,13 @@
70
65
  @include vf-icon-back-to-top($color-mid-dark);
71
66
 
72
67
  content: '';
73
- margin-right: $sph-inner--small;
68
+ margin-right: $sph--small;
74
69
  }
75
70
  }
76
71
 
77
72
  .p-top__link {
78
73
  color: $color-dark;
79
- padding: 0 $sph-inner--small 0 $sph-inner;
74
+ padding: 0 $sph--small 0 $sph--large;
80
75
  text-decoration: none;
81
76
  }
82
77
  }
83
-
84
- // For browsers that support CSS masks
85
- @mixin vf-mask-supported {
86
- $external-icon-size--default-text: 1rem;
87
-
88
- .p-link--external {
89
- // Used for links point at a different domain
90
- &::after {
91
- background-color: currentColor;
92
- content: '';
93
- display: inline-block;
94
- height: $external-icon-size--default-text;
95
- line-height: 1;
96
- // stylelint-disable property-no-vendor-prefix
97
- -webkit-mask: url("data:image/svg+xml,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.157 3l-1.5 1.5H6a.5.5 0 00-.492.41L5.5 5v5a.5.5 0 00.41.492L6 10.5h5a.5.5 0 00.492-.41L11.5 10V8.538l1.5-1.5V10a2 2 0 01-2 2H6a2 2 0 01-2-2V5a2 2 0 012-2h3.157zm5.593-1.75V6h-1.5V3.81L8.5 8.56 7.44 7.5l4.748-4.75H10v-1.5h4.75z' fill='%23666' fill-rule='evenodd'/%3E%3C/svg%3E")
98
- no-repeat 0 0 / #{$external-icon-size--default-text};
99
- // stylelint-enable property-no-vendor-prefix
100
- mask: url("data:image/svg+xml,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.157 3l-1.5 1.5H6a.5.5 0 00-.492.41L5.5 5v5a.5.5 0 00.41.492L6 10.5h5a.5.5 0 00.492-.41L11.5 10V8.538l1.5-1.5V10a2 2 0 01-2 2H6a2 2 0 01-2-2V5a2 2 0 012-2h3.157zm5.593-1.75V6h-1.5V3.81L8.5 8.56 7.44 7.5l4.748-4.75H10v-1.5h4.75z' fill='%23666' fill-rule='evenodd'/%3E%3C/svg%3E")
101
- no-repeat 0 0 / #{$external-icon-size--default-text};
102
- vertical-align: calc(#{$baseline-position} - #{$external-icon-size--default-text} - 1px);
103
- width: $external-icon-size--default-text;
104
- }
105
- }
106
- }
@@ -77,7 +77,6 @@
77
77
  margin: 0 0.5rem 0 -1.75rem;
78
78
  padding: 0 0.5rem 0 1.75rem;
79
79
  transition-duration: 0s;
80
- width: auto;
81
80
 
82
81
  &:hover {
83
82
  background: transparent;
@@ -2,13 +2,6 @@
2
2
  $list-status-icon-height: 0.875rem; // 14px value from svg as rem so it can be used in calculations
3
3
  $list-status-icon-nudge: 0.3rem; // 0.3rem seems to be a magic number that positions the icon correctly
4
4
 
5
- $spv-list-item--inner: null;
6
- @if ($pad-lists) {
7
- $spv-list-item--inner: $spv-inner--x-small; // padding top and bottom for lists containing loose text.
8
- } @else {
9
- $spv-list-item--inner: 0;
10
- }
11
-
12
5
  @mixin vf-p-list-placeholders {
13
6
  %numbered-step-container {
14
7
  counter-reset: li;
@@ -38,8 +31,8 @@ $spv-list-item--inner: null;
38
31
 
39
32
  // Mixin for list items
40
33
  %vf-list-item {
41
- padding-bottom: $spv-list-item--inner;
42
- padding-top: $spv-list-item--inner;
34
+ padding-bottom: $spv--x-small;
35
+ padding-top: $spv--x-small;
43
36
 
44
37
  // FIXME: we need a better way to handle forms within lists
45
38
  // stylelint-disable selector-max-type
@@ -57,7 +50,7 @@ $spv-list-item--inner: null;
57
50
  %vf-list-item-state-base {
58
51
  @extend %vf-list;
59
52
 
60
- background-position-y: $spv-list-item--inner + $list-status-icon-nudge;
53
+ background-position-y: $spv--x-small + $list-status-icon-nudge;
61
54
  background-repeat: no-repeat;
62
55
  background-size: $list-status-icon-height;
63
56
  padding-left: 2rem;
@@ -89,7 +82,7 @@ $spv-list-item--inner: null;
89
82
  @mixin vf-inline-list-item {
90
83
  display: inline;
91
84
  list-style: none;
92
- margin-right: $sph-outer;
85
+ margin-right: $sph--large;
93
86
 
94
87
  &.last-item,
95
88
  &:last-of-type {
@@ -246,7 +239,7 @@ $spv-list-item--inner: null;
246
239
  float: none;
247
240
  margin-left: 0;
248
241
  overflow: visible;
249
- padding-bottom: $spv-outer--scaleable;
242
+ padding-bottom: $spv--x-large;
250
243
  position: relative;
251
244
  width: 100%;
252
245
  }
@@ -262,14 +255,14 @@ $spv-list-item--inner: null;
262
255
  .p-stepped-list__title {
263
256
  @extend %numbered-step-title;
264
257
 
265
- padding-left: $bullet-width-mobile + $sph-inner;
258
+ padding-left: $bullet-width-mobile + $sph--large;
266
259
 
267
260
  @media (min-width: $breakpoint-heading-threshold) {
268
- padding-left: $bullet-width + $sph-inner;
261
+ padding-left: $bullet-width + $sph--large;
269
262
  }
270
263
 
271
264
  &::before {
272
- margin-right: $sph-inner;
265
+ margin-right: $sph--large;
273
266
  width: $bullet-width-mobile;
274
267
 
275
268
  @media (min-width: $breakpoint-heading-threshold) {
@@ -279,10 +272,10 @@ $spv-list-item--inner: null;
279
272
  }
280
273
 
281
274
  .p-stepped-list__title + .p-stepped-list__content {
282
- margin-left: $bullet-width-mobile + $sph-inner;
275
+ margin-left: $bullet-width-mobile + $sph--large;
283
276
 
284
277
  @media (min-width: $breakpoint-heading-threshold) {
285
- margin-left: $bullet-width + $sph-inner;
278
+ margin-left: $bullet-width + $sph--large;
286
279
  }
287
280
  }
288
281
 
@@ -303,14 +296,14 @@ $spv-list-item--inner: null;
303
296
  }
304
297
 
305
298
  h#{$i}.p-stepped-list__title {
306
- padding-left: $bullet-width-mobile + $sph-inner;
299
+ padding-left: $bullet-width-mobile + $sph--large;
307
300
 
308
301
  @media (min-width: $breakpoint-heading-threshold) {
309
- padding-left: $bullet-width + $sph-inner;
302
+ padding-left: $bullet-width + $sph--large;
310
303
  }
311
304
 
312
305
  &::before {
313
- margin-right: $sph-inner;
306
+ margin-right: $sph--large;
314
307
  width: $bullet-width-mobile;
315
308
 
316
309
  @media (min-width: $breakpoint-heading-threshold) {
@@ -320,10 +313,10 @@ $spv-list-item--inner: null;
320
313
  }
321
314
 
322
315
  h#{$i}.p-stepped-list__title + .p-stepped-list__content {
323
- margin-left: $bullet-width-mobile + $sph-inner;
316
+ margin-left: $bullet-width-mobile + $sph--large;
324
317
 
325
318
  @media (min-width: $breakpoint-heading-threshold) {
326
- margin-left: $bullet-width + $sph-inner;
319
+ margin-left: $bullet-width + $sph--large;
327
320
  }
328
321
  }
329
322
  }
@@ -335,14 +328,6 @@ $spv-list-item--inner: null;
335
328
 
336
329
  margin-left: auto;
337
330
 
338
- // fallback for IE flex box grid implementation
339
- @media (min-width: $threshold-6-12-col) {
340
- .p-stepped-list__content,
341
- .p-stepped-list__title {
342
- @include vf-grid-flex-column;
343
- }
344
- }
345
-
346
331
  @supports (display: grid) {
347
332
  .p-stepped-list__content {
348
333
  @media (min-width: $threshold-6-12-col) {
@@ -362,7 +347,7 @@ $spv-list-item--inner: null;
362
347
  @extend %vf-row;
363
348
  @include vf-b-row-reset;
364
349
 
365
- @media (min-width: $breakpoint-medium) {
350
+ @media (min-width: $threshold-6-12-col) {
366
351
  padding-top: $sp-unit;
367
352
  position: relative;
368
353
 
@@ -383,7 +368,7 @@ $spv-list-item--inner: null;
383
368
  // Adaptor class `is-split` to split the items of a list into two columns
384
369
  @mixin vf-p-list-split {
385
370
  [class*='p-list'].is-split {
386
- @media (min-width: $breakpoint-medium) {
371
+ @media (min-width: $threshold-4-6-col) {
387
372
  @supports ((-webkit-columns: 1) or (columns: 1)) {
388
373
  column-gap: $sp-x-large;
389
374
  columns: 2;
@@ -1,3 +1,5 @@
1
+ @use 'sass:math';
2
+
1
3
  @mixin vf-p-set-logo-section-item-width($breakpoint: small) {
2
4
  // This mixin calculates the width of an individual logo.
3
5
 
@@ -35,10 +37,10 @@
35
37
 
36
38
  // The logic of these calculations is explained further down, in the @for loop
37
39
  $gutters-total-width: $grid-column-count * $gutter;
38
- $percentage-width-of-one-col: 100% / $grid-column-count;
40
+ $percentage-width-of-one-col: math.div(100%, $grid-column-count);
39
41
  $percentage-contribution: $logo-column-span * $percentage-width-of-one-col;
40
42
  $gutter-width-inside-logo: $gutter * ($logo-column-span - 1);
41
- $rem-contribution: $logo-column-span * ($gutters-total-width / $grid-column-count) - $gutter-width-inside-logo;
43
+ $rem-contribution: $logo-column-span * math.div($gutters-total-width, $grid-column-count) - $gutter-width-inside-logo;
42
44
 
43
45
  @include vf-p-apply-logo-section-item-width($percentage-contribution, $rem-contribution);
44
46
 
@@ -63,7 +65,7 @@
63
65
  // Thus the calculation is split into 2 parts, which are then used in the final calc() function:
64
66
 
65
67
  // calculate the width of a single column by dividing the entire width by the number of columns it represents:
66
- $percentage-width-of-one-col: 100% / $column-count;
68
+ $percentage-width-of-one-col: math.div(100%, $column-count);
67
69
 
68
70
  // multiply the width of one column by the number of columns the logo needs to span
69
71
  $percentage-contribution: $logo-column-span * $percentage-width-of-one-col;
@@ -73,7 +75,7 @@
73
75
 
74
76
  // add the width of gutters spanned by the logo, subtract the $gutters-total-width / $column-count;
75
77
  // the signs here are reversed because the variable is subtracted. This avoids having + and - in the final css, e.g.: "+ -.75rem"
76
- $rem-contribution: $logo-column-span * ($gutters-total-width / $column-count) - $gutter-width-inside-logo;
78
+ $rem-contribution: $logo-column-span * math.div($gutters-total-width, $column-count) - $gutter-width-inside-logo;
77
79
 
78
80
  .#{$grid-column-prefix}#{$column-count} & {
79
81
  @include vf-p-apply-logo-section-item-width($percentage-contribution, $rem-contribution);
@@ -108,7 +110,7 @@
108
110
  display: flex;
109
111
  flex-wrap: wrap;
110
112
  justify-content: center;
111
- margin-bottom: $spv-outer--scaleable;
113
+ margin-bottom: $spv--x-large;
112
114
  // negates the margin of logos that sit in the first column
113
115
  margin-left: -#{$margin-small};
114
116
  width: calc(100% + #{$margin-small});
@@ -3,13 +3,13 @@
3
3
  // List Grid
4
4
  @mixin vf-p-matrix {
5
5
  $matrix-img-width: map-get($icon-sizes, heading-icon--small);
6
- $matrix-img-gutter: $sph-inner;
6
+ $matrix-img-gutter: $sph--large;
7
7
 
8
8
  .p-matrix {
9
9
  display: flex;
10
10
  flex-wrap: wrap;
11
11
  list-style: none;
12
- margin-bottom: $spv-outer--scaleable;
12
+ margin-bottom: $spv--x-large;
13
13
  margin-left: 0;
14
14
  padding-left: 0;
15
15
  }
@@ -18,34 +18,32 @@
18
18
  border-top: 1px solid $color-mid-light;
19
19
  display: flex;
20
20
  flex: 1 1 auto;
21
- padding-bottom: $spv-inner--large;
22
- padding-top: calc(#{$spv-inner--large} - 1px);
21
+ padding-bottom: $spv--large;
22
+ padding-top: calc(#{$spv--large} - 1px);
23
23
 
24
24
  &:first-child {
25
25
  border-top: none;
26
26
  }
27
27
 
28
- @media (min-width: $breakpoint-small) {
28
+ @media (min-width: $threshold-4-6-col) {
29
29
  display: flex;
30
30
  flex-wrap: wrap;
31
31
  width: 33.333%;
32
32
  }
33
33
 
34
- @media (min-width: $breakpoint-small) and (max-width: $breakpoint-medium) {
34
+ @media (min-width: $threshold-4-6-col) and (max-width: $threshold-6-12-col - 1) {
35
+ flex-direction: column;
36
+
35
37
  &:nth-child(2),
36
38
  &:nth-child(3) {
37
39
  border-top: none;
38
40
  }
39
41
  }
40
42
 
41
- @media (min-width: $breakpoint-small) and (max-width: $breakpoint-large) {
42
- flex-direction: column;
43
- }
44
-
45
- @media (min-width: $breakpoint-medium) {
43
+ @media (min-width: $threshold-6-12-col) {
46
44
  border-right: 1px solid $color-mid-light;
47
- padding-left: $spv-inner--large;
48
- padding-right: $spv-inner--large;
45
+ padding-left: $spv--large;
46
+ padding-right: $spv--large;
49
47
  width: 33.333%;
50
48
 
51
49
  &:empty {
@@ -67,7 +65,7 @@
67
65
  }
68
66
  }
69
67
 
70
- @media (min-width: $breakpoint-large) {
68
+ @media (min-width: $threshold-6-12-col) {
71
69
  // 3 items per row
72
70
  border-right: 1px solid $color-mid-light;
73
71
  width: 33.333%;
@@ -97,18 +95,18 @@
97
95
  align-self: flex-start;
98
96
  flex-shrink: 0;
99
97
  height: auto;
100
- margin-bottom: $spv-inner--small;
98
+ margin-bottom: $spv--small;
101
99
  margin-right: $matrix-img-gutter;
102
100
  margin-top: 0;
103
101
  width: $matrix-img-width;
104
102
 
105
103
  @media (min-width: $breakpoint-heading-threshold) {
106
- margin-top: -#{map-get($nudges, nudge--h4)};
104
+ margin-top: -#{map-get($nudges, h4)};
107
105
  }
108
106
 
109
107
  @if ($increase-font-size-on-larger-screens) {
110
108
  @media (min-width: $breakpoint-x-large) {
111
- margin-top: -#{map-get($nudges, nudge--h4-large)};
109
+ margin-top: -#{map-get($nudges, h4-large)};
112
110
  }
113
111
  }
114
112
  }
@@ -117,7 +115,7 @@
117
115
  display: flex;
118
116
  flex: 1 1 auto;
119
117
  flex-direction: column;
120
- padding-right: $sph-inner;
118
+ padding-right: $sph--large;
121
119
 
122
120
  @media (min-width: $breakpoint-large) {
123
121
  width: calc(100% - #{$matrix-img-width + $matrix-img-gutter});
@@ -128,12 +126,12 @@
128
126
  @extend %vf-heading-4;
129
127
 
130
128
  @media (min-width: $breakpoint-heading-threshold) {
131
- margin-bottom: -#{map-get($nudges, nudge--h4)};
129
+ margin-bottom: -#{map-get($nudges, h4)};
132
130
  }
133
131
 
134
132
  @if ($increase-font-size-on-larger-screens) {
135
133
  @media (min-width: $breakpoint-x-large) {
136
- margin-bottom: -#{map-get($nudges, nudge--h4-large)};
134
+ margin-bottom: -#{map-get($nudges, h4-large)};
137
135
  }
138
136
  }
139
137
  }
@@ -141,7 +139,7 @@
141
139
  .p-matrix__desc {
142
140
  margin-bottom: $spv-nudge-compensation;
143
141
 
144
- @media (max-width: $breakpoint-heading-threshold) {
142
+ @media (max-width: $breakpoint-heading-threshold - 1) {
145
143
  margin-top: -#{$sp-unit};
146
144
  }
147
145