bootstrap 4.0.0.beta2.1 → 4.0.0.beta3
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.
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/README.md +1 -1
- data/assets/javascripts/bootstrap-sprockets.js +4 -4
- data/assets/javascripts/bootstrap.js +576 -534
- data/assets/javascripts/bootstrap.min.js +2 -2
- data/assets/javascripts/bootstrap/alert.js +3 -3
- data/assets/javascripts/bootstrap/button.js +3 -3
- data/assets/javascripts/bootstrap/carousel.js +10 -7
- data/assets/javascripts/bootstrap/collapse.js +7 -5
- data/assets/javascripts/bootstrap/dropdown.js +64 -37
- data/assets/javascripts/bootstrap/modal.js +8 -6
- data/assets/javascripts/bootstrap/popover.js +19 -7
- data/assets/javascripts/bootstrap/scrollspy.js +6 -4
- data/assets/javascripts/bootstrap/tab.js +8 -16
- data/assets/javascripts/bootstrap/tooltip.js +23 -17
- data/assets/javascripts/bootstrap/util.js +18 -21
- data/assets/stylesheets/_bootstrap-grid.scss +1 -1
- data/assets/stylesheets/_bootstrap-reboot.scss +1 -1
- data/assets/stylesheets/_bootstrap.scss +2 -2
- data/assets/stylesheets/bootstrap/_alert.scss +2 -0
- data/assets/stylesheets/bootstrap/_button-group.scss +31 -72
- data/assets/stylesheets/bootstrap/_buttons.scss +22 -11
- data/assets/stylesheets/bootstrap/_card.scss +23 -12
- data/assets/stylesheets/bootstrap/_carousel.scss +2 -2
- data/assets/stylesheets/bootstrap/_close.scss +6 -1
- data/assets/stylesheets/bootstrap/_code.scss +4 -12
- data/assets/stylesheets/bootstrap/_custom-forms.scss +110 -85
- data/assets/stylesheets/bootstrap/_dropdown.scss +30 -2
- data/assets/stylesheets/bootstrap/_forms.scss +46 -71
- data/assets/stylesheets/bootstrap/_functions.scss +4 -4
- data/assets/stylesheets/bootstrap/_images.scss +0 -1
- data/assets/stylesheets/bootstrap/_input-group.scss +96 -126
- data/assets/stylesheets/bootstrap/_list-group.scss +2 -1
- data/assets/stylesheets/bootstrap/_modal.scss +24 -9
- data/assets/stylesheets/bootstrap/_nav.scss +2 -2
- data/assets/stylesheets/bootstrap/_navbar.scss +6 -1
- data/assets/stylesheets/bootstrap/_pagination.scss +27 -19
- data/assets/stylesheets/bootstrap/_popover.scss +104 -115
- data/assets/stylesheets/bootstrap/_progress.scss +4 -1
- data/assets/stylesheets/bootstrap/_reboot.scss +3 -2
- data/assets/stylesheets/bootstrap/_tables.scss +1 -1
- data/assets/stylesheets/bootstrap/_tooltip.scss +63 -55
- data/assets/stylesheets/bootstrap/_type.scss +2 -2
- data/assets/stylesheets/bootstrap/_variables.scss +135 -91
- data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +2 -1
- data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +4 -2
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +25 -18
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +30 -0
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +42 -17
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_text-hide.scss +1 -0
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +1 -1
- metadata +3 -3
@@ -29,13 +29,15 @@
|
|
29
29
|
}
|
30
30
|
|
31
31
|
// Maximum breakpoint width. Null for the largest (last) breakpoint.
|
32
|
-
// The maximum value is calculated as the minimum of the next one less 0.
|
32
|
+
// The maximum value is calculated as the minimum of the next one less 0.01px
|
33
|
+
// to work around the limitations of `min-` and `max-` prefixes and viewports with fractional widths.
|
34
|
+
// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max
|
33
35
|
//
|
34
36
|
// >> breakpoint-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
|
35
37
|
// 767px
|
36
38
|
@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {
|
37
39
|
$next: breakpoint-next($name, $breakpoints);
|
38
|
-
@return if($next, breakpoint-min($next, $breakpoints) -
|
40
|
+
@return if($next, breakpoint-min($next, $breakpoints) - .01px, null);
|
39
41
|
}
|
40
42
|
|
41
43
|
// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash infront.
|
@@ -19,9 +19,9 @@
|
|
19
19
|
&.focus {
|
20
20
|
// Avoid using mixin so we can pass custom focus shadow properly
|
21
21
|
@if $enable-shadows {
|
22
|
-
box-shadow: $btn-box-shadow, 0 0 0 $
|
22
|
+
box-shadow: $btn-box-shadow, 0 0 0 $btn-focus-width rgba($border, .5);
|
23
23
|
} @else {
|
24
|
-
box-shadow: 0 0 0 $
|
24
|
+
box-shadow: 0 0 0 $btn-focus-width rgba($border, .5);
|
25
25
|
}
|
26
26
|
}
|
27
27
|
|
@@ -42,30 +42,32 @@
|
|
42
42
|
}
|
43
43
|
border-color: $active-border;
|
44
44
|
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
45
|
+
&:focus {
|
46
|
+
// Avoid using mixin so we can pass custom focus shadow properly
|
47
|
+
@if $enable-shadows {
|
48
|
+
box-shadow: $btn-active-box-shadow, 0 0 0 $btn-focus-width rgba($border, .5);
|
49
|
+
} @else {
|
50
|
+
box-shadow: 0 0 0 $btn-focus-width rgba($border, .5);
|
51
|
+
}
|
50
52
|
}
|
51
53
|
}
|
52
54
|
}
|
53
55
|
|
54
|
-
@mixin button-outline-variant($color, $color-hover: #fff) {
|
56
|
+
@mixin button-outline-variant($color, $color-hover: #fff, $active-background: $color, $active-border: $color) {
|
55
57
|
color: $color;
|
56
58
|
background-color: transparent;
|
57
59
|
background-image: none;
|
58
60
|
border-color: $color;
|
59
61
|
|
60
|
-
|
61
|
-
color: $color
|
62
|
-
background-color: $
|
63
|
-
border-color: $
|
62
|
+
&:hover {
|
63
|
+
color: color-yiq($color);
|
64
|
+
background-color: $active-background;
|
65
|
+
border-color: $active-border;
|
64
66
|
}
|
65
67
|
|
66
68
|
&:focus,
|
67
69
|
&.focus {
|
68
|
-
box-shadow: 0 0 0 $
|
70
|
+
box-shadow: 0 0 0 $btn-focus-width rgba($color, .5);
|
69
71
|
}
|
70
72
|
|
71
73
|
&.disabled,
|
@@ -77,11 +79,11 @@
|
|
77
79
|
&:not([disabled]):not(.disabled):active,
|
78
80
|
&:not([disabled]):not(.disabled).active,
|
79
81
|
.show > &.dropdown-toggle {
|
80
|
-
color: $color-hover;
|
81
|
-
background-color: $
|
82
|
-
border-color: $
|
82
|
+
color: color-yiq($color-hover);
|
83
|
+
background-color: $active-background;
|
84
|
+
border-color: $active-border;
|
83
85
|
// Avoid using mixin so we can pass custom focus shadow properly
|
84
|
-
box-shadow: 0 0 0 $
|
86
|
+
box-shadow: 0 0 0 $btn-focus-width rgba($color, .5);
|
85
87
|
}
|
86
88
|
}
|
87
89
|
|
@@ -90,5 +92,10 @@
|
|
90
92
|
padding: $padding-y $padding-x;
|
91
93
|
font-size: $font-size;
|
92
94
|
line-height: $line-height;
|
93
|
-
|
95
|
+
// Manually declare to provide an override to the browser default
|
96
|
+
@if $enable-rounded {
|
97
|
+
border-radius: $border-radius;
|
98
|
+
} @else {
|
99
|
+
border-radius: 0;
|
100
|
+
}
|
94
101
|
}
|
@@ -12,6 +12,18 @@
|
|
12
12
|
border-left: $caret-width solid transparent;
|
13
13
|
}
|
14
14
|
|
15
|
+
@mixin caret-right {
|
16
|
+
border-top: $caret-width solid transparent;
|
17
|
+
border-bottom: $caret-width solid transparent;
|
18
|
+
border-left: $caret-width solid;
|
19
|
+
}
|
20
|
+
|
21
|
+
@mixin caret-left {
|
22
|
+
border-top: $caret-width solid transparent;
|
23
|
+
border-right: $caret-width solid;
|
24
|
+
border-bottom: $caret-width solid transparent;
|
25
|
+
}
|
26
|
+
|
15
27
|
@mixin caret($direction: down) {
|
16
28
|
@if $enable-caret {
|
17
29
|
&::after {
|
@@ -25,6 +37,24 @@
|
|
25
37
|
@include caret-down;
|
26
38
|
} @else if $direction == up {
|
27
39
|
@include caret-up;
|
40
|
+
} @else if $direction == right {
|
41
|
+
@include caret-right;
|
42
|
+
}
|
43
|
+
}
|
44
|
+
|
45
|
+
@if $direction == left {
|
46
|
+
&::after {
|
47
|
+
display: none;
|
48
|
+
}
|
49
|
+
|
50
|
+
&::before {
|
51
|
+
display: inline-block;
|
52
|
+
width: 0;
|
53
|
+
height: 0;
|
54
|
+
margin-right: $caret-width * .85;
|
55
|
+
vertical-align: $caret-width * .85;
|
56
|
+
content: "";
|
57
|
+
@include caret-left;
|
28
58
|
}
|
29
59
|
}
|
30
60
|
|
@@ -15,12 +15,12 @@
|
|
15
15
|
color: $input-focus-color;
|
16
16
|
background-color: $input-focus-bg;
|
17
17
|
border-color: $input-focus-border-color;
|
18
|
-
outline:
|
18
|
+
outline: 0;
|
19
19
|
// Avoid using mixin so we can pass custom focus shadow properly
|
20
20
|
@if $enable-shadows {
|
21
|
-
box-shadow: $input-box-shadow, $input-
|
21
|
+
box-shadow: $input-box-shadow, $input-focus-box-shadow;
|
22
22
|
} @else {
|
23
|
-
box-shadow: $input-
|
23
|
+
box-shadow: $input-focus-box-shadow;
|
24
24
|
}
|
25
25
|
}
|
26
26
|
}
|
@@ -30,8 +30,9 @@
|
|
30
30
|
|
31
31
|
.#{$state}-feedback {
|
32
32
|
display: none;
|
33
|
-
|
34
|
-
|
33
|
+
width: 100%;
|
34
|
+
margin-top: $form-feedback-margin-top;
|
35
|
+
font-size: $form-feedback-font-size;
|
35
36
|
color: $color;
|
36
37
|
}
|
37
38
|
|
@@ -46,7 +47,7 @@
|
|
46
47
|
font-size: .875rem;
|
47
48
|
line-height: 1;
|
48
49
|
color: #fff;
|
49
|
-
background-color: rgba($color
|
50
|
+
background-color: rgba($color, .8);
|
50
51
|
border-radius: .2rem;
|
51
52
|
}
|
52
53
|
|
@@ -57,7 +58,8 @@
|
|
57
58
|
border-color: $color;
|
58
59
|
|
59
60
|
&:focus {
|
60
|
-
|
61
|
+
border-color: $color;
|
62
|
+
box-shadow: 0 0 0 $input-focus-width rgba($color, .25);
|
61
63
|
}
|
62
64
|
|
63
65
|
~ .#{$state}-feedback,
|
@@ -67,26 +69,41 @@
|
|
67
69
|
}
|
68
70
|
}
|
69
71
|
|
70
|
-
|
71
|
-
// TODO: redo check markup lol crap
|
72
72
|
.form-check-input {
|
73
73
|
.was-validated &:#{$state},
|
74
74
|
&.is-#{$state} {
|
75
|
-
|
75
|
+
~ .form-check-label {
|
76
76
|
color: $color;
|
77
77
|
}
|
78
78
|
}
|
79
79
|
}
|
80
80
|
|
81
|
-
// custom radios and checks
|
82
81
|
.custom-control-input {
|
83
82
|
.was-validated &:#{$state},
|
84
83
|
&.is-#{$state} {
|
85
|
-
~ .custom-control-
|
86
|
-
background-color: rgba($color, .25);
|
87
|
-
}
|
88
|
-
~ .custom-control-description {
|
84
|
+
~ .custom-control-label {
|
89
85
|
color: $color;
|
86
|
+
|
87
|
+
&::before {
|
88
|
+
background-color: lighten($color, 25%);
|
89
|
+
}
|
90
|
+
}
|
91
|
+
|
92
|
+
~ .#{$state}-feedback,
|
93
|
+
~ .#{$state}-tooltip {
|
94
|
+
display: block;
|
95
|
+
}
|
96
|
+
|
97
|
+
&:checked {
|
98
|
+
~ .custom-control-label::before {
|
99
|
+
@include gradient-bg(lighten($color, 10%));
|
100
|
+
}
|
101
|
+
}
|
102
|
+
|
103
|
+
&:focus {
|
104
|
+
~ .custom-control-label::before {
|
105
|
+
box-shadow: 0 0 0 1px $body-bg, 0 0 0 $input-focus-width rgba($color, .25);
|
106
|
+
}
|
90
107
|
}
|
91
108
|
}
|
92
109
|
}
|
@@ -95,13 +112,21 @@
|
|
95
112
|
.custom-file-input {
|
96
113
|
.was-validated &:#{$state},
|
97
114
|
&.is-#{$state} {
|
98
|
-
~ .custom-file-
|
115
|
+
~ .custom-file-label {
|
99
116
|
border-color: $color;
|
100
117
|
|
101
118
|
&::before { border-color: inherit; }
|
102
119
|
}
|
120
|
+
|
121
|
+
~ .#{$state}-feedback,
|
122
|
+
~ .#{$state}-tooltip {
|
123
|
+
display: block;
|
124
|
+
}
|
125
|
+
|
103
126
|
&:focus {
|
104
|
-
|
127
|
+
~ .custom-file-label {
|
128
|
+
box-shadow: 0 0 0 $input-focus-width rgba($color, .25);
|
129
|
+
}
|
105
130
|
}
|
106
131
|
}
|
107
132
|
}
|
data/lib/bootstrap/version.rb
CHANGED
data/tasks/updater/js.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bootstrap
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.0.0.
|
4
|
+
version: 4.0.0.beta3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Twitter, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-12-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: popper_js
|
@@ -402,7 +402,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
402
402
|
version: 1.3.1
|
403
403
|
requirements: []
|
404
404
|
rubyforge_project:
|
405
|
-
rubygems_version: 2.6.
|
405
|
+
rubygems_version: 2.6.8
|
406
406
|
signing_key:
|
407
407
|
specification_version: 4
|
408
408
|
summary: The most popular HTML, CSS, and JavaScript framework for developing responsive,
|