bootstrap 5.0.0.alpha1 → 5.0.0.alpha2

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 (62) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -1
  3. data/README.md +1 -1
  4. data/assets/javascripts/bootstrap-sprockets.js +6 -6
  5. data/assets/javascripts/bootstrap.js +142 -155
  6. data/assets/javascripts/bootstrap.min.js +2 -2
  7. data/assets/javascripts/bootstrap/alert.js +17 -19
  8. data/assets/javascripts/bootstrap/button.js +14 -12
  9. data/assets/javascripts/bootstrap/carousel.js +47 -49
  10. data/assets/javascripts/bootstrap/collapse.js +50 -55
  11. data/assets/javascripts/bootstrap/dom/data.js +11 -11
  12. data/assets/javascripts/bootstrap/dom/event-handler.js +9 -5
  13. data/assets/javascripts/bootstrap/dom/manipulator.js +5 -9
  14. data/assets/javascripts/bootstrap/dom/polyfill.js +3 -3
  15. data/assets/javascripts/bootstrap/dom/selector-engine.js +3 -3
  16. data/assets/javascripts/bootstrap/dropdown.js +46 -48
  17. data/assets/javascripts/bootstrap/modal.js +77 -65
  18. data/assets/javascripts/bootstrap/popover.js +21 -23
  19. data/assets/javascripts/bootstrap/scrollspy.js +33 -39
  20. data/assets/javascripts/bootstrap/tab.js +24 -22
  21. data/assets/javascripts/bootstrap/toast.js +32 -28
  22. data/assets/javascripts/bootstrap/tooltip.js +67 -66
  23. data/assets/stylesheets/_bootstrap-grid.scss +2 -2
  24. data/assets/stylesheets/_bootstrap-reboot.scss +1 -1
  25. data/assets/stylesheets/_bootstrap.scss +1 -1
  26. data/assets/stylesheets/bootstrap/_alert.scss +3 -4
  27. data/assets/stylesheets/bootstrap/_card.scss +6 -4
  28. data/assets/stylesheets/bootstrap/_carousel.scss +17 -0
  29. data/assets/stylesheets/bootstrap/_close.scss +25 -20
  30. data/assets/stylesheets/bootstrap/_dropdown.scss +42 -1
  31. data/assets/stylesheets/bootstrap/_functions.scss +4 -1
  32. data/assets/stylesheets/bootstrap/_helpers.scss +2 -2
  33. data/assets/stylesheets/bootstrap/_list-group.scss +1 -1
  34. data/assets/stylesheets/bootstrap/_mixins.scss +1 -1
  35. data/assets/stylesheets/bootstrap/_modal.scss +7 -7
  36. data/assets/stylesheets/bootstrap/_nav.scss +4 -0
  37. data/assets/stylesheets/bootstrap/_navbar.scss +1 -0
  38. data/assets/stylesheets/bootstrap/_pagination.scss +3 -0
  39. data/assets/stylesheets/bootstrap/_reboot.scss +7 -6
  40. data/assets/stylesheets/bootstrap/_spinners.scss +2 -2
  41. data/assets/stylesheets/bootstrap/_tables.scss +1 -1
  42. data/assets/stylesheets/bootstrap/_toasts.scss +6 -2
  43. data/assets/stylesheets/bootstrap/_utilities.scss +29 -1
  44. data/assets/stylesheets/bootstrap/_variables.scss +92 -44
  45. data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +1 -1
  46. data/assets/stylesheets/bootstrap/forms/_form-check.scss +1 -1
  47. data/assets/stylesheets/bootstrap/forms/_input-group.scss +2 -2
  48. data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +1 -1
  49. data/assets/stylesheets/bootstrap/helpers/_ratio.scss +26 -0
  50. data/assets/stylesheets/bootstrap/helpers/_visually-hidden.scss +8 -0
  51. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +9 -9
  52. data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +7 -9
  53. data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +4 -3
  54. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +11 -8
  55. data/assets/stylesheets/bootstrap/mixins/_container.scss +5 -3
  56. data/assets/stylesheets/bootstrap/mixins/_grid.scss +6 -7
  57. data/assets/stylesheets/bootstrap/mixins/_transition.scss +1 -1
  58. data/assets/stylesheets/bootstrap/mixins/{_screen-reader.scss → _visually-hidden.scss} +5 -5
  59. data/lib/bootstrap/version.rb +2 -2
  60. metadata +5 -5
  61. data/assets/stylesheets/bootstrap/helpers/_embed.scss +0 -31
  62. data/assets/stylesheets/bootstrap/helpers/_screenreaders.scss +0 -8
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Bootstrap Grid v5.0.0-alpha1 (https://getbootstrap.com/)
2
+ * Bootstrap Grid v5.0.0-alpha2 (https://getbootstrap.com/)
3
3
  * Copyright 2011-2020 The Bootstrap Authors
4
4
  * Copyright 2011-2020 Twitter, Inc.
5
5
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
@@ -32,7 +32,7 @@ $utilities: map-get-multiple(
32
32
  "bootstrap/flex",
33
33
  "bootstrap/flex-direction",
34
34
  "bootstrap/flex-grow",
35
- "bootstrap/flex-shrink"
35
+ "bootstrap/flex-shrink",
36
36
  "bootstrap/flex-wrap",
37
37
  "bootstrap/justify-content",
38
38
  "bootstrap/align-items",
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Bootstrap Reboot v5.0.0-alpha1 (https://getbootstrap.com/)
2
+ * Bootstrap Reboot v5.0.0-alpha2 (https://getbootstrap.com/)
3
3
  * Copyright 2011-2020 The Bootstrap Authors
4
4
  * Copyright 2011-2020 Twitter, Inc.
5
5
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Bootstrap v5.0.0-alpha1 (https://getbootstrap.com/)
2
+ * Bootstrap v5.0.0-alpha2 (https://getbootstrap.com/)
3
3
  * Copyright 2011-2020 The Bootstrap Authors
4
4
  * Copyright 2011-2020 Twitter, Inc.
5
5
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
@@ -27,15 +27,14 @@
27
27
  // Expand the right padding and account for the close button's positioning.
28
28
 
29
29
  .alert-dismissible {
30
- padding-right: $close-font-size + $alert-padding-x * 2;
30
+ padding-right: $alert-dismissible-padding-r;
31
31
 
32
32
  // Adjust close link position
33
- .close {
33
+ .btn-close {
34
34
  position: absolute;
35
35
  top: 0;
36
36
  right: 0;
37
- padding: $alert-padding-y $alert-padding-x;
38
- color: inherit;
37
+ padding: $alert-padding-y * 1.25 $alert-padding-x;
39
38
  }
40
39
  }
41
40
 
@@ -185,12 +185,12 @@
185
185
 
186
186
  .card-img-top,
187
187
  .card-header {
188
- // stylelint-disable-next-line property-blacklist
188
+ // stylelint-disable-next-line property-disallowed-list
189
189
  border-top-right-radius: 0;
190
190
  }
191
191
  .card-img-bottom,
192
192
  .card-footer {
193
- // stylelint-disable-next-line property-blacklist
193
+ // stylelint-disable-next-line property-disallowed-list
194
194
  border-bottom-right-radius: 0;
195
195
  }
196
196
  }
@@ -200,12 +200,12 @@
200
200
 
201
201
  .card-img-top,
202
202
  .card-header {
203
- // stylelint-disable-next-line property-blacklist
203
+ // stylelint-disable-next-line property-disallowed-list
204
204
  border-top-left-radius: 0;
205
205
  }
206
206
  .card-img-bottom,
207
207
  .card-footer {
208
- // stylelint-disable-next-line property-blacklist
208
+ // stylelint-disable-next-line property-disallowed-list
209
209
  border-bottom-left-radius: 0;
210
210
  }
211
211
  }
@@ -220,6 +220,8 @@
220
220
  //
221
221
 
222
222
  .accordion {
223
+ overflow-anchor: none;
224
+
223
225
  > .card {
224
226
  overflow: hidden;
225
227
 
@@ -193,3 +193,20 @@
193
193
  color: $carousel-caption-color;
194
194
  text-align: center;
195
195
  }
196
+
197
+ // Dark mode carousel
198
+
199
+ .carousel-dark {
200
+ .carousel-control-prev-icon,
201
+ .carousel-control-next-icon {
202
+ filter: $carousel-dark-control-icon-filter;
203
+ }
204
+
205
+ .carousel-indicators li {
206
+ background-color: $carousel-dark-indicator-active-bg;
207
+ }
208
+
209
+ .carousel-caption {
210
+ color: $carousel-dark-caption-color;
211
+ }
212
+ }
@@ -1,36 +1,41 @@
1
- .close {
2
- @include font-size($close-font-size);
3
- font-weight: $close-font-weight;
4
- line-height: 1;
5
- color: $close-color;
6
- text-shadow: $close-text-shadow;
7
- opacity: .5;
1
+ // transparent background and border properties included for button version.
2
+ // iOS requires the button element instead of an anchor tag.
3
+ // If you want the anchor version, it requires `href="#"`.
4
+ // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile
5
+
6
+ .btn-close {
7
+ box-sizing: content-box;
8
+ width: $btn-close-width;
9
+ height: $btn-close-height;
10
+ padding: $btn-close-padding-y $btn-close-padding-x;
11
+ color: $btn-close-color;
12
+ background: transparent escape-svg($btn-close-bg) no-repeat center center / $btn-close-width auto; // include transparent for button elements
13
+ background-clip: content-box;
14
+ border: 0; // for button elements
15
+ @include border-radius();
16
+ opacity: $btn-close-opacity;
8
17
 
9
18
  // Override <a>'s hover style
10
19
  &:hover {
11
- color: $close-color;
20
+ color: $btn-close-color;
12
21
  text-decoration: none;
22
+ opacity: $btn-close-hover-opacity;
13
23
  }
14
24
 
15
- &:hover,
16
25
  &:focus {
17
- opacity: .75;
26
+ outline: none;
27
+ box-shadow: $btn-close-focus-shadow;
28
+ opacity: $btn-close-focus-opacity;
18
29
  }
19
30
 
20
31
  &:disabled,
21
32
  &.disabled {
22
33
  pointer-events: none;
34
+ user-select: none;
35
+ opacity: $btn-close-disabled-opacity;
23
36
  }
24
37
  }
25
38
 
26
- // Additional properties for button version
27
- // iOS requires the button element instead of an anchor tag.
28
- // If you want the anchor version, it requires `href="#"`.
29
- // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile
30
-
31
- // stylelint-disable-next-line selector-no-qualifying-type
32
- button.close {
33
- padding: 0;
34
- background-color: transparent;
35
- border: 0;
39
+ .btn-close-white {
40
+ filter: $btn-close-white-filter;
36
41
  }
@@ -21,7 +21,7 @@
21
21
  z-index: $zindex-dropdown;
22
22
  display: none; // none by default, but block on "open" of the menu
23
23
  min-width: $dropdown-min-width;
24
- padding: $dropdown-padding-y 0;
24
+ padding: $dropdown-padding-y $dropdown-padding-x;
25
25
  margin: $dropdown-spacer 0 0; // override default ul
26
26
  @include font-size($dropdown-font-size);
27
27
  color: $dropdown-color;
@@ -193,3 +193,44 @@
193
193
  padding: $dropdown-item-padding-y $dropdown-item-padding-x;
194
194
  color: $dropdown-link-color;
195
195
  }
196
+
197
+ // Dark dropdowns
198
+ .dropdown-menu-dark {
199
+ color: $dropdown-dark-color;
200
+ background-color: $dropdown-dark-bg;
201
+ border-color: $dropdown-dark-border-color;
202
+ @include box-shadow($dropdown-dark-box-shadow);
203
+
204
+ .dropdown-item {
205
+ color: $dropdown-dark-link-color;
206
+
207
+ &:hover,
208
+ &:focus {
209
+ color: $dropdown-dark-link-hover-color;
210
+ @include gradient-bg($dropdown-dark-link-hover-bg);
211
+ }
212
+
213
+ &.active,
214
+ &:active {
215
+ color: $dropdown-dark-link-active-color;
216
+ @include gradient-bg($dropdown-dark-link-active-bg);
217
+ }
218
+
219
+ &.disabled,
220
+ &:disabled {
221
+ color: $dropdown-dark-link-disabled-color;
222
+ }
223
+ }
224
+
225
+ .dropdown-divider {
226
+ border-color: $dropdown-dark-divider-bg;
227
+ }
228
+
229
+ .dropdown-item-text {
230
+ color: $dropdown-dark-link-color;
231
+ }
232
+
233
+ .dropdown-header {
234
+ color: $dropdown-dark-header-color;
235
+ }
236
+ }
@@ -74,6 +74,9 @@
74
74
  }
75
75
 
76
76
  // See https://codepen.io/kevinweber/pen/dXWoRw
77
+ //
78
+ // Requires the use of quotes around data URIs.
79
+
77
80
  @function escape-svg($string) {
78
81
  @if str-index($string, "data:image/svg+xml") {
79
82
  @each $char, $encoded in $escaped-characters {
@@ -111,7 +114,7 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003
111
114
  }
112
115
  }
113
116
 
114
- @warn "Found no color leading to #{$min-contrast-ratio}:1 contrast ratio against #{$background}";
117
+ @warn "Found no color leading to #{$min-contrast-ratio}:1 contrast ratio against #{$background}...";
115
118
 
116
119
  @return $max-ratio-color;
117
120
  }
@@ -1,7 +1,7 @@
1
1
  @import "helpers/clearfix";
2
2
  @import "helpers/colored-links";
3
- @import "helpers/embed";
3
+ @import "helpers/ratio";
4
4
  @import "helpers/position";
5
- @import "helpers/screenreaders";
5
+ @import "helpers/visually-hidden";
6
6
  @import "helpers/stretched-link";
7
7
  @import "helpers/text-truncation";
@@ -112,7 +112,7 @@
112
112
  margin-top: 0;
113
113
  }
114
114
 
115
- & + .list-group-item {
115
+ + .list-group-item {
116
116
  border-top-width: $list-group-border-width;
117
117
  border-left-width: 0;
118
118
 
@@ -12,7 +12,7 @@
12
12
  @import "mixins/breakpoints";
13
13
  @import "mixins/image";
14
14
  @import "mixins/resize";
15
- @import "mixins/screen-reader";
15
+ @import "mixins/visually-hidden";
16
16
  @import "mixins/reset-text";
17
17
  @import "mixins/text-truncate";
18
18
 
@@ -56,9 +56,10 @@
56
56
  }
57
57
 
58
58
  .modal-dialog-scrollable {
59
- max-height: subtract(100%, $modal-dialog-margin * 2);
59
+ height: subtract(100%, $modal-dialog-margin * 2);
60
60
 
61
61
  .modal-content {
62
+ max-height: 100%;
62
63
  overflow: hidden;
63
64
  }
64
65
 
@@ -111,16 +112,15 @@
111
112
  .modal-header {
112
113
  display: flex;
113
114
  flex-shrink: 0;
114
- align-items: flex-start; // so the close btn always stays on the upper right corner
115
+ align-items: center;
115
116
  justify-content: space-between; // Put modal header elements (title and dismiss) on opposite ends
116
117
  padding: $modal-header-padding;
117
118
  border-bottom: $modal-header-border-width solid $modal-header-border-color;
118
119
  @include border-top-radius($modal-content-inner-border-radius);
119
120
 
120
- .close {
121
- padding: $modal-header-padding;
122
- // auto on the left force icon to the right even when there is no .modal-title
123
- margin: (-$modal-header-padding-y) (-$modal-header-padding-x) (-$modal-header-padding-y) auto;
121
+ .btn-close {
122
+ padding: ($modal-header-padding-y / 2) ($modal-header-padding-x / 2);
123
+ margin: ($modal-header-padding-y / -2) ($modal-header-padding-x / -2) ($modal-header-padding-y / -2) auto;
124
124
  }
125
125
  }
126
126
 
@@ -177,7 +177,7 @@
177
177
  }
178
178
 
179
179
  .modal-dialog-scrollable {
180
- max-height: subtract(100%, $modal-dialog-margin-y-sm-up * 2);
180
+ height: subtract(100%, $modal-dialog-margin-y-sm-up * 2);
181
181
  }
182
182
 
183
183
  .modal-dialog-centered {
@@ -14,11 +14,15 @@
14
14
  .nav-link {
15
15
  display: block;
16
16
  padding: $nav-link-padding-y $nav-link-padding-x;
17
+ @include font-size($nav-link-font-size);
18
+ font-weight: $nav-link-font-weight;
19
+ color: $nav-link-color;
17
20
  text-decoration: if($link-decoration == none, null, none);
18
21
  @include transition($nav-link-transition);
19
22
 
20
23
  &:hover,
21
24
  &:focus {
25
+ color: $nav-link-hover-color;
22
26
  text-decoration: if($link-hover-decoration == underline, none, null);
23
27
  }
24
28
 
@@ -155,6 +155,7 @@
155
155
  $next: breakpoint-next($breakpoint, $grid-breakpoints);
156
156
  $infix: breakpoint-infix($next, $grid-breakpoints);
157
157
 
158
+ // stylelint-disable-next-line scss/selector-no-union-class-name
158
159
  &#{$infix} {
159
160
  @include media-breakpoint-up($next) {
160
161
  flex-wrap: nowrap;
@@ -10,6 +10,7 @@
10
10
  text-decoration: if($link-decoration == none, null, none);
11
11
  background-color: $pagination-bg;
12
12
  border: $pagination-border-width solid $pagination-border-color;
13
+ @include transition($pagination-transition);
13
14
 
14
15
  &:hover {
15
16
  z-index: 2;
@@ -21,6 +22,8 @@
21
22
 
22
23
  &:focus {
23
24
  z-index: 3;
25
+ color: $pagination-focus-color;
26
+ background-color: $pagination-focus-bg;
24
27
  outline: $pagination-focus-outline;
25
28
  box-shadow: $pagination-focus-box-shadow;
26
29
  }
@@ -69,7 +69,6 @@ body {
69
69
  //
70
70
  // 1. Reset Firefox's gray color
71
71
  // 2. Set correct height and prevent the `size` attribute to make the `hr` look like an input field
72
- // See https://www.w3schools.com/tags/tryit.asp?filename=tryhtml_hr_size
73
72
 
74
73
  hr {
75
74
  margin: $hr-margin-y 0;
@@ -369,12 +368,14 @@ caption {
369
368
  text-align: left;
370
369
  }
371
370
 
372
- // 1. Matches default `<td>` alignment by inheriting `text-align`.
373
- // 2. Fix alignment for Safari
371
+ // 1. Removes font-weight bold by inheriting
372
+ // 2. Matches default `<td>` alignment by inheriting `text-align`.
373
+ // 3. Fix alignment for Safari
374
374
 
375
375
  th {
376
- text-align: inherit; // 1
377
- text-align: -webkit-match-parent; // 2
376
+ font-weight: $table-th-font-weight; // 1
377
+ text-align: inherit; // 2
378
+ text-align: -webkit-match-parent; // 3
378
379
  }
379
380
 
380
381
  thead,
@@ -401,7 +402,7 @@ label {
401
402
  // See https://github.com/twbs/bootstrap/issues/24093
402
403
 
403
404
  button {
404
- // stylelint-disable-next-line property-blacklist
405
+ // stylelint-disable-next-line property-disallowed-list
405
406
  border-radius: 0;
406
407
  }
407
408
 
@@ -13,7 +13,7 @@
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
18
  animation: spinner-border $spinner-animation-speed linear infinite;
19
19
  }
@@ -44,7 +44,7 @@
44
44
  height: $spinner-height;
45
45
  vertical-align: text-bottom;
46
46
  background-color: currentColor;
47
- // stylelint-disable-next-line property-blacklist
47
+ // stylelint-disable-next-line property-disallowed-list
48
48
  border-radius: 50%;
49
49
  opacity: 0;
50
50
  animation: spinner-grow $spinner-animation-speed linear infinite;
@@ -40,7 +40,7 @@
40
40
 
41
41
  // Highlight border color between thead, tbody and tfoot.
42
42
  > :not(:last-child) > :last-child > * {
43
- border-bottom-color: $table-group-seperator-color;
43
+ border-bottom-color: $table-group-separator-color;
44
44
  }
45
45
  }
46
46
 
@@ -1,13 +1,11 @@
1
1
  .toast {
2
2
  max-width: $toast-max-width;
3
- overflow: hidden; // cheap rounded corners on nested items
4
3
  @include font-size($toast-font-size);
5
4
  color: $toast-color;
6
5
  background-color: $toast-background-color;
7
6
  background-clip: padding-box;
8
7
  border: $toast-border-width solid $toast-border-color;
9
8
  box-shadow: $toast-box-shadow;
10
- backdrop-filter: blur(10px);
11
9
  opacity: 0;
12
10
  @include border-radius($toast-border-radius);
13
11
 
@@ -37,6 +35,12 @@
37
35
  background-color: $toast-header-background-color;
38
36
  background-clip: padding-box;
39
37
  border-bottom: $toast-border-width solid $toast-header-border-color;
38
+ @include border-top-radius(subtract($toast-border-radius, $toast-border-width));
39
+
40
+ .btn-close {
41
+ margin-right: $toast-padding-x / -2;
42
+ margin-left: $toast-padding-x;
43
+ }
40
44
  }
41
45
 
42
46
  .toast-body {