bootstrap 4.5.0 → 4.6.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 (61) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/assets/javascripts/bootstrap/alert.js +35 -41
  4. data/assets/javascripts/bootstrap/button.js +42 -44
  5. data/assets/javascripts/bootstrap/carousel.js +126 -155
  6. data/assets/javascripts/bootstrap/collapse.js +88 -125
  7. data/assets/javascripts/bootstrap/dropdown.js +93 -133
  8. data/assets/javascripts/bootstrap/modal.js +163 -183
  9. data/assets/javascripts/bootstrap/popover.js +57 -82
  10. data/assets/javascripts/bootstrap/scrollspy.js +63 -100
  11. data/assets/javascripts/bootstrap/tab.js +58 -58
  12. data/assets/javascripts/bootstrap/toast.js +66 -95
  13. data/assets/javascripts/bootstrap/tooltip.js +136 -166
  14. data/assets/javascripts/bootstrap/util.js +22 -25
  15. data/assets/javascripts/bootstrap-sprockets.js +6 -6
  16. data/assets/javascripts/bootstrap.js +884 -947
  17. data/assets/javascripts/bootstrap.min.js +4 -4
  18. data/assets/stylesheets/_bootstrap-grid.scss +5 -4
  19. data/assets/stylesheets/_bootstrap-reboot.scss +4 -4
  20. data/assets/stylesheets/_bootstrap.scss +4 -4
  21. data/assets/stylesheets/bootstrap/_alert.scss +1 -0
  22. data/assets/stylesheets/bootstrap/_breadcrumb.scss +1 -3
  23. data/assets/stylesheets/bootstrap/_card.scss +19 -15
  24. data/assets/stylesheets/bootstrap/_carousel.scss +6 -3
  25. data/assets/stylesheets/bootstrap/_custom-forms.scss +20 -16
  26. data/assets/stylesheets/bootstrap/_dropdown.scss +2 -2
  27. data/assets/stylesheets/bootstrap/_forms.scss +10 -10
  28. data/assets/stylesheets/bootstrap/_functions.scss +50 -1
  29. data/assets/stylesheets/bootstrap/_grid.scss +1 -5
  30. data/assets/stylesheets/bootstrap/_images.scss +1 -1
  31. data/assets/stylesheets/bootstrap/_input-group.scss +22 -3
  32. data/assets/stylesheets/bootstrap/_jumbotron.scss +1 -1
  33. data/assets/stylesheets/bootstrap/_list-group.scss +1 -1
  34. data/assets/stylesheets/bootstrap/_modal.scss +2 -3
  35. data/assets/stylesheets/bootstrap/_nav.scss +3 -4
  36. data/assets/stylesheets/bootstrap/_navbar.scss +10 -2
  37. data/assets/stylesheets/bootstrap/_pagination.scss +2 -2
  38. data/assets/stylesheets/bootstrap/_popover.scss +9 -9
  39. data/assets/stylesheets/bootstrap/_print.scss +0 -9
  40. data/assets/stylesheets/bootstrap/_progress.scss +1 -1
  41. data/assets/stylesheets/bootstrap/_reboot.scss +17 -13
  42. data/assets/stylesheets/bootstrap/_root.scss +0 -1
  43. data/assets/stylesheets/bootstrap/_spinners.scss +15 -6
  44. data/assets/stylesheets/bootstrap/_toasts.scss +4 -2
  45. data/assets/stylesheets/bootstrap/_tooltip.scss +4 -4
  46. data/assets/stylesheets/bootstrap/_type.scss +1 -1
  47. data/assets/stylesheets/bootstrap/_variables.scss +30 -29
  48. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +1 -1
  49. data/assets/stylesheets/bootstrap/mixins/_forms.scss +21 -3
  50. data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +2 -3
  51. data/assets/stylesheets/bootstrap/mixins/_grid.scss +17 -17
  52. data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -1
  53. data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +2 -2
  54. data/assets/stylesheets/bootstrap/mixins/_transition.scss +1 -1
  55. data/assets/stylesheets/bootstrap/utilities/_borders.scss +1 -1
  56. data/assets/stylesheets/bootstrap/utilities/_embed.scss +1 -1
  57. data/assets/stylesheets/bootstrap/utilities/_spacing.scss +1 -1
  58. data/assets/stylesheets/bootstrap/utilities/_text.scss +2 -1
  59. data/assets/stylesheets/bootstrap/vendor/_rfs.scss +126 -102
  60. data/lib/bootstrap/version.rb +2 -2
  61. metadata +2 -2
@@ -1,13 +1,14 @@
1
1
  .toast {
2
+ // Prevents from shrinking in IE11, when in a flex container
3
+ // See https://github.com/twbs/bootstrap/issues/28341
4
+ flex-basis: $toast-max-width;
2
5
  max-width: $toast-max-width;
3
- overflow: hidden; // cheap rounded corners on nested items
4
6
  @include font-size($toast-font-size);
5
7
  color: $toast-color;
6
8
  background-color: $toast-background-color;
7
9
  background-clip: padding-box;
8
10
  border: $toast-border-width solid $toast-border-color;
9
11
  box-shadow: $toast-box-shadow;
10
- backdrop-filter: blur(10px);
11
12
  opacity: 0;
12
13
  @include border-radius($toast-border-radius);
13
14
 
@@ -37,6 +38,7 @@
37
38
  background-color: $toast-header-background-color;
38
39
  background-clip: padding-box;
39
40
  border-bottom: $toast-border-width solid $toast-header-border-color;
41
+ @include border-top-radius(subtract($toast-border-radius, $toast-border-width));
40
42
  }
41
43
 
42
44
  .toast-body {
@@ -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
  }
@@ -1,4 +1,4 @@
1
- // stylelint-disable declaration-no-important, selector-list-comma-newline-after
1
+ // stylelint-disable selector-list-comma-newline-after
2
2
 
3
3
  //
4
4
  // Headings
@@ -18,7 +18,6 @@ $gray-900: #212529 !default;
18
18
  $black: #000 !default;
19
19
 
20
20
  $grays: () !default;
21
- // stylelint-disable-next-line scss/dollar-variable-default
22
21
  $grays: map-merge(
23
22
  (
24
23
  "100": $gray-100,
@@ -46,7 +45,6 @@ $teal: #20c997 !default;
46
45
  $cyan: #17a2b8 !default;
47
46
 
48
47
  $colors: () !default;
49
- // stylelint-disable-next-line scss/dollar-variable-default
50
48
  $colors: map-merge(
51
49
  (
52
50
  "blue": $blue,
@@ -76,7 +74,6 @@ $light: $gray-100 !default;
76
74
  $dark: $gray-800 !default;
77
75
 
78
76
  $theme-colors: () !default;
79
- // stylelint-disable-next-line scss/dollar-variable-default
80
77
  $theme-colors: map-merge(
81
78
  (
82
79
  "primary": $primary,
@@ -103,11 +100,11 @@ $yiq-text-light: $white !default;
103
100
 
104
101
  // Characters which are escaped by the escape-svg function
105
102
  $escaped-characters: (
106
- ("<","%3c"),
107
- (">","%3e"),
108
- ("#","%23"),
109
- ("(","%28"),
110
- (")","%29"),
103
+ ("<", "%3c"),
104
+ (">", "%3e"),
105
+ ("#", "%23"),
106
+ ("(", "%28"),
107
+ (")", "%29"),
111
108
  ) !default;
112
109
 
113
110
 
@@ -138,7 +135,6 @@ $enable-deprecation-messages: true !default;
138
135
 
139
136
  $spacer: 1rem !default;
140
137
  $spacers: () !default;
141
- // stylelint-disable-next-line scss/dollar-variable-default
142
138
  $spacers: map-merge(
143
139
  (
144
140
  0: 0,
@@ -153,7 +149,6 @@ $spacers: map-merge(
153
149
 
154
150
  // This variable affects the `.h-*` and `.w-*` classes.
155
151
  $sizes: () !default;
156
- // stylelint-disable-next-line scss/dollar-variable-default
157
152
  $sizes: map-merge(
158
153
  (
159
154
  25: 25%,
@@ -264,7 +259,6 @@ $transition-fade: opacity .15s linear !default;
264
259
  $transition-collapse: height .35s ease !default;
265
260
 
266
261
  $embed-responsive-aspect-ratios: () !default;
267
- // stylelint-disable-next-line scss/dollar-variable-default
268
262
  $embed-responsive-aspect-ratios: join(
269
263
  (
270
264
  (21 9),
@@ -280,7 +274,7 @@ $embed-responsive-aspect-ratios: join(
280
274
  // Font, line-height, and color for body text, headings, and more.
281
275
 
282
276
  // stylelint-disable value-keyword-case
283
- $font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !default;
277
+ $font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !default;
284
278
  $font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !default;
285
279
  $font-family-base: $font-family-sans-serif !default;
286
280
  // stylelint-enable value-keyword-case
@@ -305,7 +299,7 @@ $h4-font-size: $font-size-base * 1.5 !default;
305
299
  $h5-font-size: $font-size-base * 1.25 !default;
306
300
  $h6-font-size: $font-size-base !default;
307
301
 
308
- $headings-margin-bottom: $spacer / 2 !default;
302
+ $headings-margin-bottom: $spacer * .5 !default;
309
303
  $headings-font-family: null !default;
310
304
  $headings-font-weight: 500 !default;
311
305
  $headings-line-height: 1.2 !default;
@@ -369,6 +363,7 @@ $table-border-color: $border-color !default;
369
363
 
370
364
  $table-head-bg: $gray-200 !default;
371
365
  $table-head-color: $gray-700 !default;
366
+ $table-th-font-weight: null !default;
372
367
 
373
368
  $table-dark-color: $white !default;
374
369
  $table-dark-bg: $gray-800 !default;
@@ -500,7 +495,7 @@ $input-height-border: $input-border-width * 2 !default;
500
495
 
501
496
  $input-height-inner: add($input-line-height * 1em, $input-padding-y * 2) !default;
502
497
  $input-height-inner-half: add($input-line-height * .5em, $input-padding-y) !default;
503
- $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;
504
499
 
505
500
  $input-height: add($input-line-height * 1em, add($input-padding-y * 2, $input-height-border, false)) !default;
506
501
  $input-height-sm: add($input-line-height-sm * 1em, add($input-padding-y-sm * 2, $input-height-border, false)) !default;
@@ -546,7 +541,7 @@ $custom-control-label-disabled-color: $gray-600 !default;
546
541
  $custom-control-indicator-checked-color: $component-active-color !default;
547
542
  $custom-control-indicator-checked-bg: $component-active-bg !default;
548
543
  $custom-control-indicator-checked-disabled-bg: rgba(theme-color("primary"), .5) !default;
549
- $custom-control-indicator-checked-box-shadow: none !default;
544
+ $custom-control-indicator-checked-box-shadow: null !default;
550
545
  $custom-control-indicator-checked-border-color: $custom-control-indicator-checked-bg !default;
551
546
 
552
547
  $custom-control-indicator-focus-box-shadow: $input-focus-box-shadow !default;
@@ -554,7 +549,7 @@ $custom-control-indicator-focus-border-color: $input-focus-border-color !defau
554
549
 
555
550
  $custom-control-indicator-active-color: $component-active-color !default;
556
551
  $custom-control-indicator-active-bg: lighten($component-active-bg, 35%) !default;
557
- $custom-control-indicator-active-box-shadow: none !default;
552
+ $custom-control-indicator-active-box-shadow: null !default;
558
553
  $custom-control-indicator-active-border-color: $custom-control-indicator-active-bg !default;
559
554
 
560
555
  $custom-checkbox-indicator-border-radius: $border-radius !default;
@@ -563,14 +558,14 @@ $custom-checkbox-indicator-icon-checked: url("data:image/svg+xml,<svg xml
563
558
  $custom-checkbox-indicator-indeterminate-bg: $component-active-bg !default;
564
559
  $custom-checkbox-indicator-indeterminate-color: $custom-control-indicator-checked-color !default;
565
560
  $custom-checkbox-indicator-icon-indeterminate: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'><path stroke='#{$custom-checkbox-indicator-indeterminate-color}' d='M0 2h4'/></svg>") !default;
566
- $custom-checkbox-indicator-indeterminate-box-shadow: none !default;
561
+ $custom-checkbox-indicator-indeterminate-box-shadow: null !default;
567
562
  $custom-checkbox-indicator-indeterminate-border-color: $custom-checkbox-indicator-indeterminate-bg !default;
568
563
 
569
564
  $custom-radio-indicator-border-radius: 50% !default;
570
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;
571
566
 
572
567
  $custom-switch-width: $custom-control-indicator-size * 1.75 !default;
573
- $custom-switch-indicator-border-radius: $custom-control-indicator-size / 2 !default;
568
+ $custom-switch-indicator-border-radius: $custom-control-indicator-size * .5 !default;
574
569
  $custom-switch-indicator-size: subtract($custom-control-indicator-size, $custom-control-indicator-border-width * 4) !default;
575
570
 
576
571
  $custom-select-padding-y: $input-padding-y !default;
@@ -588,7 +583,7 @@ $custom-select-disabled-bg: $gray-200 !default;
588
583
  $custom-select-bg-size: 8px 10px !default; // In pixels because image dimensions
589
584
  $custom-select-indicator-color: $gray-800 !default;
590
585
  $custom-select-indicator: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'><path fill='#{$custom-select-indicator-color}' d='M2 0L0 2h4zm0 5L0 3h4z'/></svg>") !default;
591
- $custom-select-background: escape-svg($custom-select-indicator) no-repeat right $custom-select-padding-x center / $custom-select-bg-size !default; // Used so we can have multiple background elements (e.g., arrow and feedback icon)
586
+ $custom-select-background: escape-svg($custom-select-indicator) right $custom-select-padding-x center / $custom-select-bg-size no-repeat !default; // Used so we can have multiple background elements (e.g., arrow and feedback icon)
592
587
 
593
588
  $custom-select-feedback-icon-padding-right: add(1em * .75, (2 * $custom-select-padding-y * .75) + $custom-select-padding-x + $custom-select-indicator-padding) !default;
594
589
  $custom-select-feedback-icon-position: center right ($custom-select-padding-x + $custom-select-indicator-padding) !default;
@@ -668,7 +663,6 @@ $form-feedback-icon-invalid-color: $form-feedback-invalid-color !default;
668
663
  $form-feedback-icon-invalid: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='#{$form-feedback-icon-invalid-color}' viewBox='0 0 12 12'><circle cx='6' cy='6' r='4.5'/><path stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/><circle cx='6' cy='8.2' r='.6' fill='#{$form-feedback-icon-invalid-color}' stroke='none'/></svg>") !default;
669
664
 
670
665
  $form-validation-states: () !default;
671
- // stylelint-disable-next-line scss/dollar-variable-default
672
666
  $form-validation-states: map-merge(
673
667
  (
674
668
  "valid": (
@@ -716,12 +710,12 @@ $nav-pills-link-active-color: $component-active-color !default;
716
710
  $nav-pills-link-active-bg: $component-active-bg !default;
717
711
 
718
712
  $nav-divider-color: $gray-200 !default;
719
- $nav-divider-margin-y: $spacer / 2 !default;
713
+ $nav-divider-margin-y: $spacer * .5 !default;
720
714
 
721
715
 
722
716
  // Navbar
723
717
 
724
- $navbar-padding-y: $spacer / 2 !default;
718
+ $navbar-padding-y: $spacer * .5 !default;
725
719
  $navbar-padding-x: $spacer !default;
726
720
 
727
721
  $navbar-nav-link-padding-x: .5rem !default;
@@ -730,13 +724,15 @@ $navbar-brand-font-size: $font-size-lg !default;
730
724
  // Compute the navbar-brand padding-y so the navbar-brand will have the same height as navbar-text and nav-link
731
725
  $nav-link-height: $font-size-base * $line-height-base + $nav-link-padding-y * 2 !default;
732
726
  $navbar-brand-height: $navbar-brand-font-size * $line-height-base !default;
733
- $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;
734
728
 
735
729
  $navbar-toggler-padding-y: .25rem !default;
736
730
  $navbar-toggler-padding-x: .75rem !default;
737
731
  $navbar-toggler-font-size: $font-size-lg !default;
738
732
  $navbar-toggler-border-radius: $btn-border-radius !default;
739
733
 
734
+ $navbar-nav-scroll-max-height: 75vh !default;
735
+
740
736
  $navbar-dark-color: rgba($white, .5) !default;
741
737
  $navbar-dark-hover-color: rgba($white, .75) !default;
742
738
  $navbar-dark-active-color: $white !default;
@@ -762,6 +758,7 @@ $navbar-dark-brand-hover-color: $navbar-dark-active-color !default;
762
758
  // Dropdown menu container and contents.
763
759
 
764
760
  $dropdown-min-width: 10rem !default;
761
+ $dropdown-padding-x: 0 !default;
765
762
  $dropdown-padding-y: .5rem !default;
766
763
  $dropdown-spacer: .125rem !default;
767
764
  $dropdown-font-size: $font-size-base !default;
@@ -777,12 +774,12 @@ $dropdown-box-shadow: 0 .5rem 1rem rgba($black, .175) !default;
777
774
 
778
775
  $dropdown-link-color: $gray-900 !default;
779
776
  $dropdown-link-hover-color: darken($gray-900, 5%) !default;
780
- $dropdown-link-hover-bg: $gray-100 !default;
777
+ $dropdown-link-hover-bg: $gray-200 !default;
781
778
 
782
779
  $dropdown-link-active-color: $component-active-color !default;
783
780
  $dropdown-link-active-bg: $component-active-bg !default;
784
781
 
785
- $dropdown-link-disabled-color: $gray-600 !default;
782
+ $dropdown-link-disabled-color: $gray-500 !default;
786
783
 
787
784
  $dropdown-item-padding-y: .25rem !default;
788
785
  $dropdown-item-padding-x: 1.5rem !default;
@@ -821,6 +818,9 @@ $pagination-disabled-color: $gray-600 !default;
821
818
  $pagination-disabled-bg: $white !default;
822
819
  $pagination-disabled-border-color: $gray-300 !default;
823
820
 
821
+ $pagination-border-radius-sm: $border-radius-sm !default;
822
+ $pagination-border-radius-lg: $border-radius-lg !default;
823
+
824
824
 
825
825
  // Jumbotron
826
826
 
@@ -845,7 +845,7 @@ $card-bg: $white !default;
845
845
 
846
846
  $card-img-overlay-padding: 1.25rem !default;
847
847
 
848
- $card-group-margin: $grid-gutter-width / 2 !default;
848
+ $card-group-margin: $grid-gutter-width * .5 !default;
849
849
  $card-deck-margin: $card-group-margin !default;
850
850
 
851
851
  $card-columns-count: 3 !default;
@@ -1101,9 +1101,10 @@ $carousel-transition: transform $carousel-transition-duration eas
1101
1101
 
1102
1102
  // Spinners
1103
1103
 
1104
- $spinner-width: 2rem !default;
1105
- $spinner-height: $spinner-width !default;
1106
- $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;
1107
1108
 
1108
1109
  $spinner-width-sm: 1rem !default;
1109
1110
  $spinner-height-sm: $spinner-width-sm !default;
@@ -1,4 +1,4 @@
1
- // stylelint-disable property-blacklist
1
+ // stylelint-disable property-disallowed-list
2
2
  // Single side border-radius
3
3
 
4
4
  // Helper function to replace negative values with 0
@@ -53,6 +53,7 @@
53
53
  .#{$state}-tooltip {
54
54
  position: absolute;
55
55
  top: 100%;
56
+ left: 0;
56
57
  z-index: 5;
57
58
  display: none;
58
59
  max-width: 100%; // Contain to parent when possible
@@ -63,6 +64,13 @@
63
64
  color: color-yiq($color);
64
65
  background-color: rgba($color, $form-feedback-tooltip-opacity);
65
66
  @include border-radius($form-feedback-tooltip-border-radius);
67
+
68
+ // See https://github.com/twbs/bootstrap/pull/31557
69
+ // Align tooltip to form elements
70
+ .form-row > .col > &,
71
+ .form-row > [class*="col-"] > & {
72
+ left: $form-grid-gutter-width * .5;
73
+ }
66
74
  }
67
75
 
68
76
  @include form-validation-state-selector($state) {
@@ -77,7 +85,7 @@
77
85
  border-color: $color;
78
86
 
79
87
  @if $enable-validation-icons {
80
- padding-right: $input-height-inner;
88
+ padding-right: $input-height-inner !important; // stylelint-disable-line declaration-no-important
81
89
  background-image: escape-svg($icon);
82
90
  background-repeat: no-repeat;
83
91
  background-position: right $input-height-inner-quarter center;
@@ -91,6 +99,16 @@
91
99
  }
92
100
  }
93
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
+
94
112
  // stylelint-disable-next-line selector-no-qualifying-type
95
113
  textarea.form-control {
96
114
  @include form-validation-state-selector($state) {
@@ -106,8 +124,8 @@
106
124
  border-color: $color;
107
125
 
108
126
  @if $enable-validation-icons {
109
- padding-right: $custom-select-feedback-icon-padding-right;
110
- background: $custom-select-background, escape-svg($icon) $custom-select-bg no-repeat $custom-select-feedback-icon-position / $custom-select-feedback-icon-size;
127
+ padding-right: $custom-select-feedback-icon-padding-right !important; // stylelint-disable-line declaration-no-important
128
+ background: $custom-select-background, $custom-select-bg escape-svg($icon) $custom-select-feedback-icon-position / $custom-select-feedback-icon-size no-repeat;
111
129
  }
112
130
 
113
131
  &:focus {
@@ -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) {
@@ -34,7 +34,6 @@
34
34
  .col#{$infix} {
35
35
  flex-basis: 0;
36
36
  flex-grow: 1;
37
- min-width: 0; // See https://github.com/twbs/bootstrap/issues/25410
38
37
  max-width: 100%;
39
38
  }
40
39
 
@@ -4,12 +4,18 @@
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
  }
12
12
 
13
+ @mixin make-row($gutter: $grid-gutter-width) {
14
+ display: flex;
15
+ flex-wrap: wrap;
16
+ margin-right: -$gutter * .5;
17
+ margin-left: -$gutter * .5;
18
+ }
13
19
 
14
20
  // For each breakpoint, define the maximum width of the container in a media query
15
21
  @mixin make-container-max-widths($max-widths: $container-max-widths, $breakpoints: $grid-breakpoints) {
@@ -18,13 +24,7 @@
18
24
  max-width: $container-max-width;
19
25
  }
20
26
  }
21
- }
22
-
23
- @mixin make-row($gutter: $grid-gutter-width) {
24
- display: flex;
25
- flex-wrap: wrap;
26
- margin-right: -$gutter / 2;
27
- margin-left: -$gutter / 2;
27
+ @include deprecate("The `make-container-max-widths` mixin", "v4.5.2", "v5");
28
28
  }
29
29
 
30
30
  @mixin make-col-ready($gutter: $grid-gutter-width) {
@@ -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
 
@@ -62,8 +62,8 @@
62
62
  // numberof columns. Supports wrapping to new lines, but does not do a Masonry
63
63
  // style grid.
64
64
  @mixin row-cols($count) {
65
- & > * {
66
- flex: 0 0 100% / $count;
67
- max-width: 100% / $count;
65
+ > * {
66
+ flex: 0 0 divide(100%, $count);
67
+ max-width: divide(100%, $count);
68
68
  }
69
69
  }
@@ -26,7 +26,7 @@
26
26
  // Autoprefixer takes care of adding -webkit-min-device-pixel-ratio and -o-min-device-pixel-ratio,
27
27
  // but doesn't convert dppx=>dpi.
28
28
  // There's no such thing as unprefixed min-device-pixel-ratio since it's nonstandard.
29
- // Compatibility info: https://caniuse.com/#feat=css-media-resolution
29
+ // Compatibility info: https://caniuse.com/css-media-resolution
30
30
  @media only screen and (min-resolution: 192dpi), // IE9-11 don't support dppx
31
31
  only screen and (min-resolution: 2dppx) { // Standardized
32
32
  background-image: url($file-2x);
@@ -1,7 +1,7 @@
1
1
  // Only display content to screen readers
2
2
  //
3
- // See: https://a11yproject.com/posts/how-to-hide-content/
4
- // See: https://hugogiraudel.com/2016/10/13/css-hide-and-seek/
3
+ // See: https://www.a11yproject.com/posts/2013-01-11-how-to-hide-content/
4
+ // See: https://kittygiraudel.com/2016/10/13/css-hide-and-seek/
5
5
 
6
6
  @mixin sr-only() {
7
7
  position: absolute;
@@ -1,4 +1,4 @@
1
- // stylelint-disable property-blacklist
1
+ // stylelint-disable property-disallowed-list
2
2
  @mixin transition($transition...) {
3
3
  @if length($transition) == 0 {
4
4
  $transition: $transition-base;
@@ -1,4 +1,4 @@
1
- // stylelint-disable property-blacklist, declaration-no-important
1
+ // stylelint-disable property-disallowed-list, declaration-no-important
2
2
 
3
3
  //
4
4
  // Border
@@ -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} {
@@ -63,7 +63,8 @@
63
63
  .text-decoration-none { text-decoration: none !important; }
64
64
 
65
65
  .text-break {
66
- word-wrap: break-word !important;
66
+ word-break: break-word !important; // Deprecated, but avoids issues with flex containers
67
+ word-wrap: break-word !important; // Used instead of `overflow-wrap` for IE & Edge Legacy
67
68
  }
68
69
 
69
70
  // Reset