bootstrap 5.0.2 → 5.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/assets/javascripts/bootstrap/alert.js +78 -48
- data/assets/javascripts/bootstrap/base-component.js +22 -17
- data/assets/javascripts/bootstrap/button.js +19 -12
- data/assets/javascripts/bootstrap/carousel.js +66 -44
- data/assets/javascripts/bootstrap/collapse.js +114 -131
- data/assets/javascripts/bootstrap/dom/data.js +5 -5
- data/assets/javascripts/bootstrap/dom/event-handler.js +11 -5
- data/assets/javascripts/bootstrap/dom/manipulator.js +6 -6
- data/assets/javascripts/bootstrap/dom/selector-engine.js +49 -7
- data/assets/javascripts/bootstrap/dropdown.js +96 -106
- data/assets/javascripts/bootstrap/modal.js +241 -87
- data/assets/javascripts/bootstrap/offcanvas.js +203 -57
- data/assets/javascripts/bootstrap/popover.js +25 -58
- data/assets/javascripts/bootstrap/scrollspy.js +47 -66
- data/assets/javascripts/bootstrap/tab.js +41 -22
- data/assets/javascripts/bootstrap/toast.js +124 -29
- data/assets/javascripts/bootstrap/tooltip.js +122 -104
- data/assets/javascripts/bootstrap-sprockets.js +7 -7
- data/assets/javascripts/bootstrap.js +660 -630
- data/assets/javascripts/bootstrap.min.js +2 -2
- data/assets/stylesheets/_bootstrap-grid.scss +3 -1
- data/assets/stylesheets/_bootstrap-reboot.scss +2 -4
- data/assets/stylesheets/_bootstrap.scss +2 -1
- data/assets/stylesheets/bootstrap/_card.scss +2 -1
- data/assets/stylesheets/bootstrap/_functions.scss +51 -12
- data/assets/stylesheets/bootstrap/_grid.scss +11 -0
- data/assets/stylesheets/bootstrap/_helpers.scss +2 -0
- data/assets/stylesheets/bootstrap/_mixins.scss +1 -0
- data/assets/stylesheets/bootstrap/_modal.scss +1 -11
- data/assets/stylesheets/bootstrap/_navbar.scss +30 -1
- data/assets/stylesheets/bootstrap/_offcanvas.scss +4 -0
- data/assets/stylesheets/bootstrap/_placeholders.scss +51 -0
- data/assets/stylesheets/bootstrap/_reboot.scss +12 -8
- data/assets/stylesheets/bootstrap/_root.scss +40 -2
- data/assets/stylesheets/bootstrap/_tables.scss +8 -4
- data/assets/stylesheets/bootstrap/_toasts.scss +2 -2
- data/assets/stylesheets/bootstrap/_transitions.scss +6 -0
- data/assets/stylesheets/bootstrap/_utilities.scss +44 -8
- data/assets/stylesheets/bootstrap/_variables.scss +184 -11
- data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +1 -1
- data/assets/stylesheets/bootstrap/forms/_form-control.scss +1 -1
- data/assets/stylesheets/bootstrap/forms/_form-select.scss +2 -0
- data/assets/stylesheets/bootstrap/helpers/_stacks.scss +15 -0
- data/assets/stylesheets/bootstrap/helpers/_vr.scss +8 -0
- data/assets/stylesheets/bootstrap/mixins/_backdrop.scss +14 -0
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +29 -10
- data/assets/stylesheets/bootstrap/mixins/_utilities.scss +27 -6
- data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +1 -1
- data/bootstrap.gemspec +3 -3
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +6 -2
- metadata +12 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 666b108731be39c8122df9a54b7b2a1715f02b92e03caa941c132b3e7ec352ca
|
4
|
+
data.tar.gz: 57086f0d9bb88ba6a0abf74a5f0006b6eed21168d37009c2159e8ab9b68385f4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6171d65c922c486d41a0cb7f4e781e389b2cf0d9e00cf7c350fcdf6ab59b814e8daa7449a9a97d7462e6945f766261466cbf750f0aedc07301f366d2f7731eaf
|
7
|
+
data.tar.gz: b65871d048cecf29a714362f75348bc167ba158e50197908cde71ff197d834c0d84eb9ead9be4f7c87c22f49da0c164a6aa997843b2bc5998f6b12effc762db7
|
data/README.md
CHANGED
@@ -1,18 +1,25 @@
|
|
1
1
|
/*!
|
2
|
-
* Bootstrap alert.js v5.
|
2
|
+
* Bootstrap alert.js v5.1.3 (https://getbootstrap.com/)
|
3
3
|
* Copyright 2011-2021 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('./dom/
|
8
|
-
typeof define === 'function' && define.amd ? define(['./dom/
|
9
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Alert = factory(global.
|
10
|
-
}(this, (function (
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/event-handler.js'), require('./base-component.js')) :
|
8
|
+
typeof define === 'function' && define.amd ? define(['./dom/event-handler', './base-component'], factory) :
|
9
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Alert = factory(global.EventHandler, global.Base));
|
10
|
+
})(this, (function (EventHandler, BaseComponent) { 'use strict';
|
11
11
|
|
12
|
-
|
12
|
+
const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
|
13
13
|
|
14
|
-
|
15
|
-
|
14
|
+
const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
|
15
|
+
const BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
|
16
|
+
|
17
|
+
/**
|
18
|
+
* --------------------------------------------------------------------------
|
19
|
+
* Bootstrap (v5.1.3): util/index.js
|
20
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
21
|
+
* --------------------------------------------------------------------------
|
22
|
+
*/
|
16
23
|
|
17
24
|
const getSelector = element => {
|
18
25
|
let selector = element.getAttribute('data-bs-target');
|
@@ -43,6 +50,22 @@
|
|
43
50
|
return selector ? document.querySelector(selector) : null;
|
44
51
|
};
|
45
52
|
|
53
|
+
const isDisabled = element => {
|
54
|
+
if (!element || element.nodeType !== Node.ELEMENT_NODE) {
|
55
|
+
return true;
|
56
|
+
}
|
57
|
+
|
58
|
+
if (element.classList.contains('disabled')) {
|
59
|
+
return true;
|
60
|
+
}
|
61
|
+
|
62
|
+
if (typeof element.disabled !== 'undefined') {
|
63
|
+
return element.disabled;
|
64
|
+
}
|
65
|
+
|
66
|
+
return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false';
|
67
|
+
};
|
68
|
+
|
46
69
|
const getjQuery = () => {
|
47
70
|
const {
|
48
71
|
jQuery
|
@@ -93,7 +116,33 @@
|
|
93
116
|
|
94
117
|
/**
|
95
118
|
* --------------------------------------------------------------------------
|
96
|
-
* Bootstrap (v5.
|
119
|
+
* Bootstrap (v5.1.3): util/component-functions.js
|
120
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
121
|
+
* --------------------------------------------------------------------------
|
122
|
+
*/
|
123
|
+
|
124
|
+
const enableDismissTrigger = (component, method = 'hide') => {
|
125
|
+
const clickEvent = `click.dismiss${component.EVENT_KEY}`;
|
126
|
+
const name = component.NAME;
|
127
|
+
EventHandler__default.default.on(document, clickEvent, `[data-bs-dismiss="${name}"]`, function (event) {
|
128
|
+
if (['A', 'AREA'].includes(this.tagName)) {
|
129
|
+
event.preventDefault();
|
130
|
+
}
|
131
|
+
|
132
|
+
if (isDisabled(this)) {
|
133
|
+
return;
|
134
|
+
}
|
135
|
+
|
136
|
+
const target = getElementFromSelector(this) || this.closest(`.${name}`);
|
137
|
+
const instance = component.getOrCreateInstance(target); // Method argument is left, for Alert and only, as it doesn't implement the 'hide' method
|
138
|
+
|
139
|
+
instance[method]();
|
140
|
+
});
|
141
|
+
};
|
142
|
+
|
143
|
+
/**
|
144
|
+
* --------------------------------------------------------------------------
|
145
|
+
* Bootstrap (v5.1.3): alert.js
|
97
146
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
98
147
|
* --------------------------------------------------------------------------
|
99
148
|
*/
|
@@ -106,12 +155,8 @@
|
|
106
155
|
const NAME = 'alert';
|
107
156
|
const DATA_KEY = 'bs.alert';
|
108
157
|
const EVENT_KEY = `.${DATA_KEY}`;
|
109
|
-
const DATA_API_KEY = '.data-api';
|
110
|
-
const SELECTOR_DISMISS = '[data-bs-dismiss="alert"]';
|
111
158
|
const EVENT_CLOSE = `close${EVENT_KEY}`;
|
112
159
|
const EVENT_CLOSED = `closed${EVENT_KEY}`;
|
113
|
-
const EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`;
|
114
|
-
const CLASS_NAME_ALERT = 'alert';
|
115
160
|
const CLASS_NAME_FADE = 'fade';
|
116
161
|
const CLASS_NAME_SHOW = 'show';
|
117
162
|
/**
|
@@ -120,44 +165,33 @@
|
|
120
165
|
* ------------------------------------------------------------------------
|
121
166
|
*/
|
122
167
|
|
123
|
-
class Alert extends BaseComponent__default
|
168
|
+
class Alert extends BaseComponent__default.default {
|
124
169
|
// Getters
|
125
170
|
static get NAME() {
|
126
171
|
return NAME;
|
127
172
|
} // Public
|
128
173
|
|
129
174
|
|
130
|
-
close(
|
131
|
-
const
|
132
|
-
|
133
|
-
const customEvent = this._triggerCloseEvent(rootElement);
|
175
|
+
close() {
|
176
|
+
const closeEvent = EventHandler__default.default.trigger(this._element, EVENT_CLOSE);
|
134
177
|
|
135
|
-
if (
|
178
|
+
if (closeEvent.defaultPrevented) {
|
136
179
|
return;
|
137
180
|
}
|
138
181
|
|
139
|
-
this.
|
140
|
-
} // Private
|
182
|
+
this._element.classList.remove(CLASS_NAME_SHOW);
|
141
183
|
|
184
|
+
const isAnimated = this._element.classList.contains(CLASS_NAME_FADE);
|
142
185
|
|
143
|
-
|
144
|
-
|
145
|
-
}
|
186
|
+
this._queueCallback(() => this._destroyElement(), this._element, isAnimated);
|
187
|
+
} // Private
|
146
188
|
|
147
|
-
_triggerCloseEvent(element) {
|
148
|
-
return EventHandler__default['default'].trigger(element, EVENT_CLOSE);
|
149
|
-
}
|
150
189
|
|
151
|
-
|
152
|
-
|
153
|
-
const isAnimated = element.classList.contains(CLASS_NAME_FADE);
|
190
|
+
_destroyElement() {
|
191
|
+
this._element.remove();
|
154
192
|
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
_destroyElement(element) {
|
159
|
-
element.remove();
|
160
|
-
EventHandler__default['default'].trigger(element, EVENT_CLOSED);
|
193
|
+
EventHandler__default.default.trigger(this._element, EVENT_CLOSED);
|
194
|
+
this.dispose();
|
161
195
|
} // Static
|
162
196
|
|
163
197
|
|
@@ -165,20 +199,16 @@
|
|
165
199
|
return this.each(function () {
|
166
200
|
const data = Alert.getOrCreateInstance(this);
|
167
201
|
|
168
|
-
if (config
|
169
|
-
|
202
|
+
if (typeof config !== 'string') {
|
203
|
+
return;
|
170
204
|
}
|
171
|
-
});
|
172
|
-
}
|
173
205
|
|
174
|
-
|
175
|
-
|
176
|
-
if (event) {
|
177
|
-
event.preventDefault();
|
206
|
+
if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {
|
207
|
+
throw new TypeError(`No method named "${config}"`);
|
178
208
|
}
|
179
209
|
|
180
|
-
|
181
|
-
};
|
210
|
+
data[config](this);
|
211
|
+
});
|
182
212
|
}
|
183
213
|
|
184
214
|
}
|
@@ -189,7 +219,7 @@
|
|
189
219
|
*/
|
190
220
|
|
191
221
|
|
192
|
-
|
222
|
+
enableDismissTrigger(Alert, 'close');
|
193
223
|
/**
|
194
224
|
* ------------------------------------------------------------------------
|
195
225
|
* jQuery
|
@@ -201,4 +231,4 @@
|
|
201
231
|
|
202
232
|
return Alert;
|
203
233
|
|
204
|
-
}))
|
234
|
+
}));
|
@@ -1,20 +1,25 @@
|
|
1
1
|
/*!
|
2
|
-
* Bootstrap base-component.js v5.
|
2
|
+
* Bootstrap base-component.js v5.1.3 (https://getbootstrap.com/)
|
3
3
|
* Copyright 2011-2021 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('./dom/data.js'), require('./dom/
|
8
|
-
typeof define === 'function' && define.amd ? define(['./dom/data', './dom/
|
9
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Base = factory(global.Data, global.
|
10
|
-
}(this, (function (Data,
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js')) :
|
8
|
+
typeof define === 'function' && define.amd ? define(['./dom/data', './dom/event-handler'], factory) :
|
9
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Base = factory(global.Data, global.EventHandler));
|
10
|
+
})(this, (function (Data, EventHandler) { 'use strict';
|
11
11
|
|
12
|
-
|
12
|
+
const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
|
13
13
|
|
14
|
-
|
15
|
-
|
16
|
-
var EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
|
14
|
+
const Data__default = /*#__PURE__*/_interopDefaultLegacy(Data);
|
15
|
+
const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
|
17
16
|
|
17
|
+
/**
|
18
|
+
* --------------------------------------------------------------------------
|
19
|
+
* Bootstrap (v5.1.3): util/index.js
|
20
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
21
|
+
* --------------------------------------------------------------------------
|
22
|
+
*/
|
18
23
|
const MILLISECONDS_MULTIPLIER = 1000;
|
19
24
|
const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
|
20
25
|
|
@@ -64,7 +69,7 @@
|
|
64
69
|
}
|
65
70
|
|
66
71
|
if (typeof obj === 'string' && obj.length > 0) {
|
67
|
-
return
|
72
|
+
return document.querySelector(obj);
|
68
73
|
}
|
69
74
|
|
70
75
|
return null;
|
@@ -108,7 +113,7 @@
|
|
108
113
|
|
109
114
|
/**
|
110
115
|
* --------------------------------------------------------------------------
|
111
|
-
* Bootstrap (v5.
|
116
|
+
* Bootstrap (v5.1.3): base-component.js
|
112
117
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
113
118
|
* --------------------------------------------------------------------------
|
114
119
|
*/
|
@@ -118,7 +123,7 @@
|
|
118
123
|
* ------------------------------------------------------------------------
|
119
124
|
*/
|
120
125
|
|
121
|
-
const VERSION = '5.
|
126
|
+
const VERSION = '5.1.3';
|
122
127
|
|
123
128
|
class BaseComponent {
|
124
129
|
constructor(element) {
|
@@ -129,12 +134,12 @@
|
|
129
134
|
}
|
130
135
|
|
131
136
|
this._element = element;
|
132
|
-
Data__default
|
137
|
+
Data__default.default.set(this._element, this.constructor.DATA_KEY, this);
|
133
138
|
}
|
134
139
|
|
135
140
|
dispose() {
|
136
|
-
Data__default
|
137
|
-
EventHandler__default
|
141
|
+
Data__default.default.remove(this._element, this.constructor.DATA_KEY);
|
142
|
+
EventHandler__default.default.off(this._element, this.constructor.EVENT_KEY);
|
138
143
|
Object.getOwnPropertyNames(this).forEach(propertyName => {
|
139
144
|
this[propertyName] = null;
|
140
145
|
});
|
@@ -147,7 +152,7 @@
|
|
147
152
|
|
148
153
|
|
149
154
|
static getInstance(element) {
|
150
|
-
return Data__default
|
155
|
+
return Data__default.default.get(getElement(element), this.DATA_KEY);
|
151
156
|
}
|
152
157
|
|
153
158
|
static getOrCreateInstance(element, config = {}) {
|
@@ -174,4 +179,4 @@
|
|
174
179
|
|
175
180
|
return BaseComponent;
|
176
181
|
|
177
|
-
}))
|
182
|
+
}));
|
@@ -1,18 +1,25 @@
|
|
1
1
|
/*!
|
2
|
-
* Bootstrap button.js v5.
|
2
|
+
* Bootstrap button.js v5.1.3 (https://getbootstrap.com/)
|
3
3
|
* Copyright 2011-2021 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('./dom/
|
8
|
-
typeof define === 'function' && define.amd ? define(['./dom/
|
9
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Button = factory(global.
|
10
|
-
}(this, (function (
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/event-handler.js'), require('./base-component.js')) :
|
8
|
+
typeof define === 'function' && define.amd ? define(['./dom/event-handler', './base-component'], factory) :
|
9
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Button = factory(global.EventHandler, global.Base));
|
10
|
+
})(this, (function (EventHandler, BaseComponent) { 'use strict';
|
11
11
|
|
12
|
-
|
12
|
+
const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
|
13
13
|
|
14
|
-
|
15
|
-
|
14
|
+
const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
|
15
|
+
const BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
|
16
|
+
|
17
|
+
/**
|
18
|
+
* --------------------------------------------------------------------------
|
19
|
+
* Bootstrap (v5.1.3): util/index.js
|
20
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
21
|
+
* --------------------------------------------------------------------------
|
22
|
+
*/
|
16
23
|
|
17
24
|
const getjQuery = () => {
|
18
25
|
const {
|
@@ -64,7 +71,7 @@
|
|
64
71
|
|
65
72
|
/**
|
66
73
|
* --------------------------------------------------------------------------
|
67
|
-
* Bootstrap (v5.
|
74
|
+
* Bootstrap (v5.1.3): button.js
|
68
75
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
69
76
|
* --------------------------------------------------------------------------
|
70
77
|
*/
|
@@ -87,7 +94,7 @@
|
|
87
94
|
* ------------------------------------------------------------------------
|
88
95
|
*/
|
89
96
|
|
90
|
-
class Button extends BaseComponent__default
|
97
|
+
class Button extends BaseComponent__default.default {
|
91
98
|
// Getters
|
92
99
|
static get NAME() {
|
93
100
|
return NAME;
|
@@ -118,7 +125,7 @@
|
|
118
125
|
*/
|
119
126
|
|
120
127
|
|
121
|
-
EventHandler__default
|
128
|
+
EventHandler__default.default.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {
|
122
129
|
event.preventDefault();
|
123
130
|
const button = event.target.closest(SELECTOR_DATA_TOGGLE);
|
124
131
|
const data = Button.getOrCreateInstance(button);
|
@@ -135,4 +142,4 @@
|
|
135
142
|
|
136
143
|
return Button;
|
137
144
|
|
138
|
-
}))
|
145
|
+
}));
|
@@ -1,21 +1,27 @@
|
|
1
1
|
/*!
|
2
|
-
* Bootstrap carousel.js v5.
|
2
|
+
* Bootstrap carousel.js v5.1.3 (https://getbootstrap.com/)
|
3
3
|
* Copyright 2011-2021 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('./dom/
|
8
|
-
typeof define === 'function' && define.amd ? define(['./dom/
|
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/event-handler.js'), require('./dom/manipulator.js'), require('./dom/selector-engine.js'), require('./base-component.js')) :
|
8
|
+
typeof define === 'function' && define.amd ? define(['./dom/event-handler', './dom/manipulator', './dom/selector-engine', './base-component'], factory) :
|
9
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Carousel = factory(global.EventHandler, global.Manipulator, global.SelectorEngine, global.Base));
|
10
|
+
})(this, (function (EventHandler, Manipulator, SelectorEngine, BaseComponent) { 'use strict';
|
11
11
|
|
12
|
-
|
12
|
+
const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
|
13
13
|
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
14
|
+
const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
|
15
|
+
const Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator);
|
16
|
+
const SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine);
|
17
|
+
const BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
|
18
18
|
|
19
|
+
/**
|
20
|
+
* --------------------------------------------------------------------------
|
21
|
+
* Bootstrap (v5.1.3): util/index.js
|
22
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
23
|
+
* --------------------------------------------------------------------------
|
24
|
+
*/
|
19
25
|
const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
|
20
26
|
|
21
27
|
const toType = obj => {
|
@@ -90,8 +96,20 @@
|
|
90
96
|
|
91
97
|
return getComputedStyle(element).getPropertyValue('visibility') === 'visible';
|
92
98
|
};
|
99
|
+
/**
|
100
|
+
* Trick to restart an element's animation
|
101
|
+
*
|
102
|
+
* @param {HTMLElement} element
|
103
|
+
* @return void
|
104
|
+
*
|
105
|
+
* @see https://www.charistheo.io/blog/2021/02/restart-a-css-animation-with-javascript/#restarting-a-css-animation
|
106
|
+
*/
|
107
|
+
|
93
108
|
|
94
|
-
const reflow = element =>
|
109
|
+
const reflow = element => {
|
110
|
+
// eslint-disable-next-line no-unused-expressions
|
111
|
+
element.offsetHeight;
|
112
|
+
};
|
95
113
|
|
96
114
|
const getjQuery = () => {
|
97
115
|
const {
|
@@ -172,7 +190,7 @@
|
|
172
190
|
|
173
191
|
/**
|
174
192
|
* --------------------------------------------------------------------------
|
175
|
-
* Bootstrap (v5.
|
193
|
+
* Bootstrap (v5.1.3): carousel.js
|
176
194
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
177
195
|
* --------------------------------------------------------------------------
|
178
196
|
*/
|
@@ -253,7 +271,7 @@
|
|
253
271
|
* ------------------------------------------------------------------------
|
254
272
|
*/
|
255
273
|
|
256
|
-
class Carousel extends BaseComponent__default
|
274
|
+
class Carousel extends BaseComponent__default.default {
|
257
275
|
constructor(element, config) {
|
258
276
|
super(element);
|
259
277
|
this._items = null;
|
@@ -265,7 +283,7 @@
|
|
265
283
|
this.touchStartX = 0;
|
266
284
|
this.touchDeltaX = 0;
|
267
285
|
this._config = this._getConfig(config);
|
268
|
-
this._indicatorsElement = SelectorEngine__default
|
286
|
+
this._indicatorsElement = SelectorEngine__default.default.findOne(SELECTOR_INDICATORS, this._element);
|
269
287
|
this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0;
|
270
288
|
this._pointerEvent = Boolean(window.PointerEvent);
|
271
289
|
|
@@ -303,7 +321,7 @@
|
|
303
321
|
this._isPaused = true;
|
304
322
|
}
|
305
323
|
|
306
|
-
if (SelectorEngine__default
|
324
|
+
if (SelectorEngine__default.default.findOne(SELECTOR_NEXT_PREV, this._element)) {
|
307
325
|
triggerTransitionEnd(this._element);
|
308
326
|
this.cycle(true);
|
309
327
|
}
|
@@ -330,7 +348,7 @@
|
|
330
348
|
}
|
331
349
|
|
332
350
|
to(index) {
|
333
|
-
this._activeElement = SelectorEngine__default
|
351
|
+
this._activeElement = SelectorEngine__default.default.findOne(SELECTOR_ACTIVE_ITEM, this._element);
|
334
352
|
|
335
353
|
const activeIndex = this._getItemIndex(this._activeElement);
|
336
354
|
|
@@ -339,7 +357,7 @@
|
|
339
357
|
}
|
340
358
|
|
341
359
|
if (this._isSliding) {
|
342
|
-
EventHandler__default
|
360
|
+
EventHandler__default.default.one(this._element, EVENT_SLID, () => this.to(index));
|
343
361
|
return;
|
344
362
|
}
|
345
363
|
|
@@ -357,7 +375,7 @@
|
|
357
375
|
|
358
376
|
_getConfig(config) {
|
359
377
|
config = { ...Default,
|
360
|
-
...Manipulator__default
|
378
|
+
...Manipulator__default.default.getDataAttributes(this._element),
|
361
379
|
...(typeof config === 'object' ? config : {})
|
362
380
|
};
|
363
381
|
typeCheckConfig(NAME, config, DefaultType);
|
@@ -383,12 +401,12 @@
|
|
383
401
|
|
384
402
|
_addEventListeners() {
|
385
403
|
if (this._config.keyboard) {
|
386
|
-
EventHandler__default
|
404
|
+
EventHandler__default.default.on(this._element, EVENT_KEYDOWN, event => this._keydown(event));
|
387
405
|
}
|
388
406
|
|
389
407
|
if (this._config.pause === 'hover') {
|
390
|
-
EventHandler__default
|
391
|
-
EventHandler__default
|
408
|
+
EventHandler__default.default.on(this._element, EVENT_MOUSEENTER, event => this.pause(event));
|
409
|
+
EventHandler__default.default.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event));
|
392
410
|
}
|
393
411
|
|
394
412
|
if (this._config.touch && this._touchSupported) {
|
@@ -397,8 +415,12 @@
|
|
397
415
|
}
|
398
416
|
|
399
417
|
_addTouchEventListeners() {
|
418
|
+
const hasPointerPenTouch = event => {
|
419
|
+
return this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH);
|
420
|
+
};
|
421
|
+
|
400
422
|
const start = event => {
|
401
|
-
if (
|
423
|
+
if (hasPointerPenTouch(event)) {
|
402
424
|
this.touchStartX = event.clientX;
|
403
425
|
} else if (!this._pointerEvent) {
|
404
426
|
this.touchStartX = event.touches[0].clientX;
|
@@ -411,7 +433,7 @@
|
|
411
433
|
};
|
412
434
|
|
413
435
|
const end = event => {
|
414
|
-
if (
|
436
|
+
if (hasPointerPenTouch(event)) {
|
415
437
|
this.touchDeltaX = event.clientX - this.touchStartX;
|
416
438
|
}
|
417
439
|
|
@@ -435,19 +457,19 @@
|
|
435
457
|
}
|
436
458
|
};
|
437
459
|
|
438
|
-
SelectorEngine__default
|
439
|
-
EventHandler__default
|
460
|
+
SelectorEngine__default.default.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {
|
461
|
+
EventHandler__default.default.on(itemImg, EVENT_DRAG_START, event => event.preventDefault());
|
440
462
|
});
|
441
463
|
|
442
464
|
if (this._pointerEvent) {
|
443
|
-
EventHandler__default
|
444
|
-
EventHandler__default
|
465
|
+
EventHandler__default.default.on(this._element, EVENT_POINTERDOWN, event => start(event));
|
466
|
+
EventHandler__default.default.on(this._element, EVENT_POINTERUP, event => end(event));
|
445
467
|
|
446
468
|
this._element.classList.add(CLASS_NAME_POINTER_EVENT);
|
447
469
|
} else {
|
448
|
-
EventHandler__default
|
449
|
-
EventHandler__default
|
450
|
-
EventHandler__default
|
470
|
+
EventHandler__default.default.on(this._element, EVENT_TOUCHSTART, event => start(event));
|
471
|
+
EventHandler__default.default.on(this._element, EVENT_TOUCHMOVE, event => move(event));
|
472
|
+
EventHandler__default.default.on(this._element, EVENT_TOUCHEND, event => end(event));
|
451
473
|
}
|
452
474
|
}
|
453
475
|
|
@@ -466,7 +488,7 @@
|
|
466
488
|
}
|
467
489
|
|
468
490
|
_getItemIndex(element) {
|
469
|
-
this._items = element && element.parentNode ? SelectorEngine__default
|
491
|
+
this._items = element && element.parentNode ? SelectorEngine__default.default.find(SELECTOR_ITEM, element.parentNode) : [];
|
470
492
|
return this._items.indexOf(element);
|
471
493
|
}
|
472
494
|
|
@@ -478,9 +500,9 @@
|
|
478
500
|
_triggerSlideEvent(relatedTarget, eventDirectionName) {
|
479
501
|
const targetIndex = this._getItemIndex(relatedTarget);
|
480
502
|
|
481
|
-
const fromIndex = this._getItemIndex(SelectorEngine__default
|
503
|
+
const fromIndex = this._getItemIndex(SelectorEngine__default.default.findOne(SELECTOR_ACTIVE_ITEM, this._element));
|
482
504
|
|
483
|
-
return EventHandler__default
|
505
|
+
return EventHandler__default.default.trigger(this._element, EVENT_SLIDE, {
|
484
506
|
relatedTarget,
|
485
507
|
direction: eventDirectionName,
|
486
508
|
from: fromIndex,
|
@@ -490,10 +512,10 @@
|
|
490
512
|
|
491
513
|
_setActiveIndicatorElement(element) {
|
492
514
|
if (this._indicatorsElement) {
|
493
|
-
const activeIndicator = SelectorEngine__default
|
515
|
+
const activeIndicator = SelectorEngine__default.default.findOne(SELECTOR_ACTIVE, this._indicatorsElement);
|
494
516
|
activeIndicator.classList.remove(CLASS_NAME_ACTIVE);
|
495
517
|
activeIndicator.removeAttribute('aria-current');
|
496
|
-
const indicators = SelectorEngine__default
|
518
|
+
const indicators = SelectorEngine__default.default.find(SELECTOR_INDICATOR, this._indicatorsElement);
|
497
519
|
|
498
520
|
for (let i = 0; i < indicators.length; i++) {
|
499
521
|
if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {
|
@@ -506,7 +528,7 @@
|
|
506
528
|
}
|
507
529
|
|
508
530
|
_updateInterval() {
|
509
|
-
const element = this._activeElement || SelectorEngine__default
|
531
|
+
const element = this._activeElement || SelectorEngine__default.default.findOne(SELECTOR_ACTIVE_ITEM, this._element);
|
510
532
|
|
511
533
|
if (!element) {
|
512
534
|
return;
|
@@ -525,7 +547,7 @@
|
|
525
547
|
_slide(directionOrOrder, element) {
|
526
548
|
const order = this._directionToOrder(directionOrOrder);
|
527
549
|
|
528
|
-
const activeElement = SelectorEngine__default
|
550
|
+
const activeElement = SelectorEngine__default.default.findOne(SELECTOR_ACTIVE_ITEM, this._element);
|
529
551
|
|
530
552
|
const activeElementIndex = this._getItemIndex(activeElement);
|
531
553
|
|
@@ -571,7 +593,7 @@
|
|
571
593
|
this._activeElement = nextElement;
|
572
594
|
|
573
595
|
const triggerSlidEvent = () => {
|
574
|
-
EventHandler__default
|
596
|
+
EventHandler__default.default.trigger(this._element, EVENT_SLID, {
|
575
597
|
relatedTarget: nextElement,
|
576
598
|
direction: eventDirectionName,
|
577
599
|
from: activeElementIndex,
|
@@ -672,8 +694,8 @@
|
|
672
694
|
return;
|
673
695
|
}
|
674
696
|
|
675
|
-
const config = { ...Manipulator__default
|
676
|
-
...Manipulator__default
|
697
|
+
const config = { ...Manipulator__default.default.getDataAttributes(target),
|
698
|
+
...Manipulator__default.default.getDataAttributes(this)
|
677
699
|
};
|
678
700
|
const slideIndex = this.getAttribute('data-bs-slide-to');
|
679
701
|
|
@@ -698,9 +720,9 @@
|
|
698
720
|
*/
|
699
721
|
|
700
722
|
|
701
|
-
EventHandler__default
|
702
|
-
EventHandler__default
|
703
|
-
const carousels = SelectorEngine__default
|
723
|
+
EventHandler__default.default.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler);
|
724
|
+
EventHandler__default.default.on(window, EVENT_LOAD_DATA_API, () => {
|
725
|
+
const carousels = SelectorEngine__default.default.find(SELECTOR_DATA_RIDE);
|
704
726
|
|
705
727
|
for (let i = 0, len = carousels.length; i < len; i++) {
|
706
728
|
Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i]));
|
@@ -717,4 +739,4 @@
|
|
717
739
|
|
718
740
|
return Carousel;
|
719
741
|
|
720
|
-
}))
|
742
|
+
}));
|