bootstrap 5.0.0.alpha2 → 5.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +1 -0
- data/README.md +7 -4
- 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 +10 -7
- data/assets/javascripts/bootstrap.js +2554 -2564
- data/assets/javascripts/bootstrap.min.js +3 -3
- data/assets/javascripts/bootstrap/alert.js +119 -115
- data/assets/javascripts/bootstrap/base-component.js +63 -0
- data/assets/javascripts/bootstrap/button.js +67 -69
- data/assets/javascripts/bootstrap/carousel.js +340 -331
- data/assets/javascripts/bootstrap/collapse.js +214 -209
- data/assets/javascripts/bootstrap/dom/data.js +35 -48
- data/assets/javascripts/bootstrap/dom/event-handler.js +105 -98
- data/assets/javascripts/bootstrap/dom/manipulator.js +26 -34
- data/assets/javascripts/bootstrap/dom/selector-engine.js +28 -41
- data/assets/javascripts/bootstrap/dropdown.js +392 -325
- data/assets/javascripts/bootstrap/modal.js +492 -434
- data/assets/javascripts/bootstrap/offcanvas.js +671 -0
- data/assets/javascripts/bootstrap/popover.js +114 -132
- data/assets/javascripts/bootstrap/scrollspy.js +172 -180
- data/assets/javascripts/bootstrap/tab.js +168 -144
- data/assets/javascripts/bootstrap/toast.js +141 -150
- data/assets/javascripts/bootstrap/tooltip.js +466 -452
- data/assets/stylesheets/_bootstrap-grid.scss +9 -9
- data/assets/stylesheets/_bootstrap-reboot.scss +3 -3
- data/assets/stylesheets/_bootstrap.scss +5 -3
- data/assets/stylesheets/bootstrap/_accordion.scss +118 -0
- data/assets/stylesheets/bootstrap/_alert.scss +10 -3
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +2 -4
- data/assets/stylesheets/bootstrap/_button-group.scss +5 -7
- data/assets/stylesheets/bootstrap/_buttons.scss +2 -15
- data/assets/stylesheets/bootstrap/_card.scss +2 -29
- data/assets/stylesheets/bootstrap/_carousel.scss +35 -18
- data/assets/stylesheets/bootstrap/_close.scss +2 -3
- data/assets/stylesheets/bootstrap/_dropdown.scss +33 -29
- data/assets/stylesheets/bootstrap/_forms.scss +1 -1
- data/assets/stylesheets/bootstrap/_functions.scss +11 -12
- data/assets/stylesheets/bootstrap/_list-group.scss +23 -6
- data/assets/stylesheets/bootstrap/_mixins.scss +1 -0
- data/assets/stylesheets/bootstrap/_modal.scss +2 -9
- data/assets/stylesheets/bootstrap/_nav.scss +12 -0
- data/assets/stylesheets/bootstrap/_navbar.scss +15 -2
- data/assets/stylesheets/bootstrap/_offcanvas.scss +77 -0
- data/assets/stylesheets/bootstrap/_pagination.scss +3 -3
- data/assets/stylesheets/bootstrap/_popover.scss +10 -22
- data/assets/stylesheets/bootstrap/_progress.scss +4 -1
- data/assets/stylesheets/bootstrap/_reboot.scss +48 -44
- data/assets/stylesheets/bootstrap/_root.scss +5 -5
- data/assets/stylesheets/bootstrap/_spinners.scss +18 -5
- data/assets/stylesheets/bootstrap/_tables.scss +15 -16
- data/assets/stylesheets/bootstrap/_toasts.scss +15 -12
- data/assets/stylesheets/bootstrap/_tooltip.scss +12 -12
- data/assets/stylesheets/bootstrap/_transitions.scss +2 -0
- data/assets/stylesheets/bootstrap/_utilities.scss +133 -70
- data/assets/stylesheets/bootstrap/_variables.scss +363 -207
- data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +5 -5
- data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +61 -0
- data/assets/stylesheets/bootstrap/forms/_form-check.scss +21 -11
- data/assets/stylesheets/bootstrap/forms/_form-control.scss +112 -9
- data/assets/stylesheets/bootstrap/forms/_form-range.scss +1 -46
- data/assets/stylesheets/bootstrap/forms/_form-select.scss +1 -16
- data/assets/stylesheets/bootstrap/forms/_input-group.scss +21 -40
- data/assets/stylesheets/bootstrap/forms/_validation.scss +1 -1
- data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +2 -2
- data/assets/stylesheets/bootstrap/helpers/_ratio.scss +2 -2
- data/assets/stylesheets/bootstrap/helpers/_visually-hidden.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_alert.scss +3 -1
- data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +8 -6
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +10 -5
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +8 -6
- data/assets/stylesheets/bootstrap/mixins/_color-scheme.scss +7 -0
- data/assets/stylesheets/bootstrap/mixins/_container.scss +2 -4
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +26 -22
- data/assets/stylesheets/bootstrap/mixins/_gradients.scss +5 -1
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +18 -13
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +3 -1
- data/assets/stylesheets/bootstrap/mixins/_pagination.scss +5 -3
- data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +7 -7
- data/assets/stylesheets/bootstrap/mixins/_utilities.scss +19 -0
- data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +3 -2
- data/assets/stylesheets/bootstrap/utilities/_api.scss +1 -1
- data/bootstrap.gemspec +1 -3
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +20 -5
- data/tasks/updater/network.rb +7 -1
- data/test/dummy_rails/app/assets/javascripts/application.js +4 -3
- 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_1.gemfile +7 -0
- metadata +20 -40
- data/assets/javascripts/bootstrap/dom/polyfill.js +0 -110
- data/assets/stylesheets/bootstrap/forms/_form-file.scss +0 -91
- data/test/dummy_rails/app/views/pages/root.html.slim +0 -58
@@ -1,110 +0,0 @@
|
|
1
|
-
/*!
|
2
|
-
* Bootstrap polyfill.js v5.0.0-alpha2 (https://getbootstrap.com/)
|
3
|
-
* Copyright 2011-2020 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
4
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
5
|
-
*/
|
6
|
-
(function (global, factory) {
|
7
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
|
8
|
-
typeof define === 'function' && define.amd ? define(['exports'], factory) :
|
9
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.Polyfill = {}));
|
10
|
-
}(this, (function (exports) { 'use strict';
|
11
|
-
|
12
|
-
/**
|
13
|
-
* --------------------------------------------------------------------------
|
14
|
-
* Bootstrap (v5.0.0-alpha2): util/index.js
|
15
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
16
|
-
* --------------------------------------------------------------------------
|
17
|
-
*/
|
18
|
-
var MAX_UID = 1000000;
|
19
|
-
/**
|
20
|
-
* --------------------------------------------------------------------------
|
21
|
-
* Public Util Api
|
22
|
-
* --------------------------------------------------------------------------
|
23
|
-
*/
|
24
|
-
|
25
|
-
|
26
|
-
var getUID = function getUID(prefix) {
|
27
|
-
do {
|
28
|
-
prefix += Math.floor(Math.random() * MAX_UID);
|
29
|
-
} while (document.getElementById(prefix));
|
30
|
-
|
31
|
-
return prefix;
|
32
|
-
};
|
33
|
-
|
34
|
-
/* istanbul ignore file */
|
35
|
-
exports.find = Element.prototype.querySelectorAll;
|
36
|
-
exports.findOne = Element.prototype.querySelector; // MSEdge resets defaultPrevented flag upon dispatchEvent call if at least one listener is attached
|
37
|
-
|
38
|
-
var defaultPreventedPreservedOnDispatch = function () {
|
39
|
-
var e = new CustomEvent('Bootstrap', {
|
40
|
-
cancelable: true
|
41
|
-
});
|
42
|
-
var element = document.createElement('div');
|
43
|
-
element.addEventListener('Bootstrap', function () {
|
44
|
-
return null;
|
45
|
-
});
|
46
|
-
e.preventDefault();
|
47
|
-
element.dispatchEvent(e);
|
48
|
-
return e.defaultPrevented;
|
49
|
-
}();
|
50
|
-
|
51
|
-
var scopeSelectorRegex = /:scope\b/;
|
52
|
-
|
53
|
-
var supportScopeQuery = function () {
|
54
|
-
var element = document.createElement('div');
|
55
|
-
|
56
|
-
try {
|
57
|
-
element.querySelectorAll(':scope *');
|
58
|
-
} catch (_) {
|
59
|
-
return false;
|
60
|
-
}
|
61
|
-
|
62
|
-
return true;
|
63
|
-
}();
|
64
|
-
|
65
|
-
if (!supportScopeQuery) {
|
66
|
-
exports.find = function find(selector) {
|
67
|
-
if (!scopeSelectorRegex.test(selector)) {
|
68
|
-
return this.querySelectorAll(selector);
|
69
|
-
}
|
70
|
-
|
71
|
-
var hasId = Boolean(this.id);
|
72
|
-
|
73
|
-
if (!hasId) {
|
74
|
-
this.id = getUID('scope');
|
75
|
-
}
|
76
|
-
|
77
|
-
var nodeList = null;
|
78
|
-
|
79
|
-
try {
|
80
|
-
selector = selector.replace(scopeSelectorRegex, "#" + this.id);
|
81
|
-
nodeList = this.querySelectorAll(selector);
|
82
|
-
} finally {
|
83
|
-
if (!hasId) {
|
84
|
-
this.removeAttribute('id');
|
85
|
-
}
|
86
|
-
}
|
87
|
-
|
88
|
-
return nodeList;
|
89
|
-
};
|
90
|
-
|
91
|
-
exports.findOne = function findOne(selector) {
|
92
|
-
if (!scopeSelectorRegex.test(selector)) {
|
93
|
-
return this.querySelector(selector);
|
94
|
-
}
|
95
|
-
|
96
|
-
var matches = exports.find.call(this, selector);
|
97
|
-
|
98
|
-
if (typeof matches[0] !== 'undefined') {
|
99
|
-
return matches[0];
|
100
|
-
}
|
101
|
-
|
102
|
-
return null;
|
103
|
-
};
|
104
|
-
}
|
105
|
-
|
106
|
-
exports.defaultPreventedPreservedOnDispatch = defaultPreventedPreservedOnDispatch;
|
107
|
-
|
108
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
109
|
-
|
110
|
-
})));
|
@@ -1,91 +0,0 @@
|
|
1
|
-
.form-file {
|
2
|
-
--bs-form-file-height: #{$form-file-height};
|
3
|
-
position: relative;
|
4
|
-
}
|
5
|
-
|
6
|
-
.form-file-input {
|
7
|
-
position: relative;
|
8
|
-
z-index: 2;
|
9
|
-
width: 100%;
|
10
|
-
height: var(--bs-form-file-height);
|
11
|
-
margin: 0;
|
12
|
-
opacity: 0;
|
13
|
-
|
14
|
-
&:focus-within ~ .form-file-label {
|
15
|
-
border-color: $form-file-focus-border-color;
|
16
|
-
box-shadow: $form-file-focus-box-shadow;
|
17
|
-
}
|
18
|
-
|
19
|
-
// Use disabled attribute in addition of :disabled pseudo-class
|
20
|
-
// See: https://github.com/twbs/bootstrap/issues/28247
|
21
|
-
&[disabled] ~ .form-file-label .form-file-text,
|
22
|
-
&:disabled ~ .form-file-label .form-file-text {
|
23
|
-
background-color: $form-file-disabled-bg;
|
24
|
-
border-color: $form-file-disabled-border-color;
|
25
|
-
}
|
26
|
-
}
|
27
|
-
|
28
|
-
.form-file-label {
|
29
|
-
position: absolute;
|
30
|
-
top: 0;
|
31
|
-
right: 0;
|
32
|
-
left: 0;
|
33
|
-
z-index: 1;
|
34
|
-
display: flex;
|
35
|
-
height: var(--bs-form-file-height);
|
36
|
-
border-color: $form-file-border-color;
|
37
|
-
@include border-radius($form-file-border-radius);
|
38
|
-
@include box-shadow($form-file-box-shadow);
|
39
|
-
}
|
40
|
-
|
41
|
-
.form-file-text {
|
42
|
-
display: block;
|
43
|
-
flex-grow: 1;
|
44
|
-
padding: $form-file-padding-y $form-file-padding-x;
|
45
|
-
overflow: hidden;
|
46
|
-
font-family: $form-file-font-family;
|
47
|
-
font-weight: $form-file-font-weight;
|
48
|
-
line-height: $form-file-line-height;
|
49
|
-
color: $form-file-color;
|
50
|
-
text-overflow: ellipsis;
|
51
|
-
white-space: nowrap;
|
52
|
-
background-color: $form-file-bg;
|
53
|
-
border-color: inherit;
|
54
|
-
border-style: solid;
|
55
|
-
border-width: $form-file-border-width;
|
56
|
-
@include border-left-radius(inherit);
|
57
|
-
}
|
58
|
-
|
59
|
-
.form-file-button {
|
60
|
-
display: block;
|
61
|
-
flex-shrink: 0;
|
62
|
-
padding: $form-file-padding-y $form-file-padding-x;
|
63
|
-
margin-left: -$form-file-border-width;
|
64
|
-
line-height: $form-file-line-height;
|
65
|
-
color: $form-file-button-color;
|
66
|
-
@include gradient-bg($form-file-button-bg);
|
67
|
-
border-color: inherit;
|
68
|
-
border-style: solid;
|
69
|
-
border-width: $form-file-border-width;
|
70
|
-
@include border-right-radius(inherit);
|
71
|
-
}
|
72
|
-
|
73
|
-
.form-file-sm {
|
74
|
-
--bs-form-file-height: #{$form-file-height-sm};
|
75
|
-
@include font-size($form-file-font-size-sm);
|
76
|
-
|
77
|
-
.form-file-text,
|
78
|
-
.form-file-button {
|
79
|
-
padding: $form-file-padding-y-sm $form-file-padding-x-sm;
|
80
|
-
}
|
81
|
-
}
|
82
|
-
|
83
|
-
.form-file-lg {
|
84
|
-
--bs-form-file-height: #{$form-file-height-lg};
|
85
|
-
@include font-size($form-file-font-size-lg);
|
86
|
-
|
87
|
-
.form-file-text,
|
88
|
-
.form-file-button {
|
89
|
-
padding: $form-file-padding-y-lg $form-file-padding-x-lg;
|
90
|
-
}
|
91
|
-
}
|
@@ -1,58 +0,0 @@
|
|
1
|
-
.navbar.navbar-dark.bg-inverse: .container-fluid
|
2
|
-
button.navbar-toggler.hidden-sm-up type="button" data-toggle="collapse" data-target="#c1" ☰
|
3
|
-
.collapse.navbar-toggleable-xs#c1
|
4
|
-
a.navbar-brand href="#" Bootstrap Test Rails App
|
5
|
-
ul.nav.navbar-nav
|
6
|
-
li.nav-item.active: a.nav-link href="#"
|
7
|
-
' Home
|
8
|
-
span.sr-only (current)
|
9
|
-
li.nav-item: a.nav-link href="#" Link
|
10
|
-
li.nav-item.dropdown
|
11
|
-
a.nav-link.dropdown-toggle href="#" data-toggle="dropdown" role="button" aria-expanded="false"
|
12
|
-
' Dropdown
|
13
|
-
span.caret
|
14
|
-
.dropdown-menu role="menu"
|
15
|
-
a.dropdown-item href="#" Action
|
16
|
-
a.dropdown-item href="#" Another action
|
17
|
-
a.dropdown-item href="#" Something else here
|
18
|
-
a.dropdown-divider
|
19
|
-
a.dropdown-item href="#" Separated ank
|
20
|
-
a.dropdown-divider
|
21
|
-
a.dropdown-item href="#" One more separated link
|
22
|
-
|
23
|
-
.container
|
24
|
-
.card
|
25
|
-
.card-header: h3 Dummy App
|
26
|
-
.card-block: .row
|
27
|
-
.col-sm-3
|
28
|
-
h2 3 columns
|
29
|
-
.list-group
|
30
|
-
a.list-group-item href='#one' One
|
31
|
-
a.list-group-item href='#two' Two
|
32
|
-
a.list-group-item href='#three' Three
|
33
|
-
.col-sm-3
|
34
|
-
h2 3 columns
|
35
|
-
.btn-group
|
36
|
-
button.btn.btn-primary type='button' Button
|
37
|
-
button.btn.btn-primary type='button' Button
|
38
|
-
table.table
|
39
|
-
caption Table
|
40
|
-
tr
|
41
|
-
td.table-danger Danger!
|
42
|
-
td.table-success Success!
|
43
|
-
.col-sm-6
|
44
|
-
h2 6 columns
|
45
|
-
.row
|
46
|
-
.col-xs-4.col-xs-push-4: .card: .card-block
|
47
|
-
.card-text data-toggle="tooltip" title="hi"
|
48
|
-
h6 This is col-xs-4 col-xs-push-4.<br><small>Hover for tooltip.</small>
|
49
|
-
|
50
|
-
.card: .card-block: form.form-inline
|
51
|
-
.form-group
|
52
|
-
label.sr-only for="exampleInputEmail2" Email address
|
53
|
-
input.form-control#exampleInputEmail2 type="email" placeholder="Enter email"
|
54
|
-
.checkbox
|
55
|
-
label
|
56
|
-
input type="checkbox"
|
57
|
-
| Remember me
|
58
|
-
button.btn.btn-default type="submit" Sign in
|