bootstrap 4.4.1 → 4.6.0

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 (63) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +11 -1
  3. data/README.md +1 -1
  4. data/assets/javascripts/bootstrap-sprockets.js +6 -6
  5. data/assets/javascripts/bootstrap.js +836 -925
  6. data/assets/javascripts/bootstrap.min.js +4 -4
  7. data/assets/javascripts/bootstrap/alert.js +35 -41
  8. data/assets/javascripts/bootstrap/button.js +69 -69
  9. data/assets/javascripts/bootstrap/carousel.js +154 -182
  10. data/assets/javascripts/bootstrap/collapse.js +91 -130
  11. data/assets/javascripts/bootstrap/dropdown.js +123 -170
  12. data/assets/javascripts/bootstrap/modal.js +181 -197
  13. data/assets/javascripts/bootstrap/popover.js +45 -80
  14. data/assets/javascripts/bootstrap/scrollspy.js +74 -117
  15. data/assets/javascripts/bootstrap/tab.js +65 -71
  16. data/assets/javascripts/bootstrap/toast.js +74 -105
  17. data/assets/javascripts/bootstrap/tooltip.js +129 -166
  18. data/assets/javascripts/bootstrap/util.js +24 -20
  19. data/assets/stylesheets/_bootstrap-grid.scss +5 -4
  20. data/assets/stylesheets/_bootstrap-reboot.scss +4 -4
  21. data/assets/stylesheets/_bootstrap.scss +4 -4
  22. data/assets/stylesheets/bootstrap/_alert.scss +1 -0
  23. data/assets/stylesheets/bootstrap/_breadcrumb.scss +1 -1
  24. data/assets/stylesheets/bootstrap/_buttons.scss +10 -7
  25. data/assets/stylesheets/bootstrap/_card.scss +25 -17
  26. data/assets/stylesheets/bootstrap/_carousel.scss +1 -1
  27. data/assets/stylesheets/bootstrap/_close.scss +0 -1
  28. data/assets/stylesheets/bootstrap/_custom-forms.scss +16 -11
  29. data/assets/stylesheets/bootstrap/_dropdown.scss +4 -3
  30. data/assets/stylesheets/bootstrap/_forms.scss +9 -0
  31. data/assets/stylesheets/bootstrap/_functions.scss +15 -5
  32. data/assets/stylesheets/bootstrap/_grid.scss +10 -6
  33. data/assets/stylesheets/bootstrap/_input-group.scss +22 -5
  34. data/assets/stylesheets/bootstrap/_list-group.scss +10 -14
  35. data/assets/stylesheets/bootstrap/_modal.scss +2 -1
  36. data/assets/stylesheets/bootstrap/_nav.scss +4 -4
  37. data/assets/stylesheets/bootstrap/_navbar.scss +10 -2
  38. data/assets/stylesheets/bootstrap/_pagination.scss +3 -2
  39. data/assets/stylesheets/bootstrap/_progress.scss +2 -1
  40. data/assets/stylesheets/bootstrap/_reboot.scss +27 -25
  41. data/assets/stylesheets/bootstrap/_root.scss +0 -1
  42. data/assets/stylesheets/bootstrap/_spinners.scss +14 -4
  43. data/assets/stylesheets/bootstrap/_toasts.scss +4 -2
  44. data/assets/stylesheets/bootstrap/_type.scss +1 -1
  45. data/assets/stylesheets/bootstrap/_utilities.scss +2 -1
  46. data/assets/stylesheets/bootstrap/_variables.scss +20 -17
  47. data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +2 -1
  48. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +27 -14
  49. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +6 -6
  50. data/assets/stylesheets/bootstrap/mixins/_forms.scss +11 -3
  51. data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +24 -15
  52. data/assets/stylesheets/bootstrap/mixins/_grid.scss +8 -8
  53. data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -1
  54. data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +1 -1
  55. data/assets/stylesheets/bootstrap/mixins/_transition.scss +18 -8
  56. data/assets/stylesheets/bootstrap/utilities/_background.scss +1 -1
  57. data/assets/stylesheets/bootstrap/utilities/_borders.scss +1 -1
  58. data/assets/stylesheets/bootstrap/utilities/_interactions.scss +5 -0
  59. data/assets/stylesheets/bootstrap/utilities/_text.scss +2 -2
  60. data/lib/bootstrap/version.rb +2 -2
  61. data/tasks/updater/network.rb +2 -2
  62. data/test/gemfiles/rails_6_0.gemfile +7 -0
  63. metadata +6 -3
@@ -15,12 +15,15 @@
15
15
  @each $breakpoint in map-keys($breakpoints) {
16
16
  $infix: breakpoint-infix($breakpoint, $breakpoints);
17
17
 
18
- // Allow columns to stretch full width below their breakpoints
19
- @for $i from 1 through $columns {
20
- .col#{$infix}-#{$i} {
21
- @extend %grid-column;
18
+ @if $columns > 0 {
19
+ // Allow columns to stretch full width below their breakpoints
20
+ @for $i from 1 through $columns {
21
+ .col#{$infix}-#{$i} {
22
+ @extend %grid-column;
23
+ }
22
24
  }
23
25
  }
26
+
24
27
  .col#{$infix},
25
28
  .col#{$infix}-auto {
26
29
  @extend %grid-column;
@@ -34,9 +37,11 @@
34
37
  max-width: 100%;
35
38
  }
36
39
 
37
- @for $i from 1 through $grid-row-columns {
38
- .row-cols#{$infix}-#{$i} {
39
- @include row-cols($i);
40
+ @if $grid-row-columns > 0 {
41
+ @for $i from 1 through $grid-row-columns {
42
+ .row-cols#{$infix}-#{$i} {
43
+ @include row-cols($i);
44
+ }
40
45
  }
41
46
  }
42
47
 
@@ -44,9 +49,11 @@
44
49
  @include make-col-auto();
45
50
  }
46
51
 
47
- @for $i from 1 through $columns {
48
- .col#{$infix}-#{$i} {
49
- @include make-col($i, $columns);
52
+ @if $columns > 0 {
53
+ @for $i from 1 through $columns {
54
+ .col#{$infix}-#{$i} {
55
+ @include make-col($i, $columns);
56
+ }
50
57
  }
51
58
  }
52
59
 
@@ -58,11 +65,13 @@
58
65
  .order#{$infix}-#{$i} { order: $i; }
59
66
  }
60
67
 
61
- // `$columns - 1` because offsetting by the width of an entire row isn't possible
62
- @for $i from 0 through ($columns - 1) {
63
- @if not ($infix == "" and $i == 0) { // Avoid emitting useless .offset-0
64
- .offset#{$infix}-#{$i} {
65
- @include make-col-offset($i, $columns);
68
+ @if $columns > 0 {
69
+ // `$columns - 1` because offsetting by the width of an entire row isn't possible
70
+ @for $i from 0 through ($columns - 1) {
71
+ @if not ($infix == "" and $i == 0) { // Avoid emitting useless .offset-0
72
+ .offset#{$infix}-#{$i} {
73
+ @include make-col-offset($i, $columns);
74
+ }
66
75
  }
67
76
  }
68
77
  }
@@ -10,6 +10,12 @@
10
10
  margin-left: auto;
11
11
  }
12
12
 
13
+ @mixin make-row($gutter: $grid-gutter-width) {
14
+ display: flex;
15
+ flex-wrap: wrap;
16
+ margin-right: -$gutter / 2;
17
+ margin-left: -$gutter / 2;
18
+ }
13
19
 
14
20
  // For each breakpoint, define the maximum width of the container in a media query
15
21
  @mixin make-container-max-widths($max-widths: $container-max-widths, $breakpoints: $grid-breakpoints) {
@@ -18,13 +24,7 @@
18
24
  max-width: $container-max-width;
19
25
  }
20
26
  }
21
- }
22
-
23
- @mixin make-row($gutter: $grid-gutter-width) {
24
- display: flex;
25
- flex-wrap: wrap;
26
- margin-right: -$gutter / 2;
27
- margin-left: -$gutter / 2;
27
+ @include deprecate("The `make-container-max-widths` mixin", "v4.5.2", "v5");
28
28
  }
29
29
 
30
30
  @mixin make-col-ready($gutter: $grid-gutter-width) {
@@ -62,7 +62,7 @@
62
62
  // numberof columns. Supports wrapping to new lines, but does not do a Masonry
63
63
  // style grid.
64
64
  @mixin row-cols($count) {
65
- & > * {
65
+ > * {
66
66
  flex: 0 0 100% / $count;
67
67
  max-width: 100% / $count;
68
68
  }
@@ -26,7 +26,7 @@
26
26
  // Autoprefixer takes care of adding -webkit-min-device-pixel-ratio and -o-min-device-pixel-ratio,
27
27
  // but doesn't convert dppx=>dpi.
28
28
  // There's no such thing as unprefixed min-device-pixel-ratio since it's nonstandard.
29
- // Compatibility info: https://caniuse.com/#feat=css-media-resolution
29
+ // Compatibility info: https://caniuse.com/css-media-resolution
30
30
  @media only screen and (min-resolution: 192dpi), // IE9-11 don't support dppx
31
31
  only screen and (min-resolution: 2dppx) { // Standardized
32
32
  background-image: url($file-2x);
@@ -1,6 +1,6 @@
1
1
  // Only display content to screen readers
2
2
  //
3
- // See: https://a11yproject.com/posts/how-to-hide-content/
3
+ // See: https://www.a11yproject.com/posts/2013-01-11-how-to-hide-content/
4
4
  // See: https://hugogiraudel.com/2016/10/13/css-hide-and-seek/
5
5
 
6
6
  @mixin sr-only() {
@@ -1,16 +1,26 @@
1
- // stylelint-disable property-blacklist
1
+ // stylelint-disable property-disallowed-list
2
2
  @mixin transition($transition...) {
3
+ @if length($transition) == 0 {
4
+ $transition: $transition-base;
5
+ }
6
+
7
+ @if length($transition) > 1 {
8
+ @each $value in $transition {
9
+ @if $value == null or $value == none {
10
+ @warn "The keyword 'none' or 'null' must be used as a single argument.";
11
+ }
12
+ }
13
+ }
14
+
3
15
  @if $enable-transitions {
4
- @if length($transition) == 0 {
5
- transition: $transition-base;
6
- } @else {
16
+ @if nth($transition, 1) != null {
7
17
  transition: $transition;
8
18
  }
9
- }
10
19
 
11
- @if $enable-prefers-reduced-motion-media-query {
12
- @media (prefers-reduced-motion: reduce) {
13
- transition: none;
20
+ @if $enable-prefers-reduced-motion-media-query and nth($transition, 1) != null and nth($transition, 1) != none {
21
+ @media (prefers-reduced-motion: reduce) {
22
+ transition: none;
23
+ }
14
24
  }
15
25
  }
16
26
  }
@@ -6,7 +6,7 @@
6
6
 
7
7
  @if $enable-gradients {
8
8
  @each $color, $value in $theme-colors {
9
- @include bg-gradient-variant(".bg-gradient-#{$color}", $value);
9
+ @include bg-gradient-variant(".bg-gradient-#{$color}", $value, true);
10
10
  }
11
11
  }
12
12
 
@@ -1,4 +1,4 @@
1
- // stylelint-disable property-blacklist, declaration-no-important
1
+ // stylelint-disable property-disallowed-list, declaration-no-important
2
2
 
3
3
  //
4
4
  // Border
@@ -0,0 +1,5 @@
1
+ // stylelint-disable declaration-no-important
2
+
3
+ @each $value in $user-selects {
4
+ .user-select-#{$value} { user-select: $value !important; }
5
+ }
@@ -63,8 +63,8 @@
63
63
  .text-decoration-none { text-decoration: none !important; }
64
64
 
65
65
  .text-break {
66
- word-break: break-word !important; // IE & < Edge 18
67
- overflow-wrap: break-word !important;
66
+ word-break: break-word !important; // Deprecated, but avoids issues with flex containers
67
+ word-wrap: break-word !important; // Used instead of `overflow-wrap` for IE & Edge Legacy
68
68
  }
69
69
 
70
70
  // Reset
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Bootstrap
4
- VERSION = '4.4.1'
5
- BOOTSTRAP_SHA = 'dca1ab7d877bc4b664b43604657a2b5fbe2b4ecb'
4
+ VERSION = '4.6.0'
5
+ BOOTSTRAP_SHA = '6ffb0b48e455430f8a5359ed689ad64c1143fac2'
6
6
  end
@@ -25,7 +25,7 @@ class Updater
25
25
  log_http_get_files files, path_url, false
26
26
  files.map do |name|
27
27
  Thread.start {
28
- contents[name] = open("#{path_url}/#{name}").read
28
+ contents[name] = URI.open("#{path_url}/#{name}").read
29
29
  WRITE_FILES_MUTEX.synchronize { write_cached_files path, name => contents[name] }
30
30
  }
31
31
  end.each(&:join)
@@ -62,7 +62,7 @@ class Updater
62
62
  File.read(cache_path, mode: 'rb')
63
63
  else
64
64
  log_http_get_file url, false
65
- content = open(url).read
65
+ content = URI.open(url).read
66
66
  File.open(cache_path, 'wb') { |f| f.write content }
67
67
  content
68
68
  end
@@ -0,0 +1,7 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gem 'actionpack', '~> 6.0.3'
4
+ gem 'activesupport', '~> 6.0.3'
5
+ gem 'autoprefixer-rails', '>= 9.7.6'
6
+
7
+ gemspec path: '../../'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bootstrap
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.4.1
4
+ version: 4.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Twitter, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-12-05 00:00:00.000000000 Z
11
+ date: 2021-01-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: popper_js
@@ -334,6 +334,7 @@ files:
334
334
  - assets/stylesheets/bootstrap/utilities/_embed.scss
335
335
  - assets/stylesheets/bootstrap/utilities/_flex.scss
336
336
  - assets/stylesheets/bootstrap/utilities/_float.scss
337
+ - assets/stylesheets/bootstrap/utilities/_interactions.scss
337
338
  - assets/stylesheets/bootstrap/utilities/_overflow.scss
338
339
  - assets/stylesheets/bootstrap/utilities/_position.scss
339
340
  - assets/stylesheets/bootstrap/utilities/_screenreaders.scss
@@ -386,6 +387,7 @@ files:
386
387
  - test/gemfiles/rails_4_2.gemfile
387
388
  - test/gemfiles/rails_5_0.gemfile
388
389
  - test/gemfiles/rails_5_1.gemfile
390
+ - test/gemfiles/rails_6_0.gemfile
389
391
  - test/rails_test.rb
390
392
  - test/support/dummy_rails_integration.rb
391
393
  - test/support/reporting.rb
@@ -410,7 +412,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
410
412
  - !ruby/object:Gem::Version
411
413
  version: '0'
412
414
  requirements: []
413
- rubygems_version: 3.0.3
415
+ rubygems_version: 3.1.2
414
416
  signing_key:
415
417
  specification_version: 4
416
418
  summary: The most popular HTML, CSS, and JavaScript framework for developing responsive,
@@ -449,6 +451,7 @@ test_files:
449
451
  - test/gemfiles/rails_4_2.gemfile
450
452
  - test/gemfiles/rails_5_0.gemfile
451
453
  - test/gemfiles/rails_5_1.gemfile
454
+ - test/gemfiles/rails_6_0.gemfile
452
455
  - test/rails_test.rb
453
456
  - test/support/dummy_rails_integration.rb
454
457
  - test/support/reporting.rb