bootstrap 4.6.0 → 4.6.1

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.

Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/assets/javascripts/bootstrap/alert.js +27 -35
  4. data/assets/javascripts/bootstrap/button.js +27 -35
  5. data/assets/javascripts/bootstrap/carousel.js +81 -93
  6. data/assets/javascripts/bootstrap/collapse.js +63 -71
  7. data/assets/javascripts/bootstrap/dropdown.js +66 -77
  8. data/assets/javascripts/bootstrap/modal.js +114 -122
  9. data/assets/javascripts/bootstrap/popover.js +36 -32
  10. data/assets/javascripts/bootstrap/scrollspy.js +41 -49
  11. data/assets/javascripts/bootstrap/tab.js +50 -52
  12. data/assets/javascripts/bootstrap/toast.js +37 -43
  13. data/assets/javascripts/bootstrap/tooltip.js +106 -111
  14. data/assets/javascripts/bootstrap/util.js +15 -18
  15. data/assets/javascripts/bootstrap-sprockets.js +7 -7
  16. data/assets/javascripts/bootstrap.js +787 -862
  17. data/assets/javascripts/bootstrap.min.js +2 -2
  18. data/assets/stylesheets/_bootstrap-grid.scss +1 -1
  19. data/assets/stylesheets/_bootstrap-reboot.scss +1 -1
  20. data/assets/stylesheets/_bootstrap.scss +1 -1
  21. data/assets/stylesheets/bootstrap/_card.scss +5 -5
  22. data/assets/stylesheets/bootstrap/_carousel.scss +5 -2
  23. data/assets/stylesheets/bootstrap/_custom-forms.scss +6 -6
  24. data/assets/stylesheets/bootstrap/_forms.scss +10 -10
  25. data/assets/stylesheets/bootstrap/_functions.scss +47 -1
  26. data/assets/stylesheets/bootstrap/_images.scss +1 -1
  27. data/assets/stylesheets/bootstrap/_input-group.scss +3 -0
  28. data/assets/stylesheets/bootstrap/_jumbotron.scss +1 -1
  29. data/assets/stylesheets/bootstrap/_modal.scss +2 -2
  30. data/assets/stylesheets/bootstrap/_popover.scss +9 -9
  31. data/assets/stylesheets/bootstrap/_print.scss +0 -9
  32. data/assets/stylesheets/bootstrap/_spinners.scss +2 -2
  33. data/assets/stylesheets/bootstrap/_tooltip.scss +4 -4
  34. data/assets/stylesheets/bootstrap/_variables.scss +12 -10
  35. data/assets/stylesheets/bootstrap/mixins/_forms.scss +13 -3
  36. data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +2 -2
  37. data/assets/stylesheets/bootstrap/mixins/_grid.scss +11 -11
  38. data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +1 -1
  39. data/assets/stylesheets/bootstrap/utilities/_embed.scss +1 -1
  40. data/assets/stylesheets/bootstrap/utilities/_spacing.scss +1 -1
  41. data/assets/stylesheets/bootstrap/vendor/_rfs.scss +126 -102
  42. data/lib/bootstrap/version.rb +2 -2
  43. metadata +2 -2
@@ -175,7 +175,7 @@
175
175
  flex-wrap: wrap;
176
176
  align-items: center; // vertically center
177
177
  justify-content: flex-end; // Right align buttons with flex property because text-align doesn't work on flex items
178
- padding: $modal-inner-padding - $modal-footer-margin-between / 2;
178
+ padding: $modal-inner-padding - $modal-footer-margin-between * .5;
179
179
  border-top: $modal-footer-border-width solid $modal-footer-border-color;
180
180
  @include border-bottom-radius($modal-content-inner-border-radius);
181
181
 
@@ -183,7 +183,7 @@
183
183
  // This solution is far from ideal because of the universal selector usage,
184
184
  // but is needed to fix https://github.com/twbs/bootstrap/issues/24800
185
185
  > * {
186
- margin: $modal-footer-margin-between / 2;
186
+ margin: $modal-footer-margin-between * .5;
187
187
  }
188
188
  }
189
189
 
@@ -43,13 +43,13 @@
43
43
 
44
44
  &::before {
45
45
  bottom: 0;
46
- border-width: $popover-arrow-height ($popover-arrow-width / 2) 0;
46
+ border-width: $popover-arrow-height ($popover-arrow-width * .5) 0;
47
47
  border-top-color: $popover-arrow-outer-color;
48
48
  }
49
49
 
50
50
  &::after {
51
51
  bottom: $popover-border-width;
52
- border-width: $popover-arrow-height ($popover-arrow-width / 2) 0;
52
+ border-width: $popover-arrow-height ($popover-arrow-width * .5) 0;
53
53
  border-top-color: $popover-arrow-color;
54
54
  }
55
55
  }
@@ -66,13 +66,13 @@
66
66
 
67
67
  &::before {
68
68
  left: 0;
69
- border-width: ($popover-arrow-width / 2) $popover-arrow-height ($popover-arrow-width / 2) 0;
69
+ border-width: ($popover-arrow-width * .5) $popover-arrow-height ($popover-arrow-width * .5) 0;
70
70
  border-right-color: $popover-arrow-outer-color;
71
71
  }
72
72
 
73
73
  &::after {
74
74
  left: $popover-border-width;
75
- border-width: ($popover-arrow-width / 2) $popover-arrow-height ($popover-arrow-width / 2) 0;
75
+ border-width: ($popover-arrow-width * .5) $popover-arrow-height ($popover-arrow-width * .5) 0;
76
76
  border-right-color: $popover-arrow-color;
77
77
  }
78
78
  }
@@ -86,13 +86,13 @@
86
86
 
87
87
  &::before {
88
88
  top: 0;
89
- border-width: 0 ($popover-arrow-width / 2) $popover-arrow-height ($popover-arrow-width / 2);
89
+ border-width: 0 ($popover-arrow-width * .5) $popover-arrow-height ($popover-arrow-width * .5);
90
90
  border-bottom-color: $popover-arrow-outer-color;
91
91
  }
92
92
 
93
93
  &::after {
94
94
  top: $popover-border-width;
95
- border-width: 0 ($popover-arrow-width / 2) $popover-arrow-height ($popover-arrow-width / 2);
95
+ border-width: 0 ($popover-arrow-width * .5) $popover-arrow-height ($popover-arrow-width * .5);
96
96
  border-bottom-color: $popover-arrow-color;
97
97
  }
98
98
  }
@@ -104,7 +104,7 @@
104
104
  left: 50%;
105
105
  display: block;
106
106
  width: $popover-arrow-width;
107
- margin-left: -$popover-arrow-width / 2;
107
+ margin-left: -$popover-arrow-width * .5;
108
108
  content: "";
109
109
  border-bottom: $popover-border-width solid $popover-header-bg;
110
110
  }
@@ -121,13 +121,13 @@
121
121
 
122
122
  &::before {
123
123
  right: 0;
124
- border-width: ($popover-arrow-width / 2) 0 ($popover-arrow-width / 2) $popover-arrow-height;
124
+ border-width: ($popover-arrow-width * .5) 0 ($popover-arrow-width * .5) $popover-arrow-height;
125
125
  border-left-color: $popover-arrow-outer-color;
126
126
  }
127
127
 
128
128
  &::after {
129
129
  right: $popover-border-width;
130
- border-width: ($popover-arrow-width / 2) 0 ($popover-arrow-width / 2) $popover-arrow-height;
130
+ border-width: ($popover-arrow-width * .5) 0 ($popover-arrow-width * .5) $popover-arrow-height;
131
131
  border-left-color: $popover-arrow-color;
132
132
  }
133
133
  }
@@ -55,15 +55,6 @@
55
55
  page-break-inside: avoid;
56
56
  }
57
57
 
58
- //
59
- // Printing Tables:
60
- // https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
61
- //
62
-
63
- thead {
64
- display: table-header-group;
65
- }
66
-
67
58
  tr,
68
59
  img {
69
60
  page-break-inside: avoid;
@@ -10,7 +10,7 @@
10
10
  display: inline-block;
11
11
  width: $spinner-width;
12
12
  height: $spinner-height;
13
- vertical-align: text-bottom;
13
+ vertical-align: $spinner-vertical-align;
14
14
  border: $spinner-border-width solid currentColor;
15
15
  border-right-color: transparent;
16
16
  // stylelint-disable-next-line property-disallowed-list
@@ -42,7 +42,7 @@
42
42
  display: inline-block;
43
43
  width: $spinner-width;
44
44
  height: $spinner-height;
45
- vertical-align: text-bottom;
45
+ vertical-align: $spinner-vertical-align;
46
46
  background-color: currentColor;
47
47
  // stylelint-disable-next-line property-disallowed-list
48
48
  border-radius: 50%;
@@ -37,7 +37,7 @@
37
37
 
38
38
  &::before {
39
39
  top: 0;
40
- border-width: $tooltip-arrow-height ($tooltip-arrow-width / 2) 0;
40
+ border-width: $tooltip-arrow-height ($tooltip-arrow-width * .5) 0;
41
41
  border-top-color: $tooltip-arrow-color;
42
42
  }
43
43
  }
@@ -53,7 +53,7 @@
53
53
 
54
54
  &::before {
55
55
  right: 0;
56
- border-width: ($tooltip-arrow-width / 2) $tooltip-arrow-height ($tooltip-arrow-width / 2) 0;
56
+ border-width: ($tooltip-arrow-width * .5) $tooltip-arrow-height ($tooltip-arrow-width * .5) 0;
57
57
  border-right-color: $tooltip-arrow-color;
58
58
  }
59
59
  }
@@ -67,7 +67,7 @@
67
67
 
68
68
  &::before {
69
69
  bottom: 0;
70
- border-width: 0 ($tooltip-arrow-width / 2) $tooltip-arrow-height;
70
+ border-width: 0 ($tooltip-arrow-width * .5) $tooltip-arrow-height;
71
71
  border-bottom-color: $tooltip-arrow-color;
72
72
  }
73
73
  }
@@ -83,7 +83,7 @@
83
83
 
84
84
  &::before {
85
85
  left: 0;
86
- border-width: ($tooltip-arrow-width / 2) 0 ($tooltip-arrow-width / 2) $tooltip-arrow-height;
86
+ border-width: ($tooltip-arrow-width * .5) 0 ($tooltip-arrow-width * .5) $tooltip-arrow-height;
87
87
  border-left-color: $tooltip-arrow-color;
88
88
  }
89
89
  }
@@ -299,7 +299,7 @@ $h4-font-size: $font-size-base * 1.5 !default;
299
299
  $h5-font-size: $font-size-base * 1.25 !default;
300
300
  $h6-font-size: $font-size-base !default;
301
301
 
302
- $headings-margin-bottom: $spacer / 2 !default;
302
+ $headings-margin-bottom: $spacer * .5 !default;
303
303
  $headings-font-family: null !default;
304
304
  $headings-font-weight: 500 !default;
305
305
  $headings-line-height: 1.2 !default;
@@ -495,7 +495,7 @@ $input-height-border: $input-border-width * 2 !default;
495
495
 
496
496
  $input-height-inner: add($input-line-height * 1em, $input-padding-y * 2) !default;
497
497
  $input-height-inner-half: add($input-line-height * .5em, $input-padding-y) !default;
498
- $input-height-inner-quarter: add($input-line-height * .25em, $input-padding-y / 2) !default;
498
+ $input-height-inner-quarter: add($input-line-height * .25em, $input-padding-y * .5) !default;
499
499
 
500
500
  $input-height: add($input-line-height * 1em, add($input-padding-y * 2, $input-height-border, false)) !default;
501
501
  $input-height-sm: add($input-line-height-sm * 1em, add($input-padding-y-sm * 2, $input-height-border, false)) !default;
@@ -565,7 +565,7 @@ $custom-radio-indicator-border-radius: 50% !default;
565
565
  $custom-radio-indicator-icon-checked: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'><circle r='3' fill='#{$custom-control-indicator-checked-color}'/></svg>") !default;
566
566
 
567
567
  $custom-switch-width: $custom-control-indicator-size * 1.75 !default;
568
- $custom-switch-indicator-border-radius: $custom-control-indicator-size / 2 !default;
568
+ $custom-switch-indicator-border-radius: $custom-control-indicator-size * .5 !default;
569
569
  $custom-switch-indicator-size: subtract($custom-control-indicator-size, $custom-control-indicator-border-width * 4) !default;
570
570
 
571
571
  $custom-select-padding-y: $input-padding-y !default;
@@ -710,12 +710,12 @@ $nav-pills-link-active-color: $component-active-color !default;
710
710
  $nav-pills-link-active-bg: $component-active-bg !default;
711
711
 
712
712
  $nav-divider-color: $gray-200 !default;
713
- $nav-divider-margin-y: $spacer / 2 !default;
713
+ $nav-divider-margin-y: $spacer * .5 !default;
714
714
 
715
715
 
716
716
  // Navbar
717
717
 
718
- $navbar-padding-y: $spacer / 2 !default;
718
+ $navbar-padding-y: $spacer * .5 !default;
719
719
  $navbar-padding-x: $spacer !default;
720
720
 
721
721
  $navbar-nav-link-padding-x: .5rem !default;
@@ -724,7 +724,7 @@ $navbar-brand-font-size: $font-size-lg !default;
724
724
  // Compute the navbar-brand padding-y so the navbar-brand will have the same height as navbar-text and nav-link
725
725
  $nav-link-height: $font-size-base * $line-height-base + $nav-link-padding-y * 2 !default;
726
726
  $navbar-brand-height: $navbar-brand-font-size * $line-height-base !default;
727
- $navbar-brand-padding-y: ($nav-link-height - $navbar-brand-height) / 2 !default;
727
+ $navbar-brand-padding-y: ($nav-link-height - $navbar-brand-height) * .5 !default;
728
728
 
729
729
  $navbar-toggler-padding-y: .25rem !default;
730
730
  $navbar-toggler-padding-x: .75rem !default;
@@ -821,6 +821,7 @@ $pagination-disabled-border-color: $gray-300 !default;
821
821
  $pagination-border-radius-sm: $border-radius-sm !default;
822
822
  $pagination-border-radius-lg: $border-radius-lg !default;
823
823
 
824
+
824
825
  // Jumbotron
825
826
 
826
827
  $jumbotron-padding: 2rem !default;
@@ -844,7 +845,7 @@ $card-bg: $white !default;
844
845
 
845
846
  $card-img-overlay-padding: 1.25rem !default;
846
847
 
847
- $card-group-margin: $grid-gutter-width / 2 !default;
848
+ $card-group-margin: $grid-gutter-width * .5 !default;
848
849
  $card-deck-margin: $card-group-margin !default;
849
850
 
850
851
  $card-columns-count: 3 !default;
@@ -1100,9 +1101,10 @@ $carousel-transition: transform $carousel-transition-duration eas
1100
1101
 
1101
1102
  // Spinners
1102
1103
 
1103
- $spinner-width: 2rem !default;
1104
- $spinner-height: $spinner-width !default;
1105
- $spinner-border-width: .25em !default;
1104
+ $spinner-width: 2rem !default;
1105
+ $spinner-height: $spinner-width !default;
1106
+ $spinner-vertical-align: -.125em !default;
1107
+ $spinner-border-width: .25em !default;
1106
1108
 
1107
1109
  $spinner-width-sm: 1rem !default;
1108
1110
  $spinner-height-sm: $spinner-width-sm !default;
@@ -69,7 +69,7 @@
69
69
  // Align tooltip to form elements
70
70
  .form-row > .col > &,
71
71
  .form-row > [class*="col-"] > & {
72
- left: $form-grid-gutter-width / 2;
72
+ left: $form-grid-gutter-width * .5;
73
73
  }
74
74
  }
75
75
 
@@ -85,7 +85,7 @@
85
85
  border-color: $color;
86
86
 
87
87
  @if $enable-validation-icons {
88
- padding-right: $input-height-inner;
88
+ padding-right: $input-height-inner !important; // stylelint-disable-line declaration-no-important
89
89
  background-image: escape-svg($icon);
90
90
  background-repeat: no-repeat;
91
91
  background-position: right $input-height-inner-quarter center;
@@ -99,6 +99,16 @@
99
99
  }
100
100
  }
101
101
 
102
+ // stylelint-disable-next-line selector-no-qualifying-type
103
+ select.form-control {
104
+ @include form-validation-state-selector($state) {
105
+ @if $enable-validation-icons {
106
+ padding-right: $input-padding-x * 4 !important; // stylelint-disable-line declaration-no-important
107
+ background-position: right $input-padding-x * 2 center;
108
+ }
109
+ }
110
+ }
111
+
102
112
  // stylelint-disable-next-line selector-no-qualifying-type
103
113
  textarea.form-control {
104
114
  @include form-validation-state-selector($state) {
@@ -114,7 +124,7 @@
114
124
  border-color: $color;
115
125
 
116
126
  @if $enable-validation-icons {
117
- padding-right: $custom-select-feedback-icon-padding-right;
127
+ padding-right: $custom-select-feedback-icon-padding-right !important; // stylelint-disable-line declaration-no-important
118
128
  background: $custom-select-background, $custom-select-bg escape-svg($icon) $custom-select-feedback-icon-position / $custom-select-feedback-icon-size no-repeat;
119
129
  }
120
130
 
@@ -8,8 +8,8 @@
8
8
  %grid-column {
9
9
  position: relative;
10
10
  width: 100%;
11
- padding-right: $gutter / 2;
12
- padding-left: $gutter / 2;
11
+ padding-right: $gutter * .5;
12
+ padding-left: $gutter * .5;
13
13
  }
14
14
 
15
15
  @each $breakpoint in map-keys($breakpoints) {
@@ -4,8 +4,8 @@
4
4
 
5
5
  @mixin make-container($gutter: $grid-gutter-width) {
6
6
  width: 100%;
7
- padding-right: $gutter / 2;
8
- padding-left: $gutter / 2;
7
+ padding-right: $gutter * .5;
8
+ padding-left: $gutter * .5;
9
9
  margin-right: auto;
10
10
  margin-left: auto;
11
11
  }
@@ -13,8 +13,8 @@
13
13
  @mixin make-row($gutter: $grid-gutter-width) {
14
14
  display: flex;
15
15
  flex-wrap: wrap;
16
- margin-right: -$gutter / 2;
17
- margin-left: -$gutter / 2;
16
+ margin-right: -$gutter * .5;
17
+ margin-left: -$gutter * .5;
18
18
  }
19
19
 
20
20
  // For each breakpoint, define the maximum width of the container in a media query
@@ -33,16 +33,16 @@
33
33
  // always setting `width: 100%;`. This works because we use `flex` values
34
34
  // later on to override this initial width.
35
35
  width: 100%;
36
- padding-right: $gutter / 2;
37
- padding-left: $gutter / 2;
36
+ padding-right: $gutter * .5;
37
+ padding-left: $gutter * .5;
38
38
  }
39
39
 
40
40
  @mixin make-col($size, $columns: $grid-columns) {
41
- flex: 0 0 percentage($size / $columns);
41
+ flex: 0 0 percentage(divide($size, $columns));
42
42
  // Add a `max-width` to ensure content within each column does not blow out
43
43
  // the width of the column. Applies to IE10+ and Firefox. Chrome and Safari
44
44
  // do not appear to require this.
45
- max-width: percentage($size / $columns);
45
+ max-width: percentage(divide($size, $columns));
46
46
  }
47
47
 
48
48
  @mixin make-col-auto() {
@@ -52,7 +52,7 @@
52
52
  }
53
53
 
54
54
  @mixin make-col-offset($size, $columns: $grid-columns) {
55
- $num: $size / $columns;
55
+ $num: divide($size, $columns);
56
56
  margin-left: if($num == 0, 0, percentage($num));
57
57
  }
58
58
 
@@ -63,7 +63,7 @@
63
63
  // style grid.
64
64
  @mixin row-cols($count) {
65
65
  > * {
66
- flex: 0 0 100% / $count;
67
- max-width: 100% / $count;
66
+ flex: 0 0 divide(100%, $count);
67
+ max-width: divide(100%, $count);
68
68
  }
69
69
  }
@@ -1,7 +1,7 @@
1
1
  // Only display content to screen readers
2
2
  //
3
3
  // See: https://www.a11yproject.com/posts/2013-01-11-how-to-hide-content/
4
- // See: https://hugogiraudel.com/2016/10/13/css-hide-and-seek/
4
+ // See: https://kittygiraudel.com/2016/10/13/css-hide-and-seek/
5
5
 
6
6
  @mixin sr-only() {
7
7
  position: absolute;
@@ -33,7 +33,7 @@
33
33
 
34
34
  .embed-responsive-#{$embed-responsive-aspect-ratio-x}by#{$embed-responsive-aspect-ratio-y} {
35
35
  &::before {
36
- padding-top: percentage($embed-responsive-aspect-ratio-y / $embed-responsive-aspect-ratio-x);
36
+ padding-top: percentage(divide($embed-responsive-aspect-ratio-y, $embed-responsive-aspect-ratio-x));
37
37
  }
38
38
  }
39
39
  }
@@ -30,7 +30,7 @@
30
30
 
31
31
  // Negative margins (e.g., where `.mb-n1` is negative version of `.mb-1`)
32
32
  @each $size, $length in $spacers {
33
- @if $size != 0 {
33
+ @if "#{$size}" != "0" {
34
34
  .m#{$infix}-n#{$size} { margin: -$length !important; }
35
35
  .mt#{$infix}-n#{$size},
36
36
  .my#{$infix}-n#{$size} {