bootstrap 5.1.3 → 5.3.5
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.
- checksums.yaml +4 -4
- data/.github/workflows/ci.yml +61 -0
- data/CHANGELOG.md +9 -0
- data/Gemfile +1 -0
- data/README.md +35 -14
- data/Rakefile +16 -5
- data/assets/javascripts/bootstrap/alert.js +22 -167
- data/assets/javascripts/bootstrap/base-component.js +34 -133
- data/assets/javascripts/bootstrap/button.js +19 -86
- data/assets/javascripts/bootstrap/carousel.js +209 -564
- data/assets/javascripts/bootstrap/collapse.js +78 -324
- data/assets/javascripts/bootstrap/dom/data.js +8 -14
- data/assets/javascripts/bootstrap/dom/event-handler.js +89 -174
- data/assets/javascripts/bootstrap/dom/manipulator.js +22 -39
- data/assets/javascripts/bootstrap/dom/selector-engine.js +47 -71
- data/assets/javascripts/bootstrap/dropdown.js +135 -420
- data/assets/javascripts/bootstrap/modal.js +115 -837
- data/assets/javascripts/bootstrap/offcanvas.js +93 -714
- data/assets/javascripts/bootstrap/popover.js +42 -130
- data/assets/javascripts/bootstrap/scrollspy.js +180 -296
- data/assets/javascripts/bootstrap/tab.js +197 -245
- data/assets/javascripts/bootstrap/toast.js +52 -276
- data/assets/javascripts/bootstrap/tooltip.js +283 -744
- data/assets/javascripts/bootstrap/util/backdrop.js +138 -0
- data/assets/javascripts/bootstrap/util/component-functions.js +41 -0
- data/assets/javascripts/bootstrap/util/config.js +67 -0
- data/assets/javascripts/bootstrap/util/focustrap.js +112 -0
- data/assets/javascripts/bootstrap/util/index.js +280 -0
- data/assets/javascripts/bootstrap/util/sanitizer.js +113 -0
- data/assets/javascripts/bootstrap/util/scrollbar.js +112 -0
- data/assets/javascripts/bootstrap/util/swipe.js +134 -0
- data/assets/javascripts/bootstrap/util/template-factory.js +150 -0
- data/assets/javascripts/bootstrap-global-this-define.js +1 -1
- data/assets/javascripts/bootstrap-sprockets.js +15 -6
- data/assets/javascripts/bootstrap.js +2278 -2831
- data/assets/javascripts/bootstrap.min.js +3 -3
- data/assets/stylesheets/_bootstrap-grid.scss +4 -9
- data/assets/stylesheets/_bootstrap-reboot.scss +4 -7
- data/assets/stylesheets/_bootstrap-utilities.scss +19 -0
- data/assets/stylesheets/_bootstrap.scss +5 -6
- data/assets/stylesheets/bootstrap/_accordion.scss +68 -33
- data/assets/stylesheets/bootstrap/_alert.scss +25 -14
- data/assets/stylesheets/bootstrap/_badge.scss +14 -5
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +22 -10
- data/assets/stylesheets/bootstrap/_button-group.scss +12 -4
- data/assets/stylesheets/bootstrap/_buttons.scss +133 -28
- data/assets/stylesheets/bootstrap/_card.scss +61 -39
- data/assets/stylesheets/bootstrap/_carousel.scss +22 -25
- data/assets/stylesheets/bootstrap/_close.scss +36 -10
- data/assets/stylesheets/bootstrap/_containers.scss +1 -1
- data/assets/stylesheets/bootstrap/_dropdown.scss +86 -76
- data/assets/stylesheets/bootstrap/_functions.scss +10 -10
- data/assets/stylesheets/bootstrap/_grid.scss +9 -3
- data/assets/stylesheets/bootstrap/_helpers.scss +3 -0
- data/assets/stylesheets/bootstrap/_list-group.scss +81 -56
- data/assets/stylesheets/bootstrap/_maps.scss +174 -0
- data/assets/stylesheets/bootstrap/_mixins.scss +1 -2
- data/assets/stylesheets/bootstrap/_modal.scss +76 -45
- data/assets/stylesheets/bootstrap/_nav.scss +87 -29
- data/assets/stylesheets/bootstrap/_navbar.scss +102 -148
- data/assets/stylesheets/bootstrap/_offcanvas.scss +125 -61
- data/assets/stylesheets/bootstrap/_pagination.scss +66 -21
- data/assets/stylesheets/bootstrap/_placeholders.scss +1 -1
- data/assets/stylesheets/bootstrap/_popover.scss +90 -52
- data/assets/stylesheets/bootstrap/_progress.scss +31 -11
- data/assets/stylesheets/bootstrap/_reboot.scss +32 -46
- data/assets/stylesheets/bootstrap/_root.scss +155 -22
- data/assets/stylesheets/bootstrap/_spinners.scss +38 -22
- data/assets/stylesheets/bootstrap/_tables.scss +40 -24
- data/assets/stylesheets/bootstrap/_toasts.scss +38 -16
- data/assets/stylesheets/bootstrap/_tooltip.scss +60 -56
- data/assets/stylesheets/bootstrap/_type.scss +3 -1
- data/assets/stylesheets/bootstrap/_utilities.scss +209 -33
- data/assets/stylesheets/bootstrap/_variables-dark.scss +102 -0
- data/assets/stylesheets/bootstrap/_variables.scss +415 -303
- data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +39 -5
- data/assets/stylesheets/bootstrap/forms/_form-check.scss +51 -14
- data/assets/stylesheets/bootstrap/forms/_form-control.scss +36 -41
- data/assets/stylesheets/bootstrap/forms/_form-range.scss +3 -3
- data/assets/stylesheets/bootstrap/forms/_form-select.scss +12 -4
- data/assets/stylesheets/bootstrap/forms/_input-group.scss +20 -9
- data/assets/stylesheets/bootstrap/helpers/_color-bg.scss +7 -0
- data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +20 -2
- data/assets/stylesheets/bootstrap/helpers/_focus-ring.scss +5 -0
- data/assets/stylesheets/bootstrap/helpers/_icon-link.scss +25 -0
- data/assets/stylesheets/bootstrap/helpers/_position.scss +7 -1
- data/assets/stylesheets/bootstrap/helpers/_ratio.scss +2 -2
- data/assets/stylesheets/bootstrap/helpers/_vr.scss +2 -2
- data/assets/stylesheets/bootstrap/mixins/_alert.scss +11 -4
- data/assets/stylesheets/bootstrap/mixins/_banner.scss +7 -0
- data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +8 -8
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +32 -95
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +30 -25
- data/assets/stylesheets/bootstrap/mixins/_color-mode.scss +21 -0
- data/assets/stylesheets/bootstrap/mixins/_container.scss +4 -2
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +38 -19
- data/assets/stylesheets/bootstrap/mixins/_gradients.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +15 -15
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +2 -0
- data/assets/stylesheets/bootstrap/mixins/_pagination.scss +4 -25
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +12 -9
- data/assets/stylesheets/bootstrap/mixins/_utilities.scss +14 -6
- data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +6 -2
- data/assets/stylesheets/bootstrap/vendor/_rfs.scss +23 -29
- data/bootstrap.gemspec +3 -3
- data/lib/bootstrap/engine.rb +17 -2
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +10 -5
- data/tasks/updater/network.rb +2 -2
- data/tasks/updater/scss.rb +2 -2
- data/tasks/updater.rb +2 -2
- data/test/dummy_rails/config/application.rb +0 -2
- data/test/dummy_rails/public/favicon.ico +0 -0
- data/test/gemfiles/rails_4_2.gemfile +2 -1
- data/test/gemfiles/rails_5_0.gemfile +1 -2
- data/test/gemfiles/rails_5_1.gemfile +1 -2
- data/test/gemfiles/rails_5_2.gemfile +7 -0
- data/test/gemfiles/rails_6_0.gemfile +1 -1
- data/test/gemfiles/rails_6_1.gemfile +1 -1
- data/test/gemfiles/rails_7_0_dartsass.gemfile +7 -0
- data/test/gemfiles/rails_7_0_sassc.gemfile +7 -0
- data/test/rails_test.rb +0 -5
- data/test/test_helper.rb +3 -2
- metadata +49 -29
- data/.travis.yml +0 -32
- data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +0 -18
|
@@ -1,182 +1,94 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Bootstrap popover.js v5.
|
|
3
|
-
* Copyright 2011-
|
|
2
|
+
* Bootstrap popover.js v5.3.5 (https://getbootstrap.com/)
|
|
3
|
+
* Copyright 2011-2025 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
|
4
4
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
5
5
|
*/
|
|
6
6
|
(function (global, factory) {
|
|
7
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./tooltip.js')) :
|
|
8
|
-
typeof define === 'function' && define.amd ? define(['./tooltip'], factory) :
|
|
9
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Popover = factory(global.Tooltip));
|
|
10
|
-
})(this, (function (Tooltip) { 'use strict';
|
|
11
|
-
|
|
12
|
-
const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
|
|
13
|
-
|
|
14
|
-
const Tooltip__default = /*#__PURE__*/_interopDefaultLegacy(Tooltip);
|
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./tooltip.js'), require('./util/index.js')) :
|
|
8
|
+
typeof define === 'function' && define.amd ? define(['./tooltip', './util/index'], factory) :
|
|
9
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Popover = factory(global.Tooltip, global.Index));
|
|
10
|
+
})(this, (function (Tooltip, index_js) { 'use strict';
|
|
15
11
|
|
|
16
12
|
/**
|
|
17
13
|
* --------------------------------------------------------------------------
|
|
18
|
-
* Bootstrap
|
|
14
|
+
* Bootstrap popover.js
|
|
19
15
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
20
16
|
* --------------------------------------------------------------------------
|
|
21
17
|
*/
|
|
22
18
|
|
|
23
|
-
const getjQuery = () => {
|
|
24
|
-
const {
|
|
25
|
-
jQuery
|
|
26
|
-
} = window;
|
|
27
|
-
|
|
28
|
-
if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {
|
|
29
|
-
return jQuery;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
return null;
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
const DOMContentLoadedCallbacks = [];
|
|
36
|
-
|
|
37
|
-
const onDOMContentLoaded = callback => {
|
|
38
|
-
if (document.readyState === 'loading') {
|
|
39
|
-
// add listener on the first call when the document is in loading state
|
|
40
|
-
if (!DOMContentLoadedCallbacks.length) {
|
|
41
|
-
document.addEventListener('DOMContentLoaded', () => {
|
|
42
|
-
DOMContentLoadedCallbacks.forEach(callback => callback());
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
DOMContentLoadedCallbacks.push(callback);
|
|
47
|
-
} else {
|
|
48
|
-
callback();
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
const defineJQueryPlugin = plugin => {
|
|
53
|
-
onDOMContentLoaded(() => {
|
|
54
|
-
const $ = getjQuery();
|
|
55
|
-
/* istanbul ignore if */
|
|
56
|
-
|
|
57
|
-
if ($) {
|
|
58
|
-
const name = plugin.NAME;
|
|
59
|
-
const JQUERY_NO_CONFLICT = $.fn[name];
|
|
60
|
-
$.fn[name] = plugin.jQueryInterface;
|
|
61
|
-
$.fn[name].Constructor = plugin;
|
|
62
19
|
|
|
63
|
-
$.fn[name].noConflict = () => {
|
|
64
|
-
$.fn[name] = JQUERY_NO_CONFLICT;
|
|
65
|
-
return plugin.jQueryInterface;
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
});
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* --------------------------------------------------------------------------
|
|
73
|
-
* Bootstrap (v5.1.3): popover.js
|
|
74
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
75
|
-
* --------------------------------------------------------------------------
|
|
76
|
-
*/
|
|
77
20
|
/**
|
|
78
|
-
* ------------------------------------------------------------------------
|
|
79
21
|
* Constants
|
|
80
|
-
* ------------------------------------------------------------------------
|
|
81
22
|
*/
|
|
82
23
|
|
|
83
24
|
const NAME = 'popover';
|
|
84
|
-
const
|
|
85
|
-
const
|
|
86
|
-
const
|
|
87
|
-
|
|
88
|
-
placement: 'right',
|
|
89
|
-
offset: [0, 8],
|
|
90
|
-
trigger: 'click',
|
|
25
|
+
const SELECTOR_TITLE = '.popover-header';
|
|
26
|
+
const SELECTOR_CONTENT = '.popover-body';
|
|
27
|
+
const Default = {
|
|
28
|
+
...Tooltip.Default,
|
|
91
29
|
content: '',
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
30
|
+
offset: [0, 8],
|
|
31
|
+
placement: 'right',
|
|
32
|
+
template: '<div class="popover" role="tooltip">' + '<div class="popover-arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div>' + '</div>',
|
|
33
|
+
trigger: 'click'
|
|
96
34
|
};
|
|
97
|
-
const
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
SHOW: `show${EVENT_KEY}`,
|
|
101
|
-
SHOWN: `shown${EVENT_KEY}`,
|
|
102
|
-
INSERTED: `inserted${EVENT_KEY}`,
|
|
103
|
-
CLICK: `click${EVENT_KEY}`,
|
|
104
|
-
FOCUSIN: `focusin${EVENT_KEY}`,
|
|
105
|
-
FOCUSOUT: `focusout${EVENT_KEY}`,
|
|
106
|
-
MOUSEENTER: `mouseenter${EVENT_KEY}`,
|
|
107
|
-
MOUSELEAVE: `mouseleave${EVENT_KEY}`
|
|
35
|
+
const DefaultType = {
|
|
36
|
+
...Tooltip.DefaultType,
|
|
37
|
+
content: '(null|string|element|function)'
|
|
108
38
|
};
|
|
109
|
-
|
|
110
|
-
const SELECTOR_CONTENT = '.popover-body';
|
|
39
|
+
|
|
111
40
|
/**
|
|
112
|
-
*
|
|
113
|
-
* Class Definition
|
|
114
|
-
* ------------------------------------------------------------------------
|
|
41
|
+
* Class definition
|
|
115
42
|
*/
|
|
116
43
|
|
|
117
|
-
class Popover extends
|
|
44
|
+
class Popover extends Tooltip {
|
|
118
45
|
// Getters
|
|
119
46
|
static get Default() {
|
|
120
47
|
return Default;
|
|
121
48
|
}
|
|
122
|
-
|
|
49
|
+
static get DefaultType() {
|
|
50
|
+
return DefaultType;
|
|
51
|
+
}
|
|
123
52
|
static get NAME() {
|
|
124
53
|
return NAME;
|
|
125
54
|
}
|
|
126
55
|
|
|
127
|
-
|
|
128
|
-
|
|
56
|
+
// Overrides
|
|
57
|
+
_isWithContent() {
|
|
58
|
+
return this._getTitle() || this._getContent();
|
|
129
59
|
}
|
|
130
60
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
return this.getTitle() || this._getContent();
|
|
61
|
+
// Private
|
|
62
|
+
_getContentForTemplate() {
|
|
63
|
+
return {
|
|
64
|
+
[SELECTOR_TITLE]: this._getTitle(),
|
|
65
|
+
[SELECTOR_CONTENT]: this._getContent()
|
|
66
|
+
};
|
|
138
67
|
}
|
|
139
|
-
|
|
140
|
-
setContent(tip) {
|
|
141
|
-
this._sanitizeAndSetContent(tip, this.getTitle(), SELECTOR_TITLE);
|
|
142
|
-
|
|
143
|
-
this._sanitizeAndSetContent(tip, this._getContent(), SELECTOR_CONTENT);
|
|
144
|
-
} // Private
|
|
145
|
-
|
|
146
|
-
|
|
147
68
|
_getContent() {
|
|
148
69
|
return this._resolvePossibleFunction(this._config.content);
|
|
149
70
|
}
|
|
150
71
|
|
|
151
|
-
|
|
152
|
-
return CLASS_PREFIX;
|
|
153
|
-
} // Static
|
|
154
|
-
|
|
155
|
-
|
|
72
|
+
// Static
|
|
156
73
|
static jQueryInterface(config) {
|
|
157
74
|
return this.each(function () {
|
|
158
75
|
const data = Popover.getOrCreateInstance(this, config);
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
data[config]();
|
|
76
|
+
if (typeof config !== 'string') {
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
if (typeof data[config] === 'undefined') {
|
|
80
|
+
throw new TypeError(`No method named "${config}"`);
|
|
166
81
|
}
|
|
82
|
+
data[config]();
|
|
167
83
|
});
|
|
168
84
|
}
|
|
169
|
-
|
|
170
85
|
}
|
|
86
|
+
|
|
171
87
|
/**
|
|
172
|
-
* ------------------------------------------------------------------------
|
|
173
88
|
* jQuery
|
|
174
|
-
* ------------------------------------------------------------------------
|
|
175
|
-
* add .Popover to jQuery only if jQuery is present
|
|
176
89
|
*/
|
|
177
90
|
|
|
178
|
-
|
|
179
|
-
defineJQueryPlugin(Popover);
|
|
91
|
+
index_js.defineJQueryPlugin(Popover);
|
|
180
92
|
|
|
181
93
|
return Popover;
|
|
182
94
|
|