bootstrap 4.3.1 → 5.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +17 -2
- data/CHANGELOG.md +2 -14
- data/README.md +7 -4
- data/assets/javascripts/bootstrap/alert.js +172 -136
- data/assets/javascripts/bootstrap/base-component.js +182 -0
- data/assets/javascripts/bootstrap/button.js +101 -142
- data/assets/javascripts/bootstrap/carousel.js +483 -408
- data/assets/javascripts/bootstrap/collapse.js +340 -273
- data/assets/javascripts/bootstrap/dom/data.js +68 -0
- data/assets/javascripts/bootstrap/dom/event-handler.js +321 -0
- data/assets/javascripts/bootstrap/dom/manipulator.js +88 -0
- data/assets/javascripts/bootstrap/dom/selector-engine.js +127 -0
- data/assets/javascripts/bootstrap/dropdown.js +491 -399
- data/assets/javascripts/bootstrap/modal.js +841 -449
- data/assets/javascripts/bootstrap/offcanvas.js +866 -0
- data/assets/javascripts/bootstrap/popover.js +121 -198
- data/assets/javascripts/bootstrap/scrollspy.js +256 -240
- data/assets/javascripts/bootstrap/tab.js +218 -154
- data/assets/javascripts/bootstrap/toast.js +329 -189
- data/assets/javascripts/bootstrap/tooltip.js +651 -552
- data/assets/javascripts/bootstrap-global-this-define.js +6 -0
- data/assets/javascripts/bootstrap-global-this-undefine.js +2 -0
- data/assets/javascripts/bootstrap-sprockets.js +8 -1
- data/assets/javascripts/bootstrap.js +3503 -2892
- data/assets/javascripts/bootstrap.min.js +4 -4
- data/assets/stylesheets/_bootstrap-grid.scss +56 -18
- data/assets/stylesheets/_bootstrap-reboot.scss +5 -4
- data/assets/stylesheets/_bootstrap.scss +20 -11
- data/assets/stylesheets/bootstrap/_accordion.scss +118 -0
- data/assets/stylesheets/bootstrap/_alert.scss +15 -9
- data/assets/stylesheets/bootstrap/_badge.scss +2 -27
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +5 -18
- data/assets/stylesheets/bootstrap/_button-group.scss +21 -45
- data/assets/stylesheets/bootstrap/_buttons.scss +28 -54
- data/assets/stylesheets/bootstrap/_card.scss +52 -125
- data/assets/stylesheets/bootstrap/_carousel.scss +70 -38
- data/assets/stylesheets/bootstrap/_close.scss +30 -31
- data/assets/stylesheets/bootstrap/_containers.scss +41 -0
- data/assets/stylesheets/bootstrap/_dropdown.scss +88 -39
- data/assets/stylesheets/bootstrap/_forms.scss +9 -330
- data/assets/stylesheets/bootstrap/_functions.scss +243 -27
- data/assets/stylesheets/bootstrap/_grid.scss +14 -33
- data/assets/stylesheets/bootstrap/_helpers.scss +9 -0
- data/assets/stylesheets/bootstrap/_images.scss +3 -3
- data/assets/stylesheets/bootstrap/_list-group.scss +61 -36
- data/assets/stylesheets/bootstrap/_mixins.scss +12 -16
- data/assets/stylesheets/bootstrap/_modal.scss +64 -84
- data/assets/stylesheets/bootstrap/_nav.scss +29 -10
- data/assets/stylesheets/bootstrap/_navbar.scss +93 -52
- data/assets/stylesheets/bootstrap/_offcanvas.scss +83 -0
- data/assets/stylesheets/bootstrap/_pagination.scss +13 -22
- data/assets/stylesheets/bootstrap/_placeholders.scss +51 -0
- data/assets/stylesheets/bootstrap/_popover.scss +29 -42
- data/assets/stylesheets/bootstrap/_progress.scss +10 -5
- data/assets/stylesheets/bootstrap/_reboot.scss +350 -208
- data/assets/stylesheets/bootstrap/_root.scss +43 -8
- data/assets/stylesheets/bootstrap/_spinners.scss +21 -7
- data/assets/stylesheets/bootstrap/_tables.scss +84 -114
- data/assets/stylesheets/bootstrap/_toasts.scss +21 -14
- data/assets/stylesheets/bootstrap/_tooltip.scss +21 -21
- data/assets/stylesheets/bootstrap/_transitions.scss +8 -1
- data/assets/stylesheets/bootstrap/_type.scss +40 -61
- data/assets/stylesheets/bootstrap/_utilities.scss +630 -17
- data/assets/stylesheets/bootstrap/_variables.scss +1007 -489
- data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +18 -0
- data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +63 -0
- data/assets/stylesheets/bootstrap/forms/_form-check.scss +152 -0
- data/assets/stylesheets/bootstrap/forms/_form-control.scss +219 -0
- data/assets/stylesheets/bootstrap/forms/_form-range.scss +91 -0
- data/assets/stylesheets/bootstrap/forms/_form-select.scss +72 -0
- data/assets/stylesheets/bootstrap/forms/_form-text.scss +11 -0
- data/assets/stylesheets/bootstrap/forms/_input-group.scss +121 -0
- data/assets/stylesheets/bootstrap/forms/_labels.scss +36 -0
- data/assets/stylesheets/bootstrap/forms/_validation.scss +12 -0
- data/assets/stylesheets/bootstrap/{utilities → helpers}/_clearfix.scss +0 -0
- data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +12 -0
- data/assets/stylesheets/bootstrap/helpers/_position.scss +30 -0
- data/assets/stylesheets/bootstrap/helpers/_ratio.scss +26 -0
- data/assets/stylesheets/bootstrap/helpers/_stacks.scss +15 -0
- data/assets/stylesheets/bootstrap/helpers/_stretched-link.scss +15 -0
- data/assets/stylesheets/bootstrap/helpers/_text-truncation.scss +7 -0
- data/assets/stylesheets/bootstrap/helpers/_visually-hidden.scss +8 -0
- data/assets/stylesheets/bootstrap/helpers/_vr.scss +8 -0
- data/assets/stylesheets/bootstrap/mixins/_alert.scss +3 -5
- data/assets/stylesheets/bootstrap/mixins/_backdrop.scss +14 -0
- data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +37 -22
- data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +7 -9
- data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +14 -10
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +77 -51
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +10 -8
- data/assets/stylesheets/bootstrap/mixins/_clearfix.scss +2 -0
- data/assets/stylesheets/bootstrap/mixins/_color-scheme.scss +7 -0
- data/assets/stylesheets/bootstrap/mixins/_container.scss +9 -0
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +67 -115
- data/assets/stylesheets/bootstrap/mixins/_gradients.scss +13 -11
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +132 -32
- data/assets/stylesheets/bootstrap/mixins/_image.scss +0 -20
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +5 -2
- data/assets/stylesheets/bootstrap/mixins/_pagination.scss +17 -8
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +21 -0
- data/assets/stylesheets/bootstrap/mixins/_transition.scss +18 -8
- data/assets/stylesheets/bootstrap/mixins/_utilities.scss +89 -0
- data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +29 -0
- data/assets/stylesheets/bootstrap/utilities/_api.scss +47 -0
- data/assets/stylesheets/bootstrap/vendor/_rfs.scss +278 -128
- data/bootstrap.gemspec +4 -6
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +25 -6
- data/tasks/updater/network.rb +8 -2
- data/test/dummy_rails/app/assets/config/manifest.js +3 -0
- data/test/dummy_rails/app/assets/javascripts/application.js +4 -3
- data/test/dummy_rails/app/assets/stylesheets/.browserslistrc +1 -0
- data/test/dummy_rails/app/views/layouts/application.html.erb +3 -1
- data/test/dummy_rails/app/views/pages/root.html +89 -0
- data/test/dummy_rails/config/application.rb +0 -3
- data/test/gemfiles/rails_6_0.gemfile +7 -0
- data/test/gemfiles/rails_6_1.gemfile +7 -0
- data/test/support/dummy_rails_integration.rb +3 -1
- data/test/test_helper.rb +18 -13
- metadata +61 -79
- data/assets/javascripts/bootstrap/util.js +0 -171
- data/assets/stylesheets/bootstrap/_code.scss +0 -48
- data/assets/stylesheets/bootstrap/_custom-forms.scss +0 -507
- data/assets/stylesheets/bootstrap/_input-group.scss +0 -193
- data/assets/stylesheets/bootstrap/_jumbotron.scss +0 -17
- data/assets/stylesheets/bootstrap/_media.scss +0 -8
- data/assets/stylesheets/bootstrap/_print.scss +0 -141
- data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +0 -21
- data/assets/stylesheets/bootstrap/mixins/_badge.scss +0 -17
- data/assets/stylesheets/bootstrap/mixins/_float.scss +0 -14
- data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +0 -66
- data/assets/stylesheets/bootstrap/mixins/_hover.scss +0 -37
- data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +0 -10
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +0 -33
- data/assets/stylesheets/bootstrap/mixins/_size.scss +0 -7
- data/assets/stylesheets/bootstrap/mixins/_table-row.scss +0 -39
- data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +0 -16
- data/assets/stylesheets/bootstrap/mixins/_text-hide.scss +0 -11
- data/assets/stylesheets/bootstrap/mixins/_visibility.scss +0 -8
- data/assets/stylesheets/bootstrap/utilities/_align.scss +0 -8
- data/assets/stylesheets/bootstrap/utilities/_background.scss +0 -19
- data/assets/stylesheets/bootstrap/utilities/_borders.scss +0 -75
- data/assets/stylesheets/bootstrap/utilities/_display.scss +0 -26
- data/assets/stylesheets/bootstrap/utilities/_embed.scss +0 -39
- data/assets/stylesheets/bootstrap/utilities/_flex.scss +0 -51
- data/assets/stylesheets/bootstrap/utilities/_float.scss +0 -11
- data/assets/stylesheets/bootstrap/utilities/_overflow.scss +0 -5
- data/assets/stylesheets/bootstrap/utilities/_position.scss +0 -32
- data/assets/stylesheets/bootstrap/utilities/_screenreaders.scss +0 -11
- data/assets/stylesheets/bootstrap/utilities/_shadows.scss +0 -6
- data/assets/stylesheets/bootstrap/utilities/_sizing.scss +0 -20
- data/assets/stylesheets/bootstrap/utilities/_spacing.scss +0 -73
- data/assets/stylesheets/bootstrap/utilities/_stretched-link.scss +0 -19
- data/assets/stylesheets/bootstrap/utilities/_text.scss +0 -72
- data/assets/stylesheets/bootstrap/utilities/_visibility.scss +0 -13
- data/test/dummy_rails/app/views/pages/root.html.slim +0 -58
@@ -0,0 +1,89 @@
|
|
1
|
+
<nav class="navbar navbar-expand-lg navbar-light bg-light">
|
2
|
+
<div class="container-fluid">
|
3
|
+
<a class="navbar-brand" href="#">Navbar</a>
|
4
|
+
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent"
|
5
|
+
aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
|
6
|
+
<span class="navbar-toggler-icon"></span>
|
7
|
+
</button>
|
8
|
+
<div class="collapse navbar-collapse" id="navbarSupportedContent">
|
9
|
+
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
|
10
|
+
<li class="nav-item">
|
11
|
+
<a class="nav-link active" aria-current="page" href="#">Home</a>
|
12
|
+
</li>
|
13
|
+
<li class="nav-item">
|
14
|
+
<a class="nav-link" href="#">Link</a>
|
15
|
+
</li>
|
16
|
+
<li class="nav-item dropdown">
|
17
|
+
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-bs-toggle="dropdown"
|
18
|
+
aria-expanded="false">
|
19
|
+
Dropdown
|
20
|
+
</a>
|
21
|
+
<ul class="dropdown-menu" aria-labelledby="navbarDropdown">
|
22
|
+
<li><a class="dropdown-item" href="#">Action</a></li>
|
23
|
+
<li><a class="dropdown-item" href="#">Another action</a></li>
|
24
|
+
<li>
|
25
|
+
<hr class="dropdown-divider">
|
26
|
+
</li>
|
27
|
+
<li><a class="dropdown-item" href="#">Something else here</a></li>
|
28
|
+
</ul>
|
29
|
+
</li>
|
30
|
+
<li class="nav-item">
|
31
|
+
<a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a>
|
32
|
+
</li>
|
33
|
+
</ul>
|
34
|
+
<form class="d-flex">
|
35
|
+
<input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
|
36
|
+
<button class="btn btn-outline-success" type="submit">Search</button>
|
37
|
+
</form>
|
38
|
+
</div>
|
39
|
+
</div>
|
40
|
+
</nav>
|
41
|
+
|
42
|
+
<div class="container">
|
43
|
+
<div class="row">
|
44
|
+
<div class="card" style="width: 18rem;">
|
45
|
+
<div class="card-body">
|
46
|
+
<h5 class="card-title">Card title</h5>
|
47
|
+
<p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's
|
48
|
+
content.</p>
|
49
|
+
<a href="#" class="btn btn-primary">Go somewhere</a>
|
50
|
+
</div>
|
51
|
+
</div>
|
52
|
+
</div>
|
53
|
+
<div class="row">
|
54
|
+
<div class="col-sm">
|
55
|
+
<div class="card" style="width: 18rem;">
|
56
|
+
<ul class="list-group list-group-flush">
|
57
|
+
<li class="list-group-item">An item</li>
|
58
|
+
<li class="list-group-item">A second item</li>
|
59
|
+
<li class="list-group-item">A third item</li>
|
60
|
+
</ul>
|
61
|
+
</div>
|
62
|
+
</div>
|
63
|
+
<div class="col-sm">
|
64
|
+
<div class="btn-group" role="group" aria-label="Basic mixed styles example">
|
65
|
+
<button type="button" class="btn btn-danger">Left</button>
|
66
|
+
<button type="button" class="btn btn-warning">Middle</button>
|
67
|
+
<button type="button" class="btn btn-success">Right</button>
|
68
|
+
</div>
|
69
|
+
</div>
|
70
|
+
<div class="col-sm">
|
71
|
+
<button type="button" class="btn btn-secondary" data-bs-toggle="tooltip" data-bs-placement="top"
|
72
|
+
title="Tooltip on top">
|
73
|
+
Tooltip on top
|
74
|
+
</button>
|
75
|
+
<button type="button" class="btn btn-secondary" data-bs-toggle="tooltip" data-bs-placement="right"
|
76
|
+
title="Tooltip on right">
|
77
|
+
Tooltip on right
|
78
|
+
</button>
|
79
|
+
<button type="button" class="btn btn-secondary" data-bs-toggle="tooltip" data-bs-placement="bottom"
|
80
|
+
title="Tooltip on bottom">
|
81
|
+
Tooltip on bottom
|
82
|
+
</button>
|
83
|
+
<button type="button" class="btn btn-secondary" data-bs-toggle="tooltip" data-bs-placement="left"
|
84
|
+
title="Tooltip on left">
|
85
|
+
Tooltip on left
|
86
|
+
</button>
|
87
|
+
</div>
|
88
|
+
</div>
|
89
|
+
</div>
|
@@ -17,7 +17,9 @@ module DummyRailsIntegration
|
|
17
17
|
|
18
18
|
def screenshot!
|
19
19
|
path = "tmp/#{name}.png"
|
20
|
-
|
20
|
+
full_path = File.join(GEM_PATH, path)
|
21
|
+
FileUtils.mkdir_p(File.dirname(full_path))
|
22
|
+
page.driver.render(full_path, full: true)
|
21
23
|
STDERR.puts "Screenshot saved to #{path}"
|
22
24
|
end
|
23
25
|
|
data/test/test_helper.rb
CHANGED
@@ -12,24 +12,29 @@ end
|
|
12
12
|
|
13
13
|
GEM_PATH = File.expand_path('../', File.dirname(__FILE__))
|
14
14
|
|
15
|
-
#= Capybara
|
16
|
-
require 'capybara/
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
15
|
+
#= Capybara
|
16
|
+
require 'capybara/cuprite'
|
17
|
+
|
18
|
+
browser_path = ENV['CHROMIUM_BIN'] || %w[
|
19
|
+
/usr/bin/chromium-browser
|
20
|
+
/snap/bin/chromium
|
21
|
+
/Applications/Chromium.app/Contents/MacOS/Chromium
|
22
|
+
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome
|
23
|
+
].find { |path| File.executable?(path) }
|
24
|
+
|
25
|
+
Capybara.register_driver :cuprite do |app|
|
26
|
+
options = {
|
27
|
+
window_size: [1280, 1024]
|
28
|
+
}
|
29
|
+
options[:browser_path] = browser_path if browser_path
|
30
|
+
Capybara::Cuprite::Driver.new(app, options)
|
26
31
|
end
|
27
32
|
|
28
33
|
Capybara.configure do |config|
|
29
34
|
config.server = :webrick
|
30
35
|
config.app_host = 'http://localhost:7000'
|
31
|
-
config.default_driver = :
|
32
|
-
config.javascript_driver = :
|
36
|
+
config.default_driver = :cuprite
|
37
|
+
config.javascript_driver = :cuprite
|
33
38
|
config.server_port = 7000
|
34
39
|
config.default_max_wait_time = 10
|
35
40
|
end
|
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
|
+
version: 5.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Twitter, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-11-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: popper_js
|
@@ -16,20 +16,20 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 2.9.3
|
20
20
|
- - "<"
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: '
|
22
|
+
version: '3'
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
26
26
|
requirements:
|
27
27
|
- - ">="
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version:
|
29
|
+
version: 2.9.3
|
30
30
|
- - "<"
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: '
|
32
|
+
version: '3'
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: sassc-rails
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -64,28 +64,28 @@ dependencies:
|
|
64
64
|
requirements:
|
65
65
|
- - "~>"
|
66
66
|
- !ruby/object:Gem::Version
|
67
|
-
version: 5.
|
67
|
+
version: 5.14.4
|
68
68
|
type: :development
|
69
69
|
prerelease: false
|
70
70
|
version_requirements: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
72
|
- - "~>"
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
-
version: 5.
|
74
|
+
version: 5.14.4
|
75
75
|
- !ruby/object:Gem::Dependency
|
76
76
|
name: minitest-reporters
|
77
77
|
requirement: !ruby/object:Gem::Requirement
|
78
78
|
requirements:
|
79
79
|
- - "~>"
|
80
80
|
- !ruby/object:Gem::Version
|
81
|
-
version: 1.
|
81
|
+
version: 1.4.3
|
82
82
|
type: :development
|
83
83
|
prerelease: false
|
84
84
|
version_requirements: !ruby/object:Gem::Requirement
|
85
85
|
requirements:
|
86
86
|
- - "~>"
|
87
87
|
- !ruby/object:Gem::Version
|
88
|
-
version: 1.
|
88
|
+
version: 1.4.3
|
89
89
|
- !ruby/object:Gem::Dependency
|
90
90
|
name: term-ansicolor
|
91
91
|
requirement: !ruby/object:Gem::Requirement
|
@@ -115,7 +115,7 @@ dependencies:
|
|
115
115
|
- !ruby/object:Gem::Version
|
116
116
|
version: 2.6.0
|
117
117
|
- !ruby/object:Gem::Dependency
|
118
|
-
name:
|
118
|
+
name: cuprite
|
119
119
|
requirement: !ruby/object:Gem::Requirement
|
120
120
|
requirements:
|
121
121
|
- - ">="
|
@@ -184,34 +184,6 @@ dependencies:
|
|
184
184
|
- - ">="
|
185
185
|
- !ruby/object:Gem::Version
|
186
186
|
version: 2.3.2
|
187
|
-
- !ruby/object:Gem::Dependency
|
188
|
-
name: jquery-rails
|
189
|
-
requirement: !ruby/object:Gem::Requirement
|
190
|
-
requirements:
|
191
|
-
- - ">="
|
192
|
-
- !ruby/object:Gem::Version
|
193
|
-
version: 3.1.0
|
194
|
-
type: :development
|
195
|
-
prerelease: false
|
196
|
-
version_requirements: !ruby/object:Gem::Requirement
|
197
|
-
requirements:
|
198
|
-
- - ">="
|
199
|
-
- !ruby/object:Gem::Version
|
200
|
-
version: 3.1.0
|
201
|
-
- !ruby/object:Gem::Dependency
|
202
|
-
name: slim-rails
|
203
|
-
requirement: !ruby/object:Gem::Requirement
|
204
|
-
requirements:
|
205
|
-
- - ">="
|
206
|
-
- !ruby/object:Gem::Version
|
207
|
-
version: '0'
|
208
|
-
type: :development
|
209
|
-
prerelease: false
|
210
|
-
version_requirements: !ruby/object:Gem::Requirement
|
211
|
-
requirements:
|
212
|
-
- - ">="
|
213
|
-
- !ruby/object:Gem::Version
|
214
|
-
version: '0'
|
215
187
|
- !ruby/object:Gem::Dependency
|
216
188
|
name: uglifier
|
217
189
|
requirement: !ruby/object:Gem::Requirement
|
@@ -240,24 +212,32 @@ files:
|
|
240
212
|
- LICENSE
|
241
213
|
- README.md
|
242
214
|
- Rakefile
|
215
|
+
- assets/javascripts/bootstrap-global-this-define.js
|
216
|
+
- assets/javascripts/bootstrap-global-this-undefine.js
|
243
217
|
- assets/javascripts/bootstrap-sprockets.js
|
244
218
|
- assets/javascripts/bootstrap.js
|
245
219
|
- assets/javascripts/bootstrap.min.js
|
246
220
|
- assets/javascripts/bootstrap/alert.js
|
221
|
+
- assets/javascripts/bootstrap/base-component.js
|
247
222
|
- assets/javascripts/bootstrap/button.js
|
248
223
|
- assets/javascripts/bootstrap/carousel.js
|
249
224
|
- assets/javascripts/bootstrap/collapse.js
|
225
|
+
- assets/javascripts/bootstrap/dom/data.js
|
226
|
+
- assets/javascripts/bootstrap/dom/event-handler.js
|
227
|
+
- assets/javascripts/bootstrap/dom/manipulator.js
|
228
|
+
- assets/javascripts/bootstrap/dom/selector-engine.js
|
250
229
|
- assets/javascripts/bootstrap/dropdown.js
|
251
230
|
- assets/javascripts/bootstrap/modal.js
|
231
|
+
- assets/javascripts/bootstrap/offcanvas.js
|
252
232
|
- assets/javascripts/bootstrap/popover.js
|
253
233
|
- assets/javascripts/bootstrap/scrollspy.js
|
254
234
|
- assets/javascripts/bootstrap/tab.js
|
255
235
|
- assets/javascripts/bootstrap/toast.js
|
256
236
|
- assets/javascripts/bootstrap/tooltip.js
|
257
|
-
- assets/javascripts/bootstrap/util.js
|
258
237
|
- assets/stylesheets/_bootstrap-grid.scss
|
259
238
|
- assets/stylesheets/_bootstrap-reboot.scss
|
260
239
|
- assets/stylesheets/_bootstrap.scss
|
240
|
+
- assets/stylesheets/bootstrap/_accordion.scss
|
261
241
|
- assets/stylesheets/bootstrap/_alert.scss
|
262
242
|
- assets/stylesheets/bootstrap/_badge.scss
|
263
243
|
- assets/stylesheets/bootstrap/_breadcrumb.scss
|
@@ -266,24 +246,22 @@ files:
|
|
266
246
|
- assets/stylesheets/bootstrap/_card.scss
|
267
247
|
- assets/stylesheets/bootstrap/_carousel.scss
|
268
248
|
- assets/stylesheets/bootstrap/_close.scss
|
269
|
-
- assets/stylesheets/bootstrap/
|
270
|
-
- assets/stylesheets/bootstrap/_custom-forms.scss
|
249
|
+
- assets/stylesheets/bootstrap/_containers.scss
|
271
250
|
- assets/stylesheets/bootstrap/_dropdown.scss
|
272
251
|
- assets/stylesheets/bootstrap/_forms.scss
|
273
252
|
- assets/stylesheets/bootstrap/_functions.scss
|
274
253
|
- assets/stylesheets/bootstrap/_grid.scss
|
254
|
+
- assets/stylesheets/bootstrap/_helpers.scss
|
275
255
|
- assets/stylesheets/bootstrap/_images.scss
|
276
|
-
- assets/stylesheets/bootstrap/_input-group.scss
|
277
|
-
- assets/stylesheets/bootstrap/_jumbotron.scss
|
278
256
|
- assets/stylesheets/bootstrap/_list-group.scss
|
279
|
-
- assets/stylesheets/bootstrap/_media.scss
|
280
257
|
- assets/stylesheets/bootstrap/_mixins.scss
|
281
258
|
- assets/stylesheets/bootstrap/_modal.scss
|
282
259
|
- assets/stylesheets/bootstrap/_nav.scss
|
283
260
|
- assets/stylesheets/bootstrap/_navbar.scss
|
261
|
+
- assets/stylesheets/bootstrap/_offcanvas.scss
|
284
262
|
- assets/stylesheets/bootstrap/_pagination.scss
|
263
|
+
- assets/stylesheets/bootstrap/_placeholders.scss
|
285
264
|
- assets/stylesheets/bootstrap/_popover.scss
|
286
|
-
- assets/stylesheets/bootstrap/_print.scss
|
287
265
|
- assets/stylesheets/bootstrap/_progress.scss
|
288
266
|
- assets/stylesheets/bootstrap/_reboot.scss
|
289
267
|
- assets/stylesheets/bootstrap/_root.scss
|
@@ -295,54 +273,51 @@ files:
|
|
295
273
|
- assets/stylesheets/bootstrap/_type.scss
|
296
274
|
- assets/stylesheets/bootstrap/_utilities.scss
|
297
275
|
- assets/stylesheets/bootstrap/_variables.scss
|
276
|
+
- assets/stylesheets/bootstrap/bootstrap-utilities.scss
|
277
|
+
- assets/stylesheets/bootstrap/forms/_floating-labels.scss
|
278
|
+
- assets/stylesheets/bootstrap/forms/_form-check.scss
|
279
|
+
- assets/stylesheets/bootstrap/forms/_form-control.scss
|
280
|
+
- assets/stylesheets/bootstrap/forms/_form-range.scss
|
281
|
+
- assets/stylesheets/bootstrap/forms/_form-select.scss
|
282
|
+
- assets/stylesheets/bootstrap/forms/_form-text.scss
|
283
|
+
- assets/stylesheets/bootstrap/forms/_input-group.scss
|
284
|
+
- assets/stylesheets/bootstrap/forms/_labels.scss
|
285
|
+
- assets/stylesheets/bootstrap/forms/_validation.scss
|
286
|
+
- assets/stylesheets/bootstrap/helpers/_clearfix.scss
|
287
|
+
- assets/stylesheets/bootstrap/helpers/_colored-links.scss
|
288
|
+
- assets/stylesheets/bootstrap/helpers/_position.scss
|
289
|
+
- assets/stylesheets/bootstrap/helpers/_ratio.scss
|
290
|
+
- assets/stylesheets/bootstrap/helpers/_stacks.scss
|
291
|
+
- assets/stylesheets/bootstrap/helpers/_stretched-link.scss
|
292
|
+
- assets/stylesheets/bootstrap/helpers/_text-truncation.scss
|
293
|
+
- assets/stylesheets/bootstrap/helpers/_visually-hidden.scss
|
294
|
+
- assets/stylesheets/bootstrap/helpers/_vr.scss
|
298
295
|
- assets/stylesheets/bootstrap/mixins/_alert.scss
|
299
|
-
- assets/stylesheets/bootstrap/mixins/
|
300
|
-
- assets/stylesheets/bootstrap/mixins/_badge.scss
|
296
|
+
- assets/stylesheets/bootstrap/mixins/_backdrop.scss
|
301
297
|
- assets/stylesheets/bootstrap/mixins/_border-radius.scss
|
302
298
|
- assets/stylesheets/bootstrap/mixins/_box-shadow.scss
|
303
299
|
- assets/stylesheets/bootstrap/mixins/_breakpoints.scss
|
304
300
|
- assets/stylesheets/bootstrap/mixins/_buttons.scss
|
305
301
|
- assets/stylesheets/bootstrap/mixins/_caret.scss
|
306
302
|
- assets/stylesheets/bootstrap/mixins/_clearfix.scss
|
303
|
+
- assets/stylesheets/bootstrap/mixins/_color-scheme.scss
|
304
|
+
- assets/stylesheets/bootstrap/mixins/_container.scss
|
307
305
|
- assets/stylesheets/bootstrap/mixins/_deprecate.scss
|
308
|
-
- assets/stylesheets/bootstrap/mixins/_float.scss
|
309
306
|
- assets/stylesheets/bootstrap/mixins/_forms.scss
|
310
307
|
- assets/stylesheets/bootstrap/mixins/_gradients.scss
|
311
|
-
- assets/stylesheets/bootstrap/mixins/_grid-framework.scss
|
312
308
|
- assets/stylesheets/bootstrap/mixins/_grid.scss
|
313
|
-
- assets/stylesheets/bootstrap/mixins/_hover.scss
|
314
309
|
- assets/stylesheets/bootstrap/mixins/_image.scss
|
315
310
|
- assets/stylesheets/bootstrap/mixins/_list-group.scss
|
316
311
|
- assets/stylesheets/bootstrap/mixins/_lists.scss
|
317
|
-
- assets/stylesheets/bootstrap/mixins/_nav-divider.scss
|
318
312
|
- assets/stylesheets/bootstrap/mixins/_pagination.scss
|
319
313
|
- assets/stylesheets/bootstrap/mixins/_reset-text.scss
|
320
314
|
- assets/stylesheets/bootstrap/mixins/_resize.scss
|
321
|
-
- assets/stylesheets/bootstrap/mixins/
|
322
|
-
- assets/stylesheets/bootstrap/mixins/_size.scss
|
323
|
-
- assets/stylesheets/bootstrap/mixins/_table-row.scss
|
324
|
-
- assets/stylesheets/bootstrap/mixins/_text-emphasis.scss
|
325
|
-
- assets/stylesheets/bootstrap/mixins/_text-hide.scss
|
315
|
+
- assets/stylesheets/bootstrap/mixins/_table-variants.scss
|
326
316
|
- assets/stylesheets/bootstrap/mixins/_text-truncate.scss
|
327
317
|
- assets/stylesheets/bootstrap/mixins/_transition.scss
|
328
|
-
- assets/stylesheets/bootstrap/mixins/
|
329
|
-
- assets/stylesheets/bootstrap/
|
330
|
-
- assets/stylesheets/bootstrap/utilities/
|
331
|
-
- assets/stylesheets/bootstrap/utilities/_borders.scss
|
332
|
-
- assets/stylesheets/bootstrap/utilities/_clearfix.scss
|
333
|
-
- assets/stylesheets/bootstrap/utilities/_display.scss
|
334
|
-
- assets/stylesheets/bootstrap/utilities/_embed.scss
|
335
|
-
- assets/stylesheets/bootstrap/utilities/_flex.scss
|
336
|
-
- assets/stylesheets/bootstrap/utilities/_float.scss
|
337
|
-
- assets/stylesheets/bootstrap/utilities/_overflow.scss
|
338
|
-
- assets/stylesheets/bootstrap/utilities/_position.scss
|
339
|
-
- assets/stylesheets/bootstrap/utilities/_screenreaders.scss
|
340
|
-
- assets/stylesheets/bootstrap/utilities/_shadows.scss
|
341
|
-
- assets/stylesheets/bootstrap/utilities/_sizing.scss
|
342
|
-
- assets/stylesheets/bootstrap/utilities/_spacing.scss
|
343
|
-
- assets/stylesheets/bootstrap/utilities/_stretched-link.scss
|
344
|
-
- assets/stylesheets/bootstrap/utilities/_text.scss
|
345
|
-
- assets/stylesheets/bootstrap/utilities/_visibility.scss
|
318
|
+
- assets/stylesheets/bootstrap/mixins/_utilities.scss
|
319
|
+
- assets/stylesheets/bootstrap/mixins/_visually-hidden.scss
|
320
|
+
- assets/stylesheets/bootstrap/utilities/_api.scss
|
346
321
|
- assets/stylesheets/bootstrap/vendor/_rfs.scss
|
347
322
|
- bootstrap.gemspec
|
348
323
|
- lib/bootstrap.rb
|
@@ -355,14 +330,16 @@ files:
|
|
355
330
|
- tasks/updater/scss.rb
|
356
331
|
- test/dummy_rails/README.rdoc
|
357
332
|
- test/dummy_rails/Rakefile
|
333
|
+
- test/dummy_rails/app/assets/config/manifest.js
|
358
334
|
- test/dummy_rails/app/assets/images/.keep
|
359
335
|
- test/dummy_rails/app/assets/javascripts/application.js
|
336
|
+
- test/dummy_rails/app/assets/stylesheets/.browserslistrc
|
360
337
|
- test/dummy_rails/app/assets/stylesheets/application.sass
|
361
338
|
- test/dummy_rails/app/controllers/application_controller.rb
|
362
339
|
- test/dummy_rails/app/controllers/pages_controller.rb
|
363
340
|
- test/dummy_rails/app/helpers/application_helper.rb
|
364
341
|
- test/dummy_rails/app/views/layouts/application.html.erb
|
365
|
-
- test/dummy_rails/app/views/pages/root.html
|
342
|
+
- test/dummy_rails/app/views/pages/root.html
|
366
343
|
- test/dummy_rails/config.ru
|
367
344
|
- test/dummy_rails/config/application.rb
|
368
345
|
- test/dummy_rails/config/boot.rb
|
@@ -384,6 +361,8 @@ files:
|
|
384
361
|
- test/gemfiles/rails_4_2.gemfile
|
385
362
|
- test/gemfiles/rails_5_0.gemfile
|
386
363
|
- test/gemfiles/rails_5_1.gemfile
|
364
|
+
- test/gemfiles/rails_6_0.gemfile
|
365
|
+
- test/gemfiles/rails_6_1.gemfile
|
387
366
|
- test/rails_test.rb
|
388
367
|
- test/support/dummy_rails_integration.rb
|
389
368
|
- test/support/reporting.rb
|
@@ -408,8 +387,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
408
387
|
- !ruby/object:Gem::Version
|
409
388
|
version: '0'
|
410
389
|
requirements: []
|
411
|
-
|
412
|
-
rubygems_version: 2.7.8
|
390
|
+
rubygems_version: 3.1.2
|
413
391
|
signing_key:
|
414
392
|
specification_version: 4
|
415
393
|
summary: The most popular HTML, CSS, and JavaScript framework for developing responsive,
|
@@ -417,14 +395,16 @@ summary: The most popular HTML, CSS, and JavaScript framework for developing res
|
|
417
395
|
test_files:
|
418
396
|
- test/dummy_rails/README.rdoc
|
419
397
|
- test/dummy_rails/Rakefile
|
398
|
+
- test/dummy_rails/app/assets/config/manifest.js
|
420
399
|
- test/dummy_rails/app/assets/images/.keep
|
421
400
|
- test/dummy_rails/app/assets/javascripts/application.js
|
401
|
+
- test/dummy_rails/app/assets/stylesheets/.browserslistrc
|
422
402
|
- test/dummy_rails/app/assets/stylesheets/application.sass
|
423
403
|
- test/dummy_rails/app/controllers/application_controller.rb
|
424
404
|
- test/dummy_rails/app/controllers/pages_controller.rb
|
425
405
|
- test/dummy_rails/app/helpers/application_helper.rb
|
426
406
|
- test/dummy_rails/app/views/layouts/application.html.erb
|
427
|
-
- test/dummy_rails/app/views/pages/root.html
|
407
|
+
- test/dummy_rails/app/views/pages/root.html
|
428
408
|
- test/dummy_rails/config.ru
|
429
409
|
- test/dummy_rails/config/application.rb
|
430
410
|
- test/dummy_rails/config/boot.rb
|
@@ -446,6 +426,8 @@ test_files:
|
|
446
426
|
- test/gemfiles/rails_4_2.gemfile
|
447
427
|
- test/gemfiles/rails_5_0.gemfile
|
448
428
|
- test/gemfiles/rails_5_1.gemfile
|
429
|
+
- test/gemfiles/rails_6_0.gemfile
|
430
|
+
- test/gemfiles/rails_6_1.gemfile
|
449
431
|
- test/rails_test.rb
|
450
432
|
- test/support/dummy_rails_integration.rb
|
451
433
|
- test/support/reporting.rb
|
@@ -1,171 +0,0 @@
|
|
1
|
-
/*!
|
2
|
-
* Bootstrap util.js v4.3.1 (https://getbootstrap.com/)
|
3
|
-
* Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
4
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
5
|
-
*/
|
6
|
-
(function (global, factory) {
|
7
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery')) :
|
8
|
-
typeof define === 'function' && define.amd ? define(['jquery'], factory) :
|
9
|
-
(global = global || self, global.Util = factory(global.jQuery));
|
10
|
-
}(this, function ($) { 'use strict';
|
11
|
-
|
12
|
-
$ = $ && $.hasOwnProperty('default') ? $['default'] : $;
|
13
|
-
|
14
|
-
/**
|
15
|
-
* --------------------------------------------------------------------------
|
16
|
-
* Bootstrap (v4.3.1): util.js
|
17
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
18
|
-
* --------------------------------------------------------------------------
|
19
|
-
*/
|
20
|
-
/**
|
21
|
-
* ------------------------------------------------------------------------
|
22
|
-
* Private TransitionEnd Helpers
|
23
|
-
* ------------------------------------------------------------------------
|
24
|
-
*/
|
25
|
-
|
26
|
-
var TRANSITION_END = 'transitionend';
|
27
|
-
var MAX_UID = 1000000;
|
28
|
-
var MILLISECONDS_MULTIPLIER = 1000; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
|
29
|
-
|
30
|
-
function toType(obj) {
|
31
|
-
return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase();
|
32
|
-
}
|
33
|
-
|
34
|
-
function getSpecialTransitionEndEvent() {
|
35
|
-
return {
|
36
|
-
bindType: TRANSITION_END,
|
37
|
-
delegateType: TRANSITION_END,
|
38
|
-
handle: function handle(event) {
|
39
|
-
if ($(event.target).is(this)) {
|
40
|
-
return event.handleObj.handler.apply(this, arguments); // eslint-disable-line prefer-rest-params
|
41
|
-
}
|
42
|
-
|
43
|
-
return undefined; // eslint-disable-line no-undefined
|
44
|
-
}
|
45
|
-
};
|
46
|
-
}
|
47
|
-
|
48
|
-
function transitionEndEmulator(duration) {
|
49
|
-
var _this = this;
|
50
|
-
|
51
|
-
var called = false;
|
52
|
-
$(this).one(Util.TRANSITION_END, function () {
|
53
|
-
called = true;
|
54
|
-
});
|
55
|
-
setTimeout(function () {
|
56
|
-
if (!called) {
|
57
|
-
Util.triggerTransitionEnd(_this);
|
58
|
-
}
|
59
|
-
}, duration);
|
60
|
-
return this;
|
61
|
-
}
|
62
|
-
|
63
|
-
function setTransitionEndSupport() {
|
64
|
-
$.fn.emulateTransitionEnd = transitionEndEmulator;
|
65
|
-
$.event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent();
|
66
|
-
}
|
67
|
-
/**
|
68
|
-
* --------------------------------------------------------------------------
|
69
|
-
* Public Util Api
|
70
|
-
* --------------------------------------------------------------------------
|
71
|
-
*/
|
72
|
-
|
73
|
-
|
74
|
-
var Util = {
|
75
|
-
TRANSITION_END: 'bsTransitionEnd',
|
76
|
-
getUID: function getUID(prefix) {
|
77
|
-
do {
|
78
|
-
// eslint-disable-next-line no-bitwise
|
79
|
-
prefix += ~~(Math.random() * MAX_UID); // "~~" acts like a faster Math.floor() here
|
80
|
-
} while (document.getElementById(prefix));
|
81
|
-
|
82
|
-
return prefix;
|
83
|
-
},
|
84
|
-
getSelectorFromElement: function getSelectorFromElement(element) {
|
85
|
-
var selector = element.getAttribute('data-target');
|
86
|
-
|
87
|
-
if (!selector || selector === '#') {
|
88
|
-
var hrefAttr = element.getAttribute('href');
|
89
|
-
selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : '';
|
90
|
-
}
|
91
|
-
|
92
|
-
try {
|
93
|
-
return document.querySelector(selector) ? selector : null;
|
94
|
-
} catch (err) {
|
95
|
-
return null;
|
96
|
-
}
|
97
|
-
},
|
98
|
-
getTransitionDurationFromElement: function getTransitionDurationFromElement(element) {
|
99
|
-
if (!element) {
|
100
|
-
return 0;
|
101
|
-
} // Get transition-duration of the element
|
102
|
-
|
103
|
-
|
104
|
-
var transitionDuration = $(element).css('transition-duration');
|
105
|
-
var transitionDelay = $(element).css('transition-delay');
|
106
|
-
var floatTransitionDuration = parseFloat(transitionDuration);
|
107
|
-
var floatTransitionDelay = parseFloat(transitionDelay); // Return 0 if element or transition duration is not found
|
108
|
-
|
109
|
-
if (!floatTransitionDuration && !floatTransitionDelay) {
|
110
|
-
return 0;
|
111
|
-
} // If multiple durations are defined, take the first
|
112
|
-
|
113
|
-
|
114
|
-
transitionDuration = transitionDuration.split(',')[0];
|
115
|
-
transitionDelay = transitionDelay.split(',')[0];
|
116
|
-
return (parseFloat(transitionDuration) + parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;
|
117
|
-
},
|
118
|
-
reflow: function reflow(element) {
|
119
|
-
return element.offsetHeight;
|
120
|
-
},
|
121
|
-
triggerTransitionEnd: function triggerTransitionEnd(element) {
|
122
|
-
$(element).trigger(TRANSITION_END);
|
123
|
-
},
|
124
|
-
// TODO: Remove in v5
|
125
|
-
supportsTransitionEnd: function supportsTransitionEnd() {
|
126
|
-
return Boolean(TRANSITION_END);
|
127
|
-
},
|
128
|
-
isElement: function isElement(obj) {
|
129
|
-
return (obj[0] || obj).nodeType;
|
130
|
-
},
|
131
|
-
typeCheckConfig: function typeCheckConfig(componentName, config, configTypes) {
|
132
|
-
for (var property in configTypes) {
|
133
|
-
if (Object.prototype.hasOwnProperty.call(configTypes, property)) {
|
134
|
-
var expectedTypes = configTypes[property];
|
135
|
-
var value = config[property];
|
136
|
-
var valueType = value && Util.isElement(value) ? 'element' : toType(value);
|
137
|
-
|
138
|
-
if (!new RegExp(expectedTypes).test(valueType)) {
|
139
|
-
throw new Error(componentName.toUpperCase() + ": " + ("Option \"" + property + "\" provided type \"" + valueType + "\" ") + ("but expected type \"" + expectedTypes + "\"."));
|
140
|
-
}
|
141
|
-
}
|
142
|
-
}
|
143
|
-
},
|
144
|
-
findShadowRoot: function findShadowRoot(element) {
|
145
|
-
if (!document.documentElement.attachShadow) {
|
146
|
-
return null;
|
147
|
-
} // Can find the shadow root otherwise it'll return the document
|
148
|
-
|
149
|
-
|
150
|
-
if (typeof element.getRootNode === 'function') {
|
151
|
-
var root = element.getRootNode();
|
152
|
-
return root instanceof ShadowRoot ? root : null;
|
153
|
-
}
|
154
|
-
|
155
|
-
if (element instanceof ShadowRoot) {
|
156
|
-
return element;
|
157
|
-
} // when we don't find a shadow root
|
158
|
-
|
159
|
-
|
160
|
-
if (!element.parentNode) {
|
161
|
-
return null;
|
162
|
-
}
|
163
|
-
|
164
|
-
return Util.findShadowRoot(element.parentNode);
|
165
|
-
}
|
166
|
-
};
|
167
|
-
setTransitionEndSupport();
|
168
|
-
|
169
|
-
return Util;
|
170
|
-
|
171
|
-
}));
|