vanilla-framework 2.36.0 → 3.0.0-beta.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.
Files changed (140) hide show
  1. package/README.md +1 -1
  2. package/_index.scss +1 -0
  3. package/package.json +14 -12
  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 +2 -2
  8. package/scss/_base_forms-range.scss +1 -45
  9. package/scss/_base_forms.scss +17 -22
  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 +15 -18
  16. package/scss/_base_tables.scss +6 -6
  17. package/scss/_base_typography-definitions.scss +16 -24
  18. package/scss/_base_typography.scss +7 -17
  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 +3 -7
  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 +5 -5
  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 +15 -17
  47. package/scss/_patterns_media-object.scss +4 -4
  48. package/scss/_patterns_modal.scss +14 -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 +6 -6
  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_table-expanding.scss +0 -13
  59. package/scss/_patterns_table-icons.scss +2 -2
  60. package/scss/_patterns_table-mobile-card.scss +3 -10
  61. package/scss/_patterns_table-of-contents.scss +1 -1
  62. package/scss/_patterns_tabs.scss +2 -2
  63. package/scss/_patterns_tooltips.scss +5 -5
  64. package/scss/_settings_breakpoints.scss +2 -3
  65. package/scss/_settings_grid.scss +1 -4
  66. package/scss/_settings_spacing.scss +38 -60
  67. package/scss/_settings_system.scss +1 -7
  68. package/scss/_utilities_baseline-grid.scss +1 -1
  69. package/scss/_utilities_embedded-media.scss +2 -2
  70. package/scss/_utilities_equal-height.scss +1 -1
  71. package/scss/_utilities_floats.scss +4 -4
  72. package/scss/_utilities_hide.scss +8 -8
  73. package/scss/_utilities_image-position.scss +1 -1
  74. package/scss/_utilities_show.scss +2 -6
  75. package/scss/_utilities_vertical-spacing.scss +6 -12
  76. package/scss/_vanilla.scss +0 -11
  77. package/scss/_base_forms-tick-elements.scss +0 -607
  78. package/scss/_base_typography-max-widths.scss +0 -36
  79. package/scss/_patterns_code-copyable.scss +0 -43
  80. package/scss/_patterns_code-numbered.scss +0 -13
  81. package/scss/_patterns_inline-images.scss +0 -37
  82. package/scss/_patterns_subnav.scss +0 -210
  83. package/scss/standalone/base.scss +0 -2
  84. package/scss/standalone/custom.scss +0 -7
  85. package/scss/standalone/dark.scss +0 -11
  86. package/scss/standalone/example.scss +0 -15
  87. package/scss/standalone/import.scss +0 -2
  88. package/scss/standalone/layouts_fluid-breakout-full.scss +0 -8
  89. package/scss/standalone/layouts_fluid-breakout.scss +0 -8
  90. package/scss/standalone/patterns_accordion.scss +0 -6
  91. package/scss/standalone/patterns_article-pagination.scss +0 -4
  92. package/scss/standalone/patterns_breadcrumbs.scss +0 -4
  93. package/scss/standalone/patterns_buttons.scss +0 -9
  94. package/scss/standalone/patterns_card.scss +0 -9
  95. package/scss/standalone/patterns_chip.scss +0 -6
  96. package/scss/standalone/patterns_code-copyable.scss +0 -4
  97. package/scss/standalone/patterns_code-numbered.scss +0 -4
  98. package/scss/standalone/patterns_code-snippet.scss +0 -6
  99. package/scss/standalone/patterns_contextual-menu.scss +0 -9
  100. package/scss/standalone/patterns_divider.scss +0 -7
  101. package/scss/standalone/patterns_form-password-toggle.scss +0 -19
  102. package/scss/standalone/patterns_form-tick-elements.scss +0 -13
  103. package/scss/standalone/patterns_forms.scss +0 -17
  104. package/scss/standalone/patterns_grid.scss +0 -4
  105. package/scss/standalone/patterns_heading-icon.scss +0 -4
  106. package/scss/standalone/patterns_headings.scss +0 -4
  107. package/scss/standalone/patterns_icons-additional.scss +0 -104
  108. package/scss/standalone/patterns_icons.scss +0 -7
  109. package/scss/standalone/patterns_image.scss +0 -4
  110. package/scss/standalone/patterns_inline-images.scss +0 -4
  111. package/scss/standalone/patterns_label.scss +0 -4
  112. package/scss/standalone/patterns_links.scss +0 -4
  113. package/scss/standalone/patterns_list-tree.scss +0 -4
  114. package/scss/standalone/patterns_lists.scss +0 -4
  115. package/scss/standalone/patterns_logo-section.scss +0 -4
  116. package/scss/standalone/patterns_matrix.scss +0 -4
  117. package/scss/standalone/patterns_media-object.scss +0 -4
  118. package/scss/standalone/patterns_modal.scss +0 -9
  119. package/scss/standalone/patterns_muted-heading.scss +0 -4
  120. package/scss/standalone/patterns_navigation.scss +0 -4
  121. package/scss/standalone/patterns_notifications.scss +0 -11
  122. package/scss/standalone/patterns_pagination.scss +0 -7
  123. package/scss/standalone/patterns_pull-quotes.scss +0 -4
  124. package/scss/standalone/patterns_search-and-filter.scss +0 -8
  125. package/scss/standalone/patterns_search-box.scss +0 -15
  126. package/scss/standalone/patterns_separator.scss +0 -4
  127. package/scss/standalone/patterns_side-navigation.scss +0 -11
  128. package/scss/standalone/patterns_skip-link.scss +0 -8
  129. package/scss/standalone/patterns_slider.scss +0 -4
  130. package/scss/standalone/patterns_strip.scss +0 -10
  131. package/scss/standalone/patterns_subnav.scss +0 -9
  132. package/scss/standalone/patterns_switch.scss +0 -4
  133. package/scss/standalone/patterns_tab-buttons.scss +0 -7
  134. package/scss/standalone/patterns_table-expanding.scss +0 -10
  135. package/scss/standalone/patterns_table-mobile-card.scss +0 -10
  136. package/scss/standalone/patterns_table-of-contents.scss +0 -7
  137. package/scss/standalone/patterns_table-overflow.scss +0 -10
  138. package/scss/standalone/patterns_table-sortable.scss +0 -10
  139. package/scss/standalone/patterns_tabs.scss +0 -4
  140. package/scss/standalone/patterns_tooltips.scss +0 -6
package/README.md CHANGED
@@ -61,7 +61,7 @@ Then reference it from your own Sass files, with optional settings:
61
61
  $color-brand: #ffffff;
62
62
 
63
63
  // Import the theme
64
- @import 'vanilla-framework/scss/vanilla';
64
+ @import 'vanilla-framework';
65
65
  @include vanilla;
66
66
 
67
67
  // Add theme if applicable
package/_index.scss ADDED
@@ -0,0 +1 @@
1
+ @import './scss/vanilla';
package/package.json CHANGED
@@ -28,7 +28,7 @@
28
28
  "scripts": {
29
29
  "start": "yarn build && yarn serve",
30
30
  "build": "yarn build-scss && yarn build-js",
31
- "build-scss": "yarn run build-js && node-sass scss --functions sass-functions.js --output-style compressed --source-map true --source-map-contents true --output build/css && postcss --use autoprefixer --replace 'build/css/**/*.css' --map",
31
+ "build-scss": "yarn run build-js && sass --load-path=node_modules --embed-sources --style=compressed scss:build/css && postcss --use autoprefixer --replace 'build/css/**/*.css' --map",
32
32
  "build-js": "mkdir -p build/js/modules && cp node_modules/@canonical/cookie-policy/build/js/cookie-policy.js build/js/modules && cp node_modules/@canonical/latest-news/dist/latest-news.js build/js/modules",
33
33
  "serve": "./entrypoint 0.0.0.0:${PORT}",
34
34
  "test-scss": "node -e 'require(\"./tests/parker\").parkerTest()'",
@@ -36,38 +36,40 @@
36
36
  "test": "yarn lint-scss && yarn lint-prettier && yarn test-spelling && yarn test-scss",
37
37
  "lint-prettier": "prettier -c .",
38
38
  "lint-scss": "stylelint 'scss/**/*.scss'",
39
- "watch:scss": "node-sass scss --functions sass-functions.js --output-style compressed --source-map true --source-map-contents true --output build/css --watch",
40
- "watch:scss:skip-standalone": "node-sass scss/docs --functions sass-functions.js --output-style compressed --output build/css/docs --watch",
39
+ "watch:scss": "sass --load-path=node_modules --embed-sources --style=compressed scss:build/css --watch",
40
+ "watch:scss:skip-standalone": "sass --load-path=node_modules --embed-sources --style=compressed scss/build.scss:build/css/build.css --watch",
41
41
  "watch": "yarn build && yarn watch:scss",
42
42
  "clean": "rm -rf build docs/static/css node_modules/ yarn-error.log",
43
43
  "percy": "percy exec -- node snapshots.js",
44
44
  "icon-svgs-to-mixins": "node scripts/convert-svgs-to-icon-mixins.js icons"
45
45
  },
46
- "version": "2.36.0",
46
+ "version": "3.0.0-beta.1",
47
47
  "files": [
48
+ "_index.scss",
48
49
  "/scss",
49
- "!/scss/docs"
50
+ "!/scss/docs",
51
+ "!/scss/standalone"
50
52
  ],
51
53
  "dependencies": {
52
54
  "@canonical/cookie-policy": "3.3.0",
53
55
  "@canonical/latest-news": "1.2.0",
54
- "autoprefixer": "10.3.4",
55
- "node-sass": "6.0.1",
56
- "postcss": "8.3.6",
57
- "postcss-cli": "8.3.1"
56
+ "autoprefixer": "10.4.0",
57
+ "postcss": "8.3.11",
58
+ "postcss-cli": "8.3.1",
59
+ "sass": "1.37.5"
58
60
  },
59
61
  "devDependencies": {
60
62
  "@percy/script": "1.1.0",
61
63
  "get-site-urls": "1.1.7",
62
64
  "markdown-spellcheck": "1.3.1",
63
65
  "parker": "0.0.10",
64
- "prettier": "2.3.2",
66
+ "prettier": "2.4.1",
65
67
  "stylelint": "13.13.1",
66
68
  "stylelint-config-prettier": "8.0.2",
67
69
  "stylelint-config-standard": "22.0.0",
68
70
  "stylelint-order": "4.1.0",
69
71
  "stylelint-prettier": "1.2.0",
70
- "stylelint-scss": "3.20.1",
71
- "svgo": "2.5.0"
72
+ "stylelint-scss": "3.21.0",
73
+ "svgo": "2.7.0"
72
74
  }
73
75
  }
@@ -5,11 +5,11 @@
5
5
  // stylelint-disable selector-max-type -- base styles can use type selectors
6
6
  blockquote {
7
7
  border-left: 2px solid $color-mid-dark;
8
- margin-bottom: $spv-outer--scaleable;
8
+ margin-bottom: $spv--x-large;
9
9
  margin-left: 0;
10
10
  margin-top: 0;
11
11
  overflow: auto; // include margins of children into it's own height
12
- padding-bottom: $spv-inner--small;
12
+ padding-bottom: $spv--small;
13
13
  padding-left: $sp-large;
14
14
 
15
15
  & > :last-child {
@@ -26,11 +26,10 @@
26
26
  font-weight: $font-weight-regular-text;
27
27
  justify-content: center;
28
28
  line-height: map-get($line-heights, default-text);
29
- margin: 0 0 $input-margin-bottom 0;
30
- padding: $input-vertical-padding $sph-inner;
29
+ margin: 0 $sph--large $input-margin-bottom 0;
30
+ padding: $input-vertical-padding $sph--large;
31
31
  text-align: center;
32
32
  text-decoration: none;
33
- width: 100%;
34
33
 
35
34
  &:active,
36
35
  &:focus,
@@ -44,13 +43,8 @@
44
43
  opacity: $disabled-element-opacity;
45
44
  }
46
45
 
47
- @media (min-width: $breakpoint-x-small) {
48
- margin-right: $sph-outer;
49
- width: auto;
50
-
51
- &:last-child {
52
- margin-right: 0;
53
- }
46
+ &:last-child {
47
+ margin-right: 0;
54
48
  }
55
49
 
56
50
  &.is-dense {
@@ -63,7 +57,7 @@
63
57
  font-size: #{map-get($font-sizes, small)}rem;
64
58
  line-height: map-get($line-heights, small);
65
59
  margin-bottom: $input-margin-bottom - $sp-unit;
66
- padding: calc(#{map-get($nudges, nudge--small)} - 1px) $sph-inner--small;
60
+ padding: calc(#{map-get($nudges, nudge--small)} - 1px) $sph--small;
67
61
  }
68
62
 
69
63
  &.is-small.is-dense {
@@ -81,12 +75,6 @@
81
75
  p + p > & {
82
76
  margin-top: $spv-nudge-compensation;
83
77
  }
84
-
85
- @media (max-width: $breakpoint-x-small - 1) {
86
- p & + & {
87
- margin-top: $sp-unit + $spv-nudge-compensation;
88
- }
89
- }
90
78
  // stylelint-enable selector-max-type
91
79
  }
92
80
 
@@ -97,18 +85,16 @@
97
85
  }
98
86
 
99
87
  %vf-button-has-icon {
100
- width: auto;
101
-
102
88
  & [class*='p-icon'] {
103
- margin-left: $sph-inner--small;
104
- margin-right: $sph-inner--small;
89
+ margin-left: $sph--small;
90
+ margin-right: $sph--small;
105
91
 
106
92
  &:first-child {
107
- margin-left: -#{$sph-inner--small};
93
+ margin-left: -$sph--small;
108
94
  }
109
95
 
110
96
  &:last-child {
111
- margin-right: -#{$sph-inner--small};
97
+ margin-right: -$sph--small;
112
98
  }
113
99
  }
114
100
  }
@@ -158,8 +144,4 @@
158
144
  border-color: $button-disabled-border-color;
159
145
  }
160
146
  }
161
-
162
- .p-link--external {
163
- color: currentColor;
164
- }
165
147
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  $color-pre-bg: rgba($color-x-dark, 0.03);
4
4
  $digit-width: 1ch; // measured width of one character in the monospaced font
5
- $code-sidebar-width: calc(#{$sph-inner} + (4 * #{$digit-width})) !default;
5
+ $code-sidebar-width: calc(#{$sph--large} + (4 * #{$digit-width})) !default;
6
6
  $code-inline-padding: 0.25rem;
7
7
 
8
8
  // Base code styles
@@ -38,7 +38,6 @@ $code-inline-padding: 0.25rem;
38
38
  direction: ltr;
39
39
  // stylelint-disable property-no-vendor-prefix
40
40
  -webkit-hyphens: none;
41
- -ms-hyphens: none;
42
41
  hyphens: none;
43
42
  -moz-tab-size: 4;
44
43
  -o-tab-size: 4;
@@ -64,10 +63,10 @@ $code-inline-padding: 0.25rem;
64
63
  background-color: $color-code-background;
65
64
  color: $color-dark;
66
65
  display: block;
67
- margin-bottom: $spv-outer--scaleable;
66
+ margin-bottom: $spv--x-large;
68
67
  margin-top: 0;
69
68
  overflow: auto;
70
- padding: $spv-inner--x-small--scaleable $sph-inner;
69
+ padding: $spv--small $sph--large;
71
70
  text-align: left;
72
71
  text-shadow: none;
73
72
  white-space: pre;
@@ -86,15 +85,15 @@ $code-inline-padding: 0.25rem;
86
85
  @include vf-icon-linux-prompt($color-mid-dark);
87
86
 
88
87
  content: '';
89
- left: $sph-inner;
88
+ left: $sph--large;
90
89
  position: absolute;
91
- top: #{$spv-inner--x-small--scaleable + 0.5 * (map-get($line-heights, default-text) - map-get($icon-sizes, default))};
90
+ top: #{$spv--small + 0.5 * (map-get($line-heights, default-text) - map-get($icon-sizes, default))};
92
91
  width: map-get($icon-sizes, default);
93
92
 
94
93
  @if ($increase-font-size-on-larger-screens) {
95
94
  // stylelint-disable-next-line max-nesting-depth
96
95
  @media (min-width: $breakpoint-x-large) {
97
- top: #{$spv-inner--x-small--scaleable + 0.5 * (map-get($line-heights, default-text) * $font-size-ratio--largescreen - map-get($icon-sizes, default))};
96
+ top: #{$spv--small + 0.5 * (map-get($line-heights, default-text) * $font-size-ratio--largescreen - map-get($icon-sizes, default))};
98
97
  }
99
98
  }
100
99
  }
@@ -102,7 +101,7 @@ $code-inline-padding: 0.25rem;
102
101
 
103
102
  %code-numbered-line {
104
103
  display: inline-block;
105
- padding: 0 $sph-inner 0 $code-sidebar-width;
104
+ padding: 0 $sph--large 0 $code-sidebar-width;
106
105
  position: relative;
107
106
  width: 100%;
108
107
 
@@ -118,7 +117,7 @@ $code-inline-padding: 0.25rem;
118
117
  height: 100%;
119
118
  left: -$digit-width;
120
119
  overflow: hidden;
121
- padding-right: $sph-inner;
120
+ padding-right: $sph--large;
122
121
  pointer-events: none;
123
122
  position: absolute;
124
123
  text-align: right;
@@ -1,16 +1,16 @@
1
1
  @mixin vf-b-details {
2
2
  // stylelint-disable selector-max-type -- base styles can use type selectors
3
3
  details {
4
- margin-bottom: $spv-outer--scaleable;
4
+ margin-bottom: $spv--x-large;
5
5
  overflow: auto;
6
6
  }
7
7
 
8
8
  summary {
9
9
  @extend %common-default-text-properties;
10
10
  @include vf-focus;
11
- @include p-max-width;
12
11
 
13
12
  margin-bottom: $spv-nudge; //push subsequent text onto baseline
13
+ max-width: $max-width--default;
14
14
  padding-bottom: 2 * $sp-unit - map-get($nudges, nudge--p); // use padding instead of margin-bottom in order to make the focus state symmetric
15
15
  }
16
16
  // stylelint-enable selector-max-type
@@ -37,7 +37,7 @@
37
37
  border-radius: $thumb-radius;
38
38
  box-shadow: $thumb-shadow;
39
39
  height: $thumb-size;
40
- margin-top: ((-$thumb-size + $track-height) / 2) - $track-border-size;
40
+ margin-top: ((-$thumb-size + $track-height) * 0.5) - $track-border-size;
41
41
  width: $thumb-size;
42
42
 
43
43
  &:hover {
@@ -76,46 +76,6 @@
76
76
  border: 0;
77
77
  }
78
78
 
79
- // IE
80
- &::-ms-track {
81
- background: transparent;
82
- border-color: transparent;
83
- border-width: $thumb-size / 2;
84
- color: transparent;
85
- height: $track-height + 1;
86
- width: calc(100% - (#{$thumb-size} / 2));
87
- }
88
-
89
- &::-ms-fill-lower {
90
- background: $color-information;
91
- border: $track-border;
92
- border-radius: $track-radius;
93
- }
94
-
95
- &::-ms-fill-upper {
96
- background: $color-x-light;
97
- border: $track-border;
98
- border-radius: $track-radius;
99
- }
100
-
101
- &::-ms-thumb {
102
- background: $color-x-light;
103
- border: 0;
104
- border-radius: $thumb-radius;
105
- box-shadow: $thumb-shadow;
106
- height: $thumb-size;
107
- margin: 0 $bar-thickness;
108
- width: $thumb-size;
109
-
110
- &:hover {
111
- cursor: pointer;
112
- }
113
- }
114
-
115
- &::-ms-tooltip {
116
- display: none;
117
- }
118
-
119
79
  &:focus {
120
80
  outline: none;
121
81
 
@@ -126,10 +86,6 @@
126
86
  &::-moz-range-thumb {
127
87
  outline: $bar-thickness solid $color-focus;
128
88
  }
129
-
130
- &::-ms-thumb {
131
- outline: $bar-thickness solid $color-focus;
132
- }
133
89
  }
134
90
 
135
91
  &:disabled {
@@ -1,10 +1,8 @@
1
1
  @import 'settings';
2
- @import 'base_forms-tick-elements';
3
2
  @import 'base_forms-range';
4
3
 
5
4
  // Form element styles
6
5
  @mixin vf-b-forms {
7
- @include vf-b-tick-elements;
8
6
  @include vf-b-range;
9
7
 
10
8
  // Used in buttons, inputs
@@ -35,23 +33,15 @@
35
33
  line-height: map-get($line-heights, default-text);
36
34
  margin-bottom: $input-margin-bottom;
37
35
  min-width: 10em;
38
- padding-left: $sph-inner--small;
39
- padding-right: $sph-inner--small;
36
+ padding-left: $sph--small;
37
+ padding-right: $sph--small;
40
38
  vertical-align: baseline;
41
39
  width: 100%;
42
40
 
43
41
  &.is-dense {
44
42
  margin: 0 0 $spv-nudge-compensation 0;
45
- padding-bottom: calc(#{$spv-nudge - $spv-inner--x-small} - 1px);
46
- padding-top: calc(#{$spv-nudge - $spv-inner--x-small} - 1px);
47
- }
48
-
49
- &::-webkit-placeholder,
50
- &::-ms-placeholder,
51
- &:-ms-placeholder,
52
- &::placeholder {
53
- color: $color-mid-dark;
54
- opacity: 1;
43
+ padding-bottom: calc(#{$spv-nudge - $spv--x-small} - 1px);
44
+ padding-top: calc(#{$spv-nudge - $spv--x-small} - 1px);
55
45
  }
56
46
 
57
47
  &[disabled],
@@ -91,12 +81,11 @@
91
81
 
92
82
  // stylelint-disable selector-max-type -- base styles can use type selectors
93
83
  label {
94
- @include p-max-width;
95
-
96
84
  cursor: pointer;
97
- display: block;
98
- margin-bottom: $spv-outer--small-scaleable - $spv-nudge;
85
+ display: inline-block;
86
+ margin-bottom: $spv--large - $spv-nudge;
99
87
  margin-top: 0;
88
+ max-width: $max-width--default;
100
89
  padding-top: map-get($nudges, nudge--p);
101
90
  width: fit-content;
102
91
 
@@ -162,6 +151,12 @@
162
151
  }
163
152
  }
164
153
 
154
+ input[list] {
155
+ &::-webkit-calendar-picker-indicator {
156
+ opacity: 0;
157
+ }
158
+ }
159
+
165
160
  // Select styles
166
161
  select {
167
162
  @include vf-icon-chevron;
@@ -172,13 +167,13 @@
172
167
  appearance: none;
173
168
  // stylelint-enable property-no-vendor-prefix
174
169
  background-color: $color-x-light;
175
- background-position: right $sph-inner--small center;
170
+ background-position: right $sph--small center;
176
171
  background-repeat: no-repeat;
177
172
  background-size: map-get($icon-sizes, default);
178
173
  box-shadow: none;
179
174
  color: $color-dark;
180
175
  min-height: map-get($line-heights, default-text);
181
- padding-right: calc(#{$default-icon-size} + #{2 * $sph-inner--small});
176
+ padding-right: calc(#{$default-icon-size} + #{2 * $sph--small});
182
177
  text-indent: 0.01px;
183
178
  text-overflow: '';
184
179
 
@@ -195,7 +190,7 @@
195
190
  option {
196
191
  font-weight: $font-weight-regular-text;
197
192
  line-height: calc(#{$sp-unit * 2} - 2px);
198
- padding: $spv-inner--x-small 0;
193
+ padding: $spv--x-small 0;
199
194
  }
200
195
  }
201
196
  }
@@ -217,7 +212,7 @@
217
212
 
218
213
  margin-left: 0;
219
214
  margin-right: 0;
220
- padding: calc(#{$spv-inner--large} - 1px);
215
+ padding: calc(#{$spv--large} - 1px);
221
216
  }
222
217
  // stylelint-enable selector-max-type
223
218
  }
@@ -12,13 +12,13 @@
12
12
  }
13
13
 
14
14
  %span-full-grid-on-mobile {
15
- @media (max-width: $threshold-4-6-col) {
15
+ @media (max-width: $threshold-4-6-col - 1) {
16
16
  grid-column: auto / span $grid-columns-small;
17
17
  }
18
18
  }
19
19
 
20
20
  %span-full-grid-on-tablet {
21
- @media (min-width: $threshold-4-6-col) and (max-width: $threshold-6-12-col) {
21
+ @media (min-width: $threshold-4-6-col) and (max-width: $threshold-6-12-col - 1) {
22
22
  grid-column: auto / span $grid-columns-medium;
23
23
  }
24
24
  }
@@ -46,12 +46,6 @@
46
46
  %vf-row {
47
47
  @extend %fixed-width-container;
48
48
 
49
- // default to flexbox for IE on large screens
50
- // on small screens we let columns render one under another
51
- @media (min-width: $threshold-6-12-col) {
52
- display: flex;
53
- }
54
-
55
49
  & & {
56
50
  @include vf-b-row-reset;
57
51
  }
@@ -110,18 +104,3 @@
110
104
  }
111
105
  }
112
106
  }
113
-
114
- // flexbox approximation of grid column styles for IE
115
- // this needs to be a @mixin rather than %placeholder because it's used inside @media queries
116
- @mixin vf-grid-flex-column($size: 1) {
117
- flex-basis: 0;
118
- flex-grow: $size;
119
- flex-shrink: 1;
120
-
121
- // set static gutter width
122
- margin-left: map-get($grid-gutter-widths, large);
123
-
124
- &:first-child {
125
- margin-left: 0;
126
- }
127
- }
@@ -6,7 +6,7 @@
6
6
  hr {
7
7
  @extend %hr;
8
8
 
9
- margin-bottom: calc(#{$spv-outer--small} - 1px);
9
+ margin-bottom: calc(#{$spv--small} - 1px);
10
10
 
11
11
  &.u-no-margin--bottom {
12
12
  // compensate for hr thickness, to make sure it doesn't drift from baseline grid
@@ -22,12 +22,6 @@
22
22
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 1a3 3 0 013 3v8a3 3 0 01-3 3H4a3 3 0 01-3-3V4a3 3 0 013-3h8zm0 1.5H4a1.5 1.5 0 00-1.493 1.356L2.5 4v8a1.5 1.5 0 001.356 1.493L4 13.5h8a1.5 1.5 0 001.493-1.356L13.5 12V4a1.5 1.5 0 00-1.356-1.493L12 2.5zM8.027 5.282l3.76 3.76-1.06 1.061-2.701-2.7-2.699 2.7-1.06-1.06 3.76-3.76z' fill='#{vf-url-friendly-color($color)}' fill-rule='nonzero'/%3E%3C/svg%3E");
23
23
  }
24
24
 
25
- @mixin vf-icon-contextual-menu($color) {
26
- @include deprecate('3.0.0', 'Use the `vf-icon-chevron` mixin instead') {
27
- @include vf-icon-chevron($color);
28
- }
29
- }
30
-
31
25
  @mixin vf-icon-close($color) {
32
26
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='#{vf-url-friendly-color($color)}' fill-rule='nonzero' d='M13.041 1.898l1.06 1.06L9.062 8l5.04 5.042-1.06 1.06L8 9.062 2.96 14.1l-1.06-1.06L6.938 8 1.9 2.96l1.06-1.06 5.04 5.04z'/%3E%3C/svg%3E");
33
27
  }
@@ -88,12 +82,6 @@
88
82
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 1a4 4 0 014 4v.5a3.987 3.987 0 01-1.139 2.795 6 6 0 014.135 5.48L15 14H1a6.003 6.003 0 014.14-5.706A3.98 3.98 0 014 5.5V5a4 4 0 014-4zm1 8.5H7a4.502 4.502 0 00-4.203 2.888l-.04.112h10.486l-.03-.084a4.504 4.504 0 00-4-2.911L9 9.5zm-1-7a2.5 2.5 0 00-2.495 2.336L5.5 5v.5a2.5 2.5 0 004.995.164L10.5 5.5V5A2.5 2.5 0 008 2.5z' fill='#{vf-url-friendly-color($color)}' fill-rule='nonzero'/%3E%3C/svg%3E");
89
83
  }
90
84
 
91
- @mixin vf-icon-question($color) {
92
- @include deprecate('3.0.0', 'Use the `vf-icon-help` mixin instead') {
93
- @include vf-icon-help($color);
94
- }
95
- }
96
-
97
85
  @mixin vf-icon-spinner($color) {
98
86
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 13.5a5.488 5.488 0 004.183-1.929l1.317.76A6.988 6.988 0 018 15a6.988 6.988 0 01-5.5-2.669l1.316-.76A5.488 5.488 0 008 13.5zM6.999 1.071v1.52A5.502 5.502 0 002.815 9.84L1.5 10.6A7.002 7.002 0 016.764 1.11l.235-.038zM15 8c0 .918-.177 1.795-.498 2.6l-1.317-.761A5.502 5.502 0 009 2.59V1.07c3.392.485 6 3.403 6 6.929z' fill='#{vf-url-friendly-color($color)}' fill-rule='nonzero'/%3E%3C/svg%3E");
99
87
  }
@@ -122,18 +110,6 @@
122
110
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='40' height='40'%3E%3Cdefs%3E%3Cpath id='a' d='M.014.009H40v28.173H.014z'/%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd' transform='translate(0 6)'%3E%3Cmask id='b' fill='%23fff'%3E%3Cuse xlink:href='%23a'/%3E%3C/mask%3E%3Cpath fill='%23DA322A' d='M39.164 4.4A5.026 5.026 0 0035.628.842C32.508 0 20 0 20 0S7.492 0 4.372.841a5.026 5.026 0 00-3.536 3.56C0 7.54 0 14.09 0 14.09s0 6.55.836 9.69a5.026 5.026 0 003.536 3.56c3.12.84 15.628.84 15.628.84s12.508 0 15.628-.84a5.026 5.026 0 003.536-3.56c.836-3.14.836-9.69.836-9.69s0-6.55-.836-9.69' mask='url(%23b)'/%3E%3Cpath fill='%23FFFFFE' d='M15.909 20.038V8.143l10.455 5.948-10.455 5.947'/%3E%3C/g%3E%3C/svg%3E");
123
111
  }
124
112
 
125
- @mixin vf-icon-canonical {
126
- @include deprecate('3.0.0', 'Removing icon from framework please use an alternative icon from our social set') {
127
- background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath fill='%23772953' d='M20 32.735c-7.033 0-12.735-5.7-12.735-12.735 0-7.034 5.702-12.735 12.735-12.735 7.034 0 12.736 5.701 12.736 12.735 0 7.035-5.701 12.735-12.735 12.735zM40 20c0 11.046-8.954 20-20 20S0 31.045 0 20C0 8.954 8.954 0 20 0s20 8.954 20 20zM20 4.865C11.64 4.865 4.865 11.641 4.865 20c0 8.36 6.776 15.135 15.135 15.135 8.36 0 15.135-6.775 15.135-15.135 0-8.358-6.775-15.135-15.135-15.135z'/%3E%3C/svg%3E");
128
- }
129
- }
130
-
131
- @mixin vf-icon-ubuntu {
132
- @include deprecate('3.0.0', 'Removing icon from framework please use an alternative icon from our social set') {
133
- background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cg fill='none'%3E%3Cpath fill='%23E95420' d='M40 20.04c0 11.012-8.95 19.95-20 19.95S0 31.052 0 20.04C0 9.017 8.95.09 20 .09s20 8.927 20 19.95z'/%3E%3Cpath fill='%23FFF' d='M6.4 17.377a2.666 2.666 0 00-2.67 2.663c0 1.466 1.2 2.663 2.67 2.663s2.67-1.197 2.67-2.663c0-1.476-1.2-2.663-2.67-2.663zm19.07 12.1a2.667 2.667 0 102.67 4.618 2.667 2.667 0 00.98-3.641c-.75-1.267-2.38-1.706-3.65-.978zM12.2 20.04a7.749 7.749 0 013.32-6.364l-1.95-3.262a11.622 11.622 0 00-4.8 6.723 3.751 3.751 0 011.38 2.903c0 1.167-.54 2.214-1.38 2.903a11.578 11.578 0 004.8 6.723l1.95-3.262a7.749 7.749 0 01-3.32-6.364zm7.8-7.78c4.08 0 7.42 3.112 7.77 7.092l3.81-.06a11.503 11.503 0 00-3.45-7.501c-1.02.379-2.19.319-3.2-.26a3.737 3.737 0 01-1.83-2.643 11.8 11.8 0 00-3.1-.42c-1.85 0-3.59.43-5.14 1.198l1.86 3.312a7.81 7.81 0 013.28-.719zm0 15.56a7.89 7.89 0 01-3.29-.718l-1.86 3.312c1.55.768 3.3 1.197 5.14 1.197 1.07 0 2.11-.15 3.1-.419a3.728 3.728 0 011.83-2.643 3.742 3.742 0 013.2-.26 11.551 11.551 0 003.45-7.501l-3.81-.06c-.34 3.97-3.68 7.092-7.76 7.092zm5.46-17.226c1.28.738 2.91.299 3.65-.978.74-1.277.3-2.903-.98-3.64a2.673 2.673 0 00-3.65.977 2.676 2.676 0 00.98 3.64z'/%3E%3C/g%3E%3C/svg%3E");
134
- }
135
- }
136
-
137
113
  @mixin vf-icon-rss {
138
114
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cg fill='none'%3E%3Crect width='40' height='40' fill='%23EA7819' rx='5' transform='rotate(180 20 20)'/%3E%3Cpath fill='%23FFF' d='M6.34 6.274c15.07 0 27.332 12.314 27.332 27.452H28.41c0-12.236-9.9-22.19-22.07-22.19zM6.334 15.6c9.95 0 18.044 8.128 18.044 18.119h-5.261c0-3.44-1.33-6.671-3.747-9.097a12.657 12.657 0 00-9.036-3.76zm3.639 10.805a3.645 3.645 0 110 7.29 3.645 3.645 0 010-7.29z'/%3E%3C/g%3E%3C/svg%3E");
139
115
  }
@@ -4,10 +4,10 @@
4
4
  // stylelint-disable selector-max-type -- base styles can use type selectors
5
5
  ol,
6
6
  ul {
7
- margin-bottom: $spv-outer--scaleable;
8
- margin-left: $sph-outer;
7
+ margin-bottom: $spv--x-large;
8
+ margin-left: $sph--large;
9
9
  margin-top: 0;
10
- padding-left: $sph-outer;
10
+ padding-left: $sph--large;
11
11
 
12
12
  nav & {
13
13
  list-style: none;
@@ -32,7 +32,7 @@
32
32
  }
33
33
 
34
34
  dl {
35
- margin-bottom: $spv-outer--scaleable;
35
+ margin-bottom: $spv--x-large;
36
36
  margin-top: 0;
37
37
  padding: 0;
38
38
  }
@@ -40,7 +40,7 @@
40
40
  dd {
41
41
  @extend %default-text;
42
42
 
43
- margin-left: $sph-inner;
43
+ margin-left: $sph--large;
44
44
  }
45
45
 
46
46
  dt {
@@ -10,13 +10,8 @@
10
10
  max-width: 100%;
11
11
  }
12
12
 
13
- // Corrects overflow displayed oddly in IE9
14
- svg:not(:root) {
15
- overflow: hidden;
16
- }
17
-
18
13
  figure {
19
- margin-bottom: $spv-outer--scaleable;
14
+ margin-bottom: $spv--x-large;
20
15
  margin-left: 0;
21
16
  width: 100%;
22
17
 
@@ -35,18 +35,16 @@
35
35
 
36
36
  %vf-card-padding {
37
37
  overflow: auto;
38
- padding: $spv-inner--large;
38
+ padding: $spv--large;
39
39
  }
40
40
 
41
41
  %vf-card {
42
42
  @extend %vf-bg--x-light;
43
43
  @extend %vf-card-padding;
44
44
 
45
- margin-bottom: $spv-outer--scaleable;
46
- }
47
-
48
- %vf-card-inner {
49
- @extend %vf-card-padding;
45
+ margin-bottom: $spv--x-large;
46
+ overflow: auto; // prevent overflow of child margins
47
+ padding: $spv--large;
50
48
  }
51
49
 
52
50
  //accordion, table
@@ -102,38 +100,37 @@
102
100
 
103
101
  // Spacing
104
102
  %section-padding--shallow {
105
- padding-bottom: $spv-outer--shallow-scaleable * 0.5;
106
- padding-top: $spv-outer--shallow-scaleable * 0.5;
103
+ padding-bottom: $spv--x-large * 0.5;
104
+ padding-top: $spv--x-large * 0.5;
107
105
 
108
106
  @media (min-width: $breakpoint-large) {
109
- padding-bottom: $spv-outer--shallow-scaleable;
110
- padding-top: $spv-outer--shallow-scaleable;
107
+ padding-bottom: $spv--x-large;
108
+ padding-top: $spv--x-large;
111
109
  }
112
110
  }
113
111
 
114
112
  %section-padding--default {
115
- padding-bottom: $spv-outer--regular-scaleable * 0.5;
116
- padding-top: $spv-outer--regular-scaleable * 0.5;
113
+ padding-bottom: $spv--strip-regular * 0.5;
114
+ padding-top: $spv--strip-regular * 0.5;
117
115
 
118
116
  @media (min-width: $breakpoint-large) {
119
- padding-bottom: $spv-outer--regular-scaleable;
120
- padding-top: $spv-outer--regular-scaleable;
117
+ padding-bottom: $spv--strip-regular;
118
+ padding-top: $spv--strip-regular;
121
119
  }
122
120
  }
123
121
 
124
122
  %section-padding--deep {
125
- padding: $spv-outer--deep-scaleable * 0.5 0 $spv-outer--deep-scaleable * 0.5;
123
+ padding: $spv--strip-deep * 0.5 0 $spv--strip-deep * 0.5;
126
124
 
127
125
  @media (min-width: $breakpoint-large) {
128
- padding: $spv-outer--deep-scaleable 0;
126
+ padding: $spv--strip-deep 0;
129
127
  }
130
128
  }
131
129
 
132
130
  // Utilities
133
131
  %vf-hide-text {
134
132
  overflow: hidden;
135
- // vw value necessary because text indent in % does not work with padding,
136
- // and IE 11 does not support calc() on text-indent;
133
+ // vw value necessary because text indent in % does not work with padding;
137
134
  // 110vw ensures the text is off the screen, and in most cases will
138
135
  // still be smaller than 9999px, so should have better performance
139
136
  text-indent: 110vw;