bootstrap 5.0.0.alpha1 → 5.0.0.alpha2

Sign up to get free protection for your applications and to get access to all the features.
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 {