bootstrap 4.3.1 → 4.6.0
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.
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 +1073 -1076
- data/assets/javascripts/bootstrap.min.js +4 -4
- data/assets/javascripts/bootstrap/alert.js +42 -49
- data/assets/javascripts/bootstrap/button.js +111 -64
- data/assets/javascripts/bootstrap/carousel.js +162 -177
- data/assets/javascripts/bootstrap/collapse.js +97 -122
- data/assets/javascripts/bootstrap/dropdown.js +163 -189
- data/assets/javascripts/bootstrap/modal.js +213 -194
- data/assets/javascripts/bootstrap/popover.js +51 -72
- data/assets/javascripts/bootstrap/scrollspy.js +80 -109
- data/assets/javascripts/bootstrap/tab.js +72 -79
- data/assets/javascripts/bootstrap/toast.js +96 -107
- data/assets/javascripts/bootstrap/tooltip.js +186 -201
- data/assets/javascripts/bootstrap/util.js +41 -20
- 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/_badge.scss +1 -1
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +3 -2
- 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 +7 -7
- data/assets/stylesheets/bootstrap/_close.scss +2 -3
- data/assets/stylesheets/bootstrap/_code.scss +1 -1
- data/assets/stylesheets/bootstrap/_custom-forms.scss +38 -19
- data/assets/stylesheets/bootstrap/_dropdown.scss +7 -6
- 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 +21 -6
- 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 +7 -7
- data/assets/stylesheets/bootstrap/_navbar.scss +55 -17
- data/assets/stylesheets/bootstrap/_pagination.scss +5 -4
- data/assets/stylesheets/bootstrap/_popover.scss +8 -9
- data/assets/stylesheets/bootstrap/_print.scss +2 -2
- data/assets/stylesheets/bootstrap/_progress.scss +7 -3
- data/assets/stylesheets/bootstrap/_reboot.scss +39 -38
- data/assets/stylesheets/bootstrap/_spinners.scss +14 -4
- data/assets/stylesheets/bootstrap/_tables.scss +3 -3
- data/assets/stylesheets/bootstrap/_toasts.scss +4 -2
- data/assets/stylesheets/bootstrap/_type.scss +3 -3
- data/assets/stylesheets/bootstrap/_utilities.scss +2 -1
- data/assets/stylesheets/bootstrap/_variables.scss +58 -35
- 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 +42 -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 +2 -2
- 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/bootstrap.gemspec +1 -1
- data/lib/bootstrap/version.rb +2 -2
- 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,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.0 (https://getbootstrap.com/)
|
3
|
+
* Copyright 2011-2021 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++) {
|
@@ -28,38 +30,22 @@
|
|
28
30
|
return Constructor;
|
29
31
|
}
|
30
32
|
|
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
|
-
}
|
33
|
+
function _extends() {
|
34
|
+
_extends = Object.assign || function (target) {
|
35
|
+
for (var i = 1; i < arguments.length; i++) {
|
36
|
+
var source = arguments[i];
|
45
37
|
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
if (typeof Object.getOwnPropertySymbols === 'function') {
|
52
|
-
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
|
53
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
54
|
-
}));
|
38
|
+
for (var key in source) {
|
39
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
40
|
+
target[key] = source[key];
|
41
|
+
}
|
42
|
+
}
|
55
43
|
}
|
56
44
|
|
57
|
-
|
58
|
-
|
59
|
-
});
|
60
|
-
}
|
45
|
+
return target;
|
46
|
+
};
|
61
47
|
|
62
|
-
return
|
48
|
+
return _extends.apply(this, arguments);
|
63
49
|
}
|
64
50
|
|
65
51
|
function _inheritsLoose(subClass, superClass) {
|
@@ -75,32 +61,28 @@
|
|
75
61
|
*/
|
76
62
|
|
77
63
|
var NAME = 'popover';
|
78
|
-
var VERSION = '4.
|
64
|
+
var VERSION = '4.6.0';
|
79
65
|
var DATA_KEY = 'bs.popover';
|
80
66
|
var EVENT_KEY = "." + DATA_KEY;
|
81
|
-
var JQUERY_NO_CONFLICT =
|
67
|
+
var JQUERY_NO_CONFLICT = $__default['default'].fn[NAME];
|
82
68
|
var CLASS_PREFIX = 'bs-popover';
|
83
69
|
var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
|
84
70
|
|
85
|
-
var Default =
|
71
|
+
var Default = _extends({}, Tooltip__default['default'].Default, {
|
86
72
|
placement: 'right',
|
87
73
|
trigger: 'click',
|
88
74
|
content: '',
|
89
75
|
template: '<div class="popover" role="tooltip">' + '<div class="arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>'
|
90
76
|
});
|
91
77
|
|
92
|
-
var DefaultType =
|
78
|
+
var DefaultType = _extends({}, Tooltip__default['default'].DefaultType, {
|
93
79
|
content: '(string|element|function)'
|
94
80
|
});
|
95
81
|
|
96
|
-
var
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
var Selector = {
|
101
|
-
TITLE: '.popover-header',
|
102
|
-
CONTENT: '.popover-body'
|
103
|
-
};
|
82
|
+
var CLASS_NAME_FADE = 'fade';
|
83
|
+
var CLASS_NAME_SHOW = 'show';
|
84
|
+
var SELECTOR_TITLE = '.popover-header';
|
85
|
+
var SELECTOR_CONTENT = '.popover-body';
|
104
86
|
var Event = {
|
105
87
|
HIDE: "hide" + EVENT_KEY,
|
106
88
|
HIDDEN: "hidden" + EVENT_KEY,
|
@@ -112,17 +94,14 @@
|
|
112
94
|
FOCUSOUT: "focusout" + EVENT_KEY,
|
113
95
|
MOUSEENTER: "mouseenter" + EVENT_KEY,
|
114
96
|
MOUSELEAVE: "mouseleave" + EVENT_KEY
|
115
|
-
/**
|
116
|
-
* ------------------------------------------------------------------------
|
117
|
-
* Class Definition
|
118
|
-
* ------------------------------------------------------------------------
|
119
|
-
*/
|
120
|
-
|
121
97
|
};
|
98
|
+
/**
|
99
|
+
* ------------------------------------------------------------------------
|
100
|
+
* Class Definition
|
101
|
+
* ------------------------------------------------------------------------
|
102
|
+
*/
|
122
103
|
|
123
|
-
var Popover =
|
124
|
-
/*#__PURE__*/
|
125
|
-
function (_Tooltip) {
|
104
|
+
var Popover = /*#__PURE__*/function (_Tooltip) {
|
126
105
|
_inheritsLoose(Popover, _Tooltip);
|
127
106
|
|
128
107
|
function Popover() {
|
@@ -137,18 +116,18 @@
|
|
137
116
|
};
|
138
117
|
|
139
118
|
_proto.addAttachmentClass = function addAttachmentClass(attachment) {
|
140
|
-
$(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
|
119
|
+
$__default['default'](this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
|
141
120
|
};
|
142
121
|
|
143
122
|
_proto.getTipElement = function getTipElement() {
|
144
|
-
this.tip = this.tip || $(this.config.template)[0];
|
123
|
+
this.tip = this.tip || $__default['default'](this.config.template)[0];
|
145
124
|
return this.tip;
|
146
125
|
};
|
147
126
|
|
148
127
|
_proto.setContent = function setContent() {
|
149
|
-
var $tip = $(this.getTipElement()); // We use append for html objects to maintain js events
|
128
|
+
var $tip = $__default['default'](this.getTipElement()); // We use append for html objects to maintain js events
|
150
129
|
|
151
|
-
this.setElementContent($tip.find(
|
130
|
+
this.setElementContent($tip.find(SELECTOR_TITLE), this.getTitle());
|
152
131
|
|
153
132
|
var content = this._getContent();
|
154
133
|
|
@@ -156,8 +135,8 @@
|
|
156
135
|
content = content.call(this.element);
|
157
136
|
}
|
158
137
|
|
159
|
-
this.setElementContent($tip.find(
|
160
|
-
$tip.removeClass(
|
138
|
+
this.setElementContent($tip.find(SELECTOR_CONTENT), content);
|
139
|
+
$tip.removeClass(CLASS_NAME_FADE + " " + CLASS_NAME_SHOW);
|
161
140
|
} // Private
|
162
141
|
;
|
163
142
|
|
@@ -166,7 +145,7 @@
|
|
166
145
|
};
|
167
146
|
|
168
147
|
_proto._cleanTipClass = function _cleanTipClass() {
|
169
|
-
var $tip = $(this.getTipElement());
|
148
|
+
var $tip = $__default['default'](this.getTipElement());
|
170
149
|
var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
|
171
150
|
|
172
151
|
if (tabClass !== null && tabClass.length > 0) {
|
@@ -177,7 +156,7 @@
|
|
177
156
|
|
178
157
|
Popover._jQueryInterface = function _jQueryInterface(config) {
|
179
158
|
return this.each(function () {
|
180
|
-
var data = $(this).data(DATA_KEY);
|
159
|
+
var data = $__default['default'](this).data(DATA_KEY);
|
181
160
|
|
182
161
|
var _config = typeof config === 'object' ? config : null;
|
183
162
|
|
@@ -187,7 +166,7 @@
|
|
187
166
|
|
188
167
|
if (!data) {
|
189
168
|
data = new Popover(this, _config);
|
190
|
-
$(this).data(DATA_KEY, data);
|
169
|
+
$__default['default'](this).data(DATA_KEY, data);
|
191
170
|
}
|
192
171
|
|
193
172
|
if (typeof config === 'string') {
|
@@ -239,7 +218,7 @@
|
|
239
218
|
}]);
|
240
219
|
|
241
220
|
return Popover;
|
242
|
-
}(
|
221
|
+
}(Tooltip__default['default']);
|
243
222
|
/**
|
244
223
|
* ------------------------------------------------------------------------
|
245
224
|
* jQuery
|
@@ -247,14 +226,14 @@
|
|
247
226
|
*/
|
248
227
|
|
249
228
|
|
250
|
-
|
251
|
-
|
229
|
+
$__default['default'].fn[NAME] = Popover._jQueryInterface;
|
230
|
+
$__default['default'].fn[NAME].Constructor = Popover;
|
252
231
|
|
253
|
-
|
254
|
-
|
232
|
+
$__default['default'].fn[NAME].noConflict = function () {
|
233
|
+
$__default['default'].fn[NAME] = JQUERY_NO_CONFLICT;
|
255
234
|
return Popover._jQueryInterface;
|
256
235
|
};
|
257
236
|
|
258
237
|
return Popover;
|
259
238
|
|
260
|
-
}));
|
239
|
+
})));
|
@@ -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.0 (https://getbootstrap.com/)
|
3
|
+
* Copyright 2011-2021 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++) {
|
@@ -28,38 +30,22 @@
|
|
28
30
|
return Constructor;
|
29
31
|
}
|
30
32
|
|
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 _objectSpread(target) {
|
47
|
-
for (var i = 1; i < arguments.length; i++) {
|
48
|
-
var source = arguments[i] != null ? arguments[i] : {};
|
49
|
-
var ownKeys = Object.keys(source);
|
33
|
+
function _extends() {
|
34
|
+
_extends = Object.assign || function (target) {
|
35
|
+
for (var i = 1; i < arguments.length; i++) {
|
36
|
+
var source = arguments[i];
|
50
37
|
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
38
|
+
for (var key in source) {
|
39
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
40
|
+
target[key] = source[key];
|
41
|
+
}
|
42
|
+
}
|
55
43
|
}
|
56
44
|
|
57
|
-
|
58
|
-
|
59
|
-
});
|
60
|
-
}
|
45
|
+
return target;
|
46
|
+
};
|
61
47
|
|
62
|
-
return
|
48
|
+
return _extends.apply(this, arguments);
|
63
49
|
}
|
64
50
|
|
65
51
|
/**
|
@@ -69,11 +55,11 @@
|
|
69
55
|
*/
|
70
56
|
|
71
57
|
var NAME = 'scrollspy';
|
72
|
-
var VERSION = '4.
|
58
|
+
var VERSION = '4.6.0';
|
73
59
|
var DATA_KEY = 'bs.scrollspy';
|
74
60
|
var EVENT_KEY = "." + DATA_KEY;
|
75
61
|
var DATA_API_KEY = '.data-api';
|
76
|
-
var JQUERY_NO_CONFLICT =
|
62
|
+
var JQUERY_NO_CONFLICT = $__default['default'].fn[NAME];
|
77
63
|
var Default = {
|
78
64
|
offset: 10,
|
79
65
|
method: 'auto',
|
@@ -84,53 +70,40 @@
|
|
84
70
|
method: 'string',
|
85
71
|
target: '(string|element)'
|
86
72
|
};
|
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
|
-
};
|
73
|
+
var EVENT_ACTIVATE = "activate" + EVENT_KEY;
|
74
|
+
var EVENT_SCROLL = "scroll" + EVENT_KEY;
|
75
|
+
var EVENT_LOAD_DATA_API = "load" + EVENT_KEY + DATA_API_KEY;
|
76
|
+
var CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item';
|
77
|
+
var CLASS_NAME_ACTIVE = 'active';
|
78
|
+
var SELECTOR_DATA_SPY = '[data-spy="scroll"]';
|
79
|
+
var SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';
|
80
|
+
var SELECTOR_NAV_LINKS = '.nav-link';
|
81
|
+
var SELECTOR_NAV_ITEMS = '.nav-item';
|
82
|
+
var SELECTOR_LIST_ITEMS = '.list-group-item';
|
83
|
+
var SELECTOR_DROPDOWN = '.dropdown';
|
84
|
+
var SELECTOR_DROPDOWN_ITEMS = '.dropdown-item';
|
85
|
+
var SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
|
86
|
+
var METHOD_OFFSET = 'offset';
|
87
|
+
var METHOD_POSITION = 'position';
|
88
|
+
/**
|
89
|
+
* ------------------------------------------------------------------------
|
90
|
+
* Class Definition
|
91
|
+
* ------------------------------------------------------------------------
|
92
|
+
*/
|
118
93
|
|
119
|
-
var ScrollSpy =
|
120
|
-
/*#__PURE__*/
|
121
|
-
function () {
|
94
|
+
var ScrollSpy = /*#__PURE__*/function () {
|
122
95
|
function ScrollSpy(element, config) {
|
123
96
|
var _this = this;
|
124
97
|
|
125
98
|
this._element = element;
|
126
99
|
this._scrollElement = element.tagName === 'BODY' ? window : element;
|
127
100
|
this._config = this._getConfig(config);
|
128
|
-
this._selector = this._config.target + " " +
|
101
|
+
this._selector = this._config.target + " " + SELECTOR_NAV_LINKS + "," + (this._config.target + " " + SELECTOR_LIST_ITEMS + ",") + (this._config.target + " " + SELECTOR_DROPDOWN_ITEMS);
|
129
102
|
this._offsets = [];
|
130
103
|
this._targets = [];
|
131
104
|
this._activeTarget = null;
|
132
105
|
this._scrollHeight = 0;
|
133
|
-
$(this._scrollElement).on(
|
106
|
+
$__default['default'](this._scrollElement).on(EVENT_SCROLL, function (event) {
|
134
107
|
return _this._process(event);
|
135
108
|
});
|
136
109
|
this.refresh();
|
@@ -145,16 +118,16 @@
|
|
145
118
|
_proto.refresh = function refresh() {
|
146
119
|
var _this2 = this;
|
147
120
|
|
148
|
-
var autoMethod = this._scrollElement === this._scrollElement.window ?
|
121
|
+
var autoMethod = this._scrollElement === this._scrollElement.window ? METHOD_OFFSET : METHOD_POSITION;
|
149
122
|
var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method;
|
150
|
-
var offsetBase = offsetMethod ===
|
123
|
+
var offsetBase = offsetMethod === METHOD_POSITION ? this._getScrollTop() : 0;
|
151
124
|
this._offsets = [];
|
152
125
|
this._targets = [];
|
153
126
|
this._scrollHeight = this._getScrollHeight();
|
154
127
|
var targets = [].slice.call(document.querySelectorAll(this._selector));
|
155
128
|
targets.map(function (element) {
|
156
129
|
var target;
|
157
|
-
var targetSelector =
|
130
|
+
var targetSelector = Util__default['default'].getSelectorFromElement(element);
|
158
131
|
|
159
132
|
if (targetSelector) {
|
160
133
|
target = document.querySelector(targetSelector);
|
@@ -165,7 +138,7 @@
|
|
165
138
|
|
166
139
|
if (targetBCR.width || targetBCR.height) {
|
167
140
|
// TODO (fat): remove sketch reliance on jQuery position/offset
|
168
|
-
return [$(target)[offsetMethod]().top + offsetBase, targetSelector];
|
141
|
+
return [$__default['default'](target)[offsetMethod]().top + offsetBase, targetSelector];
|
169
142
|
}
|
170
143
|
}
|
171
144
|
|
@@ -182,8 +155,8 @@
|
|
182
155
|
};
|
183
156
|
|
184
157
|
_proto.dispose = function dispose() {
|
185
|
-
|
186
|
-
$(this._scrollElement).off(EVENT_KEY);
|
158
|
+
$__default['default'].removeData(this._element, DATA_KEY);
|
159
|
+
$__default['default'](this._scrollElement).off(EVENT_KEY);
|
187
160
|
this._element = null;
|
188
161
|
this._scrollElement = null;
|
189
162
|
this._config = null;
|
@@ -196,20 +169,20 @@
|
|
196
169
|
;
|
197
170
|
|
198
171
|
_proto._getConfig = function _getConfig(config) {
|
199
|
-
config =
|
172
|
+
config = _extends({}, Default, typeof config === 'object' && config ? config : {});
|
200
173
|
|
201
|
-
if (typeof config.target !== 'string') {
|
202
|
-
var id = $(config.target).attr('id');
|
174
|
+
if (typeof config.target !== 'string' && Util__default['default'].isElement(config.target)) {
|
175
|
+
var id = $__default['default'](config.target).attr('id');
|
203
176
|
|
204
177
|
if (!id) {
|
205
|
-
id =
|
206
|
-
$(config.target).attr('id', id);
|
178
|
+
id = Util__default['default'].getUID(NAME);
|
179
|
+
$__default['default'](config.target).attr('id', id);
|
207
180
|
}
|
208
181
|
|
209
182
|
config.target = "#" + id;
|
210
183
|
}
|
211
184
|
|
212
|
-
|
185
|
+
Util__default['default'].typeCheckConfig(NAME, config, DefaultType);
|
213
186
|
return config;
|
214
187
|
};
|
215
188
|
|
@@ -254,9 +227,7 @@
|
|
254
227
|
return;
|
255
228
|
}
|
256
229
|
|
257
|
-
var
|
258
|
-
|
259
|
-
for (var i = offsetLength; i--;) {
|
230
|
+
for (var i = this._offsets.length; i--;) {
|
260
231
|
var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]);
|
261
232
|
|
262
233
|
if (isActiveTarget) {
|
@@ -274,44 +245,44 @@
|
|
274
245
|
return selector + "[data-target=\"" + target + "\"]," + selector + "[href=\"" + target + "\"]";
|
275
246
|
});
|
276
247
|
|
277
|
-
var $link = $([].slice.call(document.querySelectorAll(queries.join(','))));
|
248
|
+
var $link = $__default['default']([].slice.call(document.querySelectorAll(queries.join(','))));
|
278
249
|
|
279
|
-
if ($link.hasClass(
|
280
|
-
$link.closest(
|
281
|
-
$link.addClass(
|
250
|
+
if ($link.hasClass(CLASS_NAME_DROPDOWN_ITEM)) {
|
251
|
+
$link.closest(SELECTOR_DROPDOWN).find(SELECTOR_DROPDOWN_TOGGLE).addClass(CLASS_NAME_ACTIVE);
|
252
|
+
$link.addClass(CLASS_NAME_ACTIVE);
|
282
253
|
} else {
|
283
254
|
// Set triggered link as active
|
284
|
-
$link.addClass(
|
255
|
+
$link.addClass(CLASS_NAME_ACTIVE); // Set triggered links parents as active
|
285
256
|
// With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor
|
286
257
|
|
287
|
-
$link.parents(
|
258
|
+
$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
259
|
|
289
|
-
$link.parents(
|
260
|
+
$link.parents(SELECTOR_NAV_LIST_GROUP).prev(SELECTOR_NAV_ITEMS).children(SELECTOR_NAV_LINKS).addClass(CLASS_NAME_ACTIVE);
|
290
261
|
}
|
291
262
|
|
292
|
-
$(this._scrollElement).trigger(
|
263
|
+
$__default['default'](this._scrollElement).trigger(EVENT_ACTIVATE, {
|
293
264
|
relatedTarget: target
|
294
265
|
});
|
295
266
|
};
|
296
267
|
|
297
268
|
_proto._clear = function _clear() {
|
298
269
|
[].slice.call(document.querySelectorAll(this._selector)).filter(function (node) {
|
299
|
-
return node.classList.contains(
|
270
|
+
return node.classList.contains(CLASS_NAME_ACTIVE);
|
300
271
|
}).forEach(function (node) {
|
301
|
-
return node.classList.remove(
|
272
|
+
return node.classList.remove(CLASS_NAME_ACTIVE);
|
302
273
|
});
|
303
274
|
} // Static
|
304
275
|
;
|
305
276
|
|
306
277
|
ScrollSpy._jQueryInterface = function _jQueryInterface(config) {
|
307
278
|
return this.each(function () {
|
308
|
-
var data = $(this).data(DATA_KEY);
|
279
|
+
var data = $__default['default'](this).data(DATA_KEY);
|
309
280
|
|
310
281
|
var _config = typeof config === 'object' && config;
|
311
282
|
|
312
283
|
if (!data) {
|
313
284
|
data = new ScrollSpy(this, _config);
|
314
|
-
$(this).data(DATA_KEY, data);
|
285
|
+
$__default['default'](this).data(DATA_KEY, data);
|
315
286
|
}
|
316
287
|
|
317
288
|
if (typeof config === 'string') {
|
@@ -345,12 +316,12 @@
|
|
345
316
|
*/
|
346
317
|
|
347
318
|
|
348
|
-
$(window).on(
|
349
|
-
var scrollSpys = [].slice.call(document.querySelectorAll(
|
319
|
+
$__default['default'](window).on(EVENT_LOAD_DATA_API, function () {
|
320
|
+
var scrollSpys = [].slice.call(document.querySelectorAll(SELECTOR_DATA_SPY));
|
350
321
|
var scrollSpysLength = scrollSpys.length;
|
351
322
|
|
352
323
|
for (var i = scrollSpysLength; i--;) {
|
353
|
-
var $spy = $(scrollSpys[i]);
|
324
|
+
var $spy = $__default['default'](scrollSpys[i]);
|
354
325
|
|
355
326
|
ScrollSpy._jQueryInterface.call($spy, $spy.data());
|
356
327
|
}
|
@@ -361,14 +332,14 @@
|
|
361
332
|
* ------------------------------------------------------------------------
|
362
333
|
*/
|
363
334
|
|
364
|
-
|
365
|
-
|
335
|
+
$__default['default'].fn[NAME] = ScrollSpy._jQueryInterface;
|
336
|
+
$__default['default'].fn[NAME].Constructor = ScrollSpy;
|
366
337
|
|
367
|
-
|
368
|
-
|
338
|
+
$__default['default'].fn[NAME].noConflict = function () {
|
339
|
+
$__default['default'].fn[NAME] = JQUERY_NO_CONFLICT;
|
369
340
|
return ScrollSpy._jQueryInterface;
|
370
341
|
};
|
371
342
|
|
372
343
|
return ScrollSpy;
|
373
344
|
|
374
|
-
}));
|
345
|
+
})));
|