bootstrap 4.5.2 → 5.0.0.beta1
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 +1 -1
- data/README.md +5 -2
- data/assets/javascripts/bootstrap-sprockets.js +11 -8
- data/assets/javascripts/bootstrap.js +2170 -1572
- data/assets/javascripts/bootstrap.min.js +2 -2
- data/assets/javascripts/bootstrap/alert.js +195 -66
- data/assets/javascripts/bootstrap/button.js +120 -136
- data/assets/javascripts/bootstrap/carousel.js +390 -184
- data/assets/javascripts/bootstrap/collapse.js +364 -133
- data/assets/javascripts/bootstrap/dom/data.js +81 -0
- data/assets/javascripts/bootstrap/dom/event-handler.js +309 -0
- data/assets/javascripts/bootstrap/dom/manipulator.js +86 -0
- data/assets/javascripts/bootstrap/dom/selector-engine.js +98 -0
- data/assets/javascripts/bootstrap/dropdown.js +357 -232
- data/assets/javascripts/bootstrap/modal.js +406 -211
- data/assets/javascripts/bootstrap/popover.js +82 -50
- data/assets/javascripts/bootstrap/scrollspy.js +226 -80
- data/assets/javascripts/bootstrap/tab.js +215 -77
- data/assets/javascripts/bootstrap/toast.js +239 -79
- data/assets/javascripts/bootstrap/tooltip.js +529 -258
- data/assets/stylesheets/_bootstrap-grid.scss +51 -15
- data/assets/stylesheets/_bootstrap-reboot.scss +4 -1
- data/assets/stylesheets/_bootstrap.scss +15 -8
- data/assets/stylesheets/bootstrap/_accordion.scss +125 -0
- data/assets/stylesheets/bootstrap/_alert.scss +15 -9
- data/assets/stylesheets/bootstrap/_badge.scss +2 -27
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +4 -20
- data/assets/stylesheets/bootstrap/_button-group.scss +21 -45
- data/assets/stylesheets/bootstrap/_buttons.scss +27 -60
- data/assets/stylesheets/bootstrap/_card.scss +25 -96
- data/assets/stylesheets/bootstrap/_carousel.scss +54 -28
- data/assets/stylesheets/bootstrap/_close.scss +30 -30
- data/assets/stylesheets/bootstrap/_containers.scss +41 -0
- data/assets/stylesheets/bootstrap/_dropdown.scss +74 -31
- data/assets/stylesheets/bootstrap/_forms.scss +9 -347
- data/assets/stylesheets/bootstrap/_functions.scss +87 -23
- data/assets/stylesheets/bootstrap/_grid.scss +3 -54
- data/assets/stylesheets/bootstrap/_helpers.scss +7 -0
- data/assets/stylesheets/bootstrap/_list-group.scss +18 -9
- data/assets/stylesheets/bootstrap/_mixins.scss +7 -13
- data/assets/stylesheets/bootstrap/_modal.scss +41 -46
- data/assets/stylesheets/bootstrap/_nav.scss +12 -8
- data/assets/stylesheets/bootstrap/_navbar.scss +43 -74
- data/assets/stylesheets/bootstrap/_pagination.scss +10 -20
- data/assets/stylesheets/bootstrap/_popover.scss +23 -20
- data/assets/stylesheets/bootstrap/_progress.scss +3 -5
- data/assets/stylesheets/bootstrap/_reboot.scss +328 -173
- data/assets/stylesheets/bootstrap/_root.scss +5 -9
- data/assets/stylesheets/bootstrap/_spinners.scss +14 -5
- data/assets/stylesheets/bootstrap/_tables.scss +79 -114
- data/assets/stylesheets/bootstrap/_toasts.scss +19 -15
- data/assets/stylesheets/bootstrap/_tooltip.scss +17 -17
- data/assets/stylesheets/bootstrap/_transitions.scss +0 -1
- data/assets/stylesheets/bootstrap/_type.scss +38 -59
- data/assets/stylesheets/bootstrap/_utilities.scss +560 -18
- data/assets/stylesheets/bootstrap/_variables.scss +652 -459
- data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +18 -0
- data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +61 -0
- data/assets/stylesheets/bootstrap/forms/_form-check.scss +151 -0
- data/assets/stylesheets/bootstrap/forms/_form-control.scss +223 -0
- data/assets/stylesheets/bootstrap/forms/_form-range.scss +91 -0
- data/assets/stylesheets/bootstrap/forms/_form-select.scss +68 -0
- data/assets/stylesheets/bootstrap/forms/_form-text.scss +11 -0
- data/assets/stylesheets/bootstrap/forms/_input-group.scss +121 -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/_position.scss +30 -0
- data/assets/stylesheets/bootstrap/helpers/_ratio.scss +26 -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/helpers/_visually-hidden.scss +8 -0
- data/assets/stylesheets/bootstrap/mixins/_alert.scss +1 -5
- data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +9 -9
- data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +7 -9
- data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +14 -10
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +65 -47
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +8 -8
- 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 +17 -78
- data/assets/stylesheets/bootstrap/mixins/_gradients.scss +9 -11
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +84 -33
- data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -21
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +3 -2
- data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_pagination.scss +15 -8
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +2 -2
- data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +21 -0
- data/assets/stylesheets/bootstrap/mixins/_transition.scss +2 -2
- data/assets/stylesheets/bootstrap/mixins/_utilities.scss +68 -0
- data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +28 -0
- data/assets/stylesheets/bootstrap/utilities/_api.scss +47 -0
- data/assets/stylesheets/bootstrap/vendor/_rfs.scss +234 -126
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +6 -4
- metadata +33 -41
- data/assets/javascripts/bootstrap/util.js +0 -192
- data/assets/stylesheets/bootstrap/_code.scss +0 -48
- data/assets/stylesheets/bootstrap/_custom-forms.scss +0 -523
- data/assets/stylesheets/bootstrap/_input-group.scss +0 -192
- 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 -23
- 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 -80
- data/assets/stylesheets/bootstrap/mixins/_hover.scss +0 -37
- data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +0 -11
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +0 -34
- 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 -17
- 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/_interactions.scss +0 -5
- 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,18 +1,153 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Bootstrap carousel.js
|
|
2
|
+
* Bootstrap carousel.js v5.0.0-beta1 (https://getbootstrap.com/)
|
|
3
3
|
* Copyright 2011-2020 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
|
4
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 = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Carousel = factory(global.
|
|
10
|
-
}(this, (function (
|
|
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', './dom/event-handler', './dom/manipulator', './dom/selector-engine'], factory) :
|
|
9
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Carousel = factory(global.Data, global.EventHandler, global.Manipulator, global.SelectorEngine));
|
|
10
|
+
}(this, (function (Data, EventHandler, Manipulator, SelectorEngine) { 'use strict';
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
Util = Util && Object.prototype.hasOwnProperty.call(Util, 'default') ? Util['default'] : Util;
|
|
12
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
13
|
|
|
15
|
-
|
|
14
|
+
var Data__default = /*#__PURE__*/_interopDefaultLegacy(Data);
|
|
15
|
+
var EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
|
|
16
|
+
var Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator);
|
|
17
|
+
var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine);
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* --------------------------------------------------------------------------
|
|
21
|
+
* Bootstrap (v5.0.0-beta1): util/index.js
|
|
22
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
23
|
+
* --------------------------------------------------------------------------
|
|
24
|
+
*/
|
|
25
|
+
var MILLISECONDS_MULTIPLIER = 1000;
|
|
26
|
+
var TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
|
|
27
|
+
|
|
28
|
+
var toType = function toType(obj) {
|
|
29
|
+
if (obj === null || obj === undefined) {
|
|
30
|
+
return "" + obj;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase();
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
var getSelector = function getSelector(element) {
|
|
37
|
+
var selector = element.getAttribute('data-bs-target');
|
|
38
|
+
|
|
39
|
+
if (!selector || selector === '#') {
|
|
40
|
+
var hrefAttr = element.getAttribute('href');
|
|
41
|
+
selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
return selector;
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
var getElementFromSelector = function getElementFromSelector(element) {
|
|
48
|
+
var selector = getSelector(element);
|
|
49
|
+
return selector ? document.querySelector(selector) : null;
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
var getTransitionDurationFromElement = function getTransitionDurationFromElement(element) {
|
|
53
|
+
if (!element) {
|
|
54
|
+
return 0;
|
|
55
|
+
} // Get transition-duration of the element
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
var _window$getComputedSt = window.getComputedStyle(element),
|
|
59
|
+
transitionDuration = _window$getComputedSt.transitionDuration,
|
|
60
|
+
transitionDelay = _window$getComputedSt.transitionDelay;
|
|
61
|
+
|
|
62
|
+
var floatTransitionDuration = Number.parseFloat(transitionDuration);
|
|
63
|
+
var floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found
|
|
64
|
+
|
|
65
|
+
if (!floatTransitionDuration && !floatTransitionDelay) {
|
|
66
|
+
return 0;
|
|
67
|
+
} // If multiple durations are defined, take the first
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
transitionDuration = transitionDuration.split(',')[0];
|
|
71
|
+
transitionDelay = transitionDelay.split(',')[0];
|
|
72
|
+
return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
var triggerTransitionEnd = function triggerTransitionEnd(element) {
|
|
76
|
+
element.dispatchEvent(new Event(TRANSITION_END));
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
var isElement = function isElement(obj) {
|
|
80
|
+
return (obj[0] || obj).nodeType;
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
var emulateTransitionEnd = function emulateTransitionEnd(element, duration) {
|
|
84
|
+
var called = false;
|
|
85
|
+
var durationPadding = 5;
|
|
86
|
+
var emulatedDuration = duration + durationPadding;
|
|
87
|
+
|
|
88
|
+
function listener() {
|
|
89
|
+
called = true;
|
|
90
|
+
element.removeEventListener(TRANSITION_END, listener);
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
element.addEventListener(TRANSITION_END, listener);
|
|
94
|
+
setTimeout(function () {
|
|
95
|
+
if (!called) {
|
|
96
|
+
triggerTransitionEnd(element);
|
|
97
|
+
}
|
|
98
|
+
}, emulatedDuration);
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
var typeCheckConfig = function typeCheckConfig(componentName, config, configTypes) {
|
|
102
|
+
Object.keys(configTypes).forEach(function (property) {
|
|
103
|
+
var expectedTypes = configTypes[property];
|
|
104
|
+
var value = config[property];
|
|
105
|
+
var valueType = value && isElement(value) ? 'element' : toType(value);
|
|
106
|
+
|
|
107
|
+
if (!new RegExp(expectedTypes).test(valueType)) {
|
|
108
|
+
throw new Error(componentName.toUpperCase() + ": " + ("Option \"" + property + "\" provided type \"" + valueType + "\" ") + ("but expected type \"" + expectedTypes + "\"."));
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
};
|
|
112
|
+
|
|
113
|
+
var isVisible = function isVisible(element) {
|
|
114
|
+
if (!element) {
|
|
115
|
+
return false;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
if (element.style && element.parentNode && element.parentNode.style) {
|
|
119
|
+
var elementStyle = getComputedStyle(element);
|
|
120
|
+
var parentNodeStyle = getComputedStyle(element.parentNode);
|
|
121
|
+
return elementStyle.display !== 'none' && parentNodeStyle.display !== 'none' && elementStyle.visibility !== 'hidden';
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
return false;
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
var reflow = function reflow(element) {
|
|
128
|
+
return element.offsetHeight;
|
|
129
|
+
};
|
|
130
|
+
|
|
131
|
+
var getjQuery = function getjQuery() {
|
|
132
|
+
var _window = window,
|
|
133
|
+
jQuery = _window.jQuery;
|
|
134
|
+
|
|
135
|
+
if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {
|
|
136
|
+
return jQuery;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
return null;
|
|
140
|
+
};
|
|
141
|
+
|
|
142
|
+
var onDOMContentLoaded = function onDOMContentLoaded(callback) {
|
|
143
|
+
if (document.readyState === 'loading') {
|
|
144
|
+
document.addEventListener('DOMContentLoaded', callback);
|
|
145
|
+
} else {
|
|
146
|
+
callback();
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
|
|
150
|
+
var isRTL = document.documentElement.dir === 'rtl';
|
|
16
151
|
|
|
17
152
|
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); } }
|
|
18
153
|
|
|
@@ -23,16 +158,60 @@
|
|
|
23
158
|
* ------------------------------------------------------------------------
|
|
24
159
|
*/
|
|
25
160
|
|
|
161
|
+
var VERSION = '5.0.0-beta1';
|
|
162
|
+
|
|
163
|
+
var BaseComponent = /*#__PURE__*/function () {
|
|
164
|
+
function BaseComponent(element) {
|
|
165
|
+
if (!element) {
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
this._element = element;
|
|
170
|
+
Data__default['default'].setData(element, this.constructor.DATA_KEY, this);
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
var _proto = BaseComponent.prototype;
|
|
174
|
+
|
|
175
|
+
_proto.dispose = function dispose() {
|
|
176
|
+
Data__default['default'].removeData(this._element, this.constructor.DATA_KEY);
|
|
177
|
+
this._element = null;
|
|
178
|
+
}
|
|
179
|
+
/** Static */
|
|
180
|
+
;
|
|
181
|
+
|
|
182
|
+
BaseComponent.getInstance = function getInstance(element) {
|
|
183
|
+
return Data__default['default'].getData(element, this.DATA_KEY);
|
|
184
|
+
};
|
|
185
|
+
|
|
186
|
+
_createClass(BaseComponent, null, [{
|
|
187
|
+
key: "VERSION",
|
|
188
|
+
get: function get() {
|
|
189
|
+
return VERSION;
|
|
190
|
+
}
|
|
191
|
+
}]);
|
|
192
|
+
|
|
193
|
+
return BaseComponent;
|
|
194
|
+
}();
|
|
195
|
+
|
|
196
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
197
|
+
|
|
198
|
+
function _defineProperties$1(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); } }
|
|
199
|
+
|
|
200
|
+
function _createClass$1(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties$1(Constructor.prototype, protoProps); if (staticProps) _defineProperties$1(Constructor, staticProps); return Constructor; }
|
|
201
|
+
|
|
202
|
+
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }
|
|
203
|
+
/**
|
|
204
|
+
* ------------------------------------------------------------------------
|
|
205
|
+
* Constants
|
|
206
|
+
* ------------------------------------------------------------------------
|
|
207
|
+
*/
|
|
208
|
+
|
|
26
209
|
var NAME = 'carousel';
|
|
27
|
-
var VERSION = '4.5.2';
|
|
28
210
|
var DATA_KEY = 'bs.carousel';
|
|
29
211
|
var EVENT_KEY = "." + DATA_KEY;
|
|
30
212
|
var DATA_API_KEY = '.data-api';
|
|
31
|
-
var
|
|
32
|
-
var
|
|
33
|
-
|
|
34
|
-
var ARROW_RIGHT_KEYCODE = 39; // KeyboardEvent.which value for right arrow key
|
|
35
|
-
|
|
213
|
+
var ARROW_LEFT_KEY = 'ArrowLeft';
|
|
214
|
+
var ARROW_RIGHT_KEY = 'ArrowRight';
|
|
36
215
|
var TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch
|
|
37
216
|
|
|
38
217
|
var SWIPE_THRESHOLD = 40;
|
|
@@ -72,8 +251,8 @@
|
|
|
72
251
|
var CLASS_NAME_CAROUSEL = 'carousel';
|
|
73
252
|
var CLASS_NAME_ACTIVE = 'active';
|
|
74
253
|
var CLASS_NAME_SLIDE = 'slide';
|
|
75
|
-
var
|
|
76
|
-
var
|
|
254
|
+
var CLASS_NAME_END = 'carousel-item-end';
|
|
255
|
+
var CLASS_NAME_START = 'carousel-item-start';
|
|
77
256
|
var CLASS_NAME_NEXT = 'carousel-item-next';
|
|
78
257
|
var CLASS_NAME_PREV = 'carousel-item-prev';
|
|
79
258
|
var CLASS_NAME_POINTER_EVENT = 'pointer-event';
|
|
@@ -83,8 +262,8 @@
|
|
|
83
262
|
var SELECTOR_ITEM_IMG = '.carousel-item img';
|
|
84
263
|
var SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev';
|
|
85
264
|
var SELECTOR_INDICATORS = '.carousel-indicators';
|
|
86
|
-
var SELECTOR_DATA_SLIDE = '[data-slide], [data-slide-to]';
|
|
87
|
-
var SELECTOR_DATA_RIDE = '[data-ride="carousel"]';
|
|
265
|
+
var SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]';
|
|
266
|
+
var SELECTOR_DATA_RIDE = '[data-bs-ride="carousel"]';
|
|
88
267
|
var PointerType = {
|
|
89
268
|
TOUCH: 'touch',
|
|
90
269
|
PEN: 'pen'
|
|
@@ -95,23 +274,29 @@
|
|
|
95
274
|
* ------------------------------------------------------------------------
|
|
96
275
|
*/
|
|
97
276
|
|
|
98
|
-
var Carousel = /*#__PURE__*/function () {
|
|
99
|
-
|
|
100
|
-
this._items = null;
|
|
101
|
-
this._interval = null;
|
|
102
|
-
this._activeElement = null;
|
|
103
|
-
this._isPaused = false;
|
|
104
|
-
this._isSliding = false;
|
|
105
|
-
this.touchTimeout = null;
|
|
106
|
-
this.touchStartX = 0;
|
|
107
|
-
this.touchDeltaX = 0;
|
|
108
|
-
this._config = this._getConfig(config);
|
|
109
|
-
this._element = element;
|
|
110
|
-
this._indicatorsElement = this._element.querySelector(SELECTOR_INDICATORS);
|
|
111
|
-
this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0;
|
|
112
|
-
this._pointerEvent = Boolean(window.PointerEvent || window.MSPointerEvent);
|
|
277
|
+
var Carousel = /*#__PURE__*/function (_BaseComponent) {
|
|
278
|
+
_inheritsLoose(Carousel, _BaseComponent);
|
|
113
279
|
|
|
114
|
-
|
|
280
|
+
function Carousel(element, config) {
|
|
281
|
+
var _this;
|
|
282
|
+
|
|
283
|
+
_this = _BaseComponent.call(this, element) || this;
|
|
284
|
+
_this._items = null;
|
|
285
|
+
_this._interval = null;
|
|
286
|
+
_this._activeElement = null;
|
|
287
|
+
_this._isPaused = false;
|
|
288
|
+
_this._isSliding = false;
|
|
289
|
+
_this.touchTimeout = null;
|
|
290
|
+
_this.touchStartX = 0;
|
|
291
|
+
_this.touchDeltaX = 0;
|
|
292
|
+
_this._config = _this._getConfig(config);
|
|
293
|
+
_this._indicatorsElement = SelectorEngine__default['default'].findOne(SELECTOR_INDICATORS, _this._element);
|
|
294
|
+
_this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0;
|
|
295
|
+
_this._pointerEvent = Boolean(window.PointerEvent);
|
|
296
|
+
|
|
297
|
+
_this._addEventListeners();
|
|
298
|
+
|
|
299
|
+
return _this;
|
|
115
300
|
} // Getters
|
|
116
301
|
|
|
117
302
|
|
|
@@ -127,7 +312,7 @@
|
|
|
127
312
|
_proto.nextWhenVisible = function nextWhenVisible() {
|
|
128
313
|
// Don't call next when the page isn't visible
|
|
129
314
|
// or the carousel or its parent isn't visible
|
|
130
|
-
if (!document.hidden &&
|
|
315
|
+
if (!document.hidden && isVisible(this._element)) {
|
|
131
316
|
this.next();
|
|
132
317
|
}
|
|
133
318
|
};
|
|
@@ -143,8 +328,8 @@
|
|
|
143
328
|
this._isPaused = true;
|
|
144
329
|
}
|
|
145
330
|
|
|
146
|
-
if (this._element
|
|
147
|
-
|
|
331
|
+
if (SelectorEngine__default['default'].findOne(SELECTOR_NEXT_PREV, this._element)) {
|
|
332
|
+
triggerTransitionEnd(this._element);
|
|
148
333
|
this.cycle(true);
|
|
149
334
|
}
|
|
150
335
|
|
|
@@ -162,15 +347,17 @@
|
|
|
162
347
|
this._interval = null;
|
|
163
348
|
}
|
|
164
349
|
|
|
165
|
-
if (this._config.interval && !this._isPaused) {
|
|
350
|
+
if (this._config && this._config.interval && !this._isPaused) {
|
|
351
|
+
this._updateInterval();
|
|
352
|
+
|
|
166
353
|
this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval);
|
|
167
354
|
}
|
|
168
355
|
};
|
|
169
356
|
|
|
170
357
|
_proto.to = function to(index) {
|
|
171
|
-
var
|
|
358
|
+
var _this2 = this;
|
|
172
359
|
|
|
173
|
-
this._activeElement = this._element
|
|
360
|
+
this._activeElement = SelectorEngine__default['default'].findOne(SELECTOR_ACTIVE_ITEM, this._element);
|
|
174
361
|
|
|
175
362
|
var activeIndex = this._getItemIndex(this._activeElement);
|
|
176
363
|
|
|
@@ -179,8 +366,8 @@
|
|
|
179
366
|
}
|
|
180
367
|
|
|
181
368
|
if (this._isSliding) {
|
|
182
|
-
|
|
183
|
-
return
|
|
369
|
+
EventHandler__default['default'].one(this._element, EVENT_SLID, function () {
|
|
370
|
+
return _this2.to(index);
|
|
184
371
|
});
|
|
185
372
|
return;
|
|
186
373
|
}
|
|
@@ -197,11 +384,11 @@
|
|
|
197
384
|
};
|
|
198
385
|
|
|
199
386
|
_proto.dispose = function dispose() {
|
|
200
|
-
|
|
201
|
-
|
|
387
|
+
_BaseComponent.prototype.dispose.call(this);
|
|
388
|
+
|
|
389
|
+
EventHandler__default['default'].off(this._element, EVENT_KEY);
|
|
202
390
|
this._items = null;
|
|
203
391
|
this._config = null;
|
|
204
|
-
this._element = null;
|
|
205
392
|
this._interval = null;
|
|
206
393
|
this._isPaused = null;
|
|
207
394
|
this._isSliding = null;
|
|
@@ -212,7 +399,7 @@
|
|
|
212
399
|
|
|
213
400
|
_proto._getConfig = function _getConfig(config) {
|
|
214
401
|
config = _extends({}, Default, config);
|
|
215
|
-
|
|
402
|
+
typeCheckConfig(NAME, config, DefaultType);
|
|
216
403
|
return config;
|
|
217
404
|
};
|
|
218
405
|
|
|
@@ -237,59 +424,56 @@
|
|
|
237
424
|
};
|
|
238
425
|
|
|
239
426
|
_proto._addEventListeners = function _addEventListeners() {
|
|
240
|
-
var
|
|
427
|
+
var _this3 = this;
|
|
241
428
|
|
|
242
429
|
if (this._config.keyboard) {
|
|
243
|
-
|
|
244
|
-
return
|
|
430
|
+
EventHandler__default['default'].on(this._element, EVENT_KEYDOWN, function (event) {
|
|
431
|
+
return _this3._keydown(event);
|
|
245
432
|
});
|
|
246
433
|
}
|
|
247
434
|
|
|
248
435
|
if (this._config.pause === 'hover') {
|
|
249
|
-
|
|
250
|
-
return
|
|
251
|
-
})
|
|
252
|
-
|
|
436
|
+
EventHandler__default['default'].on(this._element, EVENT_MOUSEENTER, function (event) {
|
|
437
|
+
return _this3.pause(event);
|
|
438
|
+
});
|
|
439
|
+
EventHandler__default['default'].on(this._element, EVENT_MOUSELEAVE, function (event) {
|
|
440
|
+
return _this3.cycle(event);
|
|
253
441
|
});
|
|
254
442
|
}
|
|
255
443
|
|
|
256
|
-
if (this._config.touch) {
|
|
444
|
+
if (this._config.touch && this._touchSupported) {
|
|
257
445
|
this._addTouchEventListeners();
|
|
258
446
|
}
|
|
259
447
|
};
|
|
260
448
|
|
|
261
449
|
_proto._addTouchEventListeners = function _addTouchEventListeners() {
|
|
262
|
-
var
|
|
263
|
-
|
|
264
|
-
if (!this._touchSupported) {
|
|
265
|
-
return;
|
|
266
|
-
}
|
|
450
|
+
var _this4 = this;
|
|
267
451
|
|
|
268
452
|
var start = function start(event) {
|
|
269
|
-
if (
|
|
270
|
-
|
|
271
|
-
} else if (!
|
|
272
|
-
|
|
453
|
+
if (_this4._pointerEvent && PointerType[event.pointerType.toUpperCase()]) {
|
|
454
|
+
_this4.touchStartX = event.clientX;
|
|
455
|
+
} else if (!_this4._pointerEvent) {
|
|
456
|
+
_this4.touchStartX = event.touches[0].clientX;
|
|
273
457
|
}
|
|
274
458
|
};
|
|
275
459
|
|
|
276
460
|
var move = function move(event) {
|
|
277
461
|
// ensure swiping with one touch and not pinching
|
|
278
|
-
if (event.
|
|
279
|
-
|
|
462
|
+
if (event.touches && event.touches.length > 1) {
|
|
463
|
+
_this4.touchDeltaX = 0;
|
|
280
464
|
} else {
|
|
281
|
-
|
|
465
|
+
_this4.touchDeltaX = event.touches[0].clientX - _this4.touchStartX;
|
|
282
466
|
}
|
|
283
467
|
};
|
|
284
468
|
|
|
285
469
|
var end = function end(event) {
|
|
286
|
-
if (
|
|
287
|
-
|
|
470
|
+
if (_this4._pointerEvent && PointerType[event.pointerType.toUpperCase()]) {
|
|
471
|
+
_this4.touchDeltaX = event.clientX - _this4.touchStartX;
|
|
288
472
|
}
|
|
289
473
|
|
|
290
|
-
|
|
474
|
+
_this4._handleSwipe();
|
|
291
475
|
|
|
292
|
-
if (
|
|
476
|
+
if (_this4._config.pause === 'hover') {
|
|
293
477
|
// If it's a touch-enabled device, mouseenter/leave are fired as
|
|
294
478
|
// part of the mouse compatibility events on first tap - the carousel
|
|
295
479
|
// would stop cycling until user tapped out of it;
|
|
@@ -297,39 +481,41 @@
|
|
|
297
481
|
// (as if it's the second time we tap on it, mouseenter compat event
|
|
298
482
|
// is NOT fired) and after a timeout (to allow for mouse compatibility
|
|
299
483
|
// events to fire) we explicitly restart cycling
|
|
300
|
-
|
|
484
|
+
_this4.pause();
|
|
301
485
|
|
|
302
|
-
if (
|
|
303
|
-
clearTimeout(
|
|
486
|
+
if (_this4.touchTimeout) {
|
|
487
|
+
clearTimeout(_this4.touchTimeout);
|
|
304
488
|
}
|
|
305
489
|
|
|
306
|
-
|
|
307
|
-
return
|
|
308
|
-
}, TOUCHEVENT_COMPAT_WAIT +
|
|
490
|
+
_this4.touchTimeout = setTimeout(function (event) {
|
|
491
|
+
return _this4.cycle(event);
|
|
492
|
+
}, TOUCHEVENT_COMPAT_WAIT + _this4._config.interval);
|
|
309
493
|
}
|
|
310
494
|
};
|
|
311
495
|
|
|
312
|
-
|
|
313
|
-
|
|
496
|
+
SelectorEngine__default['default'].find(SELECTOR_ITEM_IMG, this._element).forEach(function (itemImg) {
|
|
497
|
+
EventHandler__default['default'].on(itemImg, EVENT_DRAG_START, function (e) {
|
|
498
|
+
return e.preventDefault();
|
|
499
|
+
});
|
|
314
500
|
});
|
|
315
501
|
|
|
316
502
|
if (this._pointerEvent) {
|
|
317
|
-
|
|
503
|
+
EventHandler__default['default'].on(this._element, EVENT_POINTERDOWN, function (event) {
|
|
318
504
|
return start(event);
|
|
319
505
|
});
|
|
320
|
-
|
|
506
|
+
EventHandler__default['default'].on(this._element, EVENT_POINTERUP, function (event) {
|
|
321
507
|
return end(event);
|
|
322
508
|
});
|
|
323
509
|
|
|
324
510
|
this._element.classList.add(CLASS_NAME_POINTER_EVENT);
|
|
325
511
|
} else {
|
|
326
|
-
|
|
512
|
+
EventHandler__default['default'].on(this._element, EVENT_TOUCHSTART, function (event) {
|
|
327
513
|
return start(event);
|
|
328
514
|
});
|
|
329
|
-
|
|
515
|
+
EventHandler__default['default'].on(this._element, EVENT_TOUCHMOVE, function (event) {
|
|
330
516
|
return move(event);
|
|
331
517
|
});
|
|
332
|
-
|
|
518
|
+
EventHandler__default['default'].on(this._element, EVENT_TOUCHEND, function (event) {
|
|
333
519
|
return end(event);
|
|
334
520
|
});
|
|
335
521
|
}
|
|
@@ -340,13 +526,13 @@
|
|
|
340
526
|
return;
|
|
341
527
|
}
|
|
342
528
|
|
|
343
|
-
switch (event.
|
|
344
|
-
case
|
|
529
|
+
switch (event.key) {
|
|
530
|
+
case ARROW_LEFT_KEY:
|
|
345
531
|
event.preventDefault();
|
|
346
532
|
this.prev();
|
|
347
533
|
break;
|
|
348
534
|
|
|
349
|
-
case
|
|
535
|
+
case ARROW_RIGHT_KEY:
|
|
350
536
|
event.preventDefault();
|
|
351
537
|
this.next();
|
|
352
538
|
break;
|
|
@@ -354,7 +540,7 @@
|
|
|
354
540
|
};
|
|
355
541
|
|
|
356
542
|
_proto._getItemIndex = function _getItemIndex(element) {
|
|
357
|
-
this._items = element && element.parentNode ? [].
|
|
543
|
+
this._items = element && element.parentNode ? SelectorEngine__default['default'].find(SELECTOR_ITEM, element.parentNode) : [];
|
|
358
544
|
return this._items.indexOf(element);
|
|
359
545
|
};
|
|
360
546
|
|
|
@@ -379,35 +565,53 @@
|
|
|
379
565
|
_proto._triggerSlideEvent = function _triggerSlideEvent(relatedTarget, eventDirectionName) {
|
|
380
566
|
var targetIndex = this._getItemIndex(relatedTarget);
|
|
381
567
|
|
|
382
|
-
var fromIndex = this._getItemIndex(this._element
|
|
568
|
+
var fromIndex = this._getItemIndex(SelectorEngine__default['default'].findOne(SELECTOR_ACTIVE_ITEM, this._element));
|
|
383
569
|
|
|
384
|
-
|
|
570
|
+
return EventHandler__default['default'].trigger(this._element, EVENT_SLIDE, {
|
|
385
571
|
relatedTarget: relatedTarget,
|
|
386
572
|
direction: eventDirectionName,
|
|
387
573
|
from: fromIndex,
|
|
388
574
|
to: targetIndex
|
|
389
575
|
});
|
|
390
|
-
$(this._element).trigger(slideEvent);
|
|
391
|
-
return slideEvent;
|
|
392
576
|
};
|
|
393
577
|
|
|
394
578
|
_proto._setActiveIndicatorElement = function _setActiveIndicatorElement(element) {
|
|
395
579
|
if (this._indicatorsElement) {
|
|
396
|
-
var indicators = [].
|
|
397
|
-
|
|
580
|
+
var indicators = SelectorEngine__default['default'].find(SELECTOR_ACTIVE, this._indicatorsElement);
|
|
581
|
+
|
|
582
|
+
for (var i = 0; i < indicators.length; i++) {
|
|
583
|
+
indicators[i].classList.remove(CLASS_NAME_ACTIVE);
|
|
584
|
+
}
|
|
398
585
|
|
|
399
586
|
var nextIndicator = this._indicatorsElement.children[this._getItemIndex(element)];
|
|
400
587
|
|
|
401
588
|
if (nextIndicator) {
|
|
402
|
-
|
|
589
|
+
nextIndicator.classList.add(CLASS_NAME_ACTIVE);
|
|
403
590
|
}
|
|
404
591
|
}
|
|
405
592
|
};
|
|
406
593
|
|
|
594
|
+
_proto._updateInterval = function _updateInterval() {
|
|
595
|
+
var element = this._activeElement || SelectorEngine__default['default'].findOne(SELECTOR_ACTIVE_ITEM, this._element);
|
|
596
|
+
|
|
597
|
+
if (!element) {
|
|
598
|
+
return;
|
|
599
|
+
}
|
|
600
|
+
|
|
601
|
+
var elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10);
|
|
602
|
+
|
|
603
|
+
if (elementInterval) {
|
|
604
|
+
this._config.defaultInterval = this._config.defaultInterval || this._config.interval;
|
|
605
|
+
this._config.interval = elementInterval;
|
|
606
|
+
} else {
|
|
607
|
+
this._config.interval = this._config.defaultInterval || this._config.interval;
|
|
608
|
+
}
|
|
609
|
+
};
|
|
610
|
+
|
|
407
611
|
_proto._slide = function _slide(direction, element) {
|
|
408
|
-
var
|
|
612
|
+
var _this5 = this;
|
|
409
613
|
|
|
410
|
-
var activeElement = this._element
|
|
614
|
+
var activeElement = SelectorEngine__default['default'].findOne(SELECTOR_ACTIVE_ITEM, this._element);
|
|
411
615
|
|
|
412
616
|
var activeElementIndex = this._getItemIndex(activeElement);
|
|
413
617
|
|
|
@@ -421,23 +625,23 @@
|
|
|
421
625
|
var eventDirectionName;
|
|
422
626
|
|
|
423
627
|
if (direction === DIRECTION_NEXT) {
|
|
424
|
-
directionalClassName =
|
|
628
|
+
directionalClassName = CLASS_NAME_START;
|
|
425
629
|
orderClassName = CLASS_NAME_NEXT;
|
|
426
630
|
eventDirectionName = DIRECTION_LEFT;
|
|
427
631
|
} else {
|
|
428
|
-
directionalClassName =
|
|
632
|
+
directionalClassName = CLASS_NAME_END;
|
|
429
633
|
orderClassName = CLASS_NAME_PREV;
|
|
430
634
|
eventDirectionName = DIRECTION_RIGHT;
|
|
431
635
|
}
|
|
432
636
|
|
|
433
|
-
if (nextElement &&
|
|
637
|
+
if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {
|
|
434
638
|
this._isSliding = false;
|
|
435
639
|
return;
|
|
436
640
|
}
|
|
437
641
|
|
|
438
642
|
var slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName);
|
|
439
643
|
|
|
440
|
-
if (slideEvent.
|
|
644
|
+
if (slideEvent.defaultPrevented) {
|
|
441
645
|
return;
|
|
442
646
|
}
|
|
443
647
|
|
|
@@ -454,41 +658,39 @@
|
|
|
454
658
|
|
|
455
659
|
this._setActiveIndicatorElement(nextElement);
|
|
456
660
|
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
if (nextElementInterval) {
|
|
472
|
-
this._config.defaultInterval = this._config.defaultInterval || this._config.interval;
|
|
473
|
-
this._config.interval = nextElementInterval;
|
|
474
|
-
} else {
|
|
475
|
-
this._config.interval = this._config.defaultInterval || this._config.interval;
|
|
476
|
-
}
|
|
477
|
-
|
|
478
|
-
var transitionDuration = Util.getTransitionDurationFromElement(activeElement);
|
|
479
|
-
$(activeElement).one(Util.TRANSITION_END, function () {
|
|
480
|
-
$(nextElement).removeClass(directionalClassName + " " + orderClassName).addClass(CLASS_NAME_ACTIVE);
|
|
481
|
-
$(activeElement).removeClass(CLASS_NAME_ACTIVE + " " + orderClassName + " " + directionalClassName);
|
|
482
|
-
_this4._isSliding = false;
|
|
661
|
+
this._activeElement = nextElement;
|
|
662
|
+
|
|
663
|
+
if (this._element.classList.contains(CLASS_NAME_SLIDE)) {
|
|
664
|
+
nextElement.classList.add(orderClassName);
|
|
665
|
+
reflow(nextElement);
|
|
666
|
+
activeElement.classList.add(directionalClassName);
|
|
667
|
+
nextElement.classList.add(directionalClassName);
|
|
668
|
+
var transitionDuration = getTransitionDurationFromElement(activeElement);
|
|
669
|
+
EventHandler__default['default'].one(activeElement, TRANSITION_END, function () {
|
|
670
|
+
nextElement.classList.remove(directionalClassName, orderClassName);
|
|
671
|
+
nextElement.classList.add(CLASS_NAME_ACTIVE);
|
|
672
|
+
activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName);
|
|
673
|
+
_this5._isSliding = false;
|
|
483
674
|
setTimeout(function () {
|
|
484
|
-
|
|
675
|
+
EventHandler__default['default'].trigger(_this5._element, EVENT_SLID, {
|
|
676
|
+
relatedTarget: nextElement,
|
|
677
|
+
direction: eventDirectionName,
|
|
678
|
+
from: activeElementIndex,
|
|
679
|
+
to: nextElementIndex
|
|
680
|
+
});
|
|
485
681
|
}, 0);
|
|
486
|
-
})
|
|
682
|
+
});
|
|
683
|
+
emulateTransitionEnd(activeElement, transitionDuration);
|
|
487
684
|
} else {
|
|
488
|
-
|
|
489
|
-
|
|
685
|
+
activeElement.classList.remove(CLASS_NAME_ACTIVE);
|
|
686
|
+
nextElement.classList.add(CLASS_NAME_ACTIVE);
|
|
490
687
|
this._isSliding = false;
|
|
491
|
-
|
|
688
|
+
EventHandler__default['default'].trigger(this._element, EVENT_SLID, {
|
|
689
|
+
relatedTarget: nextElement,
|
|
690
|
+
direction: eventDirectionName,
|
|
691
|
+
from: activeElementIndex,
|
|
692
|
+
to: nextElementIndex
|
|
693
|
+
});
|
|
492
694
|
}
|
|
493
695
|
|
|
494
696
|
if (isCycling) {
|
|
@@ -497,82 +699,79 @@
|
|
|
497
699
|
} // Static
|
|
498
700
|
;
|
|
499
701
|
|
|
500
|
-
Carousel.
|
|
501
|
-
|
|
502
|
-
var data = $(this).data(DATA_KEY);
|
|
702
|
+
Carousel.carouselInterface = function carouselInterface(element, config) {
|
|
703
|
+
var data = Data__default['default'].getData(element, DATA_KEY);
|
|
503
704
|
|
|
504
|
-
|
|
705
|
+
var _config = _extends({}, Default, Manipulator__default['default'].getDataAttributes(element));
|
|
505
706
|
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
707
|
+
if (typeof config === 'object') {
|
|
708
|
+
_config = _extends({}, _config, config);
|
|
709
|
+
}
|
|
509
710
|
|
|
510
|
-
|
|
711
|
+
var action = typeof config === 'string' ? config : _config.slide;
|
|
511
712
|
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
713
|
+
if (!data) {
|
|
714
|
+
data = new Carousel(element, _config);
|
|
715
|
+
}
|
|
716
|
+
|
|
717
|
+
if (typeof config === 'number') {
|
|
718
|
+
data.to(config);
|
|
719
|
+
} else if (typeof action === 'string') {
|
|
720
|
+
if (typeof data[action] === 'undefined') {
|
|
721
|
+
throw new TypeError("No method named \"" + action + "\"");
|
|
515
722
|
}
|
|
516
723
|
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
724
|
+
data[action]();
|
|
725
|
+
} else if (_config.interval && _config.ride) {
|
|
726
|
+
data.pause();
|
|
727
|
+
data.cycle();
|
|
728
|
+
}
|
|
729
|
+
};
|
|
523
730
|
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
data.cycle();
|
|
528
|
-
}
|
|
731
|
+
Carousel.jQueryInterface = function jQueryInterface(config) {
|
|
732
|
+
return this.each(function () {
|
|
733
|
+
Carousel.carouselInterface(this, config);
|
|
529
734
|
});
|
|
530
735
|
};
|
|
531
736
|
|
|
532
|
-
Carousel.
|
|
533
|
-
var
|
|
534
|
-
|
|
535
|
-
if (!selector) {
|
|
536
|
-
return;
|
|
537
|
-
}
|
|
538
|
-
|
|
539
|
-
var target = $(selector)[0];
|
|
737
|
+
Carousel.dataApiClickHandler = function dataApiClickHandler(event) {
|
|
738
|
+
var target = getElementFromSelector(this);
|
|
540
739
|
|
|
541
|
-
if (!target ||
|
|
740
|
+
if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {
|
|
542
741
|
return;
|
|
543
742
|
}
|
|
544
743
|
|
|
545
|
-
var config = _extends({},
|
|
744
|
+
var config = _extends({}, Manipulator__default['default'].getDataAttributes(target), Manipulator__default['default'].getDataAttributes(this));
|
|
546
745
|
|
|
547
|
-
var slideIndex = this.getAttribute('data-slide-to');
|
|
746
|
+
var slideIndex = this.getAttribute('data-bs-slide-to');
|
|
548
747
|
|
|
549
748
|
if (slideIndex) {
|
|
550
749
|
config.interval = false;
|
|
551
750
|
}
|
|
552
751
|
|
|
553
|
-
Carousel.
|
|
752
|
+
Carousel.carouselInterface(target, config);
|
|
554
753
|
|
|
555
754
|
if (slideIndex) {
|
|
556
|
-
|
|
755
|
+
Data__default['default'].getData(target, DATA_KEY).to(slideIndex);
|
|
557
756
|
}
|
|
558
757
|
|
|
559
758
|
event.preventDefault();
|
|
560
759
|
};
|
|
561
760
|
|
|
562
|
-
_createClass(Carousel, null, [{
|
|
563
|
-
key: "
|
|
761
|
+
_createClass$1(Carousel, null, [{
|
|
762
|
+
key: "Default",
|
|
564
763
|
get: function get() {
|
|
565
|
-
return
|
|
764
|
+
return Default;
|
|
566
765
|
}
|
|
567
766
|
}, {
|
|
568
|
-
key: "
|
|
767
|
+
key: "DATA_KEY",
|
|
569
768
|
get: function get() {
|
|
570
|
-
return
|
|
769
|
+
return DATA_KEY;
|
|
571
770
|
}
|
|
572
771
|
}]);
|
|
573
772
|
|
|
574
773
|
return Carousel;
|
|
575
|
-
}();
|
|
774
|
+
}(BaseComponent);
|
|
576
775
|
/**
|
|
577
776
|
* ------------------------------------------------------------------------
|
|
578
777
|
* Data Api implementation
|
|
@@ -580,29 +779,36 @@
|
|
|
580
779
|
*/
|
|
581
780
|
|
|
582
781
|
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
var carousels = [].
|
|
782
|
+
EventHandler__default['default'].on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler);
|
|
783
|
+
EventHandler__default['default'].on(window, EVENT_LOAD_DATA_API, function () {
|
|
784
|
+
var carousels = SelectorEngine__default['default'].find(SELECTOR_DATA_RIDE);
|
|
586
785
|
|
|
587
786
|
for (var i = 0, len = carousels.length; i < len; i++) {
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
Carousel._jQueryInterface.call($carousel, $carousel.data());
|
|
787
|
+
Carousel.carouselInterface(carousels[i], Data__default['default'].getData(carousels[i], DATA_KEY));
|
|
591
788
|
}
|
|
592
789
|
});
|
|
593
790
|
/**
|
|
594
791
|
* ------------------------------------------------------------------------
|
|
595
792
|
* jQuery
|
|
596
793
|
* ------------------------------------------------------------------------
|
|
794
|
+
* add .Carousel to jQuery only if jQuery is present
|
|
597
795
|
*/
|
|
598
796
|
|
|
599
|
-
|
|
600
|
-
|
|
797
|
+
onDOMContentLoaded(function () {
|
|
798
|
+
var $ = getjQuery();
|
|
799
|
+
/* istanbul ignore if */
|
|
601
800
|
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
801
|
+
if ($) {
|
|
802
|
+
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
|
803
|
+
$.fn[NAME] = Carousel.jQueryInterface;
|
|
804
|
+
$.fn[NAME].Constructor = Carousel;
|
|
805
|
+
|
|
806
|
+
$.fn[NAME].noConflict = function () {
|
|
807
|
+
$.fn[NAME] = JQUERY_NO_CONFLICT;
|
|
808
|
+
return Carousel.jQueryInterface;
|
|
809
|
+
};
|
|
810
|
+
}
|
|
811
|
+
});
|
|
606
812
|
|
|
607
813
|
return Carousel;
|
|
608
814
|
|