bootstrap 5.0.0.beta2 → 5.0.0.beta3

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 (54) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/assets/javascripts/bootstrap-sprockets.js +1 -0
  4. data/assets/javascripts/bootstrap.js +2051 -2009
  5. data/assets/javascripts/bootstrap.min.js +2 -2
  6. data/assets/javascripts/bootstrap/alert.js +75 -118
  7. data/assets/javascripts/bootstrap/base-component.js +23 -37
  8. data/assets/javascripts/bootstrap/button.js +39 -78
  9. data/assets/javascripts/bootstrap/carousel.js +284 -364
  10. data/assets/javascripts/bootstrap/collapse.js +178 -247
  11. data/assets/javascripts/bootstrap/dom/data.js +34 -47
  12. data/assets/javascripts/bootstrap/dom/event-handler.js +71 -77
  13. data/assets/javascripts/bootstrap/dom/manipulator.js +23 -21
  14. data/assets/javascripts/bootstrap/dom/selector-engine.js +20 -28
  15. data/assets/javascripts/bootstrap/dropdown.js +195 -265
  16. data/assets/javascripts/bootstrap/modal.js +256 -344
  17. data/assets/javascripts/bootstrap/offcanvas.js +508 -0
  18. data/assets/javascripts/bootstrap/popover.js +88 -157
  19. data/assets/javascripts/bootstrap/scrollspy.js +134 -212
  20. data/assets/javascripts/bootstrap/tab.js +108 -142
  21. data/assets/javascripts/bootstrap/toast.js +113 -183
  22. data/assets/javascripts/bootstrap/tooltip.js +297 -392
  23. data/assets/stylesheets/_bootstrap-grid.scss +1 -1
  24. data/assets/stylesheets/_bootstrap-reboot.scss +1 -1
  25. data/assets/stylesheets/_bootstrap.scss +2 -1
  26. data/assets/stylesheets/bootstrap/_accordion.scss +22 -32
  27. data/assets/stylesheets/bootstrap/_buttons.scss +2 -0
  28. data/assets/stylesheets/bootstrap/_card.scss +1 -1
  29. data/assets/stylesheets/bootstrap/_dropdown.scss +3 -6
  30. data/assets/stylesheets/bootstrap/_list-group.scss +11 -0
  31. data/assets/stylesheets/bootstrap/_modal.scss +2 -0
  32. data/assets/stylesheets/bootstrap/_nav.scss +7 -0
  33. data/assets/stylesheets/bootstrap/_navbar.scss +2 -0
  34. data/assets/stylesheets/bootstrap/_offcanvas.scss +77 -0
  35. data/assets/stylesheets/bootstrap/_progress.scss +3 -0
  36. data/assets/stylesheets/bootstrap/_reboot.scss +7 -21
  37. data/assets/stylesheets/bootstrap/_spinners.scss +4 -0
  38. data/assets/stylesheets/bootstrap/_transitions.scss +2 -0
  39. data/assets/stylesheets/bootstrap/_utilities.scss +65 -37
  40. data/assets/stylesheets/bootstrap/_variables.scss +138 -30
  41. data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +1 -1
  42. data/assets/stylesheets/bootstrap/forms/_form-control.scss +0 -4
  43. data/assets/stylesheets/bootstrap/mixins/_alert.scss +2 -0
  44. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +2 -0
  45. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +6 -1
  46. data/assets/stylesheets/bootstrap/mixins/_caret.scss +2 -0
  47. data/assets/stylesheets/bootstrap/mixins/_forms.scss +11 -1
  48. data/assets/stylesheets/bootstrap/mixins/_list-group.scss +2 -0
  49. data/assets/stylesheets/bootstrap/mixins/_pagination.scss +2 -0
  50. data/bootstrap.gemspec +1 -1
  51. data/lib/bootstrap/version.rb +2 -2
  52. data/tasks/updater/js.rb +1 -1
  53. data/tasks/updater/network.rb +7 -1
  54. metadata +6 -4
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Bootstrap Grid v5.0.0-beta2 (https://getbootstrap.com/)
2
+ * Bootstrap Grid v5.0.0-beta3 (https://getbootstrap.com/)
3
3
  * Copyright 2011-2021 The Bootstrap Authors
4
4
  * Copyright 2011-2021 Twitter, Inc.
5
5
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Bootstrap Reboot v5.0.0-beta2 (https://getbootstrap.com/)
2
+ * Bootstrap Reboot v5.0.0-beta3 (https://getbootstrap.com/)
3
3
  * Copyright 2011-2021 The Bootstrap Authors
4
4
  * Copyright 2011-2021 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-beta2 (https://getbootstrap.com/)
2
+ * Bootstrap v5.0.0-beta3 (https://getbootstrap.com/)
3
3
  * Copyright 2011-2021 The Bootstrap Authors
4
4
  * Copyright 2011-2021 Twitter, Inc.
5
5
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
@@ -42,6 +42,7 @@
42
42
  @import "bootstrap/popover";
43
43
  @import "bootstrap/carousel";
44
44
  @import "bootstrap/spinners";
45
+ @import "bootstrap/offcanvas";
45
46
 
46
47
  // Helpers
47
48
  @import "bootstrap/helpers";
@@ -12,18 +12,15 @@
12
12
  color: $accordion-button-color;
13
13
  text-align: left; // Reset button style
14
14
  background-color: $accordion-button-bg;
15
- border: $accordion-border-width solid $accordion-border-color;
15
+ border: 0;
16
16
  @include border-radius(0);
17
17
  overflow-anchor: none;
18
18
  @include transition($accordion-transition);
19
19
 
20
- &.collapsed {
21
- border-bottom-width: 0;
22
- }
23
-
24
20
  &:not(.collapsed) {
25
21
  color: $accordion-button-active-color;
26
22
  background-color: $accordion-button-active-bg;
23
+ box-shadow: inset 0 ($accordion-border-width * -1) 0 $accordion-border-color;
27
24
 
28
25
  &::after {
29
26
  background-image: escape-svg($accordion-button-active-icon);
@@ -61,33 +58,35 @@
61
58
  }
62
59
 
63
60
  .accordion-item {
61
+ margin-bottom: -$accordion-border-width;
62
+ background-color: $accordion-bg;
63
+ border: $accordion-border-width solid $accordion-border-color;
64
+
64
65
  &:first-of-type {
66
+ @include border-top-radius($accordion-border-radius);
67
+
65
68
  .accordion-button {
66
- @include border-top-radius($accordion-border-radius);
69
+ @include border-top-radius($accordion-inner-border-radius);
67
70
  }
68
71
  }
69
72
 
73
+ // Only set a border-radius on the last item if the accordion is collapsed
70
74
  &:last-of-type {
75
+ margin-bottom: 0;
76
+ @include border-bottom-radius($accordion-border-radius);
77
+
71
78
  .accordion-button {
72
- // Only set a border-radius on the last item if the accordion is collapsed
73
79
  &.collapsed {
74
- border-bottom-width: $accordion-border-width;
75
- @include border-bottom-radius($accordion-border-radius);
80
+ @include border-bottom-radius($accordion-inner-border-radius);
76
81
  }
77
82
  }
78
83
 
79
84
  .accordion-collapse {
80
- border-bottom-width: $accordion-border-width;
81
85
  @include border-bottom-radius($accordion-border-radius);
82
86
  }
83
87
  }
84
88
  }
85
89
 
86
- .accordion-collapse {
87
- border: solid $accordion-border-color;
88
- border-width: 0 $accordion-border-width;
89
- }
90
-
91
90
  .accordion-body {
92
91
  padding: $accordion-body-padding-y $accordion-body-padding-x;
93
92
  }
@@ -98,29 +97,20 @@
98
97
  // Remove borders and border-radius to keep accordion items edge-to-edge.
99
98
 
100
99
  .accordion-flush {
101
- .accordion-button {
102
- border-right: 0;
103
- border-left: 0;
104
- @include border-radius(0);
105
- }
106
-
107
100
  .accordion-collapse {
108
101
  border-width: 0;
109
102
  }
110
103
 
111
104
  .accordion-item {
112
- &:first-of-type {
113
- .accordion-button {
114
- border-top-width: 0;
115
- @include border-top-radius(0);
116
- }
117
- }
105
+ border-right: 0;
106
+ border-left: 0;
107
+ @include border-radius(0);
118
108
 
119
- &:last-of-type {
120
- .accordion-button.collapsed {
121
- border-bottom-width: 0;
122
- @include border-bottom-radius(0);
123
- }
109
+ &:first-child { border-top: 0; }
110
+ &:last-child { border-bottom: 0; }
111
+
112
+ .accordion-button {
113
+ @include border-radius(0);
124
114
  }
125
115
  }
126
116
  }
@@ -55,6 +55,7 @@
55
55
  // Alternate buttons
56
56
  //
57
57
 
58
+ // scss-docs-start btn-variant-loops
58
59
  @each $color, $value in $theme-colors {
59
60
  .btn-#{$color} {
60
61
  @include button-variant($value, $value);
@@ -66,6 +67,7 @@
66
67
  @include button-outline-variant($value);
67
68
  }
68
69
  }
70
+ // scss-docs-end btn-variant-loops
69
71
 
70
72
 
71
73
  //
@@ -69,7 +69,7 @@
69
69
  }
70
70
 
71
71
  + .card-link {
72
- margin-left: $card-spacer-x #{"/* rtl:ignore */"};
72
+ margin-left: $card-spacer-x;
73
73
  }
74
74
  }
75
75
 
@@ -70,14 +70,11 @@
70
70
  // Allow for dropdowns to go bottom up (aka, dropup-menu)
71
71
  // Just add .dropup after the standard .dropdown class and you're set.
72
72
  .dropup {
73
- .dropdown-menu {
73
+ .dropdown-menu[data-bs-popper] {
74
74
  top: auto;
75
75
  bottom: 100%;
76
-
77
- &[data-bs-popper] {
78
- margin-top: 0;
79
- margin-bottom: $dropdown-spacer;
80
- }
76
+ margin-top: 0;
77
+ margin-bottom: $dropdown-spacer;
81
78
  }
82
79
 
83
80
  .dropdown-toggle {
@@ -12,6 +12,17 @@
12
12
  @include border-radius($list-group-border-radius);
13
13
  }
14
14
 
15
+ .list-group-numbered {
16
+ list-style-type: none;
17
+ counter-reset: section;
18
+
19
+ > li::before {
20
+ // Increments only this instance of the section counter
21
+ content: counters(section, ".") ". ";
22
+ counter-increment: section;
23
+ }
24
+ }
25
+
15
26
 
16
27
  // Interactive list items
17
28
  //
@@ -202,6 +202,7 @@
202
202
  .modal-xl { max-width: $modal-xl; }
203
203
  }
204
204
 
205
+ // scss-docs-start modal-fullscreen-loop
205
206
  @each $breakpoint in map-keys($grid-breakpoints) {
206
207
  $infix: breakpoint-infix($breakpoint, $grid-breakpoints);
207
208
  $postfix: if($infix != "", $infix + "-down", "");
@@ -233,3 +234,4 @@
233
234
  }
234
235
  }
235
236
  }
237
+ // scss-docs-end modal-fullscreen-loop
@@ -117,6 +117,13 @@
117
117
  }
118
118
  }
119
119
 
120
+ .nav-fill,
121
+ .nav-justified {
122
+ .nav-item .nav-link {
123
+ width: 100%; // Make sure button will grow
124
+ }
125
+ }
126
+
120
127
 
121
128
  // Tabbable tabs
122
129
  //
@@ -154,6 +154,7 @@
154
154
  overflow-y: auto;
155
155
  }
156
156
 
157
+ // scss-docs-start navbar-expand-loop
157
158
  // Generate series of `.navbar-expand-*` responsive classes for configuring
158
159
  // where your navbar collapses.
159
160
  .navbar-expand {
@@ -196,6 +197,7 @@
196
197
  }
197
198
  }
198
199
  }
200
+ // scss-docs-end navbar-expand-loop
199
201
 
200
202
 
201
203
  // Navbar themes
@@ -0,0 +1,77 @@
1
+ .offcanvas {
2
+ position: fixed;
3
+ bottom: 0;
4
+ z-index: $zindex-offcanvas;
5
+ display: flex;
6
+ flex-direction: column;
7
+ max-width: 100%;
8
+ color: $offcanvas-color;
9
+ visibility: hidden;
10
+ background-color: $offcanvas-bg-color;
11
+ background-clip: padding-box;
12
+ outline: 0;
13
+ @include box-shadow($offcanvas-box-shadow);
14
+ @include transition(transform $offcanvas-transition-duration ease-in-out);
15
+ }
16
+
17
+ .offcanvas-header {
18
+ display: flex;
19
+ justify-content: space-between;
20
+ padding: $offcanvas-padding-y $offcanvas-padding-x;
21
+
22
+ .btn-close {
23
+ padding: ($offcanvas-padding-y / 2) ($offcanvas-padding-x / 2);
24
+ margin: ($offcanvas-padding-y / -2) ($offcanvas-padding-x / -2) ($offcanvas-padding-y / -2) auto;
25
+ }
26
+ }
27
+
28
+ .offcanvas-title {
29
+ margin-bottom: 0;
30
+ line-height: $offcanvas-title-line-height;
31
+ }
32
+
33
+ .offcanvas-body {
34
+ flex-grow: 1;
35
+ padding: $offcanvas-padding-y $offcanvas-padding-x;
36
+ overflow-y: auto;
37
+ }
38
+
39
+ .offcanvas-start {
40
+ top: 0;
41
+ left: 0;
42
+ width: $offcanvas-horizontal-width;
43
+ border-right: $offcanvas-border-width solid $offcanvas-border-color;
44
+ transform: translateX(-100%);
45
+ }
46
+
47
+ .offcanvas-end {
48
+ top: 0;
49
+ right: 0;
50
+ width: $offcanvas-horizontal-width;
51
+ border-left: $offcanvas-border-width solid $offcanvas-border-color;
52
+ transform: translateX(100%);
53
+ }
54
+
55
+ .offcanvas-bottom {
56
+ right: 0;
57
+ left: 0;
58
+ height: $offcanvas-vertical-height;
59
+ max-height: 100%;
60
+ border-top: $offcanvas-border-width solid $offcanvas-border-color;
61
+ transform: translateY(100%);
62
+ }
63
+
64
+ .offcanvas.show {
65
+ transform: none;
66
+ }
67
+
68
+ .offcanvas-backdrop::before {
69
+ position: fixed;
70
+ top: 0;
71
+ left: 0;
72
+ z-index: $zindex-offcanvas - 1;
73
+ width: 100vw;
74
+ height: 100vh;
75
+ content: "";
76
+ background-color: $offcanvas-body-backdrop-color;
77
+ }
@@ -1,9 +1,12 @@
1
1
  // Disable animation if transitions are disabled
2
+
3
+ // scss-docs-start progress-keyframes
2
4
  @if $enable-transitions {
3
5
  @keyframes progress-bar-stripes {
4
6
  0% { background-position-x: $progress-height; }
5
7
  }
6
8
  }
9
+ // scss-docs-end progress-keyframes
7
10
 
8
11
  .progress {
9
12
  display: flex;
@@ -57,20 +57,6 @@ body {
57
57
  }
58
58
 
59
59
 
60
- // Future-proof rule: in browsers that support :focus-visible, suppress the focus outline
61
- // on elements that programmatically receive focus but wouldn't normally show a visible
62
- // focus outline. In general, this would mean that the outline is only applied if the
63
- // interaction that led to the element receiving programmatic focus was a keyboard interaction,
64
- // or the browser has somehow determined that the user is primarily a keyboard user and/or
65
- // wants focus outlines to always be presented.
66
- // See https://developer.mozilla.org/en-US/docs/Web/CSS/:focus-visible
67
- // and https://developer.paciellogroup.com/blog/2018/03/focus-visible-and-backwards-compatibility/
68
-
69
- [tabindex="-1"]:focus:not(:focus-visible) {
70
- outline: 0 !important;
71
- }
72
-
73
-
74
60
  // Content grouping
75
61
  //
76
62
  // 1. Reset Firefox's gray color
@@ -156,7 +142,6 @@ p {
156
142
 
157
143
  abbr[title],
158
144
  abbr[data-bs-original-title] { // 1
159
- text-decoration: underline; // 2
160
145
  text-decoration: underline dotted; // 2
161
146
  cursor: help; // 3
162
147
  text-decoration-skip-ink: none; // 4
@@ -434,12 +419,10 @@ textarea {
434
419
  }
435
420
 
436
421
  // Remove the inheritance of text transform in Firefox
437
-
438
422
  button,
439
423
  select {
440
424
  text-transform: none;
441
425
  }
442
-
443
426
  // Set the cursor for non-`<button>` buttons
444
427
  //
445
428
  // Details at https://github.com/twbs/bootstrap/pull/30562
@@ -447,11 +430,15 @@ select {
447
430
  cursor: pointer;
448
431
  }
449
432
 
450
- // Remove the inheritance of word-wrap in Safari.
451
- // See https://github.com/twbs/bootstrap/issues/24990
452
-
453
433
  select {
434
+ // Remove the inheritance of word-wrap in Safari.
435
+ // See https://github.com/twbs/bootstrap/issues/24990
454
436
  word-wrap: normal;
437
+
438
+ // Undo the opacity change from Chrome
439
+ &:disabled {
440
+ opacity: 1;
441
+ }
455
442
  }
456
443
 
457
444
  // Remove the dropdown arrow in Chrome from inputs built with datalists.
@@ -582,7 +569,6 @@ legend {
582
569
 
583
570
  // Inherit font family and line height for file input buttons
584
571
 
585
- // stylelint-disable-next-line selector-pseudo-element-no-unknown
586
572
  ::file-selector-button {
587
573
  font: inherit;
588
574
  }
@@ -2,9 +2,11 @@
2
2
  // Rotating border
3
3
  //
4
4
 
5
+ // scss-docs-start spinner-border-keyframes
5
6
  @keyframes spinner-border {
6
7
  to { transform: rotate(360deg) #{"/* rtl:ignore */"}; }
7
8
  }
9
+ // scss-docs-end spinner-border-keyframes
8
10
 
9
11
  .spinner-border {
10
12
  display: inline-block;
@@ -28,6 +30,7 @@
28
30
  // Growing circle
29
31
  //
30
32
 
33
+ // scss-docs-start spinner-grow-keyframes
31
34
  @keyframes spinner-grow {
32
35
  0% {
33
36
  transform: scale(0);
@@ -37,6 +40,7 @@
37
40
  transform: none;
38
41
  }
39
42
  }
43
+ // scss-docs-end spinner-grow-keyframes
40
44
 
41
45
  .spinner-grow {
42
46
  display: inline-block;
@@ -6,6 +6,7 @@
6
6
  }
7
7
  }
8
8
 
9
+ // scss-docs-start collapse-classes
9
10
  .collapse {
10
11
  &:not(.show) {
11
12
  display: none;
@@ -17,3 +18,4 @@
17
18
  overflow: hidden;
18
19
  @include transition($transition-collapse);
19
20
  }
21
+ // scss-docs-end collapse-classes