bootstrap 4.3.1 → 4.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (86) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +15 -1
  3. data/CHANGELOG.md +2 -14
  4. data/README.md +1 -1
  5. data/assets/javascripts/bootstrap-sprockets.js +7 -7
  6. data/assets/javascripts/bootstrap.js +1073 -1076
  7. data/assets/javascripts/bootstrap.min.js +4 -4
  8. data/assets/javascripts/bootstrap/alert.js +42 -49
  9. data/assets/javascripts/bootstrap/button.js +111 -64
  10. data/assets/javascripts/bootstrap/carousel.js +162 -177
  11. data/assets/javascripts/bootstrap/collapse.js +97 -122
  12. data/assets/javascripts/bootstrap/dropdown.js +163 -189
  13. data/assets/javascripts/bootstrap/modal.js +213 -194
  14. data/assets/javascripts/bootstrap/popover.js +51 -72
  15. data/assets/javascripts/bootstrap/scrollspy.js +80 -109
  16. data/assets/javascripts/bootstrap/tab.js +72 -79
  17. data/assets/javascripts/bootstrap/toast.js +96 -107
  18. data/assets/javascripts/bootstrap/tooltip.js +186 -201
  19. data/assets/javascripts/bootstrap/util.js +41 -20
  20. data/assets/stylesheets/_bootstrap-grid.scss +5 -4
  21. data/assets/stylesheets/_bootstrap-reboot.scss +4 -4
  22. data/assets/stylesheets/_bootstrap.scss +4 -4
  23. data/assets/stylesheets/bootstrap/_alert.scss +1 -0
  24. data/assets/stylesheets/bootstrap/_badge.scss +1 -1
  25. data/assets/stylesheets/bootstrap/_breadcrumb.scss +3 -2
  26. data/assets/stylesheets/bootstrap/_button-group.scss +1 -1
  27. data/assets/stylesheets/bootstrap/_buttons.scss +13 -8
  28. data/assets/stylesheets/bootstrap/_card.scss +42 -45
  29. data/assets/stylesheets/bootstrap/_carousel.scss +7 -7
  30. data/assets/stylesheets/bootstrap/_close.scss +2 -3
  31. data/assets/stylesheets/bootstrap/_code.scss +1 -1
  32. data/assets/stylesheets/bootstrap/_custom-forms.scss +38 -19
  33. data/assets/stylesheets/bootstrap/_dropdown.scss +7 -6
  34. data/assets/stylesheets/bootstrap/_forms.scss +26 -9
  35. data/assets/stylesheets/bootstrap/_functions.scss +63 -5
  36. data/assets/stylesheets/bootstrap/_grid.scss +32 -11
  37. data/assets/stylesheets/bootstrap/_images.scss +2 -2
  38. data/assets/stylesheets/bootstrap/_input-group.scss +21 -6
  39. data/assets/stylesheets/bootstrap/_list-group.scss +36 -31
  40. data/assets/stylesheets/bootstrap/_mixins.scss +3 -3
  41. data/assets/stylesheets/bootstrap/_modal.scss +26 -15
  42. data/assets/stylesheets/bootstrap/_nav.scss +7 -7
  43. data/assets/stylesheets/bootstrap/_navbar.scss +55 -17
  44. data/assets/stylesheets/bootstrap/_pagination.scss +5 -4
  45. data/assets/stylesheets/bootstrap/_popover.scss +8 -9
  46. data/assets/stylesheets/bootstrap/_print.scss +2 -2
  47. data/assets/stylesheets/bootstrap/_progress.scss +7 -3
  48. data/assets/stylesheets/bootstrap/_reboot.scss +39 -38
  49. data/assets/stylesheets/bootstrap/_spinners.scss +14 -4
  50. data/assets/stylesheets/bootstrap/_tables.scss +3 -3
  51. data/assets/stylesheets/bootstrap/_toasts.scss +4 -2
  52. data/assets/stylesheets/bootstrap/_type.scss +3 -3
  53. data/assets/stylesheets/bootstrap/_utilities.scss +2 -1
  54. data/assets/stylesheets/bootstrap/_variables.scss +58 -35
  55. data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +5 -3
  56. data/assets/stylesheets/bootstrap/mixins/_badge.scss +1 -1
  57. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +27 -14
  58. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +11 -8
  59. data/assets/stylesheets/bootstrap/mixins/_caret.scss +8 -8
  60. data/assets/stylesheets/bootstrap/mixins/_float.scss +3 -3
  61. data/assets/stylesheets/bootstrap/mixins/_forms.scss +42 -49
  62. data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +29 -15
  63. data/assets/stylesheets/bootstrap/mixins/_grid.scss +25 -7
  64. data/assets/stylesheets/bootstrap/mixins/_hover.scss +4 -4
  65. data/assets/stylesheets/bootstrap/mixins/_image.scss +2 -2
  66. data/assets/stylesheets/bootstrap/mixins/_list-group.scss +1 -1
  67. data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
  68. data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +2 -1
  69. data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +1 -1
  70. data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +4 -3
  71. data/assets/stylesheets/bootstrap/mixins/_table-row.scss +1 -1
  72. data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +3 -2
  73. data/assets/stylesheets/bootstrap/mixins/_transition.scss +18 -8
  74. data/assets/stylesheets/bootstrap/utilities/_background.scss +2 -2
  75. data/assets/stylesheets/bootstrap/utilities/_borders.scss +1 -1
  76. data/assets/stylesheets/bootstrap/utilities/_interactions.scss +5 -0
  77. data/assets/stylesheets/bootstrap/utilities/_text.scss +4 -4
  78. data/bootstrap.gemspec +1 -1
  79. data/lib/bootstrap/version.rb +2 -2
  80. data/tasks/updater/network.rb +2 -2
  81. data/test/dummy_rails/app/assets/config/manifest.js +3 -0
  82. data/test/dummy_rails/app/assets/stylesheets/.browserslistrc +1 -0
  83. data/test/gemfiles/rails_6_0.gemfile +7 -0
  84. data/test/support/dummy_rails_integration.rb +3 -1
  85. data/test/test_helper.rb +18 -13
  86. metadata +11 -5
@@ -11,6 +11,7 @@
11
11
  margin-left: -$pagination-border-width;
12
12
  line-height: $pagination-line-height;
13
13
  color: $pagination-color;
14
+ text-decoration: if($link-decoration == none, null, none);
14
15
  background-color: $pagination-bg;
15
16
  border: $pagination-border-width solid $pagination-border-color;
16
17
 
@@ -23,7 +24,7 @@
23
24
  }
24
25
 
25
26
  &:focus {
26
- z-index: 2;
27
+ z-index: 3;
27
28
  outline: $pagination-focus-outline;
28
29
  box-shadow: $pagination-focus-box-shadow;
29
30
  }
@@ -43,7 +44,7 @@
43
44
  }
44
45
 
45
46
  &.active .page-link {
46
- z-index: 1;
47
+ z-index: 3;
47
48
  color: $pagination-active-color;
48
49
  background-color: $pagination-active-bg;
49
50
  border-color: $pagination-active-border-color;
@@ -65,9 +66,9 @@
65
66
  //
66
67
 
67
68
  .pagination-lg {
68
- @include pagination-size($pagination-padding-y-lg, $pagination-padding-x-lg, $font-size-lg, $line-height-lg, $border-radius-lg);
69
+ @include pagination-size($pagination-padding-y-lg, $pagination-padding-x-lg, $font-size-lg, $line-height-lg, $pagination-border-radius-lg);
69
70
  }
70
71
 
71
72
  .pagination-sm {
72
- @include pagination-size($pagination-padding-y-sm, $pagination-padding-x-sm, $font-size-sm, $line-height-sm, $border-radius-sm);
73
+ @include pagination-size($pagination-padding-y-sm, $pagination-padding-x-sm, $font-size-sm, $line-height-sm, $pagination-border-radius-sm);
73
74
  }
@@ -22,7 +22,7 @@
22
22
  display: block;
23
23
  width: $popover-arrow-width;
24
24
  height: $popover-arrow-height;
25
- margin: 0 $border-radius-lg;
25
+ margin: 0 $popover-border-radius;
26
26
 
27
27
  &::before,
28
28
  &::after {
@@ -39,7 +39,7 @@
39
39
  margin-bottom: $popover-arrow-height;
40
40
 
41
41
  > .arrow {
42
- bottom: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
42
+ bottom: subtract(-$popover-arrow-height, $popover-border-width);
43
43
 
44
44
  &::before {
45
45
  bottom: 0;
@@ -59,10 +59,10 @@
59
59
  margin-left: $popover-arrow-height;
60
60
 
61
61
  > .arrow {
62
- left: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
62
+ left: subtract(-$popover-arrow-height, $popover-border-width);
63
63
  width: $popover-arrow-height;
64
64
  height: $popover-arrow-width;
65
- margin: $border-radius-lg 0; // make sure the arrow does not touch the popover's rounded corners
65
+ margin: $popover-border-radius 0; // make sure the arrow does not touch the popover's rounded corners
66
66
 
67
67
  &::before {
68
68
  left: 0;
@@ -82,7 +82,7 @@
82
82
  margin-top: $popover-arrow-height;
83
83
 
84
84
  > .arrow {
85
- top: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
85
+ top: subtract(-$popover-arrow-height, $popover-border-width);
86
86
 
87
87
  &::before {
88
88
  top: 0;
@@ -114,10 +114,10 @@
114
114
  margin-right: $popover-arrow-height;
115
115
 
116
116
  > .arrow {
117
- right: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
117
+ right: subtract(-$popover-arrow-height, $popover-border-width);
118
118
  width: $popover-arrow-height;
119
119
  height: $popover-arrow-width;
120
- margin: $border-radius-lg 0; // make sure the arrow does not touch the popover's rounded corners
120
+ margin: $popover-border-radius 0; // make sure the arrow does not touch the popover's rounded corners
121
121
 
122
122
  &::before {
123
123
  right: 0;
@@ -157,8 +157,7 @@
157
157
  color: $popover-header-color;
158
158
  background-color: $popover-header-bg;
159
159
  border-bottom: $popover-border-width solid darken($popover-header-bg, 5%);
160
- $offset-border-width: calc(#{$border-radius-lg} - #{$popover-border-width});
161
- @include border-top-radius($offset-border-width);
160
+ @include border-top-radius($popover-inner-border-radius);
162
161
 
163
162
  &:empty {
164
163
  display: none;
@@ -1,6 +1,6 @@
1
1
  // stylelint-disable declaration-no-important, selector-no-qualifying-type
2
2
 
3
- // Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css
3
+ // Source: https://github.com/h5bp/main.css/blob/master/src/_print.css
4
4
 
5
5
  // ==========================================================================
6
6
  // Print styles.
@@ -57,7 +57,7 @@
57
57
 
58
58
  //
59
59
  // Printing Tables:
60
- // http://css-discuss.incutio.com/wiki/Printing_Tables
60
+ // https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
61
61
  //
62
62
 
63
63
  thead {
@@ -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);
@@ -20,6 +21,7 @@
20
21
  display: flex;
21
22
  flex-direction: column;
22
23
  justify-content: center;
24
+ overflow: hidden;
23
25
  color: $progress-bar-color;
24
26
  text-align: center;
25
27
  white-space: nowrap;
@@ -34,10 +36,12 @@
34
36
 
35
37
  @if $enable-transitions {
36
38
  .progress-bar-animated {
37
- animation: progress-bar-stripes $progress-bar-animation-timing;
39
+ animation: $progress-bar-animation-timing progress-bar-stripes;
38
40
 
39
- @media (prefers-reduced-motion: reduce) {
40
- animation: none;
41
+ @if $enable-prefers-reduced-motion-media-query {
42
+ @media (prefers-reduced-motion: reduce) {
43
+ animation: none;
44
+ }
41
45
  }
42
46
  }
43
47
  }
@@ -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
  //
@@ -54,12 +54,16 @@ body {
54
54
  background-color: $body-bg; // 2
55
55
  }
56
56
 
57
- // Suppress the focus outline on elements that cannot be accessed via keyboard.
58
- // This prevents an unwanted focus outline from appearing around elements that
59
- // might still respond to pointer events.
57
+ // Future-proof rule: in browsers that support :focus-visible, suppress the focus outline
58
+ // on elements that programmatically receive focus but wouldn't normally show a visible
59
+ // focus outline. In general, this would mean that the outline is only applied if the
60
+ // interaction that led to the element receiving programmatic focus was a keyboard interaction,
61
+ // or the browser has somehow determined that the user is primarily a keyboard user and/or
62
+ // wants focus outlines to always be presented.
60
63
  //
61
- // Credit: https://github.com/suitcss/base
62
- [tabindex="-1"]:focus {
64
+ // See https://developer.mozilla.org/en-US/docs/Web/CSS/:focus-visible
65
+ // and https://developer.paciellogroup.com/blog/2018/03/focus-visible-and-backwards-compatibility/
66
+ [tabindex="-1"]:focus:not(:focus-visible) {
63
67
  outline: 0 !important;
64
68
  }
65
69
 
@@ -184,30 +188,25 @@ a {
184
188
  text-decoration: $link-decoration;
185
189
  background-color: transparent; // Remove the gray background on active links in IE 10.
186
190
 
187
- @include hover {
191
+ @include hover() {
188
192
  color: $link-hover-color;
189
193
  text-decoration: $link-hover-decoration;
190
194
  }
191
195
  }
192
196
 
193
- // And undo these styles for placeholder links/named anchors (without href)
194
- // which have not been made explicitly keyboard-focusable (without tabindex).
197
+ // And undo these styles for placeholder links/named anchors (without href).
195
198
  // It would be more straightforward to just use a[href] in previous block, but that
196
199
  // causes specificity issues in many other styles that are too complex to fix.
197
200
  // See https://github.com/twbs/bootstrap/issues/19402
198
201
 
199
- a:not([href]):not([tabindex]) {
202
+ a:not([href]):not([class]) {
200
203
  color: inherit;
201
204
  text-decoration: none;
202
205
 
203
- @include hover-focus {
206
+ @include hover() {
204
207
  color: inherit;
205
208
  text-decoration: none;
206
209
  }
207
-
208
- &:focus {
209
- outline: 0;
210
- }
211
210
  }
212
211
 
213
212
 
@@ -230,6 +229,9 @@ pre {
230
229
  margin-bottom: 1rem;
231
230
  // Don't allow content to break outside
232
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;
233
235
  }
234
236
 
235
237
 
@@ -276,10 +278,14 @@ caption {
276
278
  caption-side: bottom;
277
279
  }
278
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
+
279
285
  th {
280
- // Matches default `<td>` alignment by inheriting from the `<body>`, or the
281
- // closest parent with a set `text-align`.
282
- text-align: inherit;
286
+ font-weight: $table-th-font-weight; // 1
287
+ text-align: inherit; // 2
288
+ text-align: -webkit-match-parent; // 3
283
289
  }
284
290
 
285
291
 
@@ -297,17 +303,17 @@ label {
297
303
  //
298
304
  // Details at https://github.com/twbs/bootstrap/issues/24093
299
305
  button {
300
- // stylelint-disable-next-line property-blacklist
306
+ // stylelint-disable-next-line property-disallowed-list
301
307
  border-radius: 0;
302
308
  }
303
309
 
304
- // Work around a Firefox/IE bug where the transparent `button` background
305
- // results in a loss of the default `button` focus styles.
306
- //
307
- // Credit: https://github.com/suitcss/base/
308
- button:focus {
309
- outline: 1px dotted;
310
- 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;
311
317
  }
312
318
 
313
319
  input,
@@ -331,6 +337,13 @@ select {
331
337
  text-transform: none; // Remove the inheritance of text transform in Firefox
332
338
  }
333
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
+
334
347
  // Remove the inheritance of word-wrap in Safari.
335
348
  //
336
349
  // Details at https://github.com/twbs/bootstrap/issues/24990
@@ -377,18 +390,6 @@ input[type="checkbox"] {
377
390
  }
378
391
 
379
392
 
380
- input[type="date"],
381
- input[type="time"],
382
- input[type="datetime-local"],
383
- input[type="month"] {
384
- // Remove the default appearance of temporal inputs to avoid a Mobile Safari
385
- // bug where setting a custom line-height prevents text from being vertically
386
- // centered within the input.
387
- // See https://bugs.webkit.org/show_bug.cgi?id=139848
388
- // and https://github.com/twbs/bootstrap/issues/11266
389
- -webkit-appearance: listbox;
390
- }
391
-
392
393
  textarea {
393
394
  overflow: auto; // Remove the default vertical scrollbar in IE.
394
395
  // Textareas should really only resize vertically so they don't break their (horizontal) containers.
@@ -13,9 +13,9 @@
13
13
  vertical-align: text-bottom;
14
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
 
@@ -43,13 +44,22 @@
43
44
  height: $spinner-height;
44
45
  vertical-align: text-bottom;
45
46
  background-color: currentColor;
46
- // stylelint-disable-next-line property-blacklist
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
+ }
@@ -84,7 +84,7 @@
84
84
 
85
85
  .table-hover {
86
86
  tbody tr {
87
- @include hover {
87
+ @include hover() {
88
88
  color: $table-hover-color;
89
89
  background-color: $table-hover-bg;
90
90
  }
@@ -142,14 +142,14 @@
142
142
  }
143
143
 
144
144
  &.table-striped {
145
- tbody tr:nth-of-type(odd) {
145
+ tbody tr:nth-of-type(#{$table-striped-order}) {
146
146
  background-color: $table-dark-accent-bg;
147
147
  }
148
148
  }
149
149
 
150
150
  &.table-hover {
151
151
  tbody tr {
152
- @include hover {
152
+ @include hover() {
153
153
  color: $table-dark-hover-color;
154
154
  background-color: $table-dark-hover-bg;
155
155
  }
@@ -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 {
@@ -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
@@ -82,12 +82,12 @@ mark,
82
82
  //
83
83
 
84
84
  .list-unstyled {
85
- @include list-unstyled;
85
+ @include list-unstyled();
86
86
  }
87
87
 
88
88
  // Inline turns list items into inline-block
89
89
  .list-inline {
90
- @include list-unstyled;
90
+ @include list-unstyled();
91
91
  }
92
92
  .list-inline-item {
93
93
  display: inline-block;
@@ -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,
@@ -101,6 +98,15 @@ $yiq-contrasted-threshold: 150 !default;
101
98
  $yiq-text-dark: $gray-900 !default;
102
99
  $yiq-text-light: $white !default;
103
100
 
101
+ // Characters which are escaped by the escape-svg function
102
+ $escaped-characters: (
103
+ ("<", "%3c"),
104
+ (">", "%3e"),
105
+ ("#", "%23"),
106
+ ("(", "%28"),
107
+ (")", "%29"),
108
+ ) !default;
109
+
104
110
 
105
111
  // Options
106
112
  //
@@ -129,7 +135,6 @@ $enable-deprecation-messages: true !default;
129
135
 
130
136
  $spacer: 1rem !default;
131
137
  $spacers: () !default;
132
- // stylelint-disable-next-line scss/dollar-variable-default
133
138
  $spacers: map-merge(
134
139
  (
135
140
  0: 0,
@@ -144,7 +149,6 @@ $spacers: map-merge(
144
149
 
145
150
  // This variable affects the `.h-*` and `.w-*` classes.
146
151
  $sizes: () !default;
147
- // stylelint-disable-next-line scss/dollar-variable-default
148
152
  $sizes: map-merge(
149
153
  (
150
154
  25: 25%,
@@ -220,6 +224,7 @@ $container-max-widths: (
220
224
 
221
225
  $grid-columns: 12 !default;
222
226
  $grid-gutter-width: 30px !default;
227
+ $grid-row-columns: 6 !default;
223
228
 
224
229
 
225
230
  // Components
@@ -254,7 +259,6 @@ $transition-fade: opacity .15s linear !default;
254
259
  $transition-collapse: height .35s ease !default;
255
260
 
256
261
  $embed-responsive-aspect-ratios: () !default;
257
- // stylelint-disable-next-line scss/dollar-variable-default
258
262
  $embed-responsive-aspect-ratios: join(
259
263
  (
260
264
  (21 9),
@@ -270,7 +274,7 @@ $embed-responsive-aspect-ratios: join(
270
274
  // Font, line-height, and color for body text, headings, and more.
271
275
 
272
276
  // stylelint-disable value-keyword-case
273
- $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;
274
278
  $font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !default;
275
279
  $font-family-base: $font-family-sans-serif !default;
276
280
  // stylelint-enable value-keyword-case
@@ -359,6 +363,7 @@ $table-border-color: $border-color !default;
359
363
 
360
364
  $table-head-bg: $gray-200 !default;
361
365
  $table-head-color: $gray-700 !default;
366
+ $table-th-font-weight: null !default;
362
367
 
363
368
  $table-dark-color: $white !default;
364
369
  $table-dark-bg: $gray-800 !default;
@@ -366,7 +371,6 @@ $table-dark-accent-bg: rgba($white, .05) !default;
366
371
  $table-dark-hover-color: $table-dark-color !default;
367
372
  $table-dark-hover-bg: rgba($white, .075) !default;
368
373
  $table-dark-border-color: lighten($table-dark-bg, 7.5%) !default;
369
- $table-dark-color: $white !default;
370
374
 
371
375
  $table-striped-order: odd !default;
372
376
 
@@ -412,6 +416,7 @@ $btn-padding-x: $input-btn-padding-x !default;
412
416
  $btn-font-family: $input-btn-font-family !default;
413
417
  $btn-font-size: $input-btn-font-size !default;
414
418
  $btn-line-height: $input-btn-line-height !default;
419
+ $btn-white-space: null !default; // Set to `nowrap` to prevent text wrapping
415
420
 
416
421
  $btn-padding-y-sm: $input-btn-padding-y-sm !default;
417
422
  $btn-padding-x-sm: $input-btn-padding-x-sm !default;
@@ -488,13 +493,13 @@ $input-plaintext-color: $body-color !default;
488
493
 
489
494
  $input-height-border: $input-border-width * 2 !default;
490
495
 
491
- $input-height-inner: calc(#{$input-line-height * 1em} + #{$input-padding-y * 2}) !default;
492
- $input-height-inner-half: calc(#{$input-line-height * .5em} + #{$input-padding-y}) !default;
493
- $input-height-inner-quarter: calc(#{$input-line-height * .25em} + #{$input-padding-y / 2}) !default;
496
+ $input-height-inner: add($input-line-height * 1em, $input-padding-y * 2) !default;
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;
494
499
 
495
- $input-height: calc(#{$input-line-height * 1em} + #{$input-padding-y * 2} + #{$input-height-border}) !default;
496
- $input-height-sm: calc(#{$input-line-height-sm * 1em} + #{$input-btn-padding-y-sm * 2} + #{$input-height-border}) !default;
497
- $input-height-lg: calc(#{$input-line-height-lg * 1em} + #{$input-btn-padding-y-lg * 2} + #{$input-height-border}) !default;
500
+ $input-height: add($input-line-height * 1em, add($input-padding-y * 2, $input-height-border, false)) !default;
501
+ $input-height-sm: add($input-line-height-sm * 1em, add($input-padding-y-sm * 2, $input-height-border, false)) !default;
502
+ $input-height-lg: add($input-line-height-lg * 1em, add($input-padding-y-lg * 2, $input-height-border, false)) !default;
498
503
 
499
504
  $input-transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;
500
505
 
@@ -518,6 +523,7 @@ $custom-forms-transition: background-color .15s ease-in-out, borde
518
523
 
519
524
  $custom-control-gutter: .5rem !default;
520
525
  $custom-control-spacer-x: 1rem !default;
526
+ $custom-control-cursor: null !default;
521
527
 
522
528
  $custom-control-indicator-size: 1rem !default;
523
529
  $custom-control-indicator-bg: $input-bg !default;
@@ -527,13 +533,15 @@ $custom-control-indicator-box-shadow: $input-box-shadow !default;
527
533
  $custom-control-indicator-border-color: $gray-500 !default;
528
534
  $custom-control-indicator-border-width: $input-border-width !default;
529
535
 
536
+ $custom-control-label-color: null !default;
537
+
530
538
  $custom-control-indicator-disabled-bg: $input-disabled-bg !default;
531
539
  $custom-control-label-disabled-color: $gray-600 !default;
532
540
 
533
541
  $custom-control-indicator-checked-color: $component-active-color !default;
534
542
  $custom-control-indicator-checked-bg: $component-active-bg !default;
535
543
  $custom-control-indicator-checked-disabled-bg: rgba(theme-color("primary"), .5) !default;
536
- $custom-control-indicator-checked-box-shadow: none !default;
544
+ $custom-control-indicator-checked-box-shadow: null !default;
537
545
  $custom-control-indicator-checked-border-color: $custom-control-indicator-checked-bg !default;
538
546
 
539
547
  $custom-control-indicator-focus-box-shadow: $input-focus-box-shadow !default;
@@ -541,24 +549,24 @@ $custom-control-indicator-focus-border-color: $input-focus-border-color !defau
541
549
 
542
550
  $custom-control-indicator-active-color: $component-active-color !default;
543
551
  $custom-control-indicator-active-bg: lighten($component-active-bg, 35%) !default;
544
- $custom-control-indicator-active-box-shadow: none !default;
552
+ $custom-control-indicator-active-box-shadow: null !default;
545
553
  $custom-control-indicator-active-border-color: $custom-control-indicator-active-bg !default;
546
554
 
547
555
  $custom-checkbox-indicator-border-radius: $border-radius !default;
548
- $custom-checkbox-indicator-icon-checked: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='#{$custom-control-indicator-checked-color}' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e"), "#", "%23") !default;
556
+ $custom-checkbox-indicator-icon-checked: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'><path fill='#{$custom-control-indicator-checked-color}' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/></svg>") !default;
549
557
 
550
558
  $custom-checkbox-indicator-indeterminate-bg: $component-active-bg !default;
551
559
  $custom-checkbox-indicator-indeterminate-color: $custom-control-indicator-checked-color !default;
552
- $custom-checkbox-indicator-icon-indeterminate: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='#{$custom-checkbox-indicator-indeterminate-color}' d='M0 2h4'/%3e%3c/svg%3e"), "#", "%23") !default;
553
- $custom-checkbox-indicator-indeterminate-box-shadow: none !default;
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;
561
+ $custom-checkbox-indicator-indeterminate-box-shadow: null !default;
554
562
  $custom-checkbox-indicator-indeterminate-border-color: $custom-checkbox-indicator-indeterminate-bg !default;
555
563
 
556
564
  $custom-radio-indicator-border-radius: 50% !default;
557
- $custom-radio-indicator-icon-checked: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='#{$custom-control-indicator-checked-color}'/%3e%3c/svg%3e"), "#", "%23") !default;
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;
558
566
 
559
567
  $custom-switch-width: $custom-control-indicator-size * 1.75 !default;
560
568
  $custom-switch-indicator-border-radius: $custom-control-indicator-size / 2 !default;
561
- $custom-switch-indicator-size: calc(#{$custom-control-indicator-size} - #{$custom-control-indicator-border-width * 4}) !default;
569
+ $custom-switch-indicator-size: subtract($custom-control-indicator-size, $custom-control-indicator-border-width * 4) !default;
562
570
 
563
571
  $custom-select-padding-y: $input-padding-y !default;
564
572
  $custom-select-padding-x: $input-padding-x !default;
@@ -574,10 +582,10 @@ $custom-select-bg: $input-bg !default;
574
582
  $custom-select-disabled-bg: $gray-200 !default;
575
583
  $custom-select-bg-size: 8px 10px !default; // In pixels because image dimensions
576
584
  $custom-select-indicator-color: $gray-800 !default;
577
- $custom-select-indicator: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='#{$custom-select-indicator-color}' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e"), "#", "%23") !default;
578
- $custom-select-background: $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)
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;
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)
579
587
 
580
- $custom-select-feedback-icon-padding-right: calc((1em + #{2 * $custom-select-padding-y}) * 3 / 4 + #{$custom-select-padding-x + $custom-select-indicator-padding}) !default;
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;
581
589
  $custom-select-feedback-icon-position: center right ($custom-select-padding-x + $custom-select-indicator-padding) !default;
582
590
  $custom-select-feedback-icon-size: $input-height-inner-half $input-height-inner-half !default;
583
591
 
@@ -650,12 +658,11 @@ $form-feedback-valid-color: theme-color("success") !default;
650
658
  $form-feedback-invalid-color: theme-color("danger") !default;
651
659
 
652
660
  $form-feedback-icon-valid-color: $form-feedback-valid-color !default;
653
- $form-feedback-icon-valid: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='#{$form-feedback-icon-valid-color}' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"), "#", "%23") !default;
661
+ $form-feedback-icon-valid: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'><path fill='#{$form-feedback-icon-valid-color}' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/></svg>") !default;
654
662
  $form-feedback-icon-invalid-color: $form-feedback-invalid-color !default;
655
- $form-feedback-icon-invalid: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='#{$form-feedback-icon-invalid-color}' viewBox='-2 -2 7 7'%3e%3cpath stroke='#{$form-feedback-icon-invalid-color}' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E"), "#", "%23") !default;
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;
656
664
 
657
665
  $form-validation-states: () !default;
658
- // stylelint-disable-next-line scss/dollar-variable-default
659
666
  $form-validation-states: map-merge(
660
667
  (
661
668
  "valid": (
@@ -724,18 +731,20 @@ $navbar-toggler-padding-x: .75rem !default;
724
731
  $navbar-toggler-font-size: $font-size-lg !default;
725
732
  $navbar-toggler-border-radius: $btn-border-radius !default;
726
733
 
734
+ $navbar-nav-scroll-max-height: 75vh !default;
735
+
727
736
  $navbar-dark-color: rgba($white, .5) !default;
728
737
  $navbar-dark-hover-color: rgba($white, .75) !default;
729
738
  $navbar-dark-active-color: $white !default;
730
739
  $navbar-dark-disabled-color: rgba($white, .25) !default;
731
- $navbar-dark-toggler-icon-bg: str-replace(url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='#{$navbar-dark-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"), "#", "%23") !default;
740
+ $navbar-dark-toggler-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'><path stroke='#{$navbar-dark-color}' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>") !default;
732
741
  $navbar-dark-toggler-border-color: rgba($white, .1) !default;
733
742
 
734
743
  $navbar-light-color: rgba($black, .5) !default;
735
744
  $navbar-light-hover-color: rgba($black, .7) !default;
736
745
  $navbar-light-active-color: rgba($black, .9) !default;
737
746
  $navbar-light-disabled-color: rgba($black, .3) !default;
738
- $navbar-light-toggler-icon-bg: str-replace(url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='#{$navbar-light-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"), "#", "%23") !default;
747
+ $navbar-light-toggler-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'><path stroke='#{$navbar-light-color}' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>") !default;
739
748
  $navbar-light-toggler-border-color: rgba($black, .1) !default;
740
749
 
741
750
  $navbar-light-brand-color: $navbar-light-active-color !default;
@@ -749,6 +758,7 @@ $navbar-dark-brand-hover-color: $navbar-dark-active-color !default;
749
758
  // Dropdown menu container and contents.
750
759
 
751
760
  $dropdown-min-width: 10rem !default;
761
+ $dropdown-padding-x: 0 !default;
752
762
  $dropdown-padding-y: .5rem !default;
753
763
  $dropdown-spacer: .125rem !default;
754
764
  $dropdown-font-size: $font-size-base !default;
@@ -757,24 +767,25 @@ $dropdown-bg: $white !default;
757
767
  $dropdown-border-color: rgba($black, .15) !default;
758
768
  $dropdown-border-radius: $border-radius !default;
759
769
  $dropdown-border-width: $border-width !default;
760
- $dropdown-inner-border-radius: calc(#{$dropdown-border-radius} - #{$dropdown-border-width}) !default;
770
+ $dropdown-inner-border-radius: subtract($dropdown-border-radius, $dropdown-border-width) !default;
761
771
  $dropdown-divider-bg: $gray-200 !default;
762
772
  $dropdown-divider-margin-y: $nav-divider-margin-y !default;
763
773
  $dropdown-box-shadow: 0 .5rem 1rem rgba($black, .175) !default;
764
774
 
765
775
  $dropdown-link-color: $gray-900 !default;
766
776
  $dropdown-link-hover-color: darken($gray-900, 5%) !default;
767
- $dropdown-link-hover-bg: $gray-100 !default;
777
+ $dropdown-link-hover-bg: $gray-200 !default;
768
778
 
769
779
  $dropdown-link-active-color: $component-active-color !default;
770
780
  $dropdown-link-active-bg: $component-active-bg !default;
771
781
 
772
- $dropdown-link-disabled-color: $gray-600 !default;
782
+ $dropdown-link-disabled-color: $gray-500 !default;
773
783
 
774
784
  $dropdown-item-padding-y: .25rem !default;
775
785
  $dropdown-item-padding-x: 1.5rem !default;
776
786
 
777
787
  $dropdown-header-color: $gray-600 !default;
788
+ $dropdown-header-padding: $dropdown-padding-y $dropdown-item-padding-x !default;
778
789
 
779
790
 
780
791
  // Pagination
@@ -807,6 +818,8 @@ $pagination-disabled-color: $gray-600 !default;
807
818
  $pagination-disabled-bg: $white !default;
808
819
  $pagination-disabled-border-color: $gray-300 !default;
809
820
 
821
+ $pagination-border-radius-sm: $border-radius-sm !default;
822
+ $pagination-border-radius-lg: $border-radius-lg !default;
810
823
 
811
824
  // Jumbotron
812
825
 
@@ -822,9 +835,10 @@ $card-spacer-x: 1.25rem !default;
822
835
  $card-border-width: $border-width !default;
823
836
  $card-border-radius: $border-radius !default;
824
837
  $card-border-color: rgba($black, .125) !default;
825
- $card-inner-border-radius: calc(#{$card-border-radius} - #{$card-border-width}) !default;
838
+ $card-inner-border-radius: subtract($card-border-radius, $card-border-width) !default;
826
839
  $card-cap-bg: rgba($black, .03) !default;
827
840
  $card-cap-color: null !default;
841
+ $card-height: null !default;
828
842
  $card-color: null !default;
829
843
  $card-bg: $white !default;
830
844
 
@@ -871,6 +885,7 @@ $popover-max-width: 276px !default;
871
885
  $popover-border-width: $border-width !default;
872
886
  $popover-border-color: rgba($black, .2) !default;
873
887
  $popover-border-radius: $border-radius-lg !default;
888
+ $popover-inner-border-radius: subtract($popover-border-radius, $popover-border-width) !default;
874
889
  $popover-box-shadow: 0 .25rem .5rem rgba($black, .2) !default;
875
890
 
876
891
  $popover-header-bg: darken($popover-bg, 3%) !default;
@@ -929,6 +944,9 @@ $badge-pill-border-radius: 10rem !default;
929
944
  // Padding applied to the modal body
930
945
  $modal-inner-padding: 1rem !default;
931
946
 
947
+ // Margin between elements in footer, must be lower than or equal to 2 * $modal-inner-padding
948
+ $modal-footer-margin-between: .5rem !default;
949
+
932
950
  $modal-dialog-margin: .5rem !default;
933
951
  $modal-dialog-margin-y-sm-up: 1.75rem !default;
934
952
 
@@ -939,6 +957,7 @@ $modal-content-bg: $white !default;
939
957
  $modal-content-border-color: rgba($black, .2) !default;
940
958
  $modal-content-border-width: $border-width !default;
941
959
  $modal-content-border-radius: $border-radius-lg !default;
960
+ $modal-content-inner-border-radius: subtract($modal-content-border-radius, $modal-content-border-width) !default;
942
961
  $modal-content-box-shadow-xs: 0 .25rem .5rem rgba($black, .5) !default;
943
962
  $modal-content-box-shadow-sm-up: 0 .5rem 1rem rgba($black, .5) !default;
944
963
 
@@ -960,6 +979,7 @@ $modal-sm: 300px !default;
960
979
  $modal-fade-transform: translate(0, -50px) !default;
961
980
  $modal-show-transform: none !default;
962
981
  $modal-transition: transform .3s ease-out !default;
982
+ $modal-scale-transform: scale(1.02) !default;
963
983
 
964
984
 
965
985
  // Alerts
@@ -1035,6 +1055,8 @@ $figure-caption-color: $gray-600 !default;
1035
1055
 
1036
1056
  // Breadcrumbs
1037
1057
 
1058
+ $breadcrumb-font-size: null !default;
1059
+
1038
1060
  $breadcrumb-padding-y: .75rem !default;
1039
1061
  $breadcrumb-padding-x: 1rem !default;
1040
1062
  $breadcrumb-item-padding: .5rem !default;
@@ -1069,8 +1091,8 @@ $carousel-caption-color: $white !default;
1069
1091
 
1070
1092
  $carousel-control-icon-width: 20px !default;
1071
1093
 
1072
- $carousel-control-prev-icon-bg: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e"), "#", "%23") !default;
1073
- $carousel-control-next-icon-bg: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e"), "#", "%23") !default;
1094
+ $carousel-control-prev-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' width='8' height='8' viewBox='0 0 8 8'><path d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/></svg>") !default;
1095
+ $carousel-control-next-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' width='8' height='8' viewBox='0 0 8 8'><path d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/></svg>") !default;
1074
1096
 
1075
1097
  $carousel-transition-duration: .6s !default;
1076
1098
  $carousel-transition: transform $carousel-transition-duration ease-in-out !default; // Define transform transition first if using multiple transitions (e.g., `transform 2s ease, opacity .5s ease-out`)
@@ -1115,6 +1137,7 @@ $pre-scrollable-max-height: 340px !default;
1115
1137
  $displays: none, inline, inline-block, block, table, table-row, table-cell, flex, inline-flex !default;
1116
1138
  $overflows: auto, hidden !default;
1117
1139
  $positions: static, relative, absolute, fixed, sticky !default;
1140
+ $user-selects: all, auto, none !default;
1118
1141
 
1119
1142
 
1120
1143
  // Printing