bootstrap 4.0.0.beta → 4.0.0.beta2
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of bootstrap might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/Gemfile +1 -1
- data/README.md +10 -43
- data/Rakefile +1 -1
- data/assets/javascripts/bootstrap-sprockets.js +5 -5
- data/assets/javascripts/bootstrap.js +1561 -1542
- data/assets/javascripts/bootstrap.min.js +6 -5
- data/assets/javascripts/bootstrap/alert.js +31 -38
- data/assets/javascripts/bootstrap/button.js +23 -30
- data/assets/javascripts/bootstrap/carousel.js +72 -81
- data/assets/javascripts/bootstrap/collapse.js +72 -68
- data/assets/javascripts/bootstrap/dropdown.js +97 -85
- data/assets/javascripts/bootstrap/modal.js +104 -101
- data/assets/javascripts/bootstrap/popover.js +55 -68
- data/assets/javascripts/bootstrap/scrollspy.js +63 -68
- data/assets/javascripts/bootstrap/tab.js +54 -49
- data/assets/javascripts/bootstrap/tooltip.js +102 -116
- data/assets/javascripts/bootstrap/util.js +20 -30
- data/assets/stylesheets/_bootstrap-grid.scss +7 -9
- data/assets/stylesheets/_bootstrap-reboot.scss +7 -4
- data/assets/stylesheets/_bootstrap.scss +2 -1
- data/assets/stylesheets/bootstrap/_alert.scss +4 -3
- data/assets/stylesheets/bootstrap/_badge.scss +1 -2
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +4 -4
- data/assets/stylesheets/bootstrap/_button-group.scss +33 -24
- data/assets/stylesheets/bootstrap/_buttons.scss +24 -29
- data/assets/stylesheets/bootstrap/_card.scss +58 -22
- data/assets/stylesheets/bootstrap/_carousel.scss +6 -0
- data/assets/stylesheets/bootstrap/_close.scss +2 -2
- data/assets/stylesheets/bootstrap/_custom-forms.scss +11 -8
- data/assets/stylesheets/bootstrap/_dropdown.scss +16 -41
- data/assets/stylesheets/bootstrap/_forms.scss +12 -44
- data/assets/stylesheets/bootstrap/_functions.scss +6 -10
- data/assets/stylesheets/bootstrap/_grid.scss +0 -1
- data/assets/stylesheets/bootstrap/_input-group.scss +17 -7
- data/assets/stylesheets/bootstrap/_mixins.scss +1 -0
- data/assets/stylesheets/bootstrap/_modal.scss +12 -1
- data/assets/stylesheets/bootstrap/_nav.scss +5 -5
- data/assets/stylesheets/bootstrap/_navbar.scss +27 -5
- data/assets/stylesheets/bootstrap/_pagination.scss +2 -4
- data/assets/stylesheets/bootstrap/_popover.scss +16 -17
- data/assets/stylesheets/bootstrap/_print.scss +2 -3
- data/assets/stylesheets/bootstrap/_progress.scss +4 -6
- data/assets/stylesheets/bootstrap/_reboot.scss +39 -16
- data/assets/stylesheets/bootstrap/_root.scss +19 -0
- data/assets/stylesheets/bootstrap/_tables.scss +40 -28
- data/assets/stylesheets/bootstrap/_tooltip.scss +6 -6
- data/assets/stylesheets/bootstrap/_transitions.scss +2 -0
- data/assets/stylesheets/bootstrap/_type.scss +2 -0
- data/assets/stylesheets/bootstrap/_variables.scss +467 -476
- data/assets/stylesheets/bootstrap/mixins/_alert.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +8 -0
- data/assets/stylesheets/bootstrap/mixins/_badge.scss +2 -2
- data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +18 -4
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +27 -16
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +35 -0
- data/assets/stylesheets/bootstrap/mixins/_float.scss +2 -0
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +31 -4
- data/assets/stylesheets/bootstrap/mixins/_gradients.scss +8 -0
- data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +14 -1
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +10 -5
- data/assets/stylesheets/bootstrap/mixins/_hover.scss +13 -12
- data/assets/stylesheets/bootstrap/mixins/_image.scss +3 -3
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +0 -2
- data/assets/stylesheets/bootstrap/mixins/_navbar-align.scss +2 -1
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +1 -2
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +2 -2
- data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +2 -0
- data/assets/stylesheets/bootstrap/mixins/_visibility.scss +2 -0
- data/assets/stylesheets/bootstrap/utilities/_align.scss +2 -0
- data/assets/stylesheets/bootstrap/utilities/_background.scss +16 -3
- data/assets/stylesheets/bootstrap/utilities/_borders.scss +5 -3
- data/assets/stylesheets/bootstrap/utilities/_display.scss +3 -0
- data/assets/stylesheets/bootstrap/utilities/_flex.scss +2 -0
- data/assets/stylesheets/bootstrap/utilities/_position.scss +12 -1
- data/assets/stylesheets/bootstrap/utilities/_sizing.scss +2 -0
- data/assets/stylesheets/bootstrap/utilities/_spacing.scss +24 -14
- data/assets/stylesheets/bootstrap/utilities/_text.scss +7 -4
- data/bootstrap.gemspec +2 -3
- data/lib/bootstrap.rb +0 -16
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +31 -4
- data/tasks/updater/scss.rb +0 -12
- data/test/dummy_rails/config/application.rb +0 -1
- metadata +16 -27
- data/templates/project/_bootstrap-variables.scss +0 -834
- data/templates/project/manifest.rb +0 -18
- data/templates/project/styles.scss +0 -10
- data/test/compass_test.rb +0 -14
@@ -12,6 +12,23 @@
|
|
12
12
|
background-clip: border-box;
|
13
13
|
border: $card-border-width solid $card-border-color;
|
14
14
|
@include border-radius($card-border-radius);
|
15
|
+
|
16
|
+
> hr {
|
17
|
+
margin-right: 0;
|
18
|
+
margin-left: 0;
|
19
|
+
}
|
20
|
+
|
21
|
+
> .list-group:first-child {
|
22
|
+
.list-group-item:first-child {
|
23
|
+
@include border-top-radius($card-border-radius);
|
24
|
+
}
|
25
|
+
}
|
26
|
+
|
27
|
+
> .list-group:last-child {
|
28
|
+
.list-group-item:last-child {
|
29
|
+
@include border-bottom-radius($card-border-radius);
|
30
|
+
}
|
31
|
+
}
|
15
32
|
}
|
16
33
|
|
17
34
|
.card-body {
|
@@ -44,21 +61,6 @@
|
|
44
61
|
}
|
45
62
|
}
|
46
63
|
|
47
|
-
.card {
|
48
|
-
> .list-group:first-child {
|
49
|
-
.list-group-item:first-child {
|
50
|
-
@include border-top-radius($card-border-radius);
|
51
|
-
}
|
52
|
-
}
|
53
|
-
|
54
|
-
> .list-group:last-child {
|
55
|
-
.list-group-item:last-child {
|
56
|
-
@include border-bottom-radius($card-border-radius);
|
57
|
-
}
|
58
|
-
}
|
59
|
-
}
|
60
|
-
|
61
|
-
|
62
64
|
//
|
63
65
|
// Optional textual caps
|
64
66
|
//
|
@@ -72,6 +74,12 @@
|
|
72
74
|
&:first-child {
|
73
75
|
@include border-radius($card-inner-border-radius $card-inner-border-radius 0 0);
|
74
76
|
}
|
77
|
+
|
78
|
+
+ .list-group {
|
79
|
+
.list-group-item:first-child {
|
80
|
+
border-top: 0;
|
81
|
+
}
|
82
|
+
}
|
75
83
|
}
|
76
84
|
|
77
85
|
.card-footer {
|
@@ -130,18 +138,26 @@
|
|
130
138
|
|
131
139
|
// Card deck
|
132
140
|
|
133
|
-
|
134
|
-
|
135
|
-
|
141
|
+
.card-deck {
|
142
|
+
display: flex;
|
143
|
+
flex-direction: column;
|
144
|
+
|
145
|
+
.card {
|
146
|
+
margin-bottom: $card-deck-margin;
|
147
|
+
}
|
148
|
+
|
149
|
+
@include media-breakpoint-up(sm) {
|
136
150
|
flex-flow: row wrap;
|
137
151
|
margin-right: -$card-deck-margin;
|
138
152
|
margin-left: -$card-deck-margin;
|
139
153
|
|
140
154
|
.card {
|
141
155
|
display: flex;
|
156
|
+
// Flexbugs #4: https://github.com/philipwalton/flexbugs#4-flex-shorthand-declarations-with-unitless-flex-basis-values-are-ignored
|
142
157
|
flex: 1 0 0%;
|
143
158
|
flex-direction: column;
|
144
159
|
margin-right: $card-deck-margin;
|
160
|
+
margin-bottom: 0; // Override the default
|
145
161
|
margin-left: $card-deck-margin;
|
146
162
|
}
|
147
163
|
}
|
@@ -152,13 +168,21 @@
|
|
152
168
|
// Card groups
|
153
169
|
//
|
154
170
|
|
155
|
-
|
156
|
-
|
157
|
-
|
171
|
+
.card-group {
|
172
|
+
display: flex;
|
173
|
+
flex-direction: column;
|
174
|
+
|
175
|
+
.card {
|
176
|
+
margin-bottom: $card-group-margin;
|
177
|
+
}
|
178
|
+
|
179
|
+
@include media-breakpoint-up(sm) {
|
158
180
|
flex-flow: row wrap;
|
159
181
|
|
160
182
|
.card {
|
183
|
+
// Flexbugs #4: https://github.com/philipwalton/flexbugs#4-flex-shorthand-declarations-with-unitless-flex-basis-values-are-ignored
|
161
184
|
flex: 1 0 0%;
|
185
|
+
margin-bottom: 0;
|
162
186
|
|
163
187
|
+ .card {
|
164
188
|
margin-left: 0;
|
@@ -177,6 +201,7 @@
|
|
177
201
|
border-bottom-right-radius: 0;
|
178
202
|
}
|
179
203
|
}
|
204
|
+
|
180
205
|
&:last-child {
|
181
206
|
@include border-left-radius(0);
|
182
207
|
|
@@ -188,7 +213,18 @@
|
|
188
213
|
}
|
189
214
|
}
|
190
215
|
|
191
|
-
&:
|
216
|
+
&:only-child {
|
217
|
+
@include border-radius($card-border-radius);
|
218
|
+
|
219
|
+
.card-img-top {
|
220
|
+
@include border-top-radius($card-border-radius);
|
221
|
+
}
|
222
|
+
.card-img-bottom {
|
223
|
+
@include border-bottom-radius($card-border-radius);
|
224
|
+
}
|
225
|
+
}
|
226
|
+
|
227
|
+
&:not(:first-child):not(:last-child):not(:only-child) {
|
192
228
|
border-radius: 0;
|
193
229
|
|
194
230
|
.card-img-top,
|
@@ -90,9 +90,15 @@
|
|
90
90
|
}
|
91
91
|
.carousel-control-prev {
|
92
92
|
left: 0;
|
93
|
+
@if $enable-gradients {
|
94
|
+
background: linear-gradient(90deg, rgba(0,0,0,.25), rgba(0,0,0,.001));
|
95
|
+
}
|
93
96
|
}
|
94
97
|
.carousel-control-next {
|
95
98
|
right: 0;
|
99
|
+
@if $enable-gradients {
|
100
|
+
background: linear-gradient(270deg, rgba(0,0,0,.25), rgba(0,0,0,.001));
|
101
|
+
}
|
96
102
|
}
|
97
103
|
|
98
104
|
// Icons for within
|
@@ -19,11 +19,11 @@
|
|
19
19
|
// If you want the anchor version, it requires `href="#"`.
|
20
20
|
// See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile
|
21
21
|
|
22
|
-
//
|
22
|
+
// stylelint-disable property-no-vendor-prefix, selector-no-qualifying-type
|
23
23
|
button.close {
|
24
24
|
padding: 0;
|
25
25
|
background: transparent;
|
26
26
|
border: 0;
|
27
27
|
-webkit-appearance: none;
|
28
28
|
}
|
29
|
-
//
|
29
|
+
// stylelint-enable
|
@@ -1,5 +1,3 @@
|
|
1
|
-
// scss-lint:disable PropertyCount, VendorPrefix
|
2
|
-
|
3
1
|
// Embedded icons from Open Iconic.
|
4
2
|
// Released under MIT and copyright 2014 Waybury.
|
5
3
|
// https://useiconic.com/open
|
@@ -24,7 +22,7 @@
|
|
24
22
|
|
25
23
|
&:checked ~ .custom-control-indicator {
|
26
24
|
color: $custom-control-indicator-checked-color;
|
27
|
-
|
25
|
+
@include gradient-bg($custom-control-indicator-checked-bg);
|
28
26
|
@include box-shadow($custom-control-indicator-checked-box-shadow);
|
29
27
|
}
|
30
28
|
|
@@ -35,7 +33,7 @@
|
|
35
33
|
|
36
34
|
&:active ~ .custom-control-indicator {
|
37
35
|
color: $custom-control-indicator-active-color;
|
38
|
-
|
36
|
+
@include gradient-bg($custom-control-indicator-active-bg);
|
39
37
|
@include box-shadow($custom-control-indicator-active-box-shadow);
|
40
38
|
}
|
41
39
|
|
@@ -164,6 +162,11 @@
|
|
164
162
|
}
|
165
163
|
}
|
166
164
|
|
165
|
+
&[multiple] {
|
166
|
+
height: auto;
|
167
|
+
background-image: none;
|
168
|
+
}
|
169
|
+
|
167
170
|
&:disabled {
|
168
171
|
color: $custom-select-disabled-color;
|
169
172
|
background-color: $custom-select-disabled-bg;
|
@@ -203,7 +206,7 @@
|
|
203
206
|
opacity: 0;
|
204
207
|
|
205
208
|
&:focus ~ .custom-file-control {
|
206
|
-
|
209
|
+
box-shadow: $custom-file-focus-box-shadow;
|
207
210
|
}
|
208
211
|
}
|
209
212
|
|
@@ -214,7 +217,7 @@
|
|
214
217
|
left: 0;
|
215
218
|
z-index: 5;
|
216
219
|
height: $custom-file-height;
|
217
|
-
padding: $custom-file-padding-
|
220
|
+
padding: $custom-file-padding-y $custom-file-padding-x;
|
218
221
|
line-height: $custom-file-line-height;
|
219
222
|
color: $custom-file-color;
|
220
223
|
pointer-events: none;
|
@@ -238,10 +241,10 @@
|
|
238
241
|
z-index: 6;
|
239
242
|
display: block;
|
240
243
|
height: $custom-file-height;
|
241
|
-
padding: $custom-file-padding-
|
244
|
+
padding: $custom-file-padding-y $custom-file-padding-x;
|
242
245
|
line-height: $custom-file-line-height;
|
243
246
|
color: $custom-file-button-color;
|
244
|
-
|
247
|
+
@include gradient-bg($custom-file-button-bg);
|
245
248
|
border: $custom-file-border-width solid $custom-file-border-color;
|
246
249
|
@include border-radius(0 $custom-file-border-radius $custom-file-border-radius 0);
|
247
250
|
}
|
@@ -6,37 +6,7 @@
|
|
6
6
|
|
7
7
|
.dropdown-toggle {
|
8
8
|
// Generate the caret automatically
|
9
|
-
|
10
|
-
display: inline-block;
|
11
|
-
width: 0;
|
12
|
-
height: 0;
|
13
|
-
margin-left: $caret-width * .85;
|
14
|
-
vertical-align: $caret-width * .85;
|
15
|
-
content: "";
|
16
|
-
border-top: $caret-width solid;
|
17
|
-
border-right: $caret-width solid transparent;
|
18
|
-
border-left: $caret-width solid transparent;
|
19
|
-
}
|
20
|
-
|
21
|
-
&:empty::after {
|
22
|
-
margin-left: 0;
|
23
|
-
}
|
24
|
-
}
|
25
|
-
|
26
|
-
// Allow for dropdowns to go bottom up (aka, dropup-menu)
|
27
|
-
// Just add .dropup after the standard .dropdown class and you're set.
|
28
|
-
.dropup {
|
29
|
-
.dropdown-menu {
|
30
|
-
margin-top: 0;
|
31
|
-
margin-bottom: $dropdown-spacer;
|
32
|
-
}
|
33
|
-
|
34
|
-
.dropdown-toggle {
|
35
|
-
&::after {
|
36
|
-
border-top: 0;
|
37
|
-
border-bottom: $caret-width solid;
|
38
|
-
}
|
39
|
-
}
|
9
|
+
@include caret;
|
40
10
|
}
|
41
11
|
|
42
12
|
// The dropdown menu
|
@@ -61,6 +31,19 @@
|
|
61
31
|
@include box-shadow($dropdown-box-shadow);
|
62
32
|
}
|
63
33
|
|
34
|
+
// Allow for dropdowns to go bottom up (aka, dropup-menu)
|
35
|
+
// Just add .dropup after the standard .dropdown class and you're set.
|
36
|
+
.dropup {
|
37
|
+
.dropdown-menu {
|
38
|
+
margin-top: 0;
|
39
|
+
margin-bottom: $dropdown-spacer;
|
40
|
+
}
|
41
|
+
|
42
|
+
.dropdown-toggle {
|
43
|
+
@include caret(up);
|
44
|
+
}
|
45
|
+
}
|
46
|
+
|
64
47
|
// Dividers (basically an `<hr>`) within the dropdown
|
65
48
|
.dropdown-divider {
|
66
49
|
@include nav-divider($dropdown-divider-bg);
|
@@ -84,14 +67,14 @@
|
|
84
67
|
@include hover-focus {
|
85
68
|
color: $dropdown-link-hover-color;
|
86
69
|
text-decoration: none;
|
87
|
-
|
70
|
+
@include gradient-bg($dropdown-link-hover-bg);
|
88
71
|
}
|
89
72
|
|
90
73
|
&.active,
|
91
74
|
&:active {
|
92
75
|
color: $dropdown-link-active-color;
|
93
76
|
text-decoration: none;
|
94
|
-
|
77
|
+
@include gradient-bg($dropdown-link-active-bg);
|
95
78
|
}
|
96
79
|
|
97
80
|
&.disabled,
|
@@ -105,14 +88,6 @@
|
|
105
88
|
}
|
106
89
|
}
|
107
90
|
|
108
|
-
// Open state for the dropdown
|
109
|
-
.show {
|
110
|
-
// Remove the outline when :focus is triggered
|
111
|
-
> a {
|
112
|
-
outline: 0;
|
113
|
-
}
|
114
|
-
}
|
115
|
-
|
116
91
|
.dropdown-menu.show {
|
117
92
|
display: block;
|
118
93
|
}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
//
|
1
|
+
// stylelint-disable selector-no-qualifying-type
|
2
2
|
|
3
3
|
//
|
4
4
|
// Textual form controls
|
@@ -7,8 +7,6 @@
|
|
7
7
|
.form-control {
|
8
8
|
display: block;
|
9
9
|
width: 100%;
|
10
|
-
// // Make inputs at least the height of their button counterpart (base line-height + padding + border)
|
11
|
-
// height: $input-height;
|
12
10
|
padding: $input-btn-padding-y $input-btn-padding-x;
|
13
11
|
font-size: $font-size-base;
|
14
12
|
line-height: $input-btn-line-height;
|
@@ -90,21 +88,24 @@ select.form-control {
|
|
90
88
|
// For use with horizontal and inline forms, when you need the label text to
|
91
89
|
// align with the form controls.
|
92
90
|
.col-form-label {
|
93
|
-
padding-top: calc(#{$input-btn-padding-y}
|
94
|
-
padding-bottom: calc(#{$input-btn-padding-y}
|
91
|
+
padding-top: calc(#{$input-btn-padding-y} + #{$input-btn-border-width});
|
92
|
+
padding-bottom: calc(#{$input-btn-padding-y} + #{$input-btn-border-width});
|
95
93
|
margin-bottom: 0; // Override the `<label>` default
|
94
|
+
line-height: $input-btn-line-height;
|
96
95
|
}
|
97
96
|
|
98
97
|
.col-form-label-lg {
|
99
|
-
padding-top: calc(#{$input-btn-padding-y-lg}
|
100
|
-
padding-bottom: calc(#{$input-btn-padding-y-lg}
|
98
|
+
padding-top: calc(#{$input-btn-padding-y-lg} + #{$input-btn-border-width});
|
99
|
+
padding-bottom: calc(#{$input-btn-padding-y-lg} + #{$input-btn-border-width});
|
101
100
|
font-size: $font-size-lg;
|
101
|
+
line-height: $input-btn-line-height-lg;
|
102
102
|
}
|
103
103
|
|
104
104
|
.col-form-label-sm {
|
105
|
-
padding-top: calc(#{$input-btn-padding-y-sm}
|
106
|
-
padding-bottom: calc(#{$input-btn-padding-y-sm}
|
105
|
+
padding-top: calc(#{$input-btn-padding-y-sm} + #{$input-btn-border-width});
|
106
|
+
padding-bottom: calc(#{$input-btn-padding-y-sm} + #{$input-btn-border-width});
|
107
107
|
font-size: $font-size-sm;
|
108
|
+
line-height: $input-btn-line-height-sm;
|
108
109
|
}
|
109
110
|
|
110
111
|
|
@@ -132,6 +133,7 @@ select.form-control {
|
|
132
133
|
padding-bottom: $input-btn-padding-y;
|
133
134
|
margin-bottom: 0; // match inputs if this class comes on inputs with default margins
|
134
135
|
line-height: $input-btn-line-height;
|
136
|
+
background-color: transparent;
|
135
137
|
border: solid transparent;
|
136
138
|
border-width: $input-btn-border-width 0;
|
137
139
|
|
@@ -236,23 +238,16 @@ select.form-control-lg {
|
|
236
238
|
position: absolute;
|
237
239
|
margin-top: $form-check-input-margin-y;
|
238
240
|
margin-left: -$form-check-input-gutter;
|
239
|
-
|
240
|
-
&:only-child {
|
241
|
-
position: static;
|
242
|
-
}
|
243
241
|
}
|
244
242
|
|
245
243
|
// Radios and checkboxes on same line
|
246
244
|
.form-check-inline {
|
247
245
|
display: inline-block;
|
246
|
+
margin-right: $form-check-inline-margin-x;
|
248
247
|
|
249
248
|
.form-check-label {
|
250
249
|
vertical-align: middle;
|
251
250
|
}
|
252
|
-
|
253
|
-
+ .form-check-inline {
|
254
|
-
margin-left: $form-check-inline-margin-x;
|
255
|
-
}
|
256
251
|
}
|
257
252
|
|
258
253
|
|
@@ -263,28 +258,6 @@ select.form-control-lg {
|
|
263
258
|
// pseudo-classes but also includes `.is-invalid` and `.is-valid` classes for
|
264
259
|
// server side validation.
|
265
260
|
|
266
|
-
.invalid-feedback {
|
267
|
-
display: none;
|
268
|
-
margin-top: .25rem;
|
269
|
-
font-size: .875rem;
|
270
|
-
color: $form-feedback-invalid-color;
|
271
|
-
}
|
272
|
-
|
273
|
-
.invalid-tooltip {
|
274
|
-
position: absolute;
|
275
|
-
top: 100%;
|
276
|
-
z-index: 5;
|
277
|
-
display: none;
|
278
|
-
width: 250px;
|
279
|
-
padding: .5rem;
|
280
|
-
margin-top: .1rem;
|
281
|
-
font-size: .875rem;
|
282
|
-
line-height: 1;
|
283
|
-
color: #fff;
|
284
|
-
background-color: rgba($form-feedback-invalid-color,.8);
|
285
|
-
border-radius: .2rem;
|
286
|
-
}
|
287
|
-
|
288
261
|
@include form-validation-state("valid", $form-feedback-valid-color);
|
289
262
|
@include form-validation-state("invalid", $form-feedback-invalid-color);
|
290
263
|
|
@@ -343,11 +316,6 @@ select.form-control-lg {
|
|
343
316
|
width: auto;
|
344
317
|
}
|
345
318
|
|
346
|
-
.form-control-label {
|
347
|
-
margin-bottom: 0;
|
348
|
-
vertical-align: middle;
|
349
|
-
}
|
350
|
-
|
351
319
|
// Remove default margin on radios/checkboxes that were used for stacking, and
|
352
320
|
// then undo the floating of radios and checkboxes to match.
|
353
321
|
.form-check {
|
@@ -49,7 +49,7 @@
|
|
49
49
|
}
|
50
50
|
|
51
51
|
// Color contrast
|
52
|
-
@
|
52
|
+
@function color-yiq($color) {
|
53
53
|
$r: red($color);
|
54
54
|
$g: green($color);
|
55
55
|
$b: blue($color);
|
@@ -57,9 +57,9 @@
|
|
57
57
|
$yiq: (($r * 299) + ($g * 587) + ($b * 114)) / 1000;
|
58
58
|
|
59
59
|
@if ($yiq >= 150) {
|
60
|
-
|
60
|
+
@return #111;
|
61
61
|
} @else {
|
62
|
-
|
62
|
+
@return #fff;
|
63
63
|
}
|
64
64
|
}
|
65
65
|
|
@@ -72,7 +72,7 @@
|
|
72
72
|
@return map-get($theme-colors, $key);
|
73
73
|
}
|
74
74
|
|
75
|
-
@function
|
75
|
+
@function gray($key: "100") {
|
76
76
|
@return map-get($grays, $key);
|
77
77
|
}
|
78
78
|
|
@@ -80,11 +80,7 @@
|
|
80
80
|
@function theme-color-level($color-name: "primary", $level: 0) {
|
81
81
|
$color: theme-color($color-name);
|
82
82
|
$color-base: if($level > 0, #000, #fff);
|
83
|
+
$level: abs($level);
|
83
84
|
|
84
|
-
@
|
85
|
-
// Lighter values need a quick double negative for the Sass math to work
|
86
|
-
@return mix($color-base, $color, $level * -1 * $theme-color-interval);
|
87
|
-
} @else {
|
88
|
-
@return mix($color-base, $color, $level * $theme-color-interval);
|
89
|
-
}
|
85
|
+
@return mix($color-base, $color, $level * $theme-color-interval);
|
90
86
|
}
|