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.
- package/README.md +1 -1
- package/_index.scss +1 -0
- package/package.json +14 -12
- package/scss/_base_blockquotes.scss +2 -2
- package/scss/_base_button.scss +9 -27
- package/scss/_base_code.scss +8 -9
- package/scss/_base_details.scss +2 -2
- package/scss/_base_forms-range.scss +1 -45
- package/scss/_base_forms.scss +17 -22
- package/scss/_base_grid-definitions.scss +2 -23
- package/scss/_base_hr.scss +1 -1
- package/scss/_base_icon-definitions.scss +0 -24
- package/scss/_base_lists.scss +5 -5
- package/scss/_base_media.scss +1 -6
- package/scss/_base_placeholders.scss +15 -18
- package/scss/_base_tables.scss +6 -6
- package/scss/_base_typography-definitions.scss +16 -24
- package/scss/_base_typography.scss +7 -17
- package/scss/_global_functions.scss +3 -11
- package/scss/_layouts_application-panels.scss +1 -1
- package/scss/_layouts_application.scss +1 -1
- package/scss/_layouts_fluid-breakout.scss +40 -150
- package/scss/_patterns_accordion.scss +16 -71
- package/scss/_patterns_article-pagination.scss +3 -6
- package/scss/_patterns_breadcrumbs.scss +1 -1
- package/scss/_patterns_buttons.scss +1 -35
- package/scss/_patterns_card.scss +8 -8
- package/scss/_patterns_chip.scss +3 -7
- package/scss/_patterns_code-snippet.scss +7 -7
- package/scss/_patterns_contextual-menu.scss +1 -1
- package/scss/_patterns_divider.scss +4 -4
- package/scss/_patterns_form-help-text.scss +2 -2
- package/scss/_patterns_form-password-toggle.scss +0 -6
- package/scss/_patterns_form-tick-elements.scss +217 -27
- package/scss/_patterns_form-validation.scss +2 -2
- package/scss/_patterns_forms.scss +7 -7
- package/scss/_patterns_grid.scss +6 -20
- package/scss/_patterns_heading-icon.scss +5 -5
- package/scss/_patterns_headings.scss +0 -26
- package/scss/_patterns_icons.scss +0 -58
- package/scss/_patterns_label.scss +1 -1
- package/scss/_patterns_links.scss +4 -33
- package/scss/_patterns_list-tree.scss +0 -1
- package/scss/_patterns_lists.scss +17 -32
- package/scss/_patterns_logo-section.scss +7 -5
- package/scss/_patterns_matrix.scss +15 -17
- package/scss/_patterns_media-object.scss +4 -4
- package/scss/_patterns_modal.scss +14 -9
- package/scss/_patterns_navigation.scss +317 -312
- package/scss/_patterns_notifications.scss +15 -57
- package/scss/_patterns_pagination.scss +6 -6
- package/scss/_patterns_pull-quotes.scss +4 -4
- package/scss/_patterns_search-and-filter.scss +6 -6
- package/scss/_patterns_search-box.scss +2 -3
- package/scss/_patterns_separator.scss +4 -4
- package/scss/_patterns_side-navigation.scss +12 -15
- package/scss/_patterns_strip.scss +1 -1
- package/scss/_patterns_table-expanding.scss +0 -13
- package/scss/_patterns_table-icons.scss +2 -2
- package/scss/_patterns_table-mobile-card.scss +3 -10
- package/scss/_patterns_table-of-contents.scss +1 -1
- package/scss/_patterns_tabs.scss +2 -2
- package/scss/_patterns_tooltips.scss +5 -5
- package/scss/_settings_breakpoints.scss +2 -3
- package/scss/_settings_grid.scss +1 -4
- package/scss/_settings_spacing.scss +38 -60
- package/scss/_settings_system.scss +1 -7
- package/scss/_utilities_baseline-grid.scss +1 -1
- package/scss/_utilities_embedded-media.scss +2 -2
- package/scss/_utilities_equal-height.scss +1 -1
- package/scss/_utilities_floats.scss +4 -4
- package/scss/_utilities_hide.scss +8 -8
- package/scss/_utilities_image-position.scss +1 -1
- package/scss/_utilities_show.scss +2 -6
- package/scss/_utilities_vertical-spacing.scss +6 -12
- package/scss/_vanilla.scss +0 -11
- package/scss/_base_forms-tick-elements.scss +0 -607
- package/scss/_base_typography-max-widths.scss +0 -36
- package/scss/_patterns_code-copyable.scss +0 -43
- package/scss/_patterns_code-numbered.scss +0 -13
- package/scss/_patterns_inline-images.scss +0 -37
- package/scss/_patterns_subnav.scss +0 -210
- package/scss/standalone/base.scss +0 -2
- package/scss/standalone/custom.scss +0 -7
- package/scss/standalone/dark.scss +0 -11
- package/scss/standalone/example.scss +0 -15
- package/scss/standalone/import.scss +0 -2
- package/scss/standalone/layouts_fluid-breakout-full.scss +0 -8
- package/scss/standalone/layouts_fluid-breakout.scss +0 -8
- package/scss/standalone/patterns_accordion.scss +0 -6
- package/scss/standalone/patterns_article-pagination.scss +0 -4
- package/scss/standalone/patterns_breadcrumbs.scss +0 -4
- package/scss/standalone/patterns_buttons.scss +0 -9
- package/scss/standalone/patterns_card.scss +0 -9
- package/scss/standalone/patterns_chip.scss +0 -6
- package/scss/standalone/patterns_code-copyable.scss +0 -4
- package/scss/standalone/patterns_code-numbered.scss +0 -4
- package/scss/standalone/patterns_code-snippet.scss +0 -6
- package/scss/standalone/patterns_contextual-menu.scss +0 -9
- package/scss/standalone/patterns_divider.scss +0 -7
- package/scss/standalone/patterns_form-password-toggle.scss +0 -19
- package/scss/standalone/patterns_form-tick-elements.scss +0 -13
- package/scss/standalone/patterns_forms.scss +0 -17
- package/scss/standalone/patterns_grid.scss +0 -4
- package/scss/standalone/patterns_heading-icon.scss +0 -4
- package/scss/standalone/patterns_headings.scss +0 -4
- package/scss/standalone/patterns_icons-additional.scss +0 -104
- package/scss/standalone/patterns_icons.scss +0 -7
- package/scss/standalone/patterns_image.scss +0 -4
- package/scss/standalone/patterns_inline-images.scss +0 -4
- package/scss/standalone/patterns_label.scss +0 -4
- package/scss/standalone/patterns_links.scss +0 -4
- package/scss/standalone/patterns_list-tree.scss +0 -4
- package/scss/standalone/patterns_lists.scss +0 -4
- package/scss/standalone/patterns_logo-section.scss +0 -4
- package/scss/standalone/patterns_matrix.scss +0 -4
- package/scss/standalone/patterns_media-object.scss +0 -4
- package/scss/standalone/patterns_modal.scss +0 -9
- package/scss/standalone/patterns_muted-heading.scss +0 -4
- package/scss/standalone/patterns_navigation.scss +0 -4
- package/scss/standalone/patterns_notifications.scss +0 -11
- package/scss/standalone/patterns_pagination.scss +0 -7
- package/scss/standalone/patterns_pull-quotes.scss +0 -4
- package/scss/standalone/patterns_search-and-filter.scss +0 -8
- package/scss/standalone/patterns_search-box.scss +0 -15
- package/scss/standalone/patterns_separator.scss +0 -4
- package/scss/standalone/patterns_side-navigation.scss +0 -11
- package/scss/standalone/patterns_skip-link.scss +0 -8
- package/scss/standalone/patterns_slider.scss +0 -4
- package/scss/standalone/patterns_strip.scss +0 -10
- package/scss/standalone/patterns_subnav.scss +0 -9
- package/scss/standalone/patterns_switch.scss +0 -4
- package/scss/standalone/patterns_tab-buttons.scss +0 -7
- package/scss/standalone/patterns_table-expanding.scss +0 -10
- package/scss/standalone/patterns_table-mobile-card.scss +0 -10
- package/scss/standalone/patterns_table-of-contents.scss +0 -7
- package/scss/standalone/patterns_table-overflow.scss +0 -10
- package/scss/standalone/patterns_table-sortable.scss +0 -10
- package/scss/standalone/patterns_tabs.scss +0 -4
- package/scss/standalone/patterns_tooltips.scss +0 -6
|
@@ -1,6 +1,126 @@
|
|
|
1
1
|
@import 'settings';
|
|
2
2
|
|
|
3
3
|
@mixin vf-p-form-tick-elements {
|
|
4
|
+
%vf-hidden-tick-input {
|
|
5
|
+
float: none;
|
|
6
|
+
height: $form-tick-box-size;
|
|
7
|
+
margin: 0;
|
|
8
|
+
opacity: 0;
|
|
9
|
+
position: absolute;
|
|
10
|
+
width: $form-tick-box-size;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
%vf-pseudo-tick-box {
|
|
14
|
+
padding-left: $sph--large + $form-tick-box-size;
|
|
15
|
+
position: relative;
|
|
16
|
+
|
|
17
|
+
&::before,
|
|
18
|
+
&::after {
|
|
19
|
+
$properties: #{background-color, border-color};
|
|
20
|
+
@include vf-animation($properties);
|
|
21
|
+
|
|
22
|
+
position: absolute;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// container
|
|
26
|
+
&::before {
|
|
27
|
+
content: '';
|
|
28
|
+
height: $form-tick-box-size;
|
|
29
|
+
left: 0;
|
|
30
|
+
outline-offset: 1px;
|
|
31
|
+
top: calc(#{$baseline-position} - #{$form-tick-box-size} + #{$form-tick-box-nudge});
|
|
32
|
+
width: $form-tick-box-size;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// tick/circle
|
|
36
|
+
&::after {
|
|
37
|
+
content: '';
|
|
38
|
+
opacity: 0;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.p-muted-heading & {
|
|
42
|
+
color: $colors--light-theme--text-muted;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
%vf-pseudo-tick-box-checked {
|
|
47
|
+
&::before {
|
|
48
|
+
background-color: $color-link;
|
|
49
|
+
border-color: $color-link;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
&::after {
|
|
53
|
+
opacity: 1;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
%vf-pseudo-tick-box-focused {
|
|
58
|
+
&::before {
|
|
59
|
+
outline: $bar-thickness solid $color-focus;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
%vf-pseudo-checkbox {
|
|
64
|
+
// container
|
|
65
|
+
&::before {
|
|
66
|
+
border-radius: $border-radius;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
//tick
|
|
70
|
+
&::after {
|
|
71
|
+
border-bottom: 2px solid;
|
|
72
|
+
border-left: 2px solid;
|
|
73
|
+
height: $form-tick-height;
|
|
74
|
+
left: $form-tick-height * 0.5;
|
|
75
|
+
top: calc(#{$baseline-position} - #{$form-tick-box-size} + #{$form-tick-offset-top} + #{$form-tick-box-nudge});
|
|
76
|
+
transform: rotate(-45deg);
|
|
77
|
+
width: 0.625rem;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
[aria-checked='mixed'] + &,
|
|
81
|
+
:indeterminate + & {
|
|
82
|
+
@extend %vf-pseudo-tick-box-checked;
|
|
83
|
+
|
|
84
|
+
&::after {
|
|
85
|
+
border-left: none;
|
|
86
|
+
transform: none;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
%vf-pseudo-radio {
|
|
92
|
+
&::before {
|
|
93
|
+
border-radius: 50%;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
&::after {
|
|
97
|
+
border-radius: 50%;
|
|
98
|
+
height: $form-radio-inner-circle-diameter;
|
|
99
|
+
left: #{($form-tick-box-size - $form-radio-inner-circle-diameter) * 0.5};
|
|
100
|
+
top: calc(#{$baseline-position} - #{$form-tick-box-size} + #{$form-radio-circle-offset} + #{$form-tick-box-nudge});
|
|
101
|
+
width: $form-radio-inner-circle-diameter;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.p-radio__label {
|
|
106
|
+
@extend %vf-pseudo-tick-box;
|
|
107
|
+
@extend %vf-pseudo-radio;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.p-checkbox__label {
|
|
111
|
+
@extend %vf-pseudo-tick-box;
|
|
112
|
+
@extend %vf-pseudo-checkbox;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
// nudge ticks in headings back to the baseline
|
|
116
|
+
.p-checkbox--heading .p-checkbox__label,
|
|
117
|
+
.p-radio--heading .p-radio__label {
|
|
118
|
+
&::before,
|
|
119
|
+
&::after {
|
|
120
|
+
margin-top: -$form-tick-box-nudge;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
4
124
|
// contain the absolutely positioned input
|
|
5
125
|
.p-checkbox,
|
|
6
126
|
.p-checkbox--heading,
|
|
@@ -15,13 +135,13 @@
|
|
|
15
135
|
&.is-required {
|
|
16
136
|
&::before {
|
|
17
137
|
display: block;
|
|
18
|
-
left: $sph
|
|
138
|
+
left: $sph--large + $form-tick-box-size;
|
|
19
139
|
position: absolute;
|
|
20
140
|
width: $asterisk-width;
|
|
21
141
|
}
|
|
22
142
|
.p-radio__label,
|
|
23
143
|
.p-checkbox__label {
|
|
24
|
-
padding-left: calc(#{$sph
|
|
144
|
+
padding-left: calc(#{$sph--large + $form-tick-box-size} + #{$asterisk-width});
|
|
25
145
|
}
|
|
26
146
|
}
|
|
27
147
|
}
|
|
@@ -29,35 +149,25 @@
|
|
|
29
149
|
// Fix label alignment when text drops to new line
|
|
30
150
|
.p-checkbox,
|
|
31
151
|
.p-radio {
|
|
32
|
-
|
|
33
|
-
|
|
152
|
+
display: block;
|
|
153
|
+
padding-left: $sph--large + $form-tick-box-size;
|
|
154
|
+
text-indent: -1 * ($sph--large + $form-tick-box-size);
|
|
34
155
|
|
|
35
156
|
&.is-required {
|
|
36
157
|
&::before {
|
|
37
|
-
left: $sph
|
|
158
|
+
left: $sph--large + $form-tick-box-size + $sph--large + $form-tick-box-size;
|
|
38
159
|
}
|
|
39
160
|
}
|
|
40
161
|
}
|
|
41
162
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
[type='radio'].p-radio__input {
|
|
163
|
+
.p-checkbox__input,
|
|
164
|
+
.p-radio__input {
|
|
45
165
|
@extend %vf-hidden-tick-input;
|
|
46
166
|
|
|
47
167
|
// adjust position of hidden inputs to place them approximately on the baseline
|
|
48
168
|
bottom: 0.2em;
|
|
49
169
|
}
|
|
50
170
|
|
|
51
|
-
.p-checkbox__label {
|
|
52
|
-
@extend %vf-pseudo-tick-box;
|
|
53
|
-
@extend %vf-pseudo-checkbox;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
.p-radio__label {
|
|
57
|
-
@extend %vf-pseudo-tick-box;
|
|
58
|
-
@extend %vf-pseudo-radio;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
171
|
// inline variants
|
|
62
172
|
.p-checkbox--heading,
|
|
63
173
|
.p-checkbox--inline,
|
|
@@ -66,15 +176,6 @@
|
|
|
66
176
|
display: inline;
|
|
67
177
|
}
|
|
68
178
|
|
|
69
|
-
// nudge ticks in headings back to the baseline
|
|
70
|
-
.p-checkbox--heading .p-checkbox__label,
|
|
71
|
-
.p-radio--heading .p-radio__label {
|
|
72
|
-
&::before,
|
|
73
|
-
&::after {
|
|
74
|
-
margin-top: -$form-tick-box-nudge;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
|
|
78
179
|
// fake tick checked state
|
|
79
180
|
.p-checkbox__input:checked + .p-checkbox__label,
|
|
80
181
|
.p-radio__input:checked + .p-radio__label {
|
|
@@ -137,3 +238,92 @@
|
|
|
137
238
|
}
|
|
138
239
|
}
|
|
139
240
|
}
|
|
241
|
+
|
|
242
|
+
// theme for common properties on radios and checkboxes
|
|
243
|
+
@mixin vf-tick-elements-theme(
|
|
244
|
+
// color of the tick element label text
|
|
245
|
+
$color-tick-text,
|
|
246
|
+
// color of the tick element background
|
|
247
|
+
$color-tick-background,
|
|
248
|
+
// color of the tick element border
|
|
249
|
+
$color-tick-border: $colors--light-theme--border-high-contrast
|
|
250
|
+
) {
|
|
251
|
+
color: $color-tick-text;
|
|
252
|
+
|
|
253
|
+
&::before {
|
|
254
|
+
background: $color-tick-background;
|
|
255
|
+
border: 1px solid $color-tick-border;
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
// theme for checkbox (including common properties)
|
|
260
|
+
@mixin vf-checkbox-theme(
|
|
261
|
+
// color of the tick element label text
|
|
262
|
+
$color-tick-text,
|
|
263
|
+
// color of the tick element background
|
|
264
|
+
$color-tick-background,
|
|
265
|
+
// color of the tick element border
|
|
266
|
+
$color-tick-border,
|
|
267
|
+
// color of the checkbox tick
|
|
268
|
+
$color-checkbox-tick
|
|
269
|
+
) {
|
|
270
|
+
@include vf-tick-elements-theme($color-tick-text, $color-tick-background, $color-tick-border);
|
|
271
|
+
|
|
272
|
+
&::after {
|
|
273
|
+
color: $color-checkbox-tick;
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
@mixin vf-checkbox-light-theme {
|
|
278
|
+
@include vf-checkbox-theme(
|
|
279
|
+
$color-tick-text: $colors--light-theme--text-default,
|
|
280
|
+
$color-tick-background: $colors--light-theme--background-default,
|
|
281
|
+
$color-tick-border: $colors--light-theme--border-high-contrast,
|
|
282
|
+
$color-checkbox-tick: $colors--light-theme--background-default
|
|
283
|
+
);
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
@mixin vf-checkbox-dark-theme {
|
|
287
|
+
@include vf-checkbox-theme(
|
|
288
|
+
$color-tick-text: $colors--dark-theme--text-default,
|
|
289
|
+
$color-tick-background: $colors--dark-theme--background-default,
|
|
290
|
+
$color-tick-border: $colors--dark-theme--border-high-contrast,
|
|
291
|
+
$color-checkbox-tick: $colors--dark-theme--text-default
|
|
292
|
+
);
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
// theme for radio (including common properties)
|
|
296
|
+
@mixin vf-radio-theme(
|
|
297
|
+
// color of the tick element label text
|
|
298
|
+
$color-tick-text,
|
|
299
|
+
// color of the tick element background
|
|
300
|
+
$color-tick-background,
|
|
301
|
+
// color of the tick element border
|
|
302
|
+
$color-tick-border,
|
|
303
|
+
// color of the radio dot
|
|
304
|
+
$color-radio-dot
|
|
305
|
+
) {
|
|
306
|
+
@include vf-tick-elements-theme($color-tick-text, $color-tick-background, $color-tick-border);
|
|
307
|
+
|
|
308
|
+
&::after {
|
|
309
|
+
background-color: $color-radio-dot;
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
@mixin vf-radio-light-theme {
|
|
314
|
+
@include vf-radio-theme(
|
|
315
|
+
$color-tick-text: $colors--light-theme--text-default,
|
|
316
|
+
$color-tick-background: $colors--light-theme--background-default,
|
|
317
|
+
$color-tick-border: $colors--light-theme--border-high-contrast,
|
|
318
|
+
$color-radio-dot: $colors--light-theme--background-default
|
|
319
|
+
);
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
@mixin vf-radio-dark-theme {
|
|
323
|
+
@include vf-radio-theme(
|
|
324
|
+
$color-tick-text: $colors--dark-theme--text-default,
|
|
325
|
+
$color-tick-background: $colors--dark-theme--background-default,
|
|
326
|
+
$color-tick-border: $colors--dark-theme--border-high-contrast,
|
|
327
|
+
$color-radio-dot: $colors--dark-theme--text-default
|
|
328
|
+
);
|
|
329
|
+
}
|
|
@@ -7,14 +7,14 @@
|
|
|
7
7
|
%vf-validation-wrapper {
|
|
8
8
|
background-position: left, center;
|
|
9
9
|
background-repeat: no-repeat;
|
|
10
|
-
padding-left: calc(#{$icon-size} + #{$sph
|
|
10
|
+
padding-left: calc(#{$icon-size} + #{$sph--small});
|
|
11
11
|
padding-top: 0;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
.p-form-validation__message {
|
|
15
15
|
@extend %small-text;
|
|
16
16
|
|
|
17
|
-
margin-top:
|
|
17
|
+
margin-top: -$sp-unit;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
.is-success {
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
// We should avoid targetting form element types
|
|
9
9
|
// stylelint-disable-next-line selector-max-type
|
|
10
10
|
form + [class*='p-button'] {
|
|
11
|
-
margin-top: $spv-
|
|
11
|
+
margin-top: $spv--x-large;
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
|
|
@@ -17,11 +17,11 @@
|
|
|
17
17
|
width: 100%;
|
|
18
18
|
|
|
19
19
|
.p-form__group {
|
|
20
|
-
@media (min-width: $
|
|
20
|
+
@media (min-width: $threshold-6-12-col) {
|
|
21
21
|
align-items: baseline;
|
|
22
22
|
|
|
23
23
|
+ .p-form__group {
|
|
24
|
-
margin-top: $spv
|
|
24
|
+
margin-top: $spv--small;
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
}
|
|
@@ -30,19 +30,19 @@
|
|
|
30
30
|
|
|
31
31
|
@mixin vf-p-forms-inline {
|
|
32
32
|
.p-form--inline {
|
|
33
|
-
@media (min-width: $
|
|
33
|
+
@media (min-width: $threshold-6-12-col) {
|
|
34
34
|
align-items: baseline;
|
|
35
35
|
display: inline-flex;
|
|
36
36
|
flex-direction: row;
|
|
37
37
|
flex-wrap: wrap;
|
|
38
38
|
|
|
39
39
|
> * {
|
|
40
|
-
margin-right: $sph-
|
|
40
|
+
margin-right: $sph--x-large;
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
.p-form__group {
|
|
45
|
-
@media (min-width: $
|
|
45
|
+
@media (min-width: $threshold-6-12-col) {
|
|
46
46
|
display: flex;
|
|
47
47
|
flex-shrink: 1;
|
|
48
48
|
width: auto;
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
|
|
61
61
|
.p-form__label {
|
|
62
62
|
flex-shrink: 0;
|
|
63
|
-
padding-right: $sph
|
|
63
|
+
padding-right: $sph--large;
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
.p-form__control {
|
package/scss/_patterns_grid.scss
CHANGED
|
@@ -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
|
|
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-
|
|
5
|
+
margin-bottom: $spv--x-large;
|
|
6
6
|
|
|
7
|
-
@media (min-width: $breakpoint-
|
|
7
|
+
@media (min-width: $breakpoint-heading-threshold) {
|
|
8
8
|
margin-bottom: 0;
|
|
9
9
|
}
|
|
10
10
|
}
|
|
@@ -21,11 +21,11 @@
|
|
|
21
21
|
flex-shrink: 0;
|
|
22
22
|
height: map-get($icon-sizes, heading-icon--small);
|
|
23
23
|
margin-bottom: 0;
|
|
24
|
-
margin-right: $sph
|
|
24
|
+
margin-right: $sph--large;
|
|
25
25
|
margin-top: map-get($nudges, nudge--h3-mobile);
|
|
26
26
|
width: map-get($icon-sizes, heading-icon--small);
|
|
27
27
|
|
|
28
|
-
@media (min-width: $breakpoint-
|
|
28
|
+
@media (min-width: $breakpoint-heading-threshold) {
|
|
29
29
|
height: map-get($icon-sizes, heading-icon);
|
|
30
30
|
margin-top: map-get($nudges, nudge--h3);
|
|
31
31
|
width: map-get($icon-sizes, heading-icon);
|
|
@@ -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-
|
|
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
|
|
12
|
+
padding: map-get($nudges, nudge--x-small) $sph--small;
|
|
13
13
|
text-align: center;
|
|
14
14
|
text-decoration: none;
|
|
15
15
|
white-space: nowrap;
|