bootstrap 4.4.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.
- checksums.yaml +4 -4
- data/.travis.yml +11 -1
- data/README.md +1 -1
- data/assets/javascripts/bootstrap-sprockets.js +6 -6
- data/assets/javascripts/bootstrap.js +836 -925
- data/assets/javascripts/bootstrap.min.js +4 -4
- data/assets/javascripts/bootstrap/alert.js +35 -41
- data/assets/javascripts/bootstrap/button.js +69 -69
- data/assets/javascripts/bootstrap/carousel.js +154 -182
- data/assets/javascripts/bootstrap/collapse.js +91 -130
- data/assets/javascripts/bootstrap/dropdown.js +123 -170
- data/assets/javascripts/bootstrap/modal.js +181 -197
- data/assets/javascripts/bootstrap/popover.js +45 -80
- data/assets/javascripts/bootstrap/scrollspy.js +74 -117
- data/assets/javascripts/bootstrap/tab.js +65 -71
- data/assets/javascripts/bootstrap/toast.js +74 -105
- data/assets/javascripts/bootstrap/tooltip.js +129 -166
- data/assets/javascripts/bootstrap/util.js +24 -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/_breadcrumb.scss +1 -1
- data/assets/stylesheets/bootstrap/_buttons.scss +10 -7
- data/assets/stylesheets/bootstrap/_card.scss +25 -17
- data/assets/stylesheets/bootstrap/_carousel.scss +1 -1
- data/assets/stylesheets/bootstrap/_close.scss +0 -1
- data/assets/stylesheets/bootstrap/_custom-forms.scss +16 -11
- data/assets/stylesheets/bootstrap/_dropdown.scss +4 -3
- data/assets/stylesheets/bootstrap/_forms.scss +9 -0
- data/assets/stylesheets/bootstrap/_functions.scss +15 -5
- data/assets/stylesheets/bootstrap/_grid.scss +10 -6
- data/assets/stylesheets/bootstrap/_input-group.scss +22 -5
- data/assets/stylesheets/bootstrap/_list-group.scss +10 -14
- data/assets/stylesheets/bootstrap/_modal.scss +2 -1
- data/assets/stylesheets/bootstrap/_nav.scss +4 -4
- data/assets/stylesheets/bootstrap/_navbar.scss +10 -2
- data/assets/stylesheets/bootstrap/_pagination.scss +3 -2
- 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 +14 -4
- data/assets/stylesheets/bootstrap/_toasts.scss +4 -2
- data/assets/stylesheets/bootstrap/_type.scss +1 -1
- data/assets/stylesheets/bootstrap/_utilities.scss +2 -1
- data/assets/stylesheets/bootstrap/_variables.scss +20 -17
- 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 +11 -3
- data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +24 -15
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +8 -8
- data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +1 -1
- 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/_interactions.scss +5 -0
- data/assets/stylesheets/bootstrap/utilities/_text.scss +2 -2
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/network.rb +2 -2
- data/test/gemfiles/rails_6_0.gemfile +7 -0
- metadata +6 -3
|
@@ -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));
|
|
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
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,53 +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 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
|
-
}
|
|
33
|
+
function _extends() {
|
|
34
|
+
_extends = Object.assign || function (target) {
|
|
35
|
+
for (var i = 1; i < arguments.length; i++) {
|
|
36
|
+
var source = arguments[i];
|
|
59
37
|
|
|
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
|
-
});
|
|
38
|
+
for (var key in source) {
|
|
39
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
40
|
+
target[key] = source[key];
|
|
41
|
+
}
|
|
42
|
+
}
|
|
74
43
|
}
|
|
75
|
-
}
|
|
76
44
|
|
|
77
|
-
|
|
45
|
+
return target;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
return _extends.apply(this, arguments);
|
|
78
49
|
}
|
|
79
50
|
|
|
80
51
|
function _inheritsLoose(subClass, superClass) {
|
|
@@ -90,32 +61,28 @@
|
|
|
90
61
|
*/
|
|
91
62
|
|
|
92
63
|
var NAME = 'popover';
|
|
93
|
-
var VERSION = '4.
|
|
64
|
+
var VERSION = '4.6.0';
|
|
94
65
|
var DATA_KEY = 'bs.popover';
|
|
95
66
|
var EVENT_KEY = "." + DATA_KEY;
|
|
96
|
-
var JQUERY_NO_CONFLICT =
|
|
67
|
+
var JQUERY_NO_CONFLICT = $__default['default'].fn[NAME];
|
|
97
68
|
var CLASS_PREFIX = 'bs-popover';
|
|
98
69
|
var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
|
|
99
70
|
|
|
100
|
-
var Default =
|
|
71
|
+
var Default = _extends({}, Tooltip__default['default'].Default, {
|
|
101
72
|
placement: 'right',
|
|
102
73
|
trigger: 'click',
|
|
103
74
|
content: '',
|
|
104
75
|
template: '<div class="popover" role="tooltip">' + '<div class="arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>'
|
|
105
76
|
});
|
|
106
77
|
|
|
107
|
-
var DefaultType =
|
|
78
|
+
var DefaultType = _extends({}, Tooltip__default['default'].DefaultType, {
|
|
108
79
|
content: '(string|element|function)'
|
|
109
80
|
});
|
|
110
81
|
|
|
111
|
-
var
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
var Selector = {
|
|
116
|
-
TITLE: '.popover-header',
|
|
117
|
-
CONTENT: '.popover-body'
|
|
118
|
-
};
|
|
82
|
+
var CLASS_NAME_FADE = 'fade';
|
|
83
|
+
var CLASS_NAME_SHOW = 'show';
|
|
84
|
+
var SELECTOR_TITLE = '.popover-header';
|
|
85
|
+
var SELECTOR_CONTENT = '.popover-body';
|
|
119
86
|
var Event = {
|
|
120
87
|
HIDE: "hide" + EVENT_KEY,
|
|
121
88
|
HIDDEN: "hidden" + EVENT_KEY,
|
|
@@ -134,9 +101,7 @@
|
|
|
134
101
|
* ------------------------------------------------------------------------
|
|
135
102
|
*/
|
|
136
103
|
|
|
137
|
-
var Popover =
|
|
138
|
-
/*#__PURE__*/
|
|
139
|
-
function (_Tooltip) {
|
|
104
|
+
var Popover = /*#__PURE__*/function (_Tooltip) {
|
|
140
105
|
_inheritsLoose(Popover, _Tooltip);
|
|
141
106
|
|
|
142
107
|
function Popover() {
|
|
@@ -151,18 +116,18 @@
|
|
|
151
116
|
};
|
|
152
117
|
|
|
153
118
|
_proto.addAttachmentClass = function addAttachmentClass(attachment) {
|
|
154
|
-
$(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
|
|
119
|
+
$__default['default'](this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
|
|
155
120
|
};
|
|
156
121
|
|
|
157
122
|
_proto.getTipElement = function getTipElement() {
|
|
158
|
-
this.tip = this.tip || $(this.config.template)[0];
|
|
123
|
+
this.tip = this.tip || $__default['default'](this.config.template)[0];
|
|
159
124
|
return this.tip;
|
|
160
125
|
};
|
|
161
126
|
|
|
162
127
|
_proto.setContent = function setContent() {
|
|
163
|
-
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
|
|
164
129
|
|
|
165
|
-
this.setElementContent($tip.find(
|
|
130
|
+
this.setElementContent($tip.find(SELECTOR_TITLE), this.getTitle());
|
|
166
131
|
|
|
167
132
|
var content = this._getContent();
|
|
168
133
|
|
|
@@ -170,8 +135,8 @@
|
|
|
170
135
|
content = content.call(this.element);
|
|
171
136
|
}
|
|
172
137
|
|
|
173
|
-
this.setElementContent($tip.find(
|
|
174
|
-
$tip.removeClass(
|
|
138
|
+
this.setElementContent($tip.find(SELECTOR_CONTENT), content);
|
|
139
|
+
$tip.removeClass(CLASS_NAME_FADE + " " + CLASS_NAME_SHOW);
|
|
175
140
|
} // Private
|
|
176
141
|
;
|
|
177
142
|
|
|
@@ -180,7 +145,7 @@
|
|
|
180
145
|
};
|
|
181
146
|
|
|
182
147
|
_proto._cleanTipClass = function _cleanTipClass() {
|
|
183
|
-
var $tip = $(this.getTipElement());
|
|
148
|
+
var $tip = $__default['default'](this.getTipElement());
|
|
184
149
|
var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
|
|
185
150
|
|
|
186
151
|
if (tabClass !== null && tabClass.length > 0) {
|
|
@@ -191,7 +156,7 @@
|
|
|
191
156
|
|
|
192
157
|
Popover._jQueryInterface = function _jQueryInterface(config) {
|
|
193
158
|
return this.each(function () {
|
|
194
|
-
var data = $(this).data(DATA_KEY);
|
|
159
|
+
var data = $__default['default'](this).data(DATA_KEY);
|
|
195
160
|
|
|
196
161
|
var _config = typeof config === 'object' ? config : null;
|
|
197
162
|
|
|
@@ -201,7 +166,7 @@
|
|
|
201
166
|
|
|
202
167
|
if (!data) {
|
|
203
168
|
data = new Popover(this, _config);
|
|
204
|
-
$(this).data(DATA_KEY, data);
|
|
169
|
+
$__default['default'](this).data(DATA_KEY, data);
|
|
205
170
|
}
|
|
206
171
|
|
|
207
172
|
if (typeof config === 'string') {
|
|
@@ -253,7 +218,7 @@
|
|
|
253
218
|
}]);
|
|
254
219
|
|
|
255
220
|
return Popover;
|
|
256
|
-
}(
|
|
221
|
+
}(Tooltip__default['default']);
|
|
257
222
|
/**
|
|
258
223
|
* ------------------------------------------------------------------------
|
|
259
224
|
* jQuery
|
|
@@ -261,11 +226,11 @@
|
|
|
261
226
|
*/
|
|
262
227
|
|
|
263
228
|
|
|
264
|
-
|
|
265
|
-
|
|
229
|
+
$__default['default'].fn[NAME] = Popover._jQueryInterface;
|
|
230
|
+
$__default['default'].fn[NAME].Constructor = Popover;
|
|
266
231
|
|
|
267
|
-
|
|
268
|
-
|
|
232
|
+
$__default['default'].fn[NAME].noConflict = function () {
|
|
233
|
+
$__default['default'].fn[NAME] = JQUERY_NO_CONFLICT;
|
|
269
234
|
return Popover._jQueryInterface;
|
|
270
235
|
};
|
|
271
236
|
|
|
@@ -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));
|
|
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
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,53 +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 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] : {};
|
|
33
|
+
function _extends() {
|
|
34
|
+
_extends = Object.assign || function (target) {
|
|
35
|
+
for (var i = 1; i < arguments.length; i++) {
|
|
36
|
+
var source = arguments[i];
|
|
63
37
|
|
|
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
|
-
});
|
|
38
|
+
for (var key in source) {
|
|
39
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
40
|
+
target[key] = source[key];
|
|
41
|
+
}
|
|
42
|
+
}
|
|
74
43
|
}
|
|
75
|
-
}
|
|
76
44
|
|
|
77
|
-
|
|
45
|
+
return target;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
return _extends.apply(this, arguments);
|
|
78
49
|
}
|
|
79
50
|
|
|
80
51
|
/**
|
|
@@ -84,11 +55,11 @@
|
|
|
84
55
|
*/
|
|
85
56
|
|
|
86
57
|
var NAME = 'scrollspy';
|
|
87
|
-
var VERSION = '4.
|
|
58
|
+
var VERSION = '4.6.0';
|
|
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];
|
|
92
63
|
var Default = {
|
|
93
64
|
offset: 10,
|
|
94
65
|
method: 'auto',
|
|
@@ -99,52 +70,40 @@
|
|
|
99
70
|
method: 'string',
|
|
100
71
|
target: '(string|element)'
|
|
101
72
|
};
|
|
102
|
-
var
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
var
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
var
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
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
|
-
};
|
|
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';
|
|
127
88
|
/**
|
|
128
89
|
* ------------------------------------------------------------------------
|
|
129
90
|
* Class Definition
|
|
130
91
|
* ------------------------------------------------------------------------
|
|
131
92
|
*/
|
|
132
93
|
|
|
133
|
-
var ScrollSpy =
|
|
134
|
-
/*#__PURE__*/
|
|
135
|
-
function () {
|
|
94
|
+
var ScrollSpy = /*#__PURE__*/function () {
|
|
136
95
|
function ScrollSpy(element, config) {
|
|
137
96
|
var _this = this;
|
|
138
97
|
|
|
139
98
|
this._element = element;
|
|
140
99
|
this._scrollElement = element.tagName === 'BODY' ? window : element;
|
|
141
100
|
this._config = this._getConfig(config);
|
|
142
|
-
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);
|
|
143
102
|
this._offsets = [];
|
|
144
103
|
this._targets = [];
|
|
145
104
|
this._activeTarget = null;
|
|
146
105
|
this._scrollHeight = 0;
|
|
147
|
-
$(this._scrollElement).on(
|
|
106
|
+
$__default['default'](this._scrollElement).on(EVENT_SCROLL, function (event) {
|
|
148
107
|
return _this._process(event);
|
|
149
108
|
});
|
|
150
109
|
this.refresh();
|
|
@@ -159,16 +118,16 @@
|
|
|
159
118
|
_proto.refresh = function refresh() {
|
|
160
119
|
var _this2 = this;
|
|
161
120
|
|
|
162
|
-
var autoMethod = this._scrollElement === this._scrollElement.window ?
|
|
121
|
+
var autoMethod = this._scrollElement === this._scrollElement.window ? METHOD_OFFSET : METHOD_POSITION;
|
|
163
122
|
var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method;
|
|
164
|
-
var offsetBase = offsetMethod ===
|
|
123
|
+
var offsetBase = offsetMethod === METHOD_POSITION ? this._getScrollTop() : 0;
|
|
165
124
|
this._offsets = [];
|
|
166
125
|
this._targets = [];
|
|
167
126
|
this._scrollHeight = this._getScrollHeight();
|
|
168
127
|
var targets = [].slice.call(document.querySelectorAll(this._selector));
|
|
169
128
|
targets.map(function (element) {
|
|
170
129
|
var target;
|
|
171
|
-
var targetSelector =
|
|
130
|
+
var targetSelector = Util__default['default'].getSelectorFromElement(element);
|
|
172
131
|
|
|
173
132
|
if (targetSelector) {
|
|
174
133
|
target = document.querySelector(targetSelector);
|
|
@@ -179,7 +138,7 @@
|
|
|
179
138
|
|
|
180
139
|
if (targetBCR.width || targetBCR.height) {
|
|
181
140
|
// TODO (fat): remove sketch reliance on jQuery position/offset
|
|
182
|
-
return [$(target)[offsetMethod]().top + offsetBase, targetSelector];
|
|
141
|
+
return [$__default['default'](target)[offsetMethod]().top + offsetBase, targetSelector];
|
|
183
142
|
}
|
|
184
143
|
}
|
|
185
144
|
|
|
@@ -196,8 +155,8 @@
|
|
|
196
155
|
};
|
|
197
156
|
|
|
198
157
|
_proto.dispose = function dispose() {
|
|
199
|
-
|
|
200
|
-
$(this._scrollElement).off(EVENT_KEY);
|
|
158
|
+
$__default['default'].removeData(this._element, DATA_KEY);
|
|
159
|
+
$__default['default'](this._scrollElement).off(EVENT_KEY);
|
|
201
160
|
this._element = null;
|
|
202
161
|
this._scrollElement = null;
|
|
203
162
|
this._config = null;
|
|
@@ -210,20 +169,20 @@
|
|
|
210
169
|
;
|
|
211
170
|
|
|
212
171
|
_proto._getConfig = function _getConfig(config) {
|
|
213
|
-
config =
|
|
172
|
+
config = _extends({}, Default, typeof config === 'object' && config ? config : {});
|
|
214
173
|
|
|
215
|
-
if (typeof config.target !== 'string') {
|
|
216
|
-
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');
|
|
217
176
|
|
|
218
177
|
if (!id) {
|
|
219
|
-
id =
|
|
220
|
-
$(config.target).attr('id', id);
|
|
178
|
+
id = Util__default['default'].getUID(NAME);
|
|
179
|
+
$__default['default'](config.target).attr('id', id);
|
|
221
180
|
}
|
|
222
181
|
|
|
223
182
|
config.target = "#" + id;
|
|
224
183
|
}
|
|
225
184
|
|
|
226
|
-
|
|
185
|
+
Util__default['default'].typeCheckConfig(NAME, config, DefaultType);
|
|
227
186
|
return config;
|
|
228
187
|
};
|
|
229
188
|
|
|
@@ -268,9 +227,7 @@
|
|
|
268
227
|
return;
|
|
269
228
|
}
|
|
270
229
|
|
|
271
|
-
var
|
|
272
|
-
|
|
273
|
-
for (var i = offsetLength; i--;) {
|
|
230
|
+
for (var i = this._offsets.length; i--;) {
|
|
274
231
|
var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]);
|
|
275
232
|
|
|
276
233
|
if (isActiveTarget) {
|
|
@@ -288,44 +245,44 @@
|
|
|
288
245
|
return selector + "[data-target=\"" + target + "\"]," + selector + "[href=\"" + target + "\"]";
|
|
289
246
|
});
|
|
290
247
|
|
|
291
|
-
var $link = $([].slice.call(document.querySelectorAll(queries.join(','))));
|
|
248
|
+
var $link = $__default['default']([].slice.call(document.querySelectorAll(queries.join(','))));
|
|
292
249
|
|
|
293
|
-
if ($link.hasClass(
|
|
294
|
-
$link.closest(
|
|
295
|
-
$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);
|
|
296
253
|
} else {
|
|
297
254
|
// Set triggered link as active
|
|
298
|
-
$link.addClass(
|
|
255
|
+
$link.addClass(CLASS_NAME_ACTIVE); // Set triggered links parents as active
|
|
299
256
|
// With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor
|
|
300
257
|
|
|
301
|
-
$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
|
|
302
259
|
|
|
303
|
-
$link.parents(
|
|
260
|
+
$link.parents(SELECTOR_NAV_LIST_GROUP).prev(SELECTOR_NAV_ITEMS).children(SELECTOR_NAV_LINKS).addClass(CLASS_NAME_ACTIVE);
|
|
304
261
|
}
|
|
305
262
|
|
|
306
|
-
$(this._scrollElement).trigger(
|
|
263
|
+
$__default['default'](this._scrollElement).trigger(EVENT_ACTIVATE, {
|
|
307
264
|
relatedTarget: target
|
|
308
265
|
});
|
|
309
266
|
};
|
|
310
267
|
|
|
311
268
|
_proto._clear = function _clear() {
|
|
312
269
|
[].slice.call(document.querySelectorAll(this._selector)).filter(function (node) {
|
|
313
|
-
return node.classList.contains(
|
|
270
|
+
return node.classList.contains(CLASS_NAME_ACTIVE);
|
|
314
271
|
}).forEach(function (node) {
|
|
315
|
-
return node.classList.remove(
|
|
272
|
+
return node.classList.remove(CLASS_NAME_ACTIVE);
|
|
316
273
|
});
|
|
317
274
|
} // Static
|
|
318
275
|
;
|
|
319
276
|
|
|
320
277
|
ScrollSpy._jQueryInterface = function _jQueryInterface(config) {
|
|
321
278
|
return this.each(function () {
|
|
322
|
-
var data = $(this).data(DATA_KEY);
|
|
279
|
+
var data = $__default['default'](this).data(DATA_KEY);
|
|
323
280
|
|
|
324
281
|
var _config = typeof config === 'object' && config;
|
|
325
282
|
|
|
326
283
|
if (!data) {
|
|
327
284
|
data = new ScrollSpy(this, _config);
|
|
328
|
-
$(this).data(DATA_KEY, data);
|
|
285
|
+
$__default['default'](this).data(DATA_KEY, data);
|
|
329
286
|
}
|
|
330
287
|
|
|
331
288
|
if (typeof config === 'string') {
|
|
@@ -359,12 +316,12 @@
|
|
|
359
316
|
*/
|
|
360
317
|
|
|
361
318
|
|
|
362
|
-
$(window).on(
|
|
363
|
-
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));
|
|
364
321
|
var scrollSpysLength = scrollSpys.length;
|
|
365
322
|
|
|
366
323
|
for (var i = scrollSpysLength; i--;) {
|
|
367
|
-
var $spy = $(scrollSpys[i]);
|
|
324
|
+
var $spy = $__default['default'](scrollSpys[i]);
|
|
368
325
|
|
|
369
326
|
ScrollSpy._jQueryInterface.call($spy, $spy.data());
|
|
370
327
|
}
|
|
@@ -375,11 +332,11 @@
|
|
|
375
332
|
* ------------------------------------------------------------------------
|
|
376
333
|
*/
|
|
377
334
|
|
|
378
|
-
|
|
379
|
-
|
|
335
|
+
$__default['default'].fn[NAME] = ScrollSpy._jQueryInterface;
|
|
336
|
+
$__default['default'].fn[NAME].Constructor = ScrollSpy;
|
|
380
337
|
|
|
381
|
-
|
|
382
|
-
|
|
338
|
+
$__default['default'].fn[NAME].noConflict = function () {
|
|
339
|
+
$__default['default'].fn[NAME] = JQUERY_NO_CONFLICT;
|
|
383
340
|
return ScrollSpy._jQueryInterface;
|
|
384
341
|
};
|
|
385
342
|
|