bootstrap 4.4.1 → 4.6.2.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 (80) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +11 -1
  3. data/CHANGELOG.md +4 -0
  4. data/README.md +7 -1
  5. data/Rakefile +16 -4
  6. data/assets/javascripts/bootstrap/alert.js +42 -53
  7. data/assets/javascripts/bootstrap/button.js +76 -81
  8. data/assets/javascripts/bootstrap/carousel.js +161 -199
  9. data/assets/javascripts/bootstrap/collapse.js +97 -142
  10. data/assets/javascripts/bootstrap/dropdown.js +130 -186
  11. data/assets/javascripts/bootstrap/modal.js +191 -213
  12. data/assets/javascripts/bootstrap/popover.js +62 -92
  13. data/assets/javascripts/bootstrap/scrollspy.js +81 -132
  14. data/assets/javascripts/bootstrap/tab.js +78 -83
  15. data/assets/javascripts/bootstrap/toast.js +83 -118
  16. data/assets/javascripts/bootstrap/tooltip.js +158 -198
  17. data/assets/javascripts/bootstrap/util.js +27 -26
  18. data/assets/javascripts/bootstrap-sprockets.js +7 -7
  19. data/assets/javascripts/bootstrap.js +1037 -1202
  20. data/assets/javascripts/bootstrap.min.js +4 -4
  21. data/assets/stylesheets/_bootstrap-grid.scss +5 -4
  22. data/assets/stylesheets/_bootstrap-reboot.scss +4 -4
  23. data/assets/stylesheets/_bootstrap.scss +4 -4
  24. data/assets/stylesheets/bootstrap/_alert.scss +1 -0
  25. data/assets/stylesheets/bootstrap/_breadcrumb.scss +1 -1
  26. data/assets/stylesheets/bootstrap/_buttons.scss +10 -7
  27. data/assets/stylesheets/bootstrap/_card.scss +30 -22
  28. data/assets/stylesheets/bootstrap/_carousel.scss +6 -3
  29. data/assets/stylesheets/bootstrap/_close.scss +0 -1
  30. data/assets/stylesheets/bootstrap/_custom-forms.scss +23 -18
  31. data/assets/stylesheets/bootstrap/_dropdown.scss +4 -3
  32. data/assets/stylesheets/bootstrap/_forms.scss +19 -10
  33. data/assets/stylesheets/bootstrap/_functions.scss +62 -6
  34. data/assets/stylesheets/bootstrap/_grid.scss +10 -6
  35. data/assets/stylesheets/bootstrap/_images.scss +1 -1
  36. data/assets/stylesheets/bootstrap/_input-group.scss +24 -4
  37. data/assets/stylesheets/bootstrap/_jumbotron.scss +1 -1
  38. data/assets/stylesheets/bootstrap/_list-group.scss +10 -14
  39. data/assets/stylesheets/bootstrap/_modal.scss +4 -3
  40. data/assets/stylesheets/bootstrap/_nav.scss +9 -4
  41. data/assets/stylesheets/bootstrap/_navbar.scss +10 -2
  42. data/assets/stylesheets/bootstrap/_pagination.scss +3 -2
  43. data/assets/stylesheets/bootstrap/_popover.scss +9 -9
  44. data/assets/stylesheets/bootstrap/_print.scss +0 -9
  45. data/assets/stylesheets/bootstrap/_progress.scss +2 -1
  46. data/assets/stylesheets/bootstrap/_reboot.scss +27 -25
  47. data/assets/stylesheets/bootstrap/_root.scss +0 -1
  48. data/assets/stylesheets/bootstrap/_spinners.scss +18 -8
  49. data/assets/stylesheets/bootstrap/_toasts.scss +4 -2
  50. data/assets/stylesheets/bootstrap/_tooltip.scss +4 -4
  51. data/assets/stylesheets/bootstrap/_transitions.scss +6 -0
  52. data/assets/stylesheets/bootstrap/_type.scss +1 -1
  53. data/assets/stylesheets/bootstrap/_utilities.scss +2 -1
  54. data/assets/stylesheets/bootstrap/_variables.scss +34 -28
  55. data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +2 -1
  56. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +27 -14
  57. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +6 -6
  58. data/assets/stylesheets/bootstrap/mixins/_forms.scss +23 -5
  59. data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +26 -17
  60. data/assets/stylesheets/bootstrap/mixins/_grid.scss +17 -17
  61. data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -1
  62. data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +1 -1
  63. data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +2 -2
  64. data/assets/stylesheets/bootstrap/mixins/_transition.scss +18 -8
  65. data/assets/stylesheets/bootstrap/utilities/_background.scss +1 -1
  66. data/assets/stylesheets/bootstrap/utilities/_borders.scss +1 -1
  67. data/assets/stylesheets/bootstrap/utilities/_embed.scss +1 -1
  68. data/assets/stylesheets/bootstrap/utilities/_interactions.scss +5 -0
  69. data/assets/stylesheets/bootstrap/utilities/_spacing.scss +1 -1
  70. data/assets/stylesheets/bootstrap/utilities/_text.scss +2 -2
  71. data/assets/stylesheets/bootstrap/vendor/_rfs.scss +126 -102
  72. data/bootstrap.gemspec +1 -3
  73. data/lib/bootstrap/engine.rb +17 -1
  74. data/lib/bootstrap/version.rb +2 -2
  75. data/tasks/updater/js.rb +18 -6
  76. data/tasks/updater/network.rb +8 -2
  77. data/test/gemfiles/rails_6_0.gemfile +7 -0
  78. data/test/gemfiles/rails_7_0_dartsass.gemfile +8 -0
  79. data/test/gemfiles/rails_7_0_sassc.gemfile +8 -0
  80. metadata +12 -19
@@ -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,6 +10,7 @@
10
10
  display: flex;
11
11
  height: $progress-height;
12
12
  overflow: hidden; // force rounded corners by cropping it
13
+ line-height: 0;
13
14
  @include font-size($progress-font-size);
14
15
  background-color: $progress-bg;
15
16
  @include border-radius($progress-border-radius);
@@ -35,7 +36,7 @@
35
36
 
36
37
  @if $enable-transitions {
37
38
  .progress-bar-animated {
38
- animation: progress-bar-stripes $progress-bar-animation-timing;
39
+ animation: $progress-bar-animation-timing progress-bar-stripes;
39
40
 
40
41
  @if $enable-prefers-reduced-motion-media-query {
41
42
  @media (prefers-reduced-motion: reduce) {
@@ -1,4 +1,4 @@
1
- // stylelint-disable at-rule-no-vendor-prefix, declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix
1
+ // stylelint-disable declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix
2
2
 
3
3
  // Reboot
4
4
  //
@@ -199,7 +199,7 @@ a {
199
199
  // causes specificity issues in many other styles that are too complex to fix.
200
200
  // See https://github.com/twbs/bootstrap/issues/19402
201
201
 
202
- a:not([href]) {
202
+ a:not([href]):not([class]) {
203
203
  color: inherit;
204
204
  text-decoration: none;
205
205
 
@@ -229,6 +229,9 @@ pre {
229
229
  margin-bottom: 1rem;
230
230
  // Don't allow content to break outside
231
231
  overflow: auto;
232
+ // Disable auto-hiding scrollbar in IE & legacy Edge to avoid overlap,
233
+ // making it impossible to interact with the content
234
+ -ms-overflow-style: scrollbar;
232
235
  }
233
236
 
234
237
 
@@ -275,10 +278,14 @@ caption {
275
278
  caption-side: bottom;
276
279
  }
277
280
 
281
+ // 1. Removes font-weight bold by inheriting
282
+ // 2. Matches default `<td>` alignment by inheriting `text-align`.
283
+ // 3. Fix alignment for Safari
284
+
278
285
  th {
279
- // Matches default `<td>` alignment by inheriting from the `<body>`, or the
280
- // closest parent with a set `text-align`.
281
- text-align: inherit;
286
+ font-weight: $table-th-font-weight; // 1
287
+ text-align: inherit; // 2
288
+ text-align: -webkit-match-parent; // 3
282
289
  }
283
290
 
284
291
 
@@ -296,17 +303,17 @@ label {
296
303
  //
297
304
  // Details at https://github.com/twbs/bootstrap/issues/24093
298
305
  button {
299
- // stylelint-disable-next-line property-blacklist
306
+ // stylelint-disable-next-line property-disallowed-list
300
307
  border-radius: 0;
301
308
  }
302
309
 
303
- // Work around a Firefox/IE bug where the transparent `button` background
304
- // results in a loss of the default `button` focus styles.
305
- //
306
- // Credit: https://github.com/suitcss/base/
307
- button:focus {
308
- outline: 1px dotted;
309
- outline: 5px auto -webkit-focus-ring-color;
310
+ // Explicitly remove focus outline in Chromium when it shouldn't be
311
+ // visible (e.g. as result of mouse click or touch tap). It already
312
+ // should be doing this automatically, but seems to currently be
313
+ // confused and applies its very visible two-tone outline anyway.
314
+
315
+ button:focus:not(:focus-visible) {
316
+ outline: 0;
310
317
  }
311
318
 
312
319
  input,
@@ -330,6 +337,13 @@ select {
330
337
  text-transform: none; // Remove the inheritance of text transform in Firefox
331
338
  }
332
339
 
340
+ // Set the cursor for non-`<button>` buttons
341
+ //
342
+ // Details at https://github.com/twbs/bootstrap/pull/30562
343
+ [role="button"] {
344
+ cursor: pointer;
345
+ }
346
+
333
347
  // Remove the inheritance of word-wrap in Safari.
334
348
  //
335
349
  // Details at https://github.com/twbs/bootstrap/issues/24990
@@ -376,18 +390,6 @@ input[type="checkbox"] {
376
390
  }
377
391
 
378
392
 
379
- input[type="date"],
380
- input[type="time"],
381
- input[type="datetime-local"],
382
- input[type="month"] {
383
- // Remove the default appearance of temporal inputs to avoid a Mobile Safari
384
- // bug where setting a custom line-height prevents text from being vertically
385
- // centered within the input.
386
- // See https://bugs.webkit.org/show_bug.cgi?id=139848
387
- // and https://github.com/twbs/bootstrap/issues/11266
388
- -webkit-appearance: listbox;
389
- }
390
-
391
393
  textarea {
392
394
  overflow: auto; // Remove the default vertical scrollbar in IE.
393
395
  // Textareas should really only resize vertically so they don't break their (horizontal) containers.
@@ -1,4 +1,3 @@
1
- // Do not forget to update getting-started/theming.md!
2
1
  :root {
3
2
  // Custom variable values only support SassScript inside `#{}`.
4
3
  @each $color, $value in $colors {
@@ -10,12 +10,12 @@
10
10
  display: inline-block;
11
11
  width: $spinner-width;
12
12
  height: $spinner-height;
13
- vertical-align: text-bottom;
14
- border: $spinner-border-width solid currentColor;
13
+ vertical-align: $spinner-vertical-align;
14
+ border: $spinner-border-width solid currentcolor;
15
15
  border-right-color: transparent;
16
- // stylelint-disable-next-line property-blacklist
16
+ // stylelint-disable-next-line property-disallowed-list
17
17
  border-radius: 50%;
18
- animation: spinner-border .75s linear infinite;
18
+ animation: .75s linear infinite spinner-border;
19
19
  }
20
20
 
21
21
  .spinner-border-sm {
@@ -34,6 +34,7 @@
34
34
  }
35
35
  50% {
36
36
  opacity: 1;
37
+ transform: none;
37
38
  }
38
39
  }
39
40
 
@@ -41,15 +42,24 @@
41
42
  display: inline-block;
42
43
  width: $spinner-width;
43
44
  height: $spinner-height;
44
- vertical-align: text-bottom;
45
- background-color: currentColor;
46
- // stylelint-disable-next-line property-blacklist
45
+ vertical-align: $spinner-vertical-align;
46
+ background-color: currentcolor;
47
+ // stylelint-disable-next-line property-disallowed-list
47
48
  border-radius: 50%;
48
49
  opacity: 0;
49
- animation: spinner-grow .75s linear infinite;
50
+ animation: .75s linear infinite spinner-grow;
50
51
  }
51
52
 
52
53
  .spinner-grow-sm {
53
54
  width: $spinner-width-sm;
54
55
  height: $spinner-height-sm;
55
56
  }
57
+
58
+ @if $enable-prefers-reduced-motion-media-query {
59
+ @media (prefers-reduced-motion: reduce) {
60
+ .spinner-border,
61
+ .spinner-grow {
62
+ animation-duration: 1.5s;
63
+ }
64
+ }
65
+ }
@@ -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
  }
@@ -17,4 +17,10 @@
17
17
  height: 0;
18
18
  overflow: hidden;
19
19
  @include transition($transition-collapse);
20
+
21
+ &.width {
22
+ width: 0;
23
+ height: auto;
24
+ @include transition($transition-collapse-width);
25
+ }
20
26
  }
@@ -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
@@ -6,12 +6,13 @@
6
6
  @import "utilities/embed";
7
7
  @import "utilities/flex";
8
8
  @import "utilities/float";
9
+ @import "utilities/interactions";
9
10
  @import "utilities/overflow";
10
11
  @import "utilities/position";
11
12
  @import "utilities/screenreaders";
12
13
  @import "utilities/shadows";
13
14
  @import "utilities/sizing";
14
- @import "utilities/stretched-link";
15
15
  @import "utilities/spacing";
16
+ @import "utilities/stretched-link";
16
17
  @import "utilities/text";
17
18
  @import "utilities/visibility";
@@ -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,9 +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"),
103
+ ("<", "%3c"),
104
+ (">", "%3e"),
105
+ ("#", "%23"),
106
+ ("(", "%28"),
107
+ (")", "%29"),
109
108
  ) !default;
110
109
 
111
110
 
@@ -136,7 +135,6 @@ $enable-deprecation-messages: true !default;
136
135
 
137
136
  $spacer: 1rem !default;
138
137
  $spacers: () !default;
139
- // stylelint-disable-next-line scss/dollar-variable-default
140
138
  $spacers: map-merge(
141
139
  (
142
140
  0: 0,
@@ -151,7 +149,6 @@ $spacers: map-merge(
151
149
 
152
150
  // This variable affects the `.h-*` and `.w-*` classes.
153
151
  $sizes: () !default;
154
- // stylelint-disable-next-line scss/dollar-variable-default
155
152
  $sizes: map-merge(
156
153
  (
157
154
  25: 25%,
@@ -260,9 +257,9 @@ $caret-spacing: $caret-width * .85 !default;
260
257
  $transition-base: all .2s ease-in-out !default;
261
258
  $transition-fade: opacity .15s linear !default;
262
259
  $transition-collapse: height .35s ease !default;
260
+ $transition-collapse-width: width .35s ease !default;
263
261
 
264
262
  $embed-responsive-aspect-ratios: () !default;
265
- // stylelint-disable-next-line scss/dollar-variable-default
266
263
  $embed-responsive-aspect-ratios: join(
267
264
  (
268
265
  (21 9),
@@ -278,7 +275,7 @@ $embed-responsive-aspect-ratios: join(
278
275
  // Font, line-height, and color for body text, headings, and more.
279
276
 
280
277
  // stylelint-disable value-keyword-case
281
- $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;
278
+ $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;
282
279
  $font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !default;
283
280
  $font-family-base: $font-family-sans-serif !default;
284
281
  // stylelint-enable value-keyword-case
@@ -303,7 +300,7 @@ $h4-font-size: $font-size-base * 1.5 !default;
303
300
  $h5-font-size: $font-size-base * 1.25 !default;
304
301
  $h6-font-size: $font-size-base !default;
305
302
 
306
- $headings-margin-bottom: $spacer / 2 !default;
303
+ $headings-margin-bottom: $spacer * .5 !default;
307
304
  $headings-font-family: null !default;
308
305
  $headings-font-weight: 500 !default;
309
306
  $headings-line-height: 1.2 !default;
@@ -323,7 +320,7 @@ $display-line-height: $headings-line-height !default;
323
320
  $lead-font-size: $font-size-base * 1.25 !default;
324
321
  $lead-font-weight: 300 !default;
325
322
 
326
- $small-font-size: 80% !default;
323
+ $small-font-size: .875em !default;
327
324
 
328
325
  $text-muted: $gray-600 !default;
329
326
 
@@ -367,6 +364,7 @@ $table-border-color: $border-color !default;
367
364
 
368
365
  $table-head-bg: $gray-200 !default;
369
366
  $table-head-color: $gray-700 !default;
367
+ $table-th-font-weight: null !default;
370
368
 
371
369
  $table-dark-color: $white !default;
372
370
  $table-dark-bg: $gray-800 !default;
@@ -498,7 +496,7 @@ $input-height-border: $input-border-width * 2 !default;
498
496
 
499
497
  $input-height-inner: add($input-line-height * 1em, $input-padding-y * 2) !default;
500
498
  $input-height-inner-half: add($input-line-height * .5em, $input-padding-y) !default;
501
- $input-height-inner-quarter: add($input-line-height * .25em, $input-padding-y / 2) !default;
499
+ $input-height-inner-quarter: add($input-line-height * .25em, $input-padding-y * .5) !default;
502
500
 
503
501
  $input-height: add($input-line-height * 1em, add($input-padding-y * 2, $input-height-border, false)) !default;
504
502
  $input-height-sm: add($input-line-height-sm * 1em, add($input-padding-y-sm * 2, $input-height-border, false)) !default;
@@ -544,7 +542,7 @@ $custom-control-label-disabled-color: $gray-600 !default;
544
542
  $custom-control-indicator-checked-color: $component-active-color !default;
545
543
  $custom-control-indicator-checked-bg: $component-active-bg !default;
546
544
  $custom-control-indicator-checked-disabled-bg: rgba(theme-color("primary"), .5) !default;
547
- $custom-control-indicator-checked-box-shadow: none !default;
545
+ $custom-control-indicator-checked-box-shadow: null !default;
548
546
  $custom-control-indicator-checked-border-color: $custom-control-indicator-checked-bg !default;
549
547
 
550
548
  $custom-control-indicator-focus-box-shadow: $input-focus-box-shadow !default;
@@ -552,7 +550,7 @@ $custom-control-indicator-focus-border-color: $input-focus-border-color !defau
552
550
 
553
551
  $custom-control-indicator-active-color: $component-active-color !default;
554
552
  $custom-control-indicator-active-bg: lighten($component-active-bg, 35%) !default;
555
- $custom-control-indicator-active-box-shadow: none !default;
553
+ $custom-control-indicator-active-box-shadow: null !default;
556
554
  $custom-control-indicator-active-border-color: $custom-control-indicator-active-bg !default;
557
555
 
558
556
  $custom-checkbox-indicator-border-radius: $border-radius !default;
@@ -561,14 +559,14 @@ $custom-checkbox-indicator-icon-checked: url("data:image/svg+xml,<svg xml
561
559
  $custom-checkbox-indicator-indeterminate-bg: $component-active-bg !default;
562
560
  $custom-checkbox-indicator-indeterminate-color: $custom-control-indicator-checked-color !default;
563
561
  $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;
564
- $custom-checkbox-indicator-indeterminate-box-shadow: none !default;
562
+ $custom-checkbox-indicator-indeterminate-box-shadow: null !default;
565
563
  $custom-checkbox-indicator-indeterminate-border-color: $custom-checkbox-indicator-indeterminate-bg !default;
566
564
 
567
565
  $custom-radio-indicator-border-radius: 50% !default;
568
566
  $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;
569
567
 
570
568
  $custom-switch-width: $custom-control-indicator-size * 1.75 !default;
571
- $custom-switch-indicator-border-radius: $custom-control-indicator-size / 2 !default;
569
+ $custom-switch-indicator-border-radius: $custom-control-indicator-size * .5 !default;
572
570
  $custom-switch-indicator-size: subtract($custom-control-indicator-size, $custom-control-indicator-border-width * 4) !default;
573
571
 
574
572
  $custom-select-padding-y: $input-padding-y !default;
@@ -586,7 +584,7 @@ $custom-select-disabled-bg: $gray-200 !default;
586
584
  $custom-select-bg-size: 8px 10px !default; // In pixels because image dimensions
587
585
  $custom-select-indicator-color: $gray-800 !default;
588
586
  $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;
589
- $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)
587
+ $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)
590
588
 
591
589
  $custom-select-feedback-icon-padding-right: add(1em * .75, (2 * $custom-select-padding-y * .75) + $custom-select-padding-x + $custom-select-indicator-padding) !default;
592
590
  $custom-select-feedback-icon-position: center right ($custom-select-padding-x + $custom-select-indicator-padding) !default;
@@ -666,7 +664,6 @@ $form-feedback-icon-invalid-color: $form-feedback-invalid-color !default;
666
664
  $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;
667
665
 
668
666
  $form-validation-states: () !default;
669
- // stylelint-disable-next-line scss/dollar-variable-default
670
667
  $form-validation-states: map-merge(
671
668
  (
672
669
  "valid": (
@@ -714,12 +711,12 @@ $nav-pills-link-active-color: $component-active-color !default;
714
711
  $nav-pills-link-active-bg: $component-active-bg !default;
715
712
 
716
713
  $nav-divider-color: $gray-200 !default;
717
- $nav-divider-margin-y: $spacer / 2 !default;
714
+ $nav-divider-margin-y: $spacer * .5 !default;
718
715
 
719
716
 
720
717
  // Navbar
721
718
 
722
- $navbar-padding-y: $spacer / 2 !default;
719
+ $navbar-padding-y: $spacer * .5 !default;
723
720
  $navbar-padding-x: $spacer !default;
724
721
 
725
722
  $navbar-nav-link-padding-x: .5rem !default;
@@ -728,13 +725,15 @@ $navbar-brand-font-size: $font-size-lg !default;
728
725
  // Compute the navbar-brand padding-y so the navbar-brand will have the same height as navbar-text and nav-link
729
726
  $nav-link-height: $font-size-base * $line-height-base + $nav-link-padding-y * 2 !default;
730
727
  $navbar-brand-height: $navbar-brand-font-size * $line-height-base !default;
731
- $navbar-brand-padding-y: ($nav-link-height - $navbar-brand-height) / 2 !default;
728
+ $navbar-brand-padding-y: ($nav-link-height - $navbar-brand-height) * .5 !default;
732
729
 
733
730
  $navbar-toggler-padding-y: .25rem !default;
734
731
  $navbar-toggler-padding-x: .75rem !default;
735
732
  $navbar-toggler-font-size: $font-size-lg !default;
736
733
  $navbar-toggler-border-radius: $btn-border-radius !default;
737
734
 
735
+ $navbar-nav-scroll-max-height: 75vh !default;
736
+
738
737
  $navbar-dark-color: rgba($white, .5) !default;
739
738
  $navbar-dark-hover-color: rgba($white, .75) !default;
740
739
  $navbar-dark-active-color: $white !default;
@@ -760,6 +759,7 @@ $navbar-dark-brand-hover-color: $navbar-dark-active-color !default;
760
759
  // Dropdown menu container and contents.
761
760
 
762
761
  $dropdown-min-width: 10rem !default;
762
+ $dropdown-padding-x: 0 !default;
763
763
  $dropdown-padding-y: .5rem !default;
764
764
  $dropdown-spacer: .125rem !default;
765
765
  $dropdown-font-size: $font-size-base !default;
@@ -775,17 +775,18 @@ $dropdown-box-shadow: 0 .5rem 1rem rgba($black, .175) !default;
775
775
 
776
776
  $dropdown-link-color: $gray-900 !default;
777
777
  $dropdown-link-hover-color: darken($gray-900, 5%) !default;
778
- $dropdown-link-hover-bg: $gray-100 !default;
778
+ $dropdown-link-hover-bg: $gray-200 !default;
779
779
 
780
780
  $dropdown-link-active-color: $component-active-color !default;
781
781
  $dropdown-link-active-bg: $component-active-bg !default;
782
782
 
783
- $dropdown-link-disabled-color: $gray-600 !default;
783
+ $dropdown-link-disabled-color: $gray-500 !default;
784
784
 
785
785
  $dropdown-item-padding-y: .25rem !default;
786
786
  $dropdown-item-padding-x: 1.5rem !default;
787
787
 
788
788
  $dropdown-header-color: $gray-600 !default;
789
+ $dropdown-header-padding: $dropdown-padding-y $dropdown-item-padding-x !default;
789
790
 
790
791
 
791
792
  // Pagination
@@ -818,6 +819,9 @@ $pagination-disabled-color: $gray-600 !default;
818
819
  $pagination-disabled-bg: $white !default;
819
820
  $pagination-disabled-border-color: $gray-300 !default;
820
821
 
822
+ $pagination-border-radius-sm: $border-radius-sm !default;
823
+ $pagination-border-radius-lg: $border-radius-lg !default;
824
+
821
825
 
822
826
  // Jumbotron
823
827
 
@@ -842,7 +846,7 @@ $card-bg: $white !default;
842
846
 
843
847
  $card-img-overlay-padding: 1.25rem !default;
844
848
 
845
- $card-group-margin: $grid-gutter-width / 2 !default;
849
+ $card-group-margin: $grid-gutter-width * .5 !default;
846
850
  $card-deck-margin: $card-group-margin !default;
847
851
 
848
852
  $card-columns-count: 3 !default;
@@ -1098,9 +1102,10 @@ $carousel-transition: transform $carousel-transition-duration eas
1098
1102
 
1099
1103
  // Spinners
1100
1104
 
1101
- $spinner-width: 2rem !default;
1102
- $spinner-height: $spinner-width !default;
1103
- $spinner-border-width: .25em !default;
1105
+ $spinner-width: 2rem !default;
1106
+ $spinner-height: $spinner-width !default;
1107
+ $spinner-vertical-align: -.125em !default;
1108
+ $spinner-border-width: .25em !default;
1104
1109
 
1105
1110
  $spinner-width-sm: 1rem !default;
1106
1111
  $spinner-height-sm: $spinner-width-sm !default;
@@ -1135,6 +1140,7 @@ $pre-scrollable-max-height: 340px !default;
1135
1140
  $displays: none, inline, inline-block, block, table, table-row, table-cell, flex, inline-flex !default;
1136
1141
  $overflows: auto, hidden !default;
1137
1142
  $positions: static, relative, absolute, fixed, sticky !default;
1143
+ $user-selects: all, auto, none !default;
1138
1144
 
1139
1145
 
1140
1146
  // Printing
@@ -15,8 +15,9 @@
15
15
  @include deprecate("The `bg-variant` mixin", "v4.4.0", "v5", $ignore-warning);
16
16
  }
17
17
 
18
- @mixin bg-gradient-variant($parent, $color) {
18
+ @mixin bg-gradient-variant($parent, $color, $ignore-warning: false) {
19
19
  #{$parent} {
20
20
  background: $color linear-gradient(180deg, mix($body-bg, $color, 15%), $color) repeat-x !important;
21
21
  }
22
+ @include deprecate("The `bg-gradient-variant` mixin", "v4.5.0", "v5", $ignore-warning);
22
23
  }