bootstrap 4.4.1 → 4.6.2.1
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/.travis.yml +11 -1
- data/CHANGELOG.md +4 -0
- data/README.md +7 -1
- data/Rakefile +16 -4
- data/assets/javascripts/bootstrap/alert.js +42 -53
- data/assets/javascripts/bootstrap/button.js +76 -81
- data/assets/javascripts/bootstrap/carousel.js +161 -199
- data/assets/javascripts/bootstrap/collapse.js +97 -142
- data/assets/javascripts/bootstrap/dropdown.js +130 -186
- data/assets/javascripts/bootstrap/modal.js +191 -213
- data/assets/javascripts/bootstrap/popover.js +62 -92
- data/assets/javascripts/bootstrap/scrollspy.js +81 -132
- data/assets/javascripts/bootstrap/tab.js +78 -83
- data/assets/javascripts/bootstrap/toast.js +83 -118
- data/assets/javascripts/bootstrap/tooltip.js +158 -198
- data/assets/javascripts/bootstrap/util.js +27 -26
- data/assets/javascripts/bootstrap-sprockets.js +7 -7
- data/assets/javascripts/bootstrap.js +1037 -1202
- data/assets/javascripts/bootstrap.min.js +4 -4
- data/assets/stylesheets/_bootstrap-grid.scss +5 -4
- data/assets/stylesheets/_bootstrap-reboot.scss +4 -4
- data/assets/stylesheets/_bootstrap.scss +4 -4
- data/assets/stylesheets/bootstrap/_alert.scss +1 -0
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +1 -1
- data/assets/stylesheets/bootstrap/_buttons.scss +10 -7
- data/assets/stylesheets/bootstrap/_card.scss +30 -22
- data/assets/stylesheets/bootstrap/_carousel.scss +6 -3
- data/assets/stylesheets/bootstrap/_close.scss +0 -1
- data/assets/stylesheets/bootstrap/_custom-forms.scss +23 -18
- data/assets/stylesheets/bootstrap/_dropdown.scss +4 -3
- data/assets/stylesheets/bootstrap/_forms.scss +19 -10
- data/assets/stylesheets/bootstrap/_functions.scss +62 -6
- data/assets/stylesheets/bootstrap/_grid.scss +10 -6
- data/assets/stylesheets/bootstrap/_images.scss +1 -1
- data/assets/stylesheets/bootstrap/_input-group.scss +24 -4
- data/assets/stylesheets/bootstrap/_jumbotron.scss +1 -1
- data/assets/stylesheets/bootstrap/_list-group.scss +10 -14
- data/assets/stylesheets/bootstrap/_modal.scss +4 -3
- data/assets/stylesheets/bootstrap/_nav.scss +9 -4
- data/assets/stylesheets/bootstrap/_navbar.scss +10 -2
- data/assets/stylesheets/bootstrap/_pagination.scss +3 -2
- data/assets/stylesheets/bootstrap/_popover.scss +9 -9
- data/assets/stylesheets/bootstrap/_print.scss +0 -9
- data/assets/stylesheets/bootstrap/_progress.scss +2 -1
- data/assets/stylesheets/bootstrap/_reboot.scss +27 -25
- data/assets/stylesheets/bootstrap/_root.scss +0 -1
- data/assets/stylesheets/bootstrap/_spinners.scss +18 -8
- data/assets/stylesheets/bootstrap/_toasts.scss +4 -2
- data/assets/stylesheets/bootstrap/_tooltip.scss +4 -4
- data/assets/stylesheets/bootstrap/_transitions.scss +6 -0
- data/assets/stylesheets/bootstrap/_type.scss +1 -1
- data/assets/stylesheets/bootstrap/_utilities.scss +2 -1
- data/assets/stylesheets/bootstrap/_variables.scss +34 -28
- data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +2 -1
- data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +27 -14
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +6 -6
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +23 -5
- data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +26 -17
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +17 -17
- data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +2 -2
- data/assets/stylesheets/bootstrap/mixins/_transition.scss +18 -8
- data/assets/stylesheets/bootstrap/utilities/_background.scss +1 -1
- data/assets/stylesheets/bootstrap/utilities/_borders.scss +1 -1
- data/assets/stylesheets/bootstrap/utilities/_embed.scss +1 -1
- data/assets/stylesheets/bootstrap/utilities/_interactions.scss +5 -0
- data/assets/stylesheets/bootstrap/utilities/_spacing.scss +1 -1
- data/assets/stylesheets/bootstrap/utilities/_text.scss +2 -2
- data/assets/stylesheets/bootstrap/vendor/_rfs.scss +126 -102
- data/bootstrap.gemspec +1 -3
- data/lib/bootstrap/engine.rb +17 -1
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +18 -6
- data/tasks/updater/network.rb +8 -2
- data/test/gemfiles/rails_6_0.gemfile +7 -0
- data/test/gemfiles/rails_7_0_dartsass.gemfile +8 -0
- data/test/gemfiles/rails_7_0_sassc.gemfile +8 -0
- metadata +12 -19
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Bootstrap popover.js v4.
|
|
3
|
-
* Copyright 2011-
|
|
4
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/
|
|
2
|
+
* Bootstrap popover.js v4.6.2 (https://getbootstrap.com/)
|
|
3
|
+
* Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
|
4
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
5
5
|
*/
|
|
6
6
|
(function (global, factory) {
|
|
7
7
|
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery'), require('./tooltip.js')) :
|
|
8
|
-
typeof define === 'function' && define.amd ? define(['jquery', './tooltip
|
|
9
|
-
(global = global || self, global.Popover = factory(global.jQuery, global.Tooltip));
|
|
10
|
-
}(this, (function ($, Tooltip) { 'use strict';
|
|
8
|
+
typeof define === 'function' && define.amd ? define(['jquery', './tooltip'], factory) :
|
|
9
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Popover = factory(global.jQuery, global.Tooltip));
|
|
10
|
+
})(this, (function ($, Tooltip) { 'use strict';
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
13
|
+
|
|
14
|
+
var $__default = /*#__PURE__*/_interopDefaultLegacy($);
|
|
15
|
+
var Tooltip__default = /*#__PURE__*/_interopDefaultLegacy(Tooltip);
|
|
14
16
|
|
|
15
17
|
function _defineProperties(target, props) {
|
|
16
18
|
for (var i = 0; i < props.length; i++) {
|
|
@@ -25,97 +27,71 @@
|
|
|
25
27
|
function _createClass(Constructor, protoProps, staticProps) {
|
|
26
28
|
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
27
29
|
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
30
|
+
Object.defineProperty(Constructor, "prototype", {
|
|
31
|
+
writable: false
|
|
32
|
+
});
|
|
28
33
|
return Constructor;
|
|
29
34
|
}
|
|
30
35
|
|
|
31
|
-
function
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
enumerable: true,
|
|
36
|
-
configurable: true,
|
|
37
|
-
writable: true
|
|
38
|
-
});
|
|
39
|
-
} else {
|
|
40
|
-
obj[key] = value;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
return obj;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
function ownKeys(object, enumerableOnly) {
|
|
47
|
-
var keys = Object.keys(object);
|
|
48
|
-
|
|
49
|
-
if (Object.getOwnPropertySymbols) {
|
|
50
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
51
|
-
if (enumerableOnly) symbols = symbols.filter(function (sym) {
|
|
52
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
53
|
-
});
|
|
54
|
-
keys.push.apply(keys, symbols);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
return keys;
|
|
58
|
-
}
|
|
36
|
+
function _extends() {
|
|
37
|
+
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
38
|
+
for (var i = 1; i < arguments.length; i++) {
|
|
39
|
+
var source = arguments[i];
|
|
59
40
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
ownKeys(Object(source), true).forEach(function (key) {
|
|
66
|
-
_defineProperty(target, key, source[key]);
|
|
67
|
-
});
|
|
68
|
-
} else if (Object.getOwnPropertyDescriptors) {
|
|
69
|
-
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
|
70
|
-
} else {
|
|
71
|
-
ownKeys(Object(source)).forEach(function (key) {
|
|
72
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
73
|
-
});
|
|
41
|
+
for (var key in source) {
|
|
42
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
43
|
+
target[key] = source[key];
|
|
44
|
+
}
|
|
45
|
+
}
|
|
74
46
|
}
|
|
75
|
-
}
|
|
76
47
|
|
|
77
|
-
|
|
48
|
+
return target;
|
|
49
|
+
};
|
|
50
|
+
return _extends.apply(this, arguments);
|
|
78
51
|
}
|
|
79
52
|
|
|
80
53
|
function _inheritsLoose(subClass, superClass) {
|
|
81
54
|
subClass.prototype = Object.create(superClass.prototype);
|
|
82
55
|
subClass.prototype.constructor = subClass;
|
|
83
|
-
|
|
56
|
+
|
|
57
|
+
_setPrototypeOf(subClass, superClass);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
function _setPrototypeOf(o, p) {
|
|
61
|
+
_setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
|
|
62
|
+
o.__proto__ = p;
|
|
63
|
+
return o;
|
|
64
|
+
};
|
|
65
|
+
return _setPrototypeOf(o, p);
|
|
84
66
|
}
|
|
85
67
|
|
|
86
68
|
/**
|
|
87
|
-
* ------------------------------------------------------------------------
|
|
88
69
|
* Constants
|
|
89
|
-
* ------------------------------------------------------------------------
|
|
90
70
|
*/
|
|
91
71
|
|
|
92
72
|
var NAME = 'popover';
|
|
93
|
-
var VERSION = '4.
|
|
73
|
+
var VERSION = '4.6.2';
|
|
94
74
|
var DATA_KEY = 'bs.popover';
|
|
95
75
|
var EVENT_KEY = "." + DATA_KEY;
|
|
96
|
-
var JQUERY_NO_CONFLICT =
|
|
76
|
+
var JQUERY_NO_CONFLICT = $__default["default"].fn[NAME];
|
|
97
77
|
var CLASS_PREFIX = 'bs-popover';
|
|
98
78
|
var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
|
|
79
|
+
var CLASS_NAME_FADE = 'fade';
|
|
80
|
+
var CLASS_NAME_SHOW = 'show';
|
|
81
|
+
var SELECTOR_TITLE = '.popover-header';
|
|
82
|
+
var SELECTOR_CONTENT = '.popover-body';
|
|
99
83
|
|
|
100
|
-
var Default =
|
|
84
|
+
var Default = _extends({}, Tooltip__default["default"].Default, {
|
|
101
85
|
placement: 'right',
|
|
102
86
|
trigger: 'click',
|
|
103
87
|
content: '',
|
|
104
88
|
template: '<div class="popover" role="tooltip">' + '<div class="arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>'
|
|
105
89
|
});
|
|
106
90
|
|
|
107
|
-
var DefaultType =
|
|
91
|
+
var DefaultType = _extends({}, Tooltip__default["default"].DefaultType, {
|
|
108
92
|
content: '(string|element|function)'
|
|
109
93
|
});
|
|
110
94
|
|
|
111
|
-
var ClassName = {
|
|
112
|
-
FADE: 'fade',
|
|
113
|
-
SHOW: 'show'
|
|
114
|
-
};
|
|
115
|
-
var Selector = {
|
|
116
|
-
TITLE: '.popover-header',
|
|
117
|
-
CONTENT: '.popover-body'
|
|
118
|
-
};
|
|
119
95
|
var Event = {
|
|
120
96
|
HIDE: "hide" + EVENT_KEY,
|
|
121
97
|
HIDDEN: "hidden" + EVENT_KEY,
|
|
@@ -129,14 +105,10 @@
|
|
|
129
105
|
MOUSELEAVE: "mouseleave" + EVENT_KEY
|
|
130
106
|
};
|
|
131
107
|
/**
|
|
132
|
-
*
|
|
133
|
-
* Class Definition
|
|
134
|
-
* ------------------------------------------------------------------------
|
|
108
|
+
* Class definition
|
|
135
109
|
*/
|
|
136
110
|
|
|
137
|
-
var Popover =
|
|
138
|
-
/*#__PURE__*/
|
|
139
|
-
function (_Tooltip) {
|
|
111
|
+
var Popover = /*#__PURE__*/function (_Tooltip) {
|
|
140
112
|
_inheritsLoose(Popover, _Tooltip);
|
|
141
113
|
|
|
142
114
|
function Popover() {
|
|
@@ -151,18 +123,18 @@
|
|
|
151
123
|
};
|
|
152
124
|
|
|
153
125
|
_proto.addAttachmentClass = function addAttachmentClass(attachment) {
|
|
154
|
-
$(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
|
|
126
|
+
$__default["default"](this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
|
|
155
127
|
};
|
|
156
128
|
|
|
157
129
|
_proto.getTipElement = function getTipElement() {
|
|
158
|
-
this.tip = this.tip || $(this.config.template)[0];
|
|
130
|
+
this.tip = this.tip || $__default["default"](this.config.template)[0];
|
|
159
131
|
return this.tip;
|
|
160
132
|
};
|
|
161
133
|
|
|
162
134
|
_proto.setContent = function setContent() {
|
|
163
|
-
var $tip = $(this.getTipElement()); // We use append for html objects to maintain js events
|
|
135
|
+
var $tip = $__default["default"](this.getTipElement()); // We use append for html objects to maintain js events
|
|
164
136
|
|
|
165
|
-
this.setElementContent($tip.find(
|
|
137
|
+
this.setElementContent($tip.find(SELECTOR_TITLE), this.getTitle());
|
|
166
138
|
|
|
167
139
|
var content = this._getContent();
|
|
168
140
|
|
|
@@ -170,8 +142,8 @@
|
|
|
170
142
|
content = content.call(this.element);
|
|
171
143
|
}
|
|
172
144
|
|
|
173
|
-
this.setElementContent($tip.find(
|
|
174
|
-
$tip.removeClass(
|
|
145
|
+
this.setElementContent($tip.find(SELECTOR_CONTENT), content);
|
|
146
|
+
$tip.removeClass(CLASS_NAME_FADE + " " + CLASS_NAME_SHOW);
|
|
175
147
|
} // Private
|
|
176
148
|
;
|
|
177
149
|
|
|
@@ -180,7 +152,7 @@
|
|
|
180
152
|
};
|
|
181
153
|
|
|
182
154
|
_proto._cleanTipClass = function _cleanTipClass() {
|
|
183
|
-
var $tip = $(this.getTipElement());
|
|
155
|
+
var $tip = $__default["default"](this.getTipElement());
|
|
184
156
|
var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
|
|
185
157
|
|
|
186
158
|
if (tabClass !== null && tabClass.length > 0) {
|
|
@@ -191,7 +163,7 @@
|
|
|
191
163
|
|
|
192
164
|
Popover._jQueryInterface = function _jQueryInterface(config) {
|
|
193
165
|
return this.each(function () {
|
|
194
|
-
var data = $(this).data(DATA_KEY);
|
|
166
|
+
var data = $__default["default"](this).data(DATA_KEY);
|
|
195
167
|
|
|
196
168
|
var _config = typeof config === 'object' ? config : null;
|
|
197
169
|
|
|
@@ -201,7 +173,7 @@
|
|
|
201
173
|
|
|
202
174
|
if (!data) {
|
|
203
175
|
data = new Popover(this, _config);
|
|
204
|
-
$(this).data(DATA_KEY, data);
|
|
176
|
+
$__default["default"](this).data(DATA_KEY, data);
|
|
205
177
|
}
|
|
206
178
|
|
|
207
179
|
if (typeof config === 'string') {
|
|
@@ -216,8 +188,8 @@
|
|
|
216
188
|
|
|
217
189
|
_createClass(Popover, null, [{
|
|
218
190
|
key: "VERSION",
|
|
219
|
-
// Getters
|
|
220
|
-
|
|
191
|
+
get: // Getters
|
|
192
|
+
function get() {
|
|
221
193
|
return VERSION;
|
|
222
194
|
}
|
|
223
195
|
}, {
|
|
@@ -253,22 +225,20 @@
|
|
|
253
225
|
}]);
|
|
254
226
|
|
|
255
227
|
return Popover;
|
|
256
|
-
}(
|
|
228
|
+
}(Tooltip__default["default"]);
|
|
257
229
|
/**
|
|
258
|
-
* ------------------------------------------------------------------------
|
|
259
230
|
* jQuery
|
|
260
|
-
* ------------------------------------------------------------------------
|
|
261
231
|
*/
|
|
262
232
|
|
|
263
233
|
|
|
264
|
-
|
|
265
|
-
|
|
234
|
+
$__default["default"].fn[NAME] = Popover._jQueryInterface;
|
|
235
|
+
$__default["default"].fn[NAME].Constructor = Popover;
|
|
266
236
|
|
|
267
|
-
|
|
268
|
-
|
|
237
|
+
$__default["default"].fn[NAME].noConflict = function () {
|
|
238
|
+
$__default["default"].fn[NAME] = JQUERY_NO_CONFLICT;
|
|
269
239
|
return Popover._jQueryInterface;
|
|
270
240
|
};
|
|
271
241
|
|
|
272
242
|
return Popover;
|
|
273
243
|
|
|
274
|
-
}))
|
|
244
|
+
}));
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Bootstrap scrollspy.js v4.
|
|
3
|
-
* Copyright 2011-
|
|
4
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/
|
|
2
|
+
* Bootstrap scrollspy.js v4.6.2 (https://getbootstrap.com/)
|
|
3
|
+
* Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
|
4
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
5
5
|
*/
|
|
6
6
|
(function (global, factory) {
|
|
7
7
|
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery'), require('./util.js')) :
|
|
8
|
-
typeof define === 'function' && define.amd ? define(['jquery', './util
|
|
9
|
-
(global = global || self, global.ScrollSpy = factory(global.jQuery, global.Util));
|
|
10
|
-
}(this, (function ($, Util) { 'use strict';
|
|
8
|
+
typeof define === 'function' && define.amd ? define(['jquery', './util'], factory) :
|
|
9
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.ScrollSpy = factory(global.jQuery, global.Util));
|
|
10
|
+
})(this, (function ($, Util) { 'use strict';
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
13
|
+
|
|
14
|
+
var $__default = /*#__PURE__*/_interopDefaultLegacy($);
|
|
15
|
+
var Util__default = /*#__PURE__*/_interopDefaultLegacy(Util);
|
|
14
16
|
|
|
15
17
|
function _defineProperties(target, props) {
|
|
16
18
|
for (var i = 0; i < props.length; i++) {
|
|
@@ -25,70 +27,54 @@
|
|
|
25
27
|
function _createClass(Constructor, protoProps, staticProps) {
|
|
26
28
|
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
27
29
|
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
30
|
+
Object.defineProperty(Constructor, "prototype", {
|
|
31
|
+
writable: false
|
|
32
|
+
});
|
|
28
33
|
return Constructor;
|
|
29
34
|
}
|
|
30
35
|
|
|
31
|
-
function
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
enumerable: true,
|
|
36
|
-
configurable: true,
|
|
37
|
-
writable: true
|
|
38
|
-
});
|
|
39
|
-
} else {
|
|
40
|
-
obj[key] = value;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
return obj;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
function ownKeys(object, enumerableOnly) {
|
|
47
|
-
var keys = Object.keys(object);
|
|
48
|
-
|
|
49
|
-
if (Object.getOwnPropertySymbols) {
|
|
50
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
51
|
-
if (enumerableOnly) symbols = symbols.filter(function (sym) {
|
|
52
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
53
|
-
});
|
|
54
|
-
keys.push.apply(keys, symbols);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
return keys;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
function _objectSpread2(target) {
|
|
61
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
62
|
-
var source = arguments[i] != null ? arguments[i] : {};
|
|
36
|
+
function _extends() {
|
|
37
|
+
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
38
|
+
for (var i = 1; i < arguments.length; i++) {
|
|
39
|
+
var source = arguments[i];
|
|
63
40
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
|
70
|
-
} else {
|
|
71
|
-
ownKeys(Object(source)).forEach(function (key) {
|
|
72
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
73
|
-
});
|
|
41
|
+
for (var key in source) {
|
|
42
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
43
|
+
target[key] = source[key];
|
|
44
|
+
}
|
|
45
|
+
}
|
|
74
46
|
}
|
|
75
|
-
}
|
|
76
47
|
|
|
77
|
-
|
|
48
|
+
return target;
|
|
49
|
+
};
|
|
50
|
+
return _extends.apply(this, arguments);
|
|
78
51
|
}
|
|
79
52
|
|
|
80
53
|
/**
|
|
81
|
-
* ------------------------------------------------------------------------
|
|
82
54
|
* Constants
|
|
83
|
-
* ------------------------------------------------------------------------
|
|
84
55
|
*/
|
|
85
56
|
|
|
86
57
|
var NAME = 'scrollspy';
|
|
87
|
-
var VERSION = '4.
|
|
58
|
+
var VERSION = '4.6.2';
|
|
88
59
|
var DATA_KEY = 'bs.scrollspy';
|
|
89
60
|
var EVENT_KEY = "." + DATA_KEY;
|
|
90
61
|
var DATA_API_KEY = '.data-api';
|
|
91
|
-
var JQUERY_NO_CONFLICT =
|
|
62
|
+
var JQUERY_NO_CONFLICT = $__default["default"].fn[NAME];
|
|
63
|
+
var CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item';
|
|
64
|
+
var CLASS_NAME_ACTIVE = 'active';
|
|
65
|
+
var EVENT_ACTIVATE = "activate" + EVENT_KEY;
|
|
66
|
+
var EVENT_SCROLL = "scroll" + EVENT_KEY;
|
|
67
|
+
var EVENT_LOAD_DATA_API = "load" + EVENT_KEY + DATA_API_KEY;
|
|
68
|
+
var METHOD_OFFSET = 'offset';
|
|
69
|
+
var METHOD_POSITION = 'position';
|
|
70
|
+
var SELECTOR_DATA_SPY = '[data-spy="scroll"]';
|
|
71
|
+
var SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';
|
|
72
|
+
var SELECTOR_NAV_LINKS = '.nav-link';
|
|
73
|
+
var SELECTOR_NAV_ITEMS = '.nav-item';
|
|
74
|
+
var SELECTOR_LIST_ITEMS = '.list-group-item';
|
|
75
|
+
var SELECTOR_DROPDOWN = '.dropdown';
|
|
76
|
+
var SELECTOR_DROPDOWN_ITEMS = '.dropdown-item';
|
|
77
|
+
var SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
|
|
92
78
|
var Default = {
|
|
93
79
|
offset: 10,
|
|
94
80
|
method: 'auto',
|
|
@@ -99,52 +85,23 @@
|
|
|
99
85
|
method: 'string',
|
|
100
86
|
target: '(string|element)'
|
|
101
87
|
};
|
|
102
|
-
var Event = {
|
|
103
|
-
ACTIVATE: "activate" + EVENT_KEY,
|
|
104
|
-
SCROLL: "scroll" + EVENT_KEY,
|
|
105
|
-
LOAD_DATA_API: "load" + EVENT_KEY + DATA_API_KEY
|
|
106
|
-
};
|
|
107
|
-
var ClassName = {
|
|
108
|
-
DROPDOWN_ITEM: 'dropdown-item',
|
|
109
|
-
DROPDOWN_MENU: 'dropdown-menu',
|
|
110
|
-
ACTIVE: 'active'
|
|
111
|
-
};
|
|
112
|
-
var Selector = {
|
|
113
|
-
DATA_SPY: '[data-spy="scroll"]',
|
|
114
|
-
ACTIVE: '.active',
|
|
115
|
-
NAV_LIST_GROUP: '.nav, .list-group',
|
|
116
|
-
NAV_LINKS: '.nav-link',
|
|
117
|
-
NAV_ITEMS: '.nav-item',
|
|
118
|
-
LIST_ITEMS: '.list-group-item',
|
|
119
|
-
DROPDOWN: '.dropdown',
|
|
120
|
-
DROPDOWN_ITEMS: '.dropdown-item',
|
|
121
|
-
DROPDOWN_TOGGLE: '.dropdown-toggle'
|
|
122
|
-
};
|
|
123
|
-
var OffsetMethod = {
|
|
124
|
-
OFFSET: 'offset',
|
|
125
|
-
POSITION: 'position'
|
|
126
|
-
};
|
|
127
88
|
/**
|
|
128
|
-
*
|
|
129
|
-
* Class Definition
|
|
130
|
-
* ------------------------------------------------------------------------
|
|
89
|
+
* Class definition
|
|
131
90
|
*/
|
|
132
91
|
|
|
133
|
-
var ScrollSpy =
|
|
134
|
-
/*#__PURE__*/
|
|
135
|
-
function () {
|
|
92
|
+
var ScrollSpy = /*#__PURE__*/function () {
|
|
136
93
|
function ScrollSpy(element, config) {
|
|
137
94
|
var _this = this;
|
|
138
95
|
|
|
139
96
|
this._element = element;
|
|
140
97
|
this._scrollElement = element.tagName === 'BODY' ? window : element;
|
|
141
98
|
this._config = this._getConfig(config);
|
|
142
|
-
this._selector = this._config.target + " " +
|
|
99
|
+
this._selector = this._config.target + " " + SELECTOR_NAV_LINKS + "," + (this._config.target + " " + SELECTOR_LIST_ITEMS + ",") + (this._config.target + " " + SELECTOR_DROPDOWN_ITEMS);
|
|
143
100
|
this._offsets = [];
|
|
144
101
|
this._targets = [];
|
|
145
102
|
this._activeTarget = null;
|
|
146
103
|
this._scrollHeight = 0;
|
|
147
|
-
$(this._scrollElement).on(
|
|
104
|
+
$__default["default"](this._scrollElement).on(EVENT_SCROLL, function (event) {
|
|
148
105
|
return _this._process(event);
|
|
149
106
|
});
|
|
150
107
|
this.refresh();
|
|
@@ -159,16 +116,16 @@
|
|
|
159
116
|
_proto.refresh = function refresh() {
|
|
160
117
|
var _this2 = this;
|
|
161
118
|
|
|
162
|
-
var autoMethod = this._scrollElement === this._scrollElement.window ?
|
|
119
|
+
var autoMethod = this._scrollElement === this._scrollElement.window ? METHOD_OFFSET : METHOD_POSITION;
|
|
163
120
|
var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method;
|
|
164
|
-
var offsetBase = offsetMethod ===
|
|
121
|
+
var offsetBase = offsetMethod === METHOD_POSITION ? this._getScrollTop() : 0;
|
|
165
122
|
this._offsets = [];
|
|
166
123
|
this._targets = [];
|
|
167
124
|
this._scrollHeight = this._getScrollHeight();
|
|
168
125
|
var targets = [].slice.call(document.querySelectorAll(this._selector));
|
|
169
126
|
targets.map(function (element) {
|
|
170
127
|
var target;
|
|
171
|
-
var targetSelector =
|
|
128
|
+
var targetSelector = Util__default["default"].getSelectorFromElement(element);
|
|
172
129
|
|
|
173
130
|
if (targetSelector) {
|
|
174
131
|
target = document.querySelector(targetSelector);
|
|
@@ -179,14 +136,12 @@
|
|
|
179
136
|
|
|
180
137
|
if (targetBCR.width || targetBCR.height) {
|
|
181
138
|
// TODO (fat): remove sketch reliance on jQuery position/offset
|
|
182
|
-
return [$(target)[offsetMethod]().top + offsetBase, targetSelector];
|
|
139
|
+
return [$__default["default"](target)[offsetMethod]().top + offsetBase, targetSelector];
|
|
183
140
|
}
|
|
184
141
|
}
|
|
185
142
|
|
|
186
143
|
return null;
|
|
187
|
-
}).filter(function (
|
|
188
|
-
return item;
|
|
189
|
-
}).sort(function (a, b) {
|
|
144
|
+
}).filter(Boolean).sort(function (a, b) {
|
|
190
145
|
return a[0] - b[0];
|
|
191
146
|
}).forEach(function (item) {
|
|
192
147
|
_this2._offsets.push(item[0]);
|
|
@@ -196,8 +151,8 @@
|
|
|
196
151
|
};
|
|
197
152
|
|
|
198
153
|
_proto.dispose = function dispose() {
|
|
199
|
-
|
|
200
|
-
$(this._scrollElement).off(EVENT_KEY);
|
|
154
|
+
$__default["default"].removeData(this._element, DATA_KEY);
|
|
155
|
+
$__default["default"](this._scrollElement).off(EVENT_KEY);
|
|
201
156
|
this._element = null;
|
|
202
157
|
this._scrollElement = null;
|
|
203
158
|
this._config = null;
|
|
@@ -210,20 +165,20 @@
|
|
|
210
165
|
;
|
|
211
166
|
|
|
212
167
|
_proto._getConfig = function _getConfig(config) {
|
|
213
|
-
config =
|
|
168
|
+
config = _extends({}, Default, typeof config === 'object' && config ? config : {});
|
|
214
169
|
|
|
215
|
-
if (typeof config.target !== 'string') {
|
|
216
|
-
var id = $(config.target).attr('id');
|
|
170
|
+
if (typeof config.target !== 'string' && Util__default["default"].isElement(config.target)) {
|
|
171
|
+
var id = $__default["default"](config.target).attr('id');
|
|
217
172
|
|
|
218
173
|
if (!id) {
|
|
219
|
-
id =
|
|
220
|
-
$(config.target).attr('id', id);
|
|
174
|
+
id = Util__default["default"].getUID(NAME);
|
|
175
|
+
$__default["default"](config.target).attr('id', id);
|
|
221
176
|
}
|
|
222
177
|
|
|
223
178
|
config.target = "#" + id;
|
|
224
179
|
}
|
|
225
180
|
|
|
226
|
-
|
|
181
|
+
Util__default["default"].typeCheckConfig(NAME, config, DefaultType);
|
|
227
182
|
return config;
|
|
228
183
|
};
|
|
229
184
|
|
|
@@ -268,9 +223,7 @@
|
|
|
268
223
|
return;
|
|
269
224
|
}
|
|
270
225
|
|
|
271
|
-
var
|
|
272
|
-
|
|
273
|
-
for (var i = offsetLength; i--;) {
|
|
226
|
+
for (var i = this._offsets.length; i--;) {
|
|
274
227
|
var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]);
|
|
275
228
|
|
|
276
229
|
if (isActiveTarget) {
|
|
@@ -288,44 +241,44 @@
|
|
|
288
241
|
return selector + "[data-target=\"" + target + "\"]," + selector + "[href=\"" + target + "\"]";
|
|
289
242
|
});
|
|
290
243
|
|
|
291
|
-
var $link = $([].slice.call(document.querySelectorAll(queries.join(','))));
|
|
244
|
+
var $link = $__default["default"]([].slice.call(document.querySelectorAll(queries.join(','))));
|
|
292
245
|
|
|
293
|
-
if ($link.hasClass(
|
|
294
|
-
$link.closest(
|
|
295
|
-
$link.addClass(
|
|
246
|
+
if ($link.hasClass(CLASS_NAME_DROPDOWN_ITEM)) {
|
|
247
|
+
$link.closest(SELECTOR_DROPDOWN).find(SELECTOR_DROPDOWN_TOGGLE).addClass(CLASS_NAME_ACTIVE);
|
|
248
|
+
$link.addClass(CLASS_NAME_ACTIVE);
|
|
296
249
|
} else {
|
|
297
250
|
// Set triggered link as active
|
|
298
|
-
$link.addClass(
|
|
251
|
+
$link.addClass(CLASS_NAME_ACTIVE); // Set triggered links parents as active
|
|
299
252
|
// With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor
|
|
300
253
|
|
|
301
|
-
$link.parents(
|
|
254
|
+
$link.parents(SELECTOR_NAV_LIST_GROUP).prev(SELECTOR_NAV_LINKS + ", " + SELECTOR_LIST_ITEMS).addClass(CLASS_NAME_ACTIVE); // Handle special case when .nav-link is inside .nav-item
|
|
302
255
|
|
|
303
|
-
$link.parents(
|
|
256
|
+
$link.parents(SELECTOR_NAV_LIST_GROUP).prev(SELECTOR_NAV_ITEMS).children(SELECTOR_NAV_LINKS).addClass(CLASS_NAME_ACTIVE);
|
|
304
257
|
}
|
|
305
258
|
|
|
306
|
-
$(this._scrollElement).trigger(
|
|
259
|
+
$__default["default"](this._scrollElement).trigger(EVENT_ACTIVATE, {
|
|
307
260
|
relatedTarget: target
|
|
308
261
|
});
|
|
309
262
|
};
|
|
310
263
|
|
|
311
264
|
_proto._clear = function _clear() {
|
|
312
265
|
[].slice.call(document.querySelectorAll(this._selector)).filter(function (node) {
|
|
313
|
-
return node.classList.contains(
|
|
266
|
+
return node.classList.contains(CLASS_NAME_ACTIVE);
|
|
314
267
|
}).forEach(function (node) {
|
|
315
|
-
return node.classList.remove(
|
|
268
|
+
return node.classList.remove(CLASS_NAME_ACTIVE);
|
|
316
269
|
});
|
|
317
270
|
} // Static
|
|
318
271
|
;
|
|
319
272
|
|
|
320
273
|
ScrollSpy._jQueryInterface = function _jQueryInterface(config) {
|
|
321
274
|
return this.each(function () {
|
|
322
|
-
var data = $(this).data(DATA_KEY);
|
|
275
|
+
var data = $__default["default"](this).data(DATA_KEY);
|
|
323
276
|
|
|
324
277
|
var _config = typeof config === 'object' && config;
|
|
325
278
|
|
|
326
279
|
if (!data) {
|
|
327
280
|
data = new ScrollSpy(this, _config);
|
|
328
|
-
$(this).data(DATA_KEY, data);
|
|
281
|
+
$__default["default"](this).data(DATA_KEY, data);
|
|
329
282
|
}
|
|
330
283
|
|
|
331
284
|
if (typeof config === 'string') {
|
|
@@ -353,36 +306,32 @@
|
|
|
353
306
|
return ScrollSpy;
|
|
354
307
|
}();
|
|
355
308
|
/**
|
|
356
|
-
*
|
|
357
|
-
* Data Api implementation
|
|
358
|
-
* ------------------------------------------------------------------------
|
|
309
|
+
* Data API implementation
|
|
359
310
|
*/
|
|
360
311
|
|
|
361
312
|
|
|
362
|
-
$(window).on(
|
|
363
|
-
var scrollSpys = [].slice.call(document.querySelectorAll(
|
|
313
|
+
$__default["default"](window).on(EVENT_LOAD_DATA_API, function () {
|
|
314
|
+
var scrollSpys = [].slice.call(document.querySelectorAll(SELECTOR_DATA_SPY));
|
|
364
315
|
var scrollSpysLength = scrollSpys.length;
|
|
365
316
|
|
|
366
317
|
for (var i = scrollSpysLength; i--;) {
|
|
367
|
-
var $spy = $(scrollSpys[i]);
|
|
318
|
+
var $spy = $__default["default"](scrollSpys[i]);
|
|
368
319
|
|
|
369
320
|
ScrollSpy._jQueryInterface.call($spy, $spy.data());
|
|
370
321
|
}
|
|
371
322
|
});
|
|
372
323
|
/**
|
|
373
|
-
* ------------------------------------------------------------------------
|
|
374
324
|
* jQuery
|
|
375
|
-
* ------------------------------------------------------------------------
|
|
376
325
|
*/
|
|
377
326
|
|
|
378
|
-
|
|
379
|
-
|
|
327
|
+
$__default["default"].fn[NAME] = ScrollSpy._jQueryInterface;
|
|
328
|
+
$__default["default"].fn[NAME].Constructor = ScrollSpy;
|
|
380
329
|
|
|
381
|
-
|
|
382
|
-
|
|
330
|
+
$__default["default"].fn[NAME].noConflict = function () {
|
|
331
|
+
$__default["default"].fn[NAME] = JQUERY_NO_CONFLICT;
|
|
383
332
|
return ScrollSpy._jQueryInterface;
|
|
384
333
|
};
|
|
385
334
|
|
|
386
335
|
return ScrollSpy;
|
|
387
336
|
|
|
388
|
-
}))
|
|
337
|
+
}));
|