bootstrap 4.3.0 → 4.5.3
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of bootstrap might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.travis.yml +15 -1
- data/CHANGELOG.md +2 -14
- data/README.md +1 -1
- data/assets/javascripts/bootstrap-sprockets.js +7 -7
- data/assets/javascripts/bootstrap.js +1186 -1056
- data/assets/javascripts/bootstrap.min.js +4 -4
- data/assets/javascripts/bootstrap/alert.js +45 -65
- data/assets/javascripts/bootstrap/button.js +114 -80
- data/assets/javascripts/bootstrap/carousel.js +131 -186
- data/assets/javascripts/bootstrap/collapse.js +86 -140
- data/assets/javascripts/bootstrap/dropdown.js +152 -207
- data/assets/javascripts/bootstrap/modal.js +204 -214
- data/assets/javascripts/bootstrap/popover.js +41 -95
- data/assets/javascripts/bootstrap/scrollspy.js +69 -127
- data/assets/javascripts/bootstrap/tab.js +75 -95
- data/assets/javascripts/bootstrap/toast.js +87 -127
- data/assets/javascripts/bootstrap/tooltip.js +298 -198
- data/assets/javascripts/bootstrap/util.js +41 -20
- data/assets/stylesheets/_bootstrap-grid.scss +4 -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/_badge.scss +1 -1
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +4 -1
- data/assets/stylesheets/bootstrap/_button-group.scss +1 -1
- data/assets/stylesheets/bootstrap/_buttons.scss +13 -8
- data/assets/stylesheets/bootstrap/_card.scss +42 -45
- data/assets/stylesheets/bootstrap/_carousel.scss +6 -6
- data/assets/stylesheets/bootstrap/_close.scss +2 -3
- data/assets/stylesheets/bootstrap/_code.scss +1 -1
- data/assets/stylesheets/bootstrap/_custom-forms.scss +34 -17
- data/assets/stylesheets/bootstrap/_dropdown.scss +6 -5
- data/assets/stylesheets/bootstrap/_forms.scss +26 -9
- data/assets/stylesheets/bootstrap/_functions.scss +63 -5
- data/assets/stylesheets/bootstrap/_grid.scss +32 -11
- data/assets/stylesheets/bootstrap/_images.scss +2 -2
- data/assets/stylesheets/bootstrap/_input-group.scss +1 -2
- data/assets/stylesheets/bootstrap/_list-group.scss +36 -31
- data/assets/stylesheets/bootstrap/_mixins.scss +3 -3
- data/assets/stylesheets/bootstrap/_modal.scss +26 -15
- data/assets/stylesheets/bootstrap/_nav.scss +6 -3
- data/assets/stylesheets/bootstrap/_navbar.scss +45 -15
- data/assets/stylesheets/bootstrap/_pagination.scss +3 -2
- data/assets/stylesheets/bootstrap/_popover.scss +8 -9
- data/assets/stylesheets/bootstrap/_print.scss +2 -2
- data/assets/stylesheets/bootstrap/_progress.scss +6 -2
- data/assets/stylesheets/bootstrap/_reboot.scss +32 -31
- data/assets/stylesheets/bootstrap/_root.scss +1 -0
- data/assets/stylesheets/bootstrap/_spinners.scss +3 -2
- data/assets/stylesheets/bootstrap/_tables.scss +3 -3
- data/assets/stylesheets/bootstrap/_toasts.scss +4 -2
- data/assets/stylesheets/bootstrap/_type.scss +2 -2
- data/assets/stylesheets/bootstrap/_utilities.scss +2 -1
- data/assets/stylesheets/bootstrap/_variables.scss +51 -32
- data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +5 -3
- data/assets/stylesheets/bootstrap/mixins/_badge.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +27 -14
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +11 -8
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +8 -8
- data/assets/stylesheets/bootstrap/mixins/_float.scss +3 -3
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +35 -49
- data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +29 -15
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +25 -7
- data/assets/stylesheets/bootstrap/mixins/_hover.scss +4 -4
- data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +2 -1
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +4 -3
- data/assets/stylesheets/bootstrap/mixins/_table-row.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +3 -2
- data/assets/stylesheets/bootstrap/mixins/_transition.scss +18 -8
- data/assets/stylesheets/bootstrap/utilities/_background.scss +2 -2
- data/assets/stylesheets/bootstrap/utilities/_borders.scss +1 -1
- data/assets/stylesheets/bootstrap/utilities/_interactions.scss +5 -0
- data/assets/stylesheets/bootstrap/utilities/_text.scss +4 -4
- data/assets/stylesheets/bootstrap/vendor/_rfs.scss +0 -8
- data/bootstrap.gemspec +1 -1
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +1 -1
- data/tasks/updater/network.rb +2 -2
- data/test/dummy_rails/app/assets/config/manifest.js +3 -0
- data/test/dummy_rails/app/assets/stylesheets/.browserslistrc +1 -0
- data/test/gemfiles/rails_6_0.gemfile +7 -0
- data/test/support/dummy_rails_integration.rb +3 -1
- data/test/test_helper.rb +18 -13
- metadata +11 -5
@@ -1,73 +1,26 @@
|
|
1
1
|
/*!
|
2
|
-
* Bootstrap popover.js v4.3
|
3
|
-
* Copyright 2011-
|
4
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/
|
2
|
+
* Bootstrap popover.js v4.5.3 (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
5
|
*/
|
6
6
|
(function (global, factory) {
|
7
7
|
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery'), require('./tooltip.js')) :
|
8
8
|
typeof define === 'function' && define.amd ? define(['jquery', './tooltip.js'], factory) :
|
9
|
-
(global = global || self, global.Popover = factory(global.jQuery, global.Tooltip));
|
10
|
-
}(this, function ($, Tooltip) { 'use strict';
|
11
|
-
|
12
|
-
$ = $ && $.hasOwnProperty('default') ? $['default'] : $;
|
13
|
-
Tooltip = Tooltip && Tooltip.hasOwnProperty('default') ? Tooltip['default'] : Tooltip;
|
14
|
-
|
15
|
-
function _defineProperties(target, props) {
|
16
|
-
for (var i = 0; i < props.length; i++) {
|
17
|
-
var descriptor = props[i];
|
18
|
-
descriptor.enumerable = descriptor.enumerable || false;
|
19
|
-
descriptor.configurable = true;
|
20
|
-
if ("value" in descriptor) descriptor.writable = true;
|
21
|
-
Object.defineProperty(target, descriptor.key, descriptor);
|
22
|
-
}
|
23
|
-
}
|
24
|
-
|
25
|
-
function _createClass(Constructor, protoProps, staticProps) {
|
26
|
-
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
27
|
-
if (staticProps) _defineProperties(Constructor, staticProps);
|
28
|
-
return Constructor;
|
29
|
-
}
|
30
|
-
|
31
|
-
function _defineProperty(obj, key, value) {
|
32
|
-
if (key in obj) {
|
33
|
-
Object.defineProperty(obj, key, {
|
34
|
-
value: value,
|
35
|
-
enumerable: true,
|
36
|
-
configurable: true,
|
37
|
-
writable: true
|
38
|
-
});
|
39
|
-
} else {
|
40
|
-
obj[key] = value;
|
41
|
-
}
|
9
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Popover = factory(global.jQuery, global.Tooltip));
|
10
|
+
}(this, (function ($, Tooltip) { 'use strict';
|
42
11
|
|
43
|
-
|
44
|
-
}
|
12
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
45
13
|
|
46
|
-
|
47
|
-
|
48
|
-
var source = arguments[i] != null ? arguments[i] : {};
|
49
|
-
var ownKeys = Object.keys(source);
|
14
|
+
var $__default = /*#__PURE__*/_interopDefaultLegacy($);
|
15
|
+
var Tooltip__default = /*#__PURE__*/_interopDefaultLegacy(Tooltip);
|
50
16
|
|
51
|
-
|
52
|
-
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
|
53
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
54
|
-
}));
|
55
|
-
}
|
56
|
-
|
57
|
-
ownKeys.forEach(function (key) {
|
58
|
-
_defineProperty(target, key, source[key]);
|
59
|
-
});
|
60
|
-
}
|
17
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
61
18
|
|
62
|
-
|
63
|
-
}
|
19
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
64
20
|
|
65
|
-
function _inheritsLoose(subClass, superClass) {
|
66
|
-
subClass.prototype = Object.create(superClass.prototype);
|
67
|
-
subClass.prototype.constructor = subClass;
|
68
|
-
subClass.__proto__ = superClass;
|
69
|
-
}
|
21
|
+
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }
|
70
22
|
|
23
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
71
24
|
/**
|
72
25
|
* ------------------------------------------------------------------------
|
73
26
|
* Constants
|
@@ -75,32 +28,28 @@
|
|
75
28
|
*/
|
76
29
|
|
77
30
|
var NAME = 'popover';
|
78
|
-
var VERSION = '4.3
|
31
|
+
var VERSION = '4.5.3';
|
79
32
|
var DATA_KEY = 'bs.popover';
|
80
33
|
var EVENT_KEY = "." + DATA_KEY;
|
81
|
-
var JQUERY_NO_CONFLICT =
|
34
|
+
var JQUERY_NO_CONFLICT = $__default['default'].fn[NAME];
|
82
35
|
var CLASS_PREFIX = 'bs-popover';
|
83
36
|
var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
|
84
37
|
|
85
|
-
var Default =
|
38
|
+
var Default = _extends({}, Tooltip__default['default'].Default, {
|
86
39
|
placement: 'right',
|
87
40
|
trigger: 'click',
|
88
41
|
content: '',
|
89
42
|
template: '<div class="popover" role="tooltip">' + '<div class="arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>'
|
90
43
|
});
|
91
44
|
|
92
|
-
var DefaultType =
|
45
|
+
var DefaultType = _extends({}, Tooltip__default['default'].DefaultType, {
|
93
46
|
content: '(string|element|function)'
|
94
47
|
});
|
95
48
|
|
96
|
-
var
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
var Selector = {
|
101
|
-
TITLE: '.popover-header',
|
102
|
-
CONTENT: '.popover-body'
|
103
|
-
};
|
49
|
+
var CLASS_NAME_FADE = 'fade';
|
50
|
+
var CLASS_NAME_SHOW = 'show';
|
51
|
+
var SELECTOR_TITLE = '.popover-header';
|
52
|
+
var SELECTOR_CONTENT = '.popover-body';
|
104
53
|
var Event = {
|
105
54
|
HIDE: "hide" + EVENT_KEY,
|
106
55
|
HIDDEN: "hidden" + EVENT_KEY,
|
@@ -112,17 +61,14 @@
|
|
112
61
|
FOCUSOUT: "focusout" + EVENT_KEY,
|
113
62
|
MOUSEENTER: "mouseenter" + EVENT_KEY,
|
114
63
|
MOUSELEAVE: "mouseleave" + EVENT_KEY
|
115
|
-
/**
|
116
|
-
* ------------------------------------------------------------------------
|
117
|
-
* Class Definition
|
118
|
-
* ------------------------------------------------------------------------
|
119
|
-
*/
|
120
|
-
|
121
64
|
};
|
65
|
+
/**
|
66
|
+
* ------------------------------------------------------------------------
|
67
|
+
* Class Definition
|
68
|
+
* ------------------------------------------------------------------------
|
69
|
+
*/
|
122
70
|
|
123
|
-
var Popover =
|
124
|
-
/*#__PURE__*/
|
125
|
-
function (_Tooltip) {
|
71
|
+
var Popover = /*#__PURE__*/function (_Tooltip) {
|
126
72
|
_inheritsLoose(Popover, _Tooltip);
|
127
73
|
|
128
74
|
function Popover() {
|
@@ -137,18 +83,18 @@
|
|
137
83
|
};
|
138
84
|
|
139
85
|
_proto.addAttachmentClass = function addAttachmentClass(attachment) {
|
140
|
-
$(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
|
86
|
+
$__default['default'](this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
|
141
87
|
};
|
142
88
|
|
143
89
|
_proto.getTipElement = function getTipElement() {
|
144
|
-
this.tip = this.tip || $(this.config.template)[0];
|
90
|
+
this.tip = this.tip || $__default['default'](this.config.template)[0];
|
145
91
|
return this.tip;
|
146
92
|
};
|
147
93
|
|
148
94
|
_proto.setContent = function setContent() {
|
149
|
-
var $tip = $(this.getTipElement()); // We use append for html objects to maintain js events
|
95
|
+
var $tip = $__default['default'](this.getTipElement()); // We use append for html objects to maintain js events
|
150
96
|
|
151
|
-
this.setElementContent($tip.find(
|
97
|
+
this.setElementContent($tip.find(SELECTOR_TITLE), this.getTitle());
|
152
98
|
|
153
99
|
var content = this._getContent();
|
154
100
|
|
@@ -156,8 +102,8 @@
|
|
156
102
|
content = content.call(this.element);
|
157
103
|
}
|
158
104
|
|
159
|
-
this.setElementContent($tip.find(
|
160
|
-
$tip.removeClass(
|
105
|
+
this.setElementContent($tip.find(SELECTOR_CONTENT), content);
|
106
|
+
$tip.removeClass(CLASS_NAME_FADE + " " + CLASS_NAME_SHOW);
|
161
107
|
} // Private
|
162
108
|
;
|
163
109
|
|
@@ -166,7 +112,7 @@
|
|
166
112
|
};
|
167
113
|
|
168
114
|
_proto._cleanTipClass = function _cleanTipClass() {
|
169
|
-
var $tip = $(this.getTipElement());
|
115
|
+
var $tip = $__default['default'](this.getTipElement());
|
170
116
|
var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
|
171
117
|
|
172
118
|
if (tabClass !== null && tabClass.length > 0) {
|
@@ -177,7 +123,7 @@
|
|
177
123
|
|
178
124
|
Popover._jQueryInterface = function _jQueryInterface(config) {
|
179
125
|
return this.each(function () {
|
180
|
-
var data = $(this).data(DATA_KEY);
|
126
|
+
var data = $__default['default'](this).data(DATA_KEY);
|
181
127
|
|
182
128
|
var _config = typeof config === 'object' ? config : null;
|
183
129
|
|
@@ -187,7 +133,7 @@
|
|
187
133
|
|
188
134
|
if (!data) {
|
189
135
|
data = new Popover(this, _config);
|
190
|
-
$(this).data(DATA_KEY, data);
|
136
|
+
$__default['default'](this).data(DATA_KEY, data);
|
191
137
|
}
|
192
138
|
|
193
139
|
if (typeof config === 'string') {
|
@@ -239,7 +185,7 @@
|
|
239
185
|
}]);
|
240
186
|
|
241
187
|
return Popover;
|
242
|
-
}(
|
188
|
+
}(Tooltip__default['default']);
|
243
189
|
/**
|
244
190
|
* ------------------------------------------------------------------------
|
245
191
|
* jQuery
|
@@ -247,14 +193,14 @@
|
|
247
193
|
*/
|
248
194
|
|
249
195
|
|
250
|
-
|
251
|
-
|
196
|
+
$__default['default'].fn[NAME] = Popover._jQueryInterface;
|
197
|
+
$__default['default'].fn[NAME].Constructor = Popover;
|
252
198
|
|
253
|
-
|
254
|
-
|
199
|
+
$__default['default'].fn[NAME].noConflict = function () {
|
200
|
+
$__default['default'].fn[NAME] = JQUERY_NO_CONFLICT;
|
255
201
|
return Popover._jQueryInterface;
|
256
202
|
};
|
257
203
|
|
258
204
|
return Popover;
|
259
205
|
|
260
|
-
}));
|
206
|
+
})));
|
@@ -1,67 +1,24 @@
|
|
1
1
|
/*!
|
2
|
-
* Bootstrap scrollspy.js v4.3
|
3
|
-
* Copyright 2011-
|
4
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/
|
2
|
+
* Bootstrap scrollspy.js v4.5.3 (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
5
|
*/
|
6
6
|
(function (global, factory) {
|
7
7
|
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery'), require('./util.js')) :
|
8
8
|
typeof define === 'function' && define.amd ? define(['jquery', './util.js'], factory) :
|
9
|
-
(global = global || self, global.ScrollSpy = factory(global.jQuery, global.Util));
|
10
|
-
}(this, function ($, Util) { 'use strict';
|
11
|
-
|
12
|
-
$ = $ && $.hasOwnProperty('default') ? $['default'] : $;
|
13
|
-
Util = Util && Util.hasOwnProperty('default') ? Util['default'] : Util;
|
14
|
-
|
15
|
-
function _defineProperties(target, props) {
|
16
|
-
for (var i = 0; i < props.length; i++) {
|
17
|
-
var descriptor = props[i];
|
18
|
-
descriptor.enumerable = descriptor.enumerable || false;
|
19
|
-
descriptor.configurable = true;
|
20
|
-
if ("value" in descriptor) descriptor.writable = true;
|
21
|
-
Object.defineProperty(target, descriptor.key, descriptor);
|
22
|
-
}
|
23
|
-
}
|
24
|
-
|
25
|
-
function _createClass(Constructor, protoProps, staticProps) {
|
26
|
-
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
27
|
-
if (staticProps) _defineProperties(Constructor, staticProps);
|
28
|
-
return Constructor;
|
29
|
-
}
|
30
|
-
|
31
|
-
function _defineProperty(obj, key, value) {
|
32
|
-
if (key in obj) {
|
33
|
-
Object.defineProperty(obj, key, {
|
34
|
-
value: value,
|
35
|
-
enumerable: true,
|
36
|
-
configurable: true,
|
37
|
-
writable: true
|
38
|
-
});
|
39
|
-
} else {
|
40
|
-
obj[key] = value;
|
41
|
-
}
|
9
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.ScrollSpy = factory(global.jQuery, global.Util));
|
10
|
+
}(this, (function ($, Util) { 'use strict';
|
42
11
|
|
43
|
-
|
44
|
-
}
|
12
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
45
13
|
|
46
|
-
|
47
|
-
|
48
|
-
var source = arguments[i] != null ? arguments[i] : {};
|
49
|
-
var ownKeys = Object.keys(source);
|
14
|
+
var $__default = /*#__PURE__*/_interopDefaultLegacy($);
|
15
|
+
var Util__default = /*#__PURE__*/_interopDefaultLegacy(Util);
|
50
16
|
|
51
|
-
|
52
|
-
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
|
53
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
54
|
-
}));
|
55
|
-
}
|
17
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
56
18
|
|
57
|
-
|
58
|
-
_defineProperty(target, key, source[key]);
|
59
|
-
});
|
60
|
-
}
|
61
|
-
|
62
|
-
return target;
|
63
|
-
}
|
19
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
64
20
|
|
21
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
65
22
|
/**
|
66
23
|
* ------------------------------------------------------------------------
|
67
24
|
* Constants
|
@@ -69,11 +26,11 @@
|
|
69
26
|
*/
|
70
27
|
|
71
28
|
var NAME = 'scrollspy';
|
72
|
-
var VERSION = '4.3
|
29
|
+
var VERSION = '4.5.3';
|
73
30
|
var DATA_KEY = 'bs.scrollspy';
|
74
31
|
var EVENT_KEY = "." + DATA_KEY;
|
75
32
|
var DATA_API_KEY = '.data-api';
|
76
|
-
var JQUERY_NO_CONFLICT =
|
33
|
+
var JQUERY_NO_CONFLICT = $__default['default'].fn[NAME];
|
77
34
|
var Default = {
|
78
35
|
offset: 10,
|
79
36
|
method: 'auto',
|
@@ -84,53 +41,40 @@
|
|
84
41
|
method: 'string',
|
85
42
|
target: '(string|element)'
|
86
43
|
};
|
87
|
-
var
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
var
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
var
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
};
|
108
|
-
var OffsetMethod = {
|
109
|
-
OFFSET: 'offset',
|
110
|
-
POSITION: 'position'
|
111
|
-
/**
|
112
|
-
* ------------------------------------------------------------------------
|
113
|
-
* Class Definition
|
114
|
-
* ------------------------------------------------------------------------
|
115
|
-
*/
|
116
|
-
|
117
|
-
};
|
44
|
+
var EVENT_ACTIVATE = "activate" + EVENT_KEY;
|
45
|
+
var EVENT_SCROLL = "scroll" + EVENT_KEY;
|
46
|
+
var EVENT_LOAD_DATA_API = "load" + EVENT_KEY + DATA_API_KEY;
|
47
|
+
var CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item';
|
48
|
+
var CLASS_NAME_ACTIVE = 'active';
|
49
|
+
var SELECTOR_DATA_SPY = '[data-spy="scroll"]';
|
50
|
+
var SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';
|
51
|
+
var SELECTOR_NAV_LINKS = '.nav-link';
|
52
|
+
var SELECTOR_NAV_ITEMS = '.nav-item';
|
53
|
+
var SELECTOR_LIST_ITEMS = '.list-group-item';
|
54
|
+
var SELECTOR_DROPDOWN = '.dropdown';
|
55
|
+
var SELECTOR_DROPDOWN_ITEMS = '.dropdown-item';
|
56
|
+
var SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
|
57
|
+
var METHOD_OFFSET = 'offset';
|
58
|
+
var METHOD_POSITION = 'position';
|
59
|
+
/**
|
60
|
+
* ------------------------------------------------------------------------
|
61
|
+
* Class Definition
|
62
|
+
* ------------------------------------------------------------------------
|
63
|
+
*/
|
118
64
|
|
119
|
-
var ScrollSpy =
|
120
|
-
/*#__PURE__*/
|
121
|
-
function () {
|
65
|
+
var ScrollSpy = /*#__PURE__*/function () {
|
122
66
|
function ScrollSpy(element, config) {
|
123
67
|
var _this = this;
|
124
68
|
|
125
69
|
this._element = element;
|
126
70
|
this._scrollElement = element.tagName === 'BODY' ? window : element;
|
127
71
|
this._config = this._getConfig(config);
|
128
|
-
this._selector = this._config.target + " " +
|
72
|
+
this._selector = this._config.target + " " + SELECTOR_NAV_LINKS + "," + (this._config.target + " " + SELECTOR_LIST_ITEMS + ",") + (this._config.target + " " + SELECTOR_DROPDOWN_ITEMS);
|
129
73
|
this._offsets = [];
|
130
74
|
this._targets = [];
|
131
75
|
this._activeTarget = null;
|
132
76
|
this._scrollHeight = 0;
|
133
|
-
$(this._scrollElement).on(
|
77
|
+
$__default['default'](this._scrollElement).on(EVENT_SCROLL, function (event) {
|
134
78
|
return _this._process(event);
|
135
79
|
});
|
136
80
|
this.refresh();
|
@@ -145,16 +89,16 @@
|
|
145
89
|
_proto.refresh = function refresh() {
|
146
90
|
var _this2 = this;
|
147
91
|
|
148
|
-
var autoMethod = this._scrollElement === this._scrollElement.window ?
|
92
|
+
var autoMethod = this._scrollElement === this._scrollElement.window ? METHOD_OFFSET : METHOD_POSITION;
|
149
93
|
var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method;
|
150
|
-
var offsetBase = offsetMethod ===
|
94
|
+
var offsetBase = offsetMethod === METHOD_POSITION ? this._getScrollTop() : 0;
|
151
95
|
this._offsets = [];
|
152
96
|
this._targets = [];
|
153
97
|
this._scrollHeight = this._getScrollHeight();
|
154
98
|
var targets = [].slice.call(document.querySelectorAll(this._selector));
|
155
99
|
targets.map(function (element) {
|
156
100
|
var target;
|
157
|
-
var targetSelector =
|
101
|
+
var targetSelector = Util__default['default'].getSelectorFromElement(element);
|
158
102
|
|
159
103
|
if (targetSelector) {
|
160
104
|
target = document.querySelector(targetSelector);
|
@@ -165,7 +109,7 @@
|
|
165
109
|
|
166
110
|
if (targetBCR.width || targetBCR.height) {
|
167
111
|
// TODO (fat): remove sketch reliance on jQuery position/offset
|
168
|
-
return [$(target)[offsetMethod]().top + offsetBase, targetSelector];
|
112
|
+
return [$__default['default'](target)[offsetMethod]().top + offsetBase, targetSelector];
|
169
113
|
}
|
170
114
|
}
|
171
115
|
|
@@ -182,8 +126,8 @@
|
|
182
126
|
};
|
183
127
|
|
184
128
|
_proto.dispose = function dispose() {
|
185
|
-
|
186
|
-
$(this._scrollElement).off(EVENT_KEY);
|
129
|
+
$__default['default'].removeData(this._element, DATA_KEY);
|
130
|
+
$__default['default'](this._scrollElement).off(EVENT_KEY);
|
187
131
|
this._element = null;
|
188
132
|
this._scrollElement = null;
|
189
133
|
this._config = null;
|
@@ -196,20 +140,20 @@
|
|
196
140
|
;
|
197
141
|
|
198
142
|
_proto._getConfig = function _getConfig(config) {
|
199
|
-
config =
|
143
|
+
config = _extends({}, Default, typeof config === 'object' && config ? config : {});
|
200
144
|
|
201
|
-
if (typeof config.target !== 'string') {
|
202
|
-
var id = $(config.target).attr('id');
|
145
|
+
if (typeof config.target !== 'string' && Util__default['default'].isElement(config.target)) {
|
146
|
+
var id = $__default['default'](config.target).attr('id');
|
203
147
|
|
204
148
|
if (!id) {
|
205
|
-
id =
|
206
|
-
$(config.target).attr('id', id);
|
149
|
+
id = Util__default['default'].getUID(NAME);
|
150
|
+
$__default['default'](config.target).attr('id', id);
|
207
151
|
}
|
208
152
|
|
209
153
|
config.target = "#" + id;
|
210
154
|
}
|
211
155
|
|
212
|
-
|
156
|
+
Util__default['default'].typeCheckConfig(NAME, config, DefaultType);
|
213
157
|
return config;
|
214
158
|
};
|
215
159
|
|
@@ -254,9 +198,7 @@
|
|
254
198
|
return;
|
255
199
|
}
|
256
200
|
|
257
|
-
var
|
258
|
-
|
259
|
-
for (var i = offsetLength; i--;) {
|
201
|
+
for (var i = this._offsets.length; i--;) {
|
260
202
|
var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]);
|
261
203
|
|
262
204
|
if (isActiveTarget) {
|
@@ -274,44 +216,44 @@
|
|
274
216
|
return selector + "[data-target=\"" + target + "\"]," + selector + "[href=\"" + target + "\"]";
|
275
217
|
});
|
276
218
|
|
277
|
-
var $link = $([].slice.call(document.querySelectorAll(queries.join(','))));
|
219
|
+
var $link = $__default['default']([].slice.call(document.querySelectorAll(queries.join(','))));
|
278
220
|
|
279
|
-
if ($link.hasClass(
|
280
|
-
$link.closest(
|
281
|
-
$link.addClass(
|
221
|
+
if ($link.hasClass(CLASS_NAME_DROPDOWN_ITEM)) {
|
222
|
+
$link.closest(SELECTOR_DROPDOWN).find(SELECTOR_DROPDOWN_TOGGLE).addClass(CLASS_NAME_ACTIVE);
|
223
|
+
$link.addClass(CLASS_NAME_ACTIVE);
|
282
224
|
} else {
|
283
225
|
// Set triggered link as active
|
284
|
-
$link.addClass(
|
226
|
+
$link.addClass(CLASS_NAME_ACTIVE); // Set triggered links parents as active
|
285
227
|
// With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor
|
286
228
|
|
287
|
-
$link.parents(
|
229
|
+
$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
|
288
230
|
|
289
|
-
$link.parents(
|
231
|
+
$link.parents(SELECTOR_NAV_LIST_GROUP).prev(SELECTOR_NAV_ITEMS).children(SELECTOR_NAV_LINKS).addClass(CLASS_NAME_ACTIVE);
|
290
232
|
}
|
291
233
|
|
292
|
-
$(this._scrollElement).trigger(
|
234
|
+
$__default['default'](this._scrollElement).trigger(EVENT_ACTIVATE, {
|
293
235
|
relatedTarget: target
|
294
236
|
});
|
295
237
|
};
|
296
238
|
|
297
239
|
_proto._clear = function _clear() {
|
298
240
|
[].slice.call(document.querySelectorAll(this._selector)).filter(function (node) {
|
299
|
-
return node.classList.contains(
|
241
|
+
return node.classList.contains(CLASS_NAME_ACTIVE);
|
300
242
|
}).forEach(function (node) {
|
301
|
-
return node.classList.remove(
|
243
|
+
return node.classList.remove(CLASS_NAME_ACTIVE);
|
302
244
|
});
|
303
245
|
} // Static
|
304
246
|
;
|
305
247
|
|
306
248
|
ScrollSpy._jQueryInterface = function _jQueryInterface(config) {
|
307
249
|
return this.each(function () {
|
308
|
-
var data = $(this).data(DATA_KEY);
|
250
|
+
var data = $__default['default'](this).data(DATA_KEY);
|
309
251
|
|
310
252
|
var _config = typeof config === 'object' && config;
|
311
253
|
|
312
254
|
if (!data) {
|
313
255
|
data = new ScrollSpy(this, _config);
|
314
|
-
$(this).data(DATA_KEY, data);
|
256
|
+
$__default['default'](this).data(DATA_KEY, data);
|
315
257
|
}
|
316
258
|
|
317
259
|
if (typeof config === 'string') {
|
@@ -345,12 +287,12 @@
|
|
345
287
|
*/
|
346
288
|
|
347
289
|
|
348
|
-
$(window).on(
|
349
|
-
var scrollSpys = [].slice.call(document.querySelectorAll(
|
290
|
+
$__default['default'](window).on(EVENT_LOAD_DATA_API, function () {
|
291
|
+
var scrollSpys = [].slice.call(document.querySelectorAll(SELECTOR_DATA_SPY));
|
350
292
|
var scrollSpysLength = scrollSpys.length;
|
351
293
|
|
352
294
|
for (var i = scrollSpysLength; i--;) {
|
353
|
-
var $spy = $(scrollSpys[i]);
|
295
|
+
var $spy = $__default['default'](scrollSpys[i]);
|
354
296
|
|
355
297
|
ScrollSpy._jQueryInterface.call($spy, $spy.data());
|
356
298
|
}
|
@@ -361,14 +303,14 @@
|
|
361
303
|
* ------------------------------------------------------------------------
|
362
304
|
*/
|
363
305
|
|
364
|
-
|
365
|
-
|
306
|
+
$__default['default'].fn[NAME] = ScrollSpy._jQueryInterface;
|
307
|
+
$__default['default'].fn[NAME].Constructor = ScrollSpy;
|
366
308
|
|
367
|
-
|
368
|
-
|
309
|
+
$__default['default'].fn[NAME].noConflict = function () {
|
310
|
+
$__default['default'].fn[NAME] = JQUERY_NO_CONFLICT;
|
369
311
|
return ScrollSpy._jQueryInterface;
|
370
312
|
};
|
371
313
|
|
372
314
|
return ScrollSpy;
|
373
315
|
|
374
|
-
}));
|
316
|
+
})));
|