bootstrap 4.3.0 → 5.0.0.alpha1
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 +15 -1
- data/CHANGELOG.md +2 -14
- data/README.md +1 -1
- data/assets/javascripts/bootstrap-sprockets.js +5 -1
- data/assets/javascripts/bootstrap.js +2292 -1514
- data/assets/javascripts/bootstrap.min.js +4 -4
- data/assets/javascripts/bootstrap/alert.js +148 -85
- data/assets/javascripts/bootstrap/button.js +69 -110
- data/assets/javascripts/bootstrap/carousel.js +320 -239
- data/assets/javascripts/bootstrap/collapse.js +300 -177
- data/assets/javascripts/bootstrap/dom/data.js +81 -0
- data/assets/javascripts/bootstrap/dom/event-handler.js +311 -0
- data/assets/javascripts/bootstrap/dom/manipulator.js +100 -0
- data/assets/javascripts/bootstrap/dom/polyfill.js +110 -0
- data/assets/javascripts/bootstrap/dom/selector-engine.js +98 -0
- data/assets/javascripts/bootstrap/dropdown.js +282 -265
- data/assets/javascripts/bootstrap/modal.js +348 -231
- data/assets/javascripts/bootstrap/popover.js +80 -105
- data/assets/javascripts/bootstrap/scrollspy.js +173 -138
- data/assets/javascripts/bootstrap/tab.js +180 -115
- data/assets/javascripts/bootstrap/toast.js +188 -132
- data/assets/javascripts/bootstrap/tooltip.js +508 -230
- data/assets/stylesheets/_bootstrap-grid.scss +54 -18
- data/assets/stylesheets/_bootstrap-reboot.scss +7 -4
- data/assets/stylesheets/_bootstrap.scss +17 -11
- data/assets/stylesheets/bootstrap/_alert.scss +3 -3
- data/assets/stylesheets/bootstrap/_badge.scss +2 -27
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +7 -18
- data/assets/stylesheets/bootstrap/_button-group.scss +16 -38
- data/assets/stylesheets/bootstrap/_buttons.scss +26 -39
- data/assets/stylesheets/bootstrap/_card.scss +48 -97
- data/assets/stylesheets/bootstrap/_carousel.scss +16 -18
- data/assets/stylesheets/bootstrap/_close.scss +9 -14
- data/assets/stylesheets/bootstrap/_containers.scss +41 -0
- data/assets/stylesheets/bootstrap/_dropdown.scss +13 -9
- data/assets/stylesheets/bootstrap/_forms.scss +9 -330
- data/assets/stylesheets/bootstrap/_functions.scss +141 -24
- data/assets/stylesheets/bootstrap/_grid.scss +4 -34
- data/assets/stylesheets/bootstrap/_helpers.scss +7 -0
- data/assets/stylesheets/bootstrap/_images.scss +2 -2
- data/assets/stylesheets/bootstrap/_list-group.scss +41 -33
- data/assets/stylesheets/bootstrap/_mixins.scss +9 -15
- data/assets/stylesheets/bootstrap/_modal.scss +54 -48
- data/assets/stylesheets/bootstrap/_nav.scss +12 -9
- data/assets/stylesheets/bootstrap/_navbar.scss +54 -56
- data/assets/stylesheets/bootstrap/_pagination.scss +10 -22
- data/assets/stylesheets/bootstrap/_popover.scss +13 -14
- data/assets/stylesheets/bootstrap/_progress.scss +6 -4
- data/assets/stylesheets/bootstrap/_reboot.scss +318 -185
- data/assets/stylesheets/bootstrap/_root.scss +5 -8
- data/assets/stylesheets/bootstrap/_spinners.scss +3 -2
- data/assets/stylesheets/bootstrap/_tables.scss +80 -114
- data/assets/stylesheets/bootstrap/_tooltip.scss +5 -5
- data/assets/stylesheets/bootstrap/_transitions.scss +0 -1
- data/assets/stylesheets/bootstrap/_type.scss +40 -61
- data/assets/stylesheets/bootstrap/_utilities.scss +503 -17
- data/assets/stylesheets/bootstrap/_variables.scss +567 -430
- data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +18 -0
- data/assets/stylesheets/bootstrap/forms/_form-check.scss +142 -0
- data/assets/stylesheets/bootstrap/forms/_form-control.scss +116 -0
- data/assets/stylesheets/bootstrap/forms/_form-file.scss +91 -0
- data/assets/stylesheets/bootstrap/forms/_form-range.scss +136 -0
- data/assets/stylesheets/bootstrap/forms/_form-select.scss +82 -0
- data/assets/stylesheets/bootstrap/forms/_form-text.scss +11 -0
- data/assets/stylesheets/bootstrap/forms/_input-group.scss +140 -0
- data/assets/stylesheets/bootstrap/forms/_labels.scss +36 -0
- data/assets/stylesheets/bootstrap/forms/_validation.scss +12 -0
- data/assets/stylesheets/bootstrap/{utilities → helpers}/_clearfix.scss +0 -0
- data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +12 -0
- data/assets/stylesheets/bootstrap/helpers/_embed.scss +31 -0
- data/assets/stylesheets/bootstrap/helpers/_position.scss +30 -0
- data/assets/stylesheets/bootstrap/helpers/_screenreaders.scss +8 -0
- data/assets/stylesheets/bootstrap/helpers/_stretched-link.scss +15 -0
- data/assets/stylesheets/bootstrap/helpers/_text-truncation.scss +7 -0
- data/assets/stylesheets/bootstrap/mixins/_alert.scss +0 -4
- data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +26 -13
- data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +11 -8
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +68 -50
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +4 -4
- data/assets/stylesheets/bootstrap/mixins/_clearfix.scss +2 -0
- data/assets/stylesheets/bootstrap/mixins/_container.scss +9 -0
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +47 -106
- data/assets/stylesheets/bootstrap/mixins/_gradients.scss +9 -11
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +99 -29
- data/assets/stylesheets/bootstrap/mixins/_image.scss +0 -20
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +2 -1
- data/assets/stylesheets/bootstrap/mixins/_pagination.scss +15 -8
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +14 -19
- data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +21 -0
- data/assets/stylesheets/bootstrap/mixins/_transition.scss +17 -7
- data/assets/stylesheets/bootstrap/mixins/_utilities.scss +49 -0
- data/assets/stylesheets/bootstrap/utilities/_api.scss +47 -0
- data/assets/stylesheets/bootstrap/vendor/_rfs.scss +230 -130
- data/bootstrap.gemspec +1 -1
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +3 -3
- 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 +40 -42
- data/assets/javascripts/bootstrap/util.js +0 -171
- data/assets/stylesheets/bootstrap/_code.scss +0 -48
- data/assets/stylesheets/bootstrap/_custom-forms.scss +0 -507
- data/assets/stylesheets/bootstrap/_input-group.scss +0 -193
- data/assets/stylesheets/bootstrap/_jumbotron.scss +0 -17
- data/assets/stylesheets/bootstrap/_media.scss +0 -8
- data/assets/stylesheets/bootstrap/_print.scss +0 -141
- data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +0 -21
- data/assets/stylesheets/bootstrap/mixins/_badge.scss +0 -17
- data/assets/stylesheets/bootstrap/mixins/_float.scss +0 -14
- data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +0 -66
- data/assets/stylesheets/bootstrap/mixins/_hover.scss +0 -37
- data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +0 -10
- data/assets/stylesheets/bootstrap/mixins/_size.scss +0 -7
- data/assets/stylesheets/bootstrap/mixins/_table-row.scss +0 -39
- data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +0 -16
- data/assets/stylesheets/bootstrap/mixins/_text-hide.scss +0 -11
- data/assets/stylesheets/bootstrap/mixins/_visibility.scss +0 -8
- data/assets/stylesheets/bootstrap/utilities/_align.scss +0 -8
- data/assets/stylesheets/bootstrap/utilities/_background.scss +0 -19
- data/assets/stylesheets/bootstrap/utilities/_borders.scss +0 -75
- data/assets/stylesheets/bootstrap/utilities/_display.scss +0 -26
- data/assets/stylesheets/bootstrap/utilities/_embed.scss +0 -39
- data/assets/stylesheets/bootstrap/utilities/_flex.scss +0 -51
- data/assets/stylesheets/bootstrap/utilities/_float.scss +0 -11
- data/assets/stylesheets/bootstrap/utilities/_overflow.scss +0 -5
- data/assets/stylesheets/bootstrap/utilities/_position.scss +0 -32
- data/assets/stylesheets/bootstrap/utilities/_screenreaders.scss +0 -11
- data/assets/stylesheets/bootstrap/utilities/_shadows.scss +0 -6
- data/assets/stylesheets/bootstrap/utilities/_sizing.scss +0 -20
- data/assets/stylesheets/bootstrap/utilities/_spacing.scss +0 -73
- data/assets/stylesheets/bootstrap/utilities/_stretched-link.scss +0 -19
- data/assets/stylesheets/bootstrap/utilities/_text.scss +0 -72
- data/assets/stylesheets/bootstrap/utilities/_visibility.scss +0 -13
|
@@ -1,73 +1,47 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Bootstrap popover.js
|
|
3
|
-
* Copyright 2011-
|
|
4
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/
|
|
2
|
+
* Bootstrap popover.js v5.0.0-alpha1 (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
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('
|
|
8
|
-
typeof define === 'function' && define.amd ? define(['
|
|
9
|
-
(global = global || self, global.Popover = factory(global.
|
|
10
|
-
}(this, function (
|
|
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
|
-
}
|
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/selector-engine.js'), require('./tooltip.js')) :
|
|
8
|
+
typeof define === 'function' && define.amd ? define(['./dom/data.js', './dom/selector-engine.js', './tooltip.js'], factory) :
|
|
9
|
+
(global = global || self, global.Popover = factory(global.Data, global.SelectorEngine, global.Tooltip));
|
|
10
|
+
}(this, (function (Data, SelectorEngine, Tooltip) { 'use strict';
|
|
24
11
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
return Constructor;
|
|
29
|
-
}
|
|
12
|
+
Data = Data && Object.prototype.hasOwnProperty.call(Data, 'default') ? Data['default'] : Data;
|
|
13
|
+
SelectorEngine = SelectorEngine && Object.prototype.hasOwnProperty.call(SelectorEngine, 'default') ? SelectorEngine['default'] : SelectorEngine;
|
|
14
|
+
Tooltip = Tooltip && Object.prototype.hasOwnProperty.call(Tooltip, 'default') ? Tooltip['default'] : Tooltip;
|
|
30
15
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
16
|
+
/**
|
|
17
|
+
* --------------------------------------------------------------------------
|
|
18
|
+
* Bootstrap (v5.0.0-alpha1): util/index.js
|
|
19
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
20
|
+
* --------------------------------------------------------------------------
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
var getjQuery = function getjQuery() {
|
|
24
|
+
var _window = window,
|
|
25
|
+
jQuery = _window.jQuery;
|
|
26
|
+
|
|
27
|
+
if (jQuery && !document.body.hasAttribute('data-no-jquery')) {
|
|
28
|
+
return jQuery;
|
|
41
29
|
}
|
|
42
30
|
|
|
43
|
-
return
|
|
44
|
-
}
|
|
31
|
+
return null;
|
|
32
|
+
};
|
|
45
33
|
|
|
46
|
-
function
|
|
47
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
48
|
-
var source = arguments[i] != null ? arguments[i] : {};
|
|
49
|
-
var ownKeys = Object.keys(source);
|
|
34
|
+
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); } }
|
|
50
35
|
|
|
51
|
-
|
|
52
|
-
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
|
|
53
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
54
|
-
}));
|
|
55
|
-
}
|
|
36
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
56
37
|
|
|
57
|
-
|
|
58
|
-
_defineProperty(target, key, source[key]);
|
|
59
|
-
});
|
|
60
|
-
}
|
|
38
|
+
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }
|
|
61
39
|
|
|
62
|
-
|
|
63
|
-
}
|
|
40
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
64
41
|
|
|
65
|
-
function
|
|
66
|
-
subClass.prototype = Object.create(superClass.prototype);
|
|
67
|
-
subClass.prototype.constructor = subClass;
|
|
68
|
-
subClass.__proto__ = superClass;
|
|
69
|
-
}
|
|
42
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
70
43
|
|
|
44
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
71
45
|
/**
|
|
72
46
|
* ------------------------------------------------------------------------
|
|
73
47
|
* Constants
|
|
@@ -75,32 +49,23 @@
|
|
|
75
49
|
*/
|
|
76
50
|
|
|
77
51
|
var NAME = 'popover';
|
|
78
|
-
var VERSION = '
|
|
52
|
+
var VERSION = '5.0.0-alpha1';
|
|
79
53
|
var DATA_KEY = 'bs.popover';
|
|
80
54
|
var EVENT_KEY = "." + DATA_KEY;
|
|
81
|
-
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
|
82
55
|
var CLASS_PREFIX = 'bs-popover';
|
|
83
56
|
var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
|
|
84
57
|
|
|
85
|
-
var Default = _objectSpread({}, Tooltip.Default, {
|
|
58
|
+
var Default = _objectSpread(_objectSpread({}, Tooltip.Default), {}, {
|
|
86
59
|
placement: 'right',
|
|
87
60
|
trigger: 'click',
|
|
88
61
|
content: '',
|
|
89
|
-
template: '<div class="popover" role="tooltip">' + '<div class="arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>'
|
|
62
|
+
template: '<div class="popover" role="tooltip">' + '<div class="popover-arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>'
|
|
90
63
|
});
|
|
91
64
|
|
|
92
|
-
var DefaultType = _objectSpread({}, Tooltip.DefaultType, {
|
|
65
|
+
var DefaultType = _objectSpread(_objectSpread({}, Tooltip.DefaultType), {}, {
|
|
93
66
|
content: '(string|element|function)'
|
|
94
67
|
});
|
|
95
68
|
|
|
96
|
-
var ClassName = {
|
|
97
|
-
FADE: 'fade',
|
|
98
|
-
SHOW: 'show'
|
|
99
|
-
};
|
|
100
|
-
var Selector = {
|
|
101
|
-
TITLE: '.popover-header',
|
|
102
|
-
CONTENT: '.popover-body'
|
|
103
|
-
};
|
|
104
69
|
var Event = {
|
|
105
70
|
HIDE: "hide" + EVENT_KEY,
|
|
106
71
|
HIDDEN: "hidden" + EVENT_KEY,
|
|
@@ -112,17 +77,18 @@
|
|
|
112
77
|
FOCUSOUT: "focusout" + EVENT_KEY,
|
|
113
78
|
MOUSEENTER: "mouseenter" + EVENT_KEY,
|
|
114
79
|
MOUSELEAVE: "mouseleave" + EVENT_KEY
|
|
115
|
-
/**
|
|
116
|
-
* ------------------------------------------------------------------------
|
|
117
|
-
* Class Definition
|
|
118
|
-
* ------------------------------------------------------------------------
|
|
119
|
-
*/
|
|
120
|
-
|
|
121
80
|
};
|
|
81
|
+
var CLASS_NAME_FADE = 'fade';
|
|
82
|
+
var CLASS_NAME_SHOW = 'show';
|
|
83
|
+
var SELECTOR_TITLE = '.popover-header';
|
|
84
|
+
var SELECTOR_CONTENT = '.popover-body';
|
|
85
|
+
/**
|
|
86
|
+
* ------------------------------------------------------------------------
|
|
87
|
+
* Class Definition
|
|
88
|
+
* ------------------------------------------------------------------------
|
|
89
|
+
*/
|
|
122
90
|
|
|
123
|
-
var Popover =
|
|
124
|
-
/*#__PURE__*/
|
|
125
|
-
function (_Tooltip) {
|
|
91
|
+
var Popover = /*#__PURE__*/function (_Tooltip) {
|
|
126
92
|
_inheritsLoose(Popover, _Tooltip);
|
|
127
93
|
|
|
128
94
|
function Popover() {
|
|
@@ -136,19 +102,10 @@
|
|
|
136
102
|
return this.getTitle() || this._getContent();
|
|
137
103
|
};
|
|
138
104
|
|
|
139
|
-
_proto.addAttachmentClass = function addAttachmentClass(attachment) {
|
|
140
|
-
$(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
|
|
141
|
-
};
|
|
142
|
-
|
|
143
|
-
_proto.getTipElement = function getTipElement() {
|
|
144
|
-
this.tip = this.tip || $(this.config.template)[0];
|
|
145
|
-
return this.tip;
|
|
146
|
-
};
|
|
147
|
-
|
|
148
105
|
_proto.setContent = function setContent() {
|
|
149
|
-
var
|
|
106
|
+
var tip = this.getTipElement(); // we use append for html objects to maintain js events
|
|
150
107
|
|
|
151
|
-
this.setElementContent(
|
|
108
|
+
this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle());
|
|
152
109
|
|
|
153
110
|
var content = this._getContent();
|
|
154
111
|
|
|
@@ -156,8 +113,12 @@
|
|
|
156
113
|
content = content.call(this.element);
|
|
157
114
|
}
|
|
158
115
|
|
|
159
|
-
this.setElementContent(
|
|
160
|
-
|
|
116
|
+
this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content);
|
|
117
|
+
tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW);
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
_proto._addAttachmentClass = function _addAttachmentClass(attachment) {
|
|
121
|
+
this.getTipElement().classList.add(CLASS_PREFIX + "-" + attachment);
|
|
161
122
|
} // Private
|
|
162
123
|
;
|
|
163
124
|
|
|
@@ -166,18 +127,22 @@
|
|
|
166
127
|
};
|
|
167
128
|
|
|
168
129
|
_proto._cleanTipClass = function _cleanTipClass() {
|
|
169
|
-
var
|
|
170
|
-
var tabClass =
|
|
130
|
+
var tip = this.getTipElement();
|
|
131
|
+
var tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX);
|
|
171
132
|
|
|
172
133
|
if (tabClass !== null && tabClass.length > 0) {
|
|
173
|
-
|
|
134
|
+
tabClass.map(function (token) {
|
|
135
|
+
return token.trim();
|
|
136
|
+
}).forEach(function (tClass) {
|
|
137
|
+
return tip.classList.remove(tClass);
|
|
138
|
+
});
|
|
174
139
|
}
|
|
175
140
|
} // Static
|
|
176
141
|
;
|
|
177
142
|
|
|
178
|
-
Popover.
|
|
143
|
+
Popover.jQueryInterface = function jQueryInterface(config) {
|
|
179
144
|
return this.each(function () {
|
|
180
|
-
var data =
|
|
145
|
+
var data = Data.getData(this, DATA_KEY);
|
|
181
146
|
|
|
182
147
|
var _config = typeof config === 'object' ? config : null;
|
|
183
148
|
|
|
@@ -187,7 +152,7 @@
|
|
|
187
152
|
|
|
188
153
|
if (!data) {
|
|
189
154
|
data = new Popover(this, _config);
|
|
190
|
-
|
|
155
|
+
Data.setData(this, DATA_KEY, data);
|
|
191
156
|
}
|
|
192
157
|
|
|
193
158
|
if (typeof config === 'string') {
|
|
@@ -200,6 +165,10 @@
|
|
|
200
165
|
});
|
|
201
166
|
};
|
|
202
167
|
|
|
168
|
+
Popover.getInstance = function getInstance(element) {
|
|
169
|
+
return Data.getData(element, DATA_KEY);
|
|
170
|
+
};
|
|
171
|
+
|
|
203
172
|
_createClass(Popover, null, [{
|
|
204
173
|
key: "VERSION",
|
|
205
174
|
// Getters
|
|
@@ -240,21 +209,27 @@
|
|
|
240
209
|
|
|
241
210
|
return Popover;
|
|
242
211
|
}(Tooltip);
|
|
212
|
+
|
|
213
|
+
var $ = getjQuery();
|
|
243
214
|
/**
|
|
244
215
|
* ------------------------------------------------------------------------
|
|
245
216
|
* jQuery
|
|
246
217
|
* ------------------------------------------------------------------------
|
|
247
218
|
*/
|
|
248
219
|
|
|
220
|
+
/* istanbul ignore if */
|
|
249
221
|
|
|
250
|
-
|
|
251
|
-
|
|
222
|
+
if ($) {
|
|
223
|
+
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
|
224
|
+
$.fn[NAME] = Popover.jQueryInterface;
|
|
225
|
+
$.fn[NAME].Constructor = Popover;
|
|
252
226
|
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
227
|
+
$.fn[NAME].noConflict = function () {
|
|
228
|
+
$.fn[NAME] = JQUERY_NO_CONFLICT;
|
|
229
|
+
return Popover.jQueryInterface;
|
|
230
|
+
};
|
|
231
|
+
}
|
|
257
232
|
|
|
258
233
|
return Popover;
|
|
259
234
|
|
|
260
|
-
}));
|
|
235
|
+
})));
|
|
@@ -1,67 +1,106 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Bootstrap scrollspy.js
|
|
3
|
-
* Copyright 2011-
|
|
4
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/
|
|
2
|
+
* Bootstrap scrollspy.js v5.0.0-alpha1 (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
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('
|
|
8
|
-
typeof define === 'function' && define.amd ? define(['
|
|
9
|
-
(global = global || self, global.ScrollSpy = factory(global.
|
|
10
|
-
}(this, function (
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./dom/selector-engine.js')) :
|
|
8
|
+
typeof define === 'function' && define.amd ? define(['./dom/data.js', './dom/event-handler.js', './dom/manipulator.js', './dom/selector-engine.js'], factory) :
|
|
9
|
+
(global = global || self, global.ScrollSpy = factory(global.Data, global.EventHandler, global.Manipulator, global.SelectorEngine));
|
|
10
|
+
}(this, (function (Data, EventHandler, Manipulator, SelectorEngine) { 'use strict';
|
|
11
|
+
|
|
12
|
+
Data = Data && Object.prototype.hasOwnProperty.call(Data, 'default') ? Data['default'] : Data;
|
|
13
|
+
EventHandler = EventHandler && Object.prototype.hasOwnProperty.call(EventHandler, 'default') ? EventHandler['default'] : EventHandler;
|
|
14
|
+
Manipulator = Manipulator && Object.prototype.hasOwnProperty.call(Manipulator, 'default') ? Manipulator['default'] : Manipulator;
|
|
15
|
+
SelectorEngine = SelectorEngine && Object.prototype.hasOwnProperty.call(SelectorEngine, 'default') ? SelectorEngine['default'] : SelectorEngine;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* --------------------------------------------------------------------------
|
|
19
|
+
* Bootstrap (v5.0.0-alpha1): util/index.js
|
|
20
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
21
|
+
* --------------------------------------------------------------------------
|
|
22
|
+
*/
|
|
23
|
+
var MAX_UID = 1000000;
|
|
24
|
+
|
|
25
|
+
var toType = function toType(obj) {
|
|
26
|
+
if (obj === null || obj === undefined) {
|
|
27
|
+
return "" + obj;
|
|
22
28
|
}
|
|
23
|
-
}
|
|
24
29
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
+
return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase();
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* --------------------------------------------------------------------------
|
|
34
|
+
* Public Util Api
|
|
35
|
+
* --------------------------------------------------------------------------
|
|
36
|
+
*/
|
|
30
37
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
38
|
+
|
|
39
|
+
var getUID = function getUID(prefix) {
|
|
40
|
+
do {
|
|
41
|
+
prefix += Math.floor(Math.random() * MAX_UID);
|
|
42
|
+
} while (document.getElementById(prefix));
|
|
43
|
+
|
|
44
|
+
return prefix;
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
var getSelector = function getSelector(element) {
|
|
48
|
+
var selector = element.getAttribute('data-target');
|
|
49
|
+
|
|
50
|
+
if (!selector || selector === '#') {
|
|
51
|
+
var hrefAttr = element.getAttribute('href');
|
|
52
|
+
selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null;
|
|
41
53
|
}
|
|
42
54
|
|
|
43
|
-
return
|
|
44
|
-
}
|
|
55
|
+
return selector;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
var getSelectorFromElement = function getSelectorFromElement(element) {
|
|
59
|
+
var selector = getSelector(element);
|
|
60
|
+
|
|
61
|
+
if (selector) {
|
|
62
|
+
return document.querySelector(selector) ? selector : null;
|
|
63
|
+
}
|
|
45
64
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
65
|
+
return null;
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
var isElement = function isElement(obj) {
|
|
69
|
+
return (obj[0] || obj).nodeType;
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
var typeCheckConfig = function typeCheckConfig(componentName, config, configTypes) {
|
|
73
|
+
Object.keys(configTypes).forEach(function (property) {
|
|
74
|
+
var expectedTypes = configTypes[property];
|
|
75
|
+
var value = config[property];
|
|
76
|
+
var valueType = value && isElement(value) ? 'element' : toType(value);
|
|
50
77
|
|
|
51
|
-
if (
|
|
52
|
-
|
|
53
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
54
|
-
}));
|
|
78
|
+
if (!new RegExp(expectedTypes).test(valueType)) {
|
|
79
|
+
throw new Error(componentName.toUpperCase() + ": " + ("Option \"" + property + "\" provided type \"" + valueType + "\" ") + ("but expected type \"" + expectedTypes + "\"."));
|
|
55
80
|
}
|
|
81
|
+
});
|
|
82
|
+
};
|
|
56
83
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
84
|
+
var getjQuery = function getjQuery() {
|
|
85
|
+
var _window = window,
|
|
86
|
+
jQuery = _window.jQuery;
|
|
87
|
+
|
|
88
|
+
if (jQuery && !document.body.hasAttribute('data-no-jquery')) {
|
|
89
|
+
return jQuery;
|
|
60
90
|
}
|
|
61
91
|
|
|
62
|
-
return
|
|
63
|
-
}
|
|
92
|
+
return null;
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
96
|
+
|
|
97
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
64
98
|
|
|
99
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
100
|
+
|
|
101
|
+
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); } }
|
|
102
|
+
|
|
103
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
65
104
|
/**
|
|
66
105
|
* ------------------------------------------------------------------------
|
|
67
106
|
* Constants
|
|
@@ -69,11 +108,10 @@
|
|
|
69
108
|
*/
|
|
70
109
|
|
|
71
110
|
var NAME = 'scrollspy';
|
|
72
|
-
var VERSION = '
|
|
111
|
+
var VERSION = '5.0.0-alpha1';
|
|
73
112
|
var DATA_KEY = 'bs.scrollspy';
|
|
74
113
|
var EVENT_KEY = "." + DATA_KEY;
|
|
75
114
|
var DATA_API_KEY = '.data-api';
|
|
76
|
-
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
|
77
115
|
var Default = {
|
|
78
116
|
offset: 10,
|
|
79
117
|
method: 'auto',
|
|
@@ -84,58 +122,46 @@
|
|
|
84
122
|
method: 'string',
|
|
85
123
|
target: '(string|element)'
|
|
86
124
|
};
|
|
87
|
-
var
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
var
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
var
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
DROPDOWN_TOGGLE: '.dropdown-toggle'
|
|
107
|
-
};
|
|
108
|
-
var OffsetMethod = {
|
|
109
|
-
OFFSET: 'offset',
|
|
110
|
-
POSITION: 'position'
|
|
111
|
-
/**
|
|
112
|
-
* ------------------------------------------------------------------------
|
|
113
|
-
* Class Definition
|
|
114
|
-
* ------------------------------------------------------------------------
|
|
115
|
-
*/
|
|
116
|
-
|
|
117
|
-
};
|
|
125
|
+
var EVENT_ACTIVATE = "activate" + EVENT_KEY;
|
|
126
|
+
var EVENT_SCROLL = "scroll" + EVENT_KEY;
|
|
127
|
+
var EVENT_LOAD_DATA_API = "load" + EVENT_KEY + DATA_API_KEY;
|
|
128
|
+
var CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item';
|
|
129
|
+
var CLASS_NAME_ACTIVE = 'active';
|
|
130
|
+
var SELECTOR_DATA_SPY = '[data-spy="scroll"]';
|
|
131
|
+
var SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';
|
|
132
|
+
var SELECTOR_NAV_LINKS = '.nav-link';
|
|
133
|
+
var SELECTOR_NAV_ITEMS = '.nav-item';
|
|
134
|
+
var SELECTOR_LIST_ITEMS = '.list-group-item';
|
|
135
|
+
var SELECTOR_DROPDOWN = '.dropdown';
|
|
136
|
+
var SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
|
|
137
|
+
var METHOD_OFFSET = 'offset';
|
|
138
|
+
var METHOD_POSITION = 'position';
|
|
139
|
+
/**
|
|
140
|
+
* ------------------------------------------------------------------------
|
|
141
|
+
* Class Definition
|
|
142
|
+
* ------------------------------------------------------------------------
|
|
143
|
+
*/
|
|
118
144
|
|
|
119
|
-
var ScrollSpy =
|
|
120
|
-
/*#__PURE__*/
|
|
121
|
-
function () {
|
|
145
|
+
var ScrollSpy = /*#__PURE__*/function () {
|
|
122
146
|
function ScrollSpy(element, config) {
|
|
123
147
|
var _this = this;
|
|
124
148
|
|
|
125
149
|
this._element = element;
|
|
126
150
|
this._scrollElement = element.tagName === 'BODY' ? window : element;
|
|
127
151
|
this._config = this._getConfig(config);
|
|
128
|
-
this._selector = this._config.target + " " +
|
|
152
|
+
this._selector = this._config.target + " " + SELECTOR_NAV_LINKS + "," + (this._config.target + " " + SELECTOR_LIST_ITEMS + ",") + (this._config.target + " ." + CLASS_NAME_DROPDOWN_ITEM);
|
|
129
153
|
this._offsets = [];
|
|
130
154
|
this._targets = [];
|
|
131
155
|
this._activeTarget = null;
|
|
132
156
|
this._scrollHeight = 0;
|
|
133
|
-
|
|
157
|
+
EventHandler.on(this._scrollElement, EVENT_SCROLL, function (event) {
|
|
134
158
|
return _this._process(event);
|
|
135
159
|
});
|
|
136
160
|
this.refresh();
|
|
137
161
|
|
|
138
162
|
this._process();
|
|
163
|
+
|
|
164
|
+
Data.setData(element, DATA_KEY, this);
|
|
139
165
|
} // Getters
|
|
140
166
|
|
|
141
167
|
|
|
@@ -145,27 +171,26 @@
|
|
|
145
171
|
_proto.refresh = function refresh() {
|
|
146
172
|
var _this2 = this;
|
|
147
173
|
|
|
148
|
-
var autoMethod = this._scrollElement === this._scrollElement.window ?
|
|
174
|
+
var autoMethod = this._scrollElement === this._scrollElement.window ? METHOD_OFFSET : METHOD_POSITION;
|
|
149
175
|
var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method;
|
|
150
|
-
var offsetBase = offsetMethod ===
|
|
176
|
+
var offsetBase = offsetMethod === METHOD_POSITION ? this._getScrollTop() : 0;
|
|
151
177
|
this._offsets = [];
|
|
152
178
|
this._targets = [];
|
|
153
179
|
this._scrollHeight = this._getScrollHeight();
|
|
154
|
-
var targets =
|
|
180
|
+
var targets = SelectorEngine.find(this._selector);
|
|
155
181
|
targets.map(function (element) {
|
|
156
182
|
var target;
|
|
157
|
-
var targetSelector =
|
|
183
|
+
var targetSelector = getSelectorFromElement(element);
|
|
158
184
|
|
|
159
185
|
if (targetSelector) {
|
|
160
|
-
target =
|
|
186
|
+
target = SelectorEngine.findOne(targetSelector);
|
|
161
187
|
}
|
|
162
188
|
|
|
163
189
|
if (target) {
|
|
164
190
|
var targetBCR = target.getBoundingClientRect();
|
|
165
191
|
|
|
166
192
|
if (targetBCR.width || targetBCR.height) {
|
|
167
|
-
|
|
168
|
-
return [$(target)[offsetMethod]().top + offsetBase, targetSelector];
|
|
193
|
+
return [Manipulator[offsetMethod](target).top + offsetBase, targetSelector];
|
|
169
194
|
}
|
|
170
195
|
}
|
|
171
196
|
|
|
@@ -182,8 +207,8 @@
|
|
|
182
207
|
};
|
|
183
208
|
|
|
184
209
|
_proto.dispose = function dispose() {
|
|
185
|
-
|
|
186
|
-
|
|
210
|
+
Data.removeData(this._element, DATA_KEY);
|
|
211
|
+
EventHandler.off(this._scrollElement, EVENT_KEY);
|
|
187
212
|
this._element = null;
|
|
188
213
|
this._scrollElement = null;
|
|
189
214
|
this._config = null;
|
|
@@ -196,20 +221,20 @@
|
|
|
196
221
|
;
|
|
197
222
|
|
|
198
223
|
_proto._getConfig = function _getConfig(config) {
|
|
199
|
-
config = _objectSpread({}, Default, typeof config === 'object' && config ? config : {});
|
|
224
|
+
config = _objectSpread(_objectSpread({}, Default), typeof config === 'object' && config ? config : {});
|
|
200
225
|
|
|
201
|
-
if (typeof config.target !== 'string') {
|
|
202
|
-
var id =
|
|
226
|
+
if (typeof config.target !== 'string' && isElement(config.target)) {
|
|
227
|
+
var id = config.target.id;
|
|
203
228
|
|
|
204
229
|
if (!id) {
|
|
205
|
-
id =
|
|
206
|
-
|
|
230
|
+
id = getUID(NAME);
|
|
231
|
+
config.target.id = id;
|
|
207
232
|
}
|
|
208
233
|
|
|
209
234
|
config.target = "#" + id;
|
|
210
235
|
}
|
|
211
236
|
|
|
212
|
-
|
|
237
|
+
typeCheckConfig(NAME, config, DefaultType);
|
|
213
238
|
return config;
|
|
214
239
|
};
|
|
215
240
|
|
|
@@ -254,9 +279,7 @@
|
|
|
254
279
|
return;
|
|
255
280
|
}
|
|
256
281
|
|
|
257
|
-
var
|
|
258
|
-
|
|
259
|
-
for (var i = offsetLength; i--;) {
|
|
282
|
+
for (var i = this._offsets.length; i--;) {
|
|
260
283
|
var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]);
|
|
261
284
|
|
|
262
285
|
if (isActiveTarget) {
|
|
@@ -274,44 +297,51 @@
|
|
|
274
297
|
return selector + "[data-target=\"" + target + "\"]," + selector + "[href=\"" + target + "\"]";
|
|
275
298
|
});
|
|
276
299
|
|
|
277
|
-
var
|
|
300
|
+
var link = SelectorEngine.findOne(queries.join(','));
|
|
278
301
|
|
|
279
|
-
if (
|
|
280
|
-
|
|
281
|
-
|
|
302
|
+
if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {
|
|
303
|
+
SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN)).classList.add(CLASS_NAME_ACTIVE);
|
|
304
|
+
link.classList.add(CLASS_NAME_ACTIVE);
|
|
282
305
|
} else {
|
|
283
306
|
// Set triggered link as active
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
307
|
+
link.classList.add(CLASS_NAME_ACTIVE);
|
|
308
|
+
SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP).forEach(function (listGroup) {
|
|
309
|
+
// Set triggered links parents as active
|
|
310
|
+
// With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor
|
|
311
|
+
SelectorEngine.prev(listGroup, SELECTOR_NAV_LINKS + ", " + SELECTOR_LIST_ITEMS).forEach(function (item) {
|
|
312
|
+
return item.classList.add(CLASS_NAME_ACTIVE);
|
|
313
|
+
}); // Handle special case when .nav-link is inside .nav-item
|
|
314
|
+
|
|
315
|
+
SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS).forEach(function (navItem) {
|
|
316
|
+
SelectorEngine.children(navItem, SELECTOR_NAV_LINKS).forEach(function (item) {
|
|
317
|
+
return item.classList.add(CLASS_NAME_ACTIVE);
|
|
318
|
+
});
|
|
319
|
+
});
|
|
320
|
+
});
|
|
290
321
|
}
|
|
291
322
|
|
|
292
|
-
|
|
323
|
+
EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {
|
|
293
324
|
relatedTarget: target
|
|
294
325
|
});
|
|
295
326
|
};
|
|
296
327
|
|
|
297
328
|
_proto._clear = function _clear() {
|
|
298
|
-
|
|
299
|
-
return node.classList.contains(
|
|
329
|
+
SelectorEngine.find(this._selector).filter(function (node) {
|
|
330
|
+
return node.classList.contains(CLASS_NAME_ACTIVE);
|
|
300
331
|
}).forEach(function (node) {
|
|
301
|
-
return node.classList.remove(
|
|
332
|
+
return node.classList.remove(CLASS_NAME_ACTIVE);
|
|
302
333
|
});
|
|
303
334
|
} // Static
|
|
304
335
|
;
|
|
305
336
|
|
|
306
|
-
ScrollSpy.
|
|
337
|
+
ScrollSpy.jQueryInterface = function jQueryInterface(config) {
|
|
307
338
|
return this.each(function () {
|
|
308
|
-
var data =
|
|
339
|
+
var data = Data.getData(this, DATA_KEY);
|
|
309
340
|
|
|
310
341
|
var _config = typeof config === 'object' && config;
|
|
311
342
|
|
|
312
343
|
if (!data) {
|
|
313
344
|
data = new ScrollSpy(this, _config);
|
|
314
|
-
$(this).data(DATA_KEY, data);
|
|
315
345
|
}
|
|
316
346
|
|
|
317
347
|
if (typeof config === 'string') {
|
|
@@ -324,6 +354,10 @@
|
|
|
324
354
|
});
|
|
325
355
|
};
|
|
326
356
|
|
|
357
|
+
ScrollSpy.getInstance = function getInstance(element) {
|
|
358
|
+
return Data.getData(element, DATA_KEY);
|
|
359
|
+
};
|
|
360
|
+
|
|
327
361
|
_createClass(ScrollSpy, null, [{
|
|
328
362
|
key: "VERSION",
|
|
329
363
|
get: function get() {
|
|
@@ -345,30 +379,31 @@
|
|
|
345
379
|
*/
|
|
346
380
|
|
|
347
381
|
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
for (var i = scrollSpysLength; i--;) {
|
|
353
|
-
var $spy = $(scrollSpys[i]);
|
|
354
|
-
|
|
355
|
-
ScrollSpy._jQueryInterface.call($spy, $spy.data());
|
|
356
|
-
}
|
|
382
|
+
EventHandler.on(window, EVENT_LOAD_DATA_API, function () {
|
|
383
|
+
SelectorEngine.find(SELECTOR_DATA_SPY).forEach(function (spy) {
|
|
384
|
+
return new ScrollSpy(spy, Manipulator.getDataAttributes(spy));
|
|
385
|
+
});
|
|
357
386
|
});
|
|
387
|
+
var $ = getjQuery();
|
|
358
388
|
/**
|
|
359
389
|
* ------------------------------------------------------------------------
|
|
360
390
|
* jQuery
|
|
361
391
|
* ------------------------------------------------------------------------
|
|
362
392
|
*/
|
|
363
393
|
|
|
364
|
-
|
|
365
|
-
$.fn[NAME].Constructor = ScrollSpy;
|
|
394
|
+
/* istanbul ignore if */
|
|
366
395
|
|
|
367
|
-
|
|
368
|
-
$.fn[NAME]
|
|
369
|
-
|
|
370
|
-
|
|
396
|
+
if ($) {
|
|
397
|
+
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
|
398
|
+
$.fn[NAME] = ScrollSpy.jQueryInterface;
|
|
399
|
+
$.fn[NAME].Constructor = ScrollSpy;
|
|
400
|
+
|
|
401
|
+
$.fn[NAME].noConflict = function () {
|
|
402
|
+
$.fn[NAME] = JQUERY_NO_CONFLICT;
|
|
403
|
+
return ScrollSpy.jQueryInterface;
|
|
404
|
+
};
|
|
405
|
+
}
|
|
371
406
|
|
|
372
407
|
return ScrollSpy;
|
|
373
408
|
|
|
374
|
-
}));
|
|
409
|
+
})));
|