bootstrap 5.0.0 → 5.0.1
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-sprockets.js +8 -8
- data/assets/javascripts/bootstrap.js +329 -377
- data/assets/javascripts/bootstrap.min.js +2 -2
- data/assets/javascripts/bootstrap/alert.js +13 -73
- data/assets/javascripts/bootstrap/base-component.js +115 -10
- data/assets/javascripts/bootstrap/button.js +11 -17
- data/assets/javascripts/bootstrap/carousel.js +35 -85
- data/assets/javascripts/bootstrap/collapse.js +34 -82
- data/assets/javascripts/bootstrap/dom/data.js +2 -2
- data/assets/javascripts/bootstrap/dom/event-handler.js +2 -9
- data/assets/javascripts/bootstrap/dom/manipulator.js +2 -2
- data/assets/javascripts/bootstrap/dom/selector-engine.js +2 -2
- data/assets/javascripts/bootstrap/dropdown.js +41 -38
- data/assets/javascripts/bootstrap/modal.js +31 -43
- data/assets/javascripts/bootstrap/offcanvas.js +25 -25
- data/assets/javascripts/bootstrap/popover.js +11 -25
- data/assets/javascripts/bootstrap/scrollspy.js +26 -21
- data/assets/javascripts/bootstrap/tab.js +14 -68
- data/assets/javascripts/bootstrap/toast.js +69 -77
- data/assets/javascripts/bootstrap/tooltip.js +71 -135
- data/assets/stylesheets/_bootstrap-grid.scss +1 -1
- data/assets/stylesheets/_bootstrap-reboot.scss +1 -1
- data/assets/stylesheets/_bootstrap.scss +1 -1
- data/assets/stylesheets/bootstrap/_list-group.scss +5 -5
- data/assets/stylesheets/bootstrap/_modal.scss +2 -11
- data/assets/stylesheets/bootstrap/_tables.scss +1 -0
- data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +1 -1
- data/assets/stylesheets/bootstrap/forms/_form-control.scss +5 -5
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +8 -1
- data/lib/bootstrap/version.rb +2 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e00e53f08ddcb226fbc4ba5d5d0803e9040879a2d260d3597304550b6a9bff0b
|
4
|
+
data.tar.gz: 0f239d578988e6faa40b51476f065b64f2b6ba84f291f2a71209aa1609bc6d91
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 40448c17c92f5767dc6791b559a129d2842f74ad667d8cb21402058383bad293dbd37cd0173fae40ecf1b8f8620ff3d37f932631056bcdae1ac7b99275d6a2b8
|
7
|
+
data.tar.gz: 79518238b77d51ece52c474e17aeba9a1dc6af2567c376e22e1f45fb0b43e95966b6d184837aceb5dd33b7825fcd514e5f6ae9f60537262707a0464974599f8d
|
data/README.md
CHANGED
@@ -2,18 +2,18 @@
|
|
2
2
|
//= require ./bootstrap/dom/data
|
3
3
|
//= require ./bootstrap/dom/event-handler
|
4
4
|
//= require ./bootstrap/base-component
|
5
|
-
//= require ./bootstrap/alert
|
6
|
-
//= require ./bootstrap/button
|
7
5
|
//= require ./bootstrap/dom/manipulator
|
8
6
|
//= require ./bootstrap/dom/selector-engine
|
9
|
-
//= require ./bootstrap/carousel
|
10
|
-
//= require ./bootstrap/collapse
|
11
7
|
//= require ./bootstrap/dropdown
|
12
|
-
//= require ./bootstrap/
|
13
|
-
//= require ./bootstrap/
|
8
|
+
//= require ./bootstrap/scrollspy
|
9
|
+
//= require ./bootstrap/alert
|
10
|
+
//= require ./bootstrap/collapse
|
11
|
+
//= require ./bootstrap/toast
|
14
12
|
//= require ./bootstrap/tooltip
|
13
|
+
//= require ./bootstrap/offcanvas
|
15
14
|
//= require ./bootstrap/popover
|
16
|
-
//= require ./bootstrap/
|
15
|
+
//= require ./bootstrap/button
|
16
|
+
//= require ./bootstrap/modal
|
17
17
|
//= require ./bootstrap/tab
|
18
|
-
//= require ./bootstrap/
|
18
|
+
//= require ./bootstrap/carousel
|
19
19
|
//= require ./bootstrap-global-this-undefine
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Bootstrap v5.0.
|
2
|
+
* Bootstrap v5.0.1 (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
|
*/
|
@@ -33,10 +33,82 @@
|
|
33
33
|
|
34
34
|
/**
|
35
35
|
* --------------------------------------------------------------------------
|
36
|
-
* Bootstrap (v5.0.
|
36
|
+
* Bootstrap (v5.0.1): dom/selector-engine.js
|
37
37
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
38
38
|
* --------------------------------------------------------------------------
|
39
39
|
*/
|
40
|
+
|
41
|
+
/**
|
42
|
+
* ------------------------------------------------------------------------
|
43
|
+
* Constants
|
44
|
+
* ------------------------------------------------------------------------
|
45
|
+
*/
|
46
|
+
const NODE_TEXT = 3;
|
47
|
+
const SelectorEngine = {
|
48
|
+
find(selector, element = document.documentElement) {
|
49
|
+
return [].concat(...Element.prototype.querySelectorAll.call(element, selector));
|
50
|
+
},
|
51
|
+
|
52
|
+
findOne(selector, element = document.documentElement) {
|
53
|
+
return Element.prototype.querySelector.call(element, selector);
|
54
|
+
},
|
55
|
+
|
56
|
+
children(element, selector) {
|
57
|
+
return [].concat(...element.children).filter(child => child.matches(selector));
|
58
|
+
},
|
59
|
+
|
60
|
+
parents(element, selector) {
|
61
|
+
const parents = [];
|
62
|
+
let ancestor = element.parentNode;
|
63
|
+
|
64
|
+
while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {
|
65
|
+
if (ancestor.matches(selector)) {
|
66
|
+
parents.push(ancestor);
|
67
|
+
}
|
68
|
+
|
69
|
+
ancestor = ancestor.parentNode;
|
70
|
+
}
|
71
|
+
|
72
|
+
return parents;
|
73
|
+
},
|
74
|
+
|
75
|
+
prev(element, selector) {
|
76
|
+
let previous = element.previousElementSibling;
|
77
|
+
|
78
|
+
while (previous) {
|
79
|
+
if (previous.matches(selector)) {
|
80
|
+
return [previous];
|
81
|
+
}
|
82
|
+
|
83
|
+
previous = previous.previousElementSibling;
|
84
|
+
}
|
85
|
+
|
86
|
+
return [];
|
87
|
+
},
|
88
|
+
|
89
|
+
next(element, selector) {
|
90
|
+
let next = element.nextElementSibling;
|
91
|
+
|
92
|
+
while (next) {
|
93
|
+
if (next.matches(selector)) {
|
94
|
+
return [next];
|
95
|
+
}
|
96
|
+
|
97
|
+
next = next.nextElementSibling;
|
98
|
+
}
|
99
|
+
|
100
|
+
return [];
|
101
|
+
}
|
102
|
+
|
103
|
+
};
|
104
|
+
|
105
|
+
/**
|
106
|
+
* --------------------------------------------------------------------------
|
107
|
+
* Bootstrap (v5.0.1): util/index.js
|
108
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
109
|
+
* --------------------------------------------------------------------------
|
110
|
+
*/
|
111
|
+
|
40
112
|
const MAX_UID = 1000000;
|
41
113
|
const MILLISECONDS_MULTIPLIER = 1000;
|
42
114
|
const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
|
@@ -129,7 +201,30 @@
|
|
129
201
|
element.dispatchEvent(new Event(TRANSITION_END));
|
130
202
|
};
|
131
203
|
|
132
|
-
const isElement = obj =>
|
204
|
+
const isElement = obj => {
|
205
|
+
if (!obj || typeof obj !== 'object') {
|
206
|
+
return false;
|
207
|
+
}
|
208
|
+
|
209
|
+
if (typeof obj.jquery !== 'undefined') {
|
210
|
+
obj = obj[0];
|
211
|
+
}
|
212
|
+
|
213
|
+
return typeof obj.nodeType !== 'undefined';
|
214
|
+
};
|
215
|
+
|
216
|
+
const getElement = obj => {
|
217
|
+
if (isElement(obj)) {
|
218
|
+
// it's a jQuery object or a node element
|
219
|
+
return obj.jquery ? obj[0] : obj;
|
220
|
+
}
|
221
|
+
|
222
|
+
if (typeof obj === 'string' && obj.length > 0) {
|
223
|
+
return SelectorEngine.findOne(obj);
|
224
|
+
}
|
225
|
+
|
226
|
+
return null;
|
227
|
+
};
|
133
228
|
|
134
229
|
const emulateTransitionEnd = (element, duration) => {
|
135
230
|
let called = false;
|
@@ -240,12 +335,13 @@
|
|
240
335
|
|
241
336
|
const isRTL = () => document.documentElement.dir === 'rtl';
|
242
337
|
|
243
|
-
const defineJQueryPlugin =
|
338
|
+
const defineJQueryPlugin = plugin => {
|
244
339
|
onDOMContentLoaded(() => {
|
245
340
|
const $ = getjQuery();
|
246
341
|
/* istanbul ignore if */
|
247
342
|
|
248
343
|
if ($) {
|
344
|
+
const name = plugin.NAME;
|
249
345
|
const JQUERY_NO_CONFLICT = $.fn[name];
|
250
346
|
$.fn[name] = plugin.jQueryInterface;
|
251
347
|
$.fn[name].Constructor = plugin;
|
@@ -266,7 +362,7 @@
|
|
266
362
|
|
267
363
|
/**
|
268
364
|
* --------------------------------------------------------------------------
|
269
|
-
* Bootstrap (v5.0.
|
365
|
+
* Bootstrap (v5.0.1): dom/data.js
|
270
366
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
271
367
|
* --------------------------------------------------------------------------
|
272
368
|
*/
|
@@ -320,7 +416,7 @@
|
|
320
416
|
|
321
417
|
/**
|
322
418
|
* --------------------------------------------------------------------------
|
323
|
-
* Bootstrap (v5.0.
|
419
|
+
* Bootstrap (v5.0.1): dom/event-handler.js
|
324
420
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
325
421
|
* --------------------------------------------------------------------------
|
326
422
|
*/
|
@@ -609,7 +705,7 @@
|
|
609
705
|
|
610
706
|
/**
|
611
707
|
* --------------------------------------------------------------------------
|
612
|
-
* Bootstrap (v5.0.
|
708
|
+
* Bootstrap (v5.0.1): base-component.js
|
613
709
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
614
710
|
* --------------------------------------------------------------------------
|
615
711
|
*/
|
@@ -619,11 +715,11 @@
|
|
619
715
|
* ------------------------------------------------------------------------
|
620
716
|
*/
|
621
717
|
|
622
|
-
const VERSION = '5.0.
|
718
|
+
const VERSION = '5.0.1';
|
623
719
|
|
624
720
|
class BaseComponent {
|
625
721
|
constructor(element) {
|
626
|
-
element =
|
722
|
+
element = getElement(element);
|
627
723
|
|
628
724
|
if (!element) {
|
629
725
|
return;
|
@@ -635,8 +731,21 @@
|
|
635
731
|
|
636
732
|
dispose() {
|
637
733
|
Data.remove(this._element, this.constructor.DATA_KEY);
|
638
|
-
EventHandler.off(this._element,
|
639
|
-
this.
|
734
|
+
EventHandler.off(this._element, this.constructor.EVENT_KEY);
|
735
|
+
Object.getOwnPropertyNames(this).forEach(propertyName => {
|
736
|
+
this[propertyName] = null;
|
737
|
+
});
|
738
|
+
}
|
739
|
+
|
740
|
+
_queueCallback(callback, element, isAnimated = true) {
|
741
|
+
if (!isAnimated) {
|
742
|
+
execute(callback);
|
743
|
+
return;
|
744
|
+
}
|
745
|
+
|
746
|
+
const transitionDuration = getTransitionDurationFromElement(element);
|
747
|
+
EventHandler.one(element, 'transitionend', () => execute(callback));
|
748
|
+
emulateTransitionEnd(element, transitionDuration);
|
640
749
|
}
|
641
750
|
/** Static */
|
642
751
|
|
@@ -649,11 +758,23 @@
|
|
649
758
|
return VERSION;
|
650
759
|
}
|
651
760
|
|
761
|
+
static get NAME() {
|
762
|
+
throw new Error('You have to implement the static method "NAME", for each component!');
|
763
|
+
}
|
764
|
+
|
765
|
+
static get DATA_KEY() {
|
766
|
+
return `bs.${this.NAME}`;
|
767
|
+
}
|
768
|
+
|
769
|
+
static get EVENT_KEY() {
|
770
|
+
return `.${this.DATA_KEY}`;
|
771
|
+
}
|
772
|
+
|
652
773
|
}
|
653
774
|
|
654
775
|
/**
|
655
776
|
* --------------------------------------------------------------------------
|
656
|
-
* Bootstrap (v5.0.
|
777
|
+
* Bootstrap (v5.0.1): alert.js
|
657
778
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
658
779
|
* --------------------------------------------------------------------------
|
659
780
|
*/
|
@@ -682,8 +803,8 @@
|
|
682
803
|
|
683
804
|
class Alert extends BaseComponent {
|
684
805
|
// Getters
|
685
|
-
static get
|
686
|
-
return
|
806
|
+
static get NAME() {
|
807
|
+
return NAME$c;
|
687
808
|
} // Public
|
688
809
|
|
689
810
|
|
@@ -710,16 +831,9 @@
|
|
710
831
|
|
711
832
|
_removeElement(element) {
|
712
833
|
element.classList.remove(CLASS_NAME_SHOW$9);
|
834
|
+
const isAnimated = element.classList.contains(CLASS_NAME_FADE$6);
|
713
835
|
|
714
|
-
|
715
|
-
this._destroyElement(element);
|
716
|
-
|
717
|
-
return;
|
718
|
-
}
|
719
|
-
|
720
|
-
const transitionDuration = getTransitionDurationFromElement(element);
|
721
|
-
EventHandler.one(element, 'transitionend', () => this._destroyElement(element));
|
722
|
-
emulateTransitionEnd(element, transitionDuration);
|
836
|
+
this._queueCallback(() => this._destroyElement(element), element, isAnimated);
|
723
837
|
}
|
724
838
|
|
725
839
|
_destroyElement(element) {
|
@@ -771,11 +885,11 @@
|
|
771
885
|
* add .Alert to jQuery only if jQuery is present
|
772
886
|
*/
|
773
887
|
|
774
|
-
defineJQueryPlugin(
|
888
|
+
defineJQueryPlugin(Alert);
|
775
889
|
|
776
890
|
/**
|
777
891
|
* --------------------------------------------------------------------------
|
778
|
-
* Bootstrap (v5.0.
|
892
|
+
* Bootstrap (v5.0.1): button.js
|
779
893
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
780
894
|
* --------------------------------------------------------------------------
|
781
895
|
*/
|
@@ -800,8 +914,8 @@
|
|
800
914
|
|
801
915
|
class Button extends BaseComponent {
|
802
916
|
// Getters
|
803
|
-
static get
|
804
|
-
return
|
917
|
+
static get NAME() {
|
918
|
+
return NAME$b;
|
805
919
|
} // Public
|
806
920
|
|
807
921
|
|
@@ -851,11 +965,11 @@
|
|
851
965
|
* add .Button to jQuery only if jQuery is present
|
852
966
|
*/
|
853
967
|
|
854
|
-
defineJQueryPlugin(
|
968
|
+
defineJQueryPlugin(Button);
|
855
969
|
|
856
970
|
/**
|
857
971
|
* --------------------------------------------------------------------------
|
858
|
-
* Bootstrap (v5.0.
|
972
|
+
* Bootstrap (v5.0.1): dom/manipulator.js
|
859
973
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
860
974
|
* --------------------------------------------------------------------------
|
861
975
|
*/
|
@@ -929,78 +1043,7 @@
|
|
929
1043
|
|
930
1044
|
/**
|
931
1045
|
* --------------------------------------------------------------------------
|
932
|
-
* Bootstrap (v5.0.
|
933
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
934
|
-
* --------------------------------------------------------------------------
|
935
|
-
*/
|
936
|
-
|
937
|
-
/**
|
938
|
-
* ------------------------------------------------------------------------
|
939
|
-
* Constants
|
940
|
-
* ------------------------------------------------------------------------
|
941
|
-
*/
|
942
|
-
const NODE_TEXT = 3;
|
943
|
-
const SelectorEngine = {
|
944
|
-
find(selector, element = document.documentElement) {
|
945
|
-
return [].concat(...Element.prototype.querySelectorAll.call(element, selector));
|
946
|
-
},
|
947
|
-
|
948
|
-
findOne(selector, element = document.documentElement) {
|
949
|
-
return Element.prototype.querySelector.call(element, selector);
|
950
|
-
},
|
951
|
-
|
952
|
-
children(element, selector) {
|
953
|
-
return [].concat(...element.children).filter(child => child.matches(selector));
|
954
|
-
},
|
955
|
-
|
956
|
-
parents(element, selector) {
|
957
|
-
const parents = [];
|
958
|
-
let ancestor = element.parentNode;
|
959
|
-
|
960
|
-
while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {
|
961
|
-
if (ancestor.matches(selector)) {
|
962
|
-
parents.push(ancestor);
|
963
|
-
}
|
964
|
-
|
965
|
-
ancestor = ancestor.parentNode;
|
966
|
-
}
|
967
|
-
|
968
|
-
return parents;
|
969
|
-
},
|
970
|
-
|
971
|
-
prev(element, selector) {
|
972
|
-
let previous = element.previousElementSibling;
|
973
|
-
|
974
|
-
while (previous) {
|
975
|
-
if (previous.matches(selector)) {
|
976
|
-
return [previous];
|
977
|
-
}
|
978
|
-
|
979
|
-
previous = previous.previousElementSibling;
|
980
|
-
}
|
981
|
-
|
982
|
-
return [];
|
983
|
-
},
|
984
|
-
|
985
|
-
next(element, selector) {
|
986
|
-
let next = element.nextElementSibling;
|
987
|
-
|
988
|
-
while (next) {
|
989
|
-
if (next.matches(selector)) {
|
990
|
-
return [next];
|
991
|
-
}
|
992
|
-
|
993
|
-
next = next.nextElementSibling;
|
994
|
-
}
|
995
|
-
|
996
|
-
return [];
|
997
|
-
}
|
998
|
-
|
999
|
-
};
|
1000
|
-
|
1001
|
-
/**
|
1002
|
-
* --------------------------------------------------------------------------
|
1003
|
-
* Bootstrap (v5.0.0): carousel.js
|
1046
|
+
* Bootstrap (v5.0.1): carousel.js
|
1004
1047
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
1005
1048
|
* --------------------------------------------------------------------------
|
1006
1049
|
*/
|
@@ -1101,8 +1144,8 @@
|
|
1101
1144
|
return Default$9;
|
1102
1145
|
}
|
1103
1146
|
|
1104
|
-
static get
|
1105
|
-
return
|
1147
|
+
static get NAME() {
|
1148
|
+
return NAME$a;
|
1106
1149
|
} // Public
|
1107
1150
|
|
1108
1151
|
|
@@ -1180,17 +1223,6 @@
|
|
1180
1223
|
const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV;
|
1181
1224
|
|
1182
1225
|
this._slide(order, this._items[index]);
|
1183
|
-
}
|
1184
|
-
|
1185
|
-
dispose() {
|
1186
|
-
this._items = null;
|
1187
|
-
this._config = null;
|
1188
|
-
this._interval = null;
|
1189
|
-
this._isPaused = null;
|
1190
|
-
this._isSliding = null;
|
1191
|
-
this._activeElement = null;
|
1192
|
-
this._indicatorsElement = null;
|
1193
|
-
super.dispose();
|
1194
1226
|
} // Private
|
1195
1227
|
|
1196
1228
|
|
@@ -1419,37 +1451,35 @@
|
|
1419
1451
|
|
1420
1452
|
this._activeElement = nextElement;
|
1421
1453
|
|
1454
|
+
const triggerSlidEvent = () => {
|
1455
|
+
EventHandler.trigger(this._element, EVENT_SLID, {
|
1456
|
+
relatedTarget: nextElement,
|
1457
|
+
direction: eventDirectionName,
|
1458
|
+
from: activeElementIndex,
|
1459
|
+
to: nextElementIndex
|
1460
|
+
});
|
1461
|
+
};
|
1462
|
+
|
1422
1463
|
if (this._element.classList.contains(CLASS_NAME_SLIDE)) {
|
1423
1464
|
nextElement.classList.add(orderClassName);
|
1424
1465
|
reflow(nextElement);
|
1425
1466
|
activeElement.classList.add(directionalClassName);
|
1426
1467
|
nextElement.classList.add(directionalClassName);
|
1427
|
-
|
1428
|
-
|
1468
|
+
|
1469
|
+
const completeCallBack = () => {
|
1429
1470
|
nextElement.classList.remove(directionalClassName, orderClassName);
|
1430
1471
|
nextElement.classList.add(CLASS_NAME_ACTIVE$2);
|
1431
1472
|
activeElement.classList.remove(CLASS_NAME_ACTIVE$2, orderClassName, directionalClassName);
|
1432
1473
|
this._isSliding = false;
|
1433
|
-
setTimeout(
|
1434
|
-
|
1435
|
-
|
1436
|
-
|
1437
|
-
from: activeElementIndex,
|
1438
|
-
to: nextElementIndex
|
1439
|
-
});
|
1440
|
-
}, 0);
|
1441
|
-
});
|
1442
|
-
emulateTransitionEnd(activeElement, transitionDuration);
|
1474
|
+
setTimeout(triggerSlidEvent, 0);
|
1475
|
+
};
|
1476
|
+
|
1477
|
+
this._queueCallback(completeCallBack, activeElement, true);
|
1443
1478
|
} else {
|
1444
1479
|
activeElement.classList.remove(CLASS_NAME_ACTIVE$2);
|
1445
1480
|
nextElement.classList.add(CLASS_NAME_ACTIVE$2);
|
1446
1481
|
this._isSliding = false;
|
1447
|
-
|
1448
|
-
relatedTarget: nextElement,
|
1449
|
-
direction: eventDirectionName,
|
1450
|
-
from: activeElementIndex,
|
1451
|
-
to: nextElementIndex
|
1452
|
-
});
|
1482
|
+
triggerSlidEvent();
|
1453
1483
|
}
|
1454
1484
|
|
1455
1485
|
if (isCycling) {
|
@@ -1568,11 +1598,11 @@
|
|
1568
1598
|
* add .Carousel to jQuery only if jQuery is present
|
1569
1599
|
*/
|
1570
1600
|
|
1571
|
-
defineJQueryPlugin(
|
1601
|
+
defineJQueryPlugin(Carousel);
|
1572
1602
|
|
1573
1603
|
/**
|
1574
1604
|
* --------------------------------------------------------------------------
|
1575
|
-
* Bootstrap (v5.0.
|
1605
|
+
* Bootstrap (v5.0.1): collapse.js
|
1576
1606
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
1577
1607
|
* --------------------------------------------------------------------------
|
1578
1608
|
*/
|
@@ -1649,8 +1679,8 @@
|
|
1649
1679
|
return Default$8;
|
1650
1680
|
}
|
1651
1681
|
|
1652
|
-
static get
|
1653
|
-
return
|
1682
|
+
static get NAME() {
|
1683
|
+
return NAME$9;
|
1654
1684
|
} // Public
|
1655
1685
|
|
1656
1686
|
|
@@ -1742,9 +1772,9 @@
|
|
1742
1772
|
|
1743
1773
|
const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);
|
1744
1774
|
const scrollSize = `scroll${capitalizedDimension}`;
|
1745
|
-
|
1746
|
-
|
1747
|
-
|
1775
|
+
|
1776
|
+
this._queueCallback(complete, this._element, true);
|
1777
|
+
|
1748
1778
|
this._element.style[dimension] = `${this._element[scrollSize]}px`;
|
1749
1779
|
}
|
1750
1780
|
|
@@ -1795,21 +1825,12 @@
|
|
1795
1825
|
};
|
1796
1826
|
|
1797
1827
|
this._element.style[dimension] = '';
|
1798
|
-
|
1799
|
-
|
1800
|
-
emulateTransitionEnd(this._element, transitionDuration);
|
1828
|
+
|
1829
|
+
this._queueCallback(complete, this._element, true);
|
1801
1830
|
}
|
1802
1831
|
|
1803
1832
|
setTransitioning(isTransitioning) {
|
1804
1833
|
this._isTransitioning = isTransitioning;
|
1805
|
-
}
|
1806
|
-
|
1807
|
-
dispose() {
|
1808
|
-
super.dispose();
|
1809
|
-
this._config = null;
|
1810
|
-
this._parent = null;
|
1811
|
-
this._triggerArray = null;
|
1812
|
-
this._isTransitioning = null;
|
1813
1834
|
} // Private
|
1814
1835
|
|
1815
1836
|
|
@@ -1831,16 +1852,7 @@
|
|
1831
1852
|
let {
|
1832
1853
|
parent
|
1833
1854
|
} = this._config;
|
1834
|
-
|
1835
|
-
if (isElement(parent)) {
|
1836
|
-
// it's a jQuery object
|
1837
|
-
if (typeof parent.jquery !== 'undefined' || typeof parent[0] !== 'undefined') {
|
1838
|
-
parent = parent[0];
|
1839
|
-
}
|
1840
|
-
} else {
|
1841
|
-
parent = SelectorEngine.findOne(parent);
|
1842
|
-
}
|
1843
|
-
|
1855
|
+
parent = getElement(parent);
|
1844
1856
|
const selector = `${SELECTOR_DATA_TOGGLE$4}[data-bs-parent="${parent}"]`;
|
1845
1857
|
SelectorEngine.find(selector, parent).forEach(element => {
|
1846
1858
|
const selected = getElementFromSelector(element);
|
@@ -1941,11 +1953,11 @@
|
|
1941
1953
|
* add .Collapse to jQuery only if jQuery is present
|
1942
1954
|
*/
|
1943
1955
|
|
1944
|
-
defineJQueryPlugin(
|
1956
|
+
defineJQueryPlugin(Collapse);
|
1945
1957
|
|
1946
1958
|
/**
|
1947
1959
|
* --------------------------------------------------------------------------
|
1948
|
-
* Bootstrap (v5.0.
|
1960
|
+
* Bootstrap (v5.0.1): dropdown.js
|
1949
1961
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
1950
1962
|
* --------------------------------------------------------------------------
|
1951
1963
|
*/
|
@@ -2032,8 +2044,8 @@
|
|
2032
2044
|
return DefaultType$7;
|
2033
2045
|
}
|
2034
2046
|
|
2035
|
-
static get
|
2036
|
-
return
|
2047
|
+
static get NAME() {
|
2048
|
+
return NAME$8;
|
2037
2049
|
} // Public
|
2038
2050
|
|
2039
2051
|
|
@@ -2080,11 +2092,7 @@
|
|
2080
2092
|
if (this._config.reference === 'parent') {
|
2081
2093
|
referenceElement = parent;
|
2082
2094
|
} else if (isElement(this._config.reference)) {
|
2083
|
-
referenceElement = this._config.reference;
|
2084
|
-
|
2085
|
-
if (typeof this._config.reference.jquery !== 'undefined') {
|
2086
|
-
referenceElement = this._config.reference[0];
|
2087
|
-
}
|
2095
|
+
referenceElement = getElement(this._config.reference);
|
2088
2096
|
} else if (typeof this._config.reference === 'object') {
|
2089
2097
|
referenceElement = this._config.reference;
|
2090
2098
|
}
|
@@ -2131,12 +2139,8 @@
|
|
2131
2139
|
}
|
2132
2140
|
|
2133
2141
|
dispose() {
|
2134
|
-
this._menu = null;
|
2135
|
-
|
2136
2142
|
if (this._popper) {
|
2137
2143
|
this._popper.destroy();
|
2138
|
-
|
2139
|
-
this._popper = null;
|
2140
2144
|
}
|
2141
2145
|
|
2142
2146
|
super.dispose();
|
@@ -2322,14 +2326,8 @@
|
|
2322
2326
|
}
|
2323
2327
|
|
2324
2328
|
static clearMenus(event) {
|
2325
|
-
if (event) {
|
2326
|
-
|
2327
|
-
return;
|
2328
|
-
}
|
2329
|
-
|
2330
|
-
if (/input|select|option|textarea|form/i.test(event.target.tagName)) {
|
2331
|
-
return;
|
2332
|
-
}
|
2329
|
+
if (event && (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY)) {
|
2330
|
+
return;
|
2333
2331
|
}
|
2334
2332
|
|
2335
2333
|
const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE$3);
|
@@ -2355,10 +2353,10 @@
|
|
2355
2353
|
|
2356
2354
|
if (composedPath.includes(context._element) || context._config.autoClose === 'inside' && !isMenuTarget || context._config.autoClose === 'outside' && isMenuTarget) {
|
2357
2355
|
continue;
|
2358
|
-
} // Tab navigation through the dropdown menu shouldn't close the menu
|
2356
|
+
} // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu
|
2359
2357
|
|
2360
2358
|
|
2361
|
-
if (event.type === 'keyup' && event.key === TAB_KEY
|
2359
|
+
if (context._menu.contains(event.target) && (event.type === 'keyup' && event.key === TAB_KEY || /input|select|option|textarea|form/i.test(event.target.tagName))) {
|
2362
2360
|
continue;
|
2363
2361
|
}
|
2364
2362
|
|
@@ -2444,11 +2442,11 @@
|
|
2444
2442
|
* add .Dropdown to jQuery only if jQuery is present
|
2445
2443
|
*/
|
2446
2444
|
|
2447
|
-
defineJQueryPlugin(
|
2445
|
+
defineJQueryPlugin(Dropdown);
|
2448
2446
|
|
2449
2447
|
/**
|
2450
2448
|
* --------------------------------------------------------------------------
|
2451
|
-
* Bootstrap (v5.0.
|
2449
|
+
* Bootstrap (v5.0.1): util/scrollBar.js
|
2452
2450
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
2453
2451
|
* --------------------------------------------------------------------------
|
2454
2452
|
*/
|
@@ -2522,7 +2520,7 @@
|
|
2522
2520
|
|
2523
2521
|
/**
|
2524
2522
|
* --------------------------------------------------------------------------
|
2525
|
-
* Bootstrap (v5.0.
|
2523
|
+
* Bootstrap (v5.0.1): util/backdrop.js
|
2526
2524
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
2527
2525
|
* --------------------------------------------------------------------------
|
2528
2526
|
*/
|
@@ -2606,6 +2604,7 @@
|
|
2606
2604
|
config = { ...Default$6,
|
2607
2605
|
...(typeof config === 'object' ? config : {})
|
2608
2606
|
};
|
2607
|
+
config.rootElement = config.rootElement || document.body;
|
2609
2608
|
typeCheckConfig(NAME$7, config, DefaultType$6);
|
2610
2609
|
return config;
|
2611
2610
|
}
|
@@ -2650,7 +2649,7 @@
|
|
2650
2649
|
|
2651
2650
|
/**
|
2652
2651
|
* --------------------------------------------------------------------------
|
2653
|
-
* Bootstrap (v5.0.
|
2652
|
+
* Bootstrap (v5.0.1): modal.js
|
2654
2653
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
2655
2654
|
* --------------------------------------------------------------------------
|
2656
2655
|
*/
|
@@ -2680,7 +2679,7 @@
|
|
2680
2679
|
const EVENT_HIDDEN$3 = `hidden${EVENT_KEY$6}`;
|
2681
2680
|
const EVENT_SHOW$3 = `show${EVENT_KEY$6}`;
|
2682
2681
|
const EVENT_SHOWN$3 = `shown${EVENT_KEY$6}`;
|
2683
|
-
const EVENT_FOCUSIN$
|
2682
|
+
const EVENT_FOCUSIN$2 = `focusin${EVENT_KEY$6}`;
|
2684
2683
|
const EVENT_RESIZE = `resize${EVENT_KEY$6}`;
|
2685
2684
|
const EVENT_CLICK_DISMISS$2 = `click.dismiss${EVENT_KEY$6}`;
|
2686
2685
|
const EVENT_KEYDOWN_DISMISS$1 = `keydown.dismiss${EVENT_KEY$6}`;
|
@@ -2717,8 +2716,8 @@
|
|
2717
2716
|
return Default$5;
|
2718
2717
|
}
|
2719
2718
|
|
2720
|
-
static get
|
2721
|
-
return
|
2719
|
+
static get NAME() {
|
2720
|
+
return NAME$6;
|
2722
2721
|
} // Public
|
2723
2722
|
|
2724
2723
|
|
@@ -2792,24 +2791,21 @@
|
|
2792
2791
|
|
2793
2792
|
this._setResizeEvent();
|
2794
2793
|
|
2795
|
-
EventHandler.off(document, EVENT_FOCUSIN$
|
2794
|
+
EventHandler.off(document, EVENT_FOCUSIN$2);
|
2796
2795
|
|
2797
2796
|
this._element.classList.remove(CLASS_NAME_SHOW$5);
|
2798
2797
|
|
2799
2798
|
EventHandler.off(this._element, EVENT_CLICK_DISMISS$2);
|
2800
2799
|
EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS);
|
2801
2800
|
|
2802
|
-
|
2803
|
-
const transitionDuration = getTransitionDurationFromElement(this._element);
|
2804
|
-
EventHandler.one(this._element, 'transitionend', event => this._hideModal(event));
|
2805
|
-
emulateTransitionEnd(this._element, transitionDuration);
|
2806
|
-
} else {
|
2807
|
-
this._hideModal();
|
2808
|
-
}
|
2801
|
+
this._queueCallback(() => this._hideModal(), this._element, isAnimated);
|
2809
2802
|
}
|
2810
2803
|
|
2811
2804
|
dispose() {
|
2812
2805
|
[window, this._dialog].forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY$6));
|
2806
|
+
|
2807
|
+
this._backdrop.dispose();
|
2808
|
+
|
2813
2809
|
super.dispose();
|
2814
2810
|
/**
|
2815
2811
|
* `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`
|
@@ -2817,16 +2813,7 @@
|
|
2817
2813
|
* It will remove `EVENT_CLICK_DATA_API` event that should remain
|
2818
2814
|
*/
|
2819
2815
|
|
2820
|
-
EventHandler.off(document, EVENT_FOCUSIN$
|
2821
|
-
this._config = null;
|
2822
|
-
this._dialog = null;
|
2823
|
-
|
2824
|
-
this._backdrop.dispose();
|
2825
|
-
|
2826
|
-
this._backdrop = null;
|
2827
|
-
this._isShown = null;
|
2828
|
-
this._ignoreBackdropClick = null;
|
2829
|
-
this._isTransitioning = null;
|
2816
|
+
EventHandler.off(document, EVENT_FOCUSIN$2);
|
2830
2817
|
}
|
2831
2818
|
|
2832
2819
|
handleUpdate() {
|
@@ -2896,19 +2883,13 @@
|
|
2896
2883
|
});
|
2897
2884
|
};
|
2898
2885
|
|
2899
|
-
|
2900
|
-
const transitionDuration = getTransitionDurationFromElement(this._dialog);
|
2901
|
-
EventHandler.one(this._dialog, 'transitionend', transitionComplete);
|
2902
|
-
emulateTransitionEnd(this._dialog, transitionDuration);
|
2903
|
-
} else {
|
2904
|
-
transitionComplete();
|
2905
|
-
}
|
2886
|
+
this._queueCallback(transitionComplete, this._dialog, isAnimated);
|
2906
2887
|
}
|
2907
2888
|
|
2908
2889
|
_enforceFocus() {
|
2909
|
-
EventHandler.off(document, EVENT_FOCUSIN$
|
2890
|
+
EventHandler.off(document, EVENT_FOCUSIN$2); // guard against infinite focus loop
|
2910
2891
|
|
2911
|
-
EventHandler.on(document, EVENT_FOCUSIN$
|
2892
|
+
EventHandler.on(document, EVENT_FOCUSIN$2, event => {
|
2912
2893
|
if (document !== event.target && this._element !== event.target && !this._element.contains(event.target)) {
|
2913
2894
|
this._element.focus();
|
2914
2895
|
}
|
@@ -3092,11 +3073,11 @@
|
|
3092
3073
|
* add .Modal to jQuery only if jQuery is present
|
3093
3074
|
*/
|
3094
3075
|
|
3095
|
-
defineJQueryPlugin(
|
3076
|
+
defineJQueryPlugin(Modal);
|
3096
3077
|
|
3097
3078
|
/**
|
3098
3079
|
* --------------------------------------------------------------------------
|
3099
|
-
* Bootstrap (v5.0.
|
3080
|
+
* Bootstrap (v5.0.1): offcanvas.js
|
3100
3081
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
3101
3082
|
* --------------------------------------------------------------------------
|
3102
3083
|
*/
|
@@ -3128,7 +3109,7 @@
|
|
3128
3109
|
const EVENT_SHOWN$2 = `shown${EVENT_KEY$5}`;
|
3129
3110
|
const EVENT_HIDE$2 = `hide${EVENT_KEY$5}`;
|
3130
3111
|
const EVENT_HIDDEN$2 = `hidden${EVENT_KEY$5}`;
|
3131
|
-
const EVENT_FOCUSIN = `focusin${EVENT_KEY$5}`;
|
3112
|
+
const EVENT_FOCUSIN$1 = `focusin${EVENT_KEY$5}`;
|
3132
3113
|
const EVENT_CLICK_DATA_API$1 = `click${EVENT_KEY$5}${DATA_API_KEY$2}`;
|
3133
3114
|
const EVENT_CLICK_DISMISS$1 = `click.dismiss${EVENT_KEY$5}`;
|
3134
3115
|
const EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY$5}`;
|
@@ -3151,12 +3132,12 @@
|
|
3151
3132
|
} // Getters
|
3152
3133
|
|
3153
3134
|
|
3154
|
-
static get
|
3155
|
-
return
|
3135
|
+
static get NAME() {
|
3136
|
+
return NAME$5;
|
3156
3137
|
}
|
3157
3138
|
|
3158
|
-
static get
|
3159
|
-
return
|
3139
|
+
static get Default() {
|
3140
|
+
return Default$4;
|
3160
3141
|
} // Public
|
3161
3142
|
|
3162
3143
|
|
@@ -3202,9 +3183,7 @@
|
|
3202
3183
|
});
|
3203
3184
|
};
|
3204
3185
|
|
3205
|
-
|
3206
|
-
EventHandler.one(this._element, 'transitionend', completeCallBack);
|
3207
|
-
emulateTransitionEnd(this._element, transitionDuration);
|
3186
|
+
this._queueCallback(completeCallBack, this._element, true);
|
3208
3187
|
}
|
3209
3188
|
|
3210
3189
|
hide() {
|
@@ -3218,7 +3197,7 @@
|
|
3218
3197
|
return;
|
3219
3198
|
}
|
3220
3199
|
|
3221
|
-
EventHandler.off(document, EVENT_FOCUSIN);
|
3200
|
+
EventHandler.off(document, EVENT_FOCUSIN$1);
|
3222
3201
|
|
3223
3202
|
this._element.blur();
|
3224
3203
|
|
@@ -3244,18 +3223,14 @@
|
|
3244
3223
|
EventHandler.trigger(this._element, EVENT_HIDDEN$2);
|
3245
3224
|
};
|
3246
3225
|
|
3247
|
-
|
3248
|
-
EventHandler.one(this._element, 'transitionend', completeCallback);
|
3249
|
-
emulateTransitionEnd(this._element, transitionDuration);
|
3226
|
+
this._queueCallback(completeCallback, this._element, true);
|
3250
3227
|
}
|
3251
3228
|
|
3252
3229
|
dispose() {
|
3253
3230
|
this._backdrop.dispose();
|
3254
3231
|
|
3255
3232
|
super.dispose();
|
3256
|
-
EventHandler.off(document, EVENT_FOCUSIN);
|
3257
|
-
this._config = null;
|
3258
|
-
this._backdrop = null;
|
3233
|
+
EventHandler.off(document, EVENT_FOCUSIN$1);
|
3259
3234
|
} // Private
|
3260
3235
|
|
3261
3236
|
|
@@ -3278,9 +3253,9 @@
|
|
3278
3253
|
}
|
3279
3254
|
|
3280
3255
|
_enforceFocusOnElement(element) {
|
3281
|
-
EventHandler.off(document, EVENT_FOCUSIN); // guard against infinite focus loop
|
3256
|
+
EventHandler.off(document, EVENT_FOCUSIN$1); // guard against infinite focus loop
|
3282
3257
|
|
3283
|
-
EventHandler.on(document, EVENT_FOCUSIN, event => {
|
3258
|
+
EventHandler.on(document, EVENT_FOCUSIN$1, event => {
|
3284
3259
|
if (document !== event.target && element !== event.target && !element.contains(event.target)) {
|
3285
3260
|
element.focus();
|
3286
3261
|
}
|
@@ -3358,11 +3333,11 @@
|
|
3358
3333
|
* ------------------------------------------------------------------------
|
3359
3334
|
*/
|
3360
3335
|
|
3361
|
-
defineJQueryPlugin(
|
3336
|
+
defineJQueryPlugin(Offcanvas);
|
3362
3337
|
|
3363
3338
|
/**
|
3364
3339
|
* --------------------------------------------------------------------------
|
3365
|
-
* Bootstrap (v5.0.
|
3340
|
+
* Bootstrap (v5.0.1): util/sanitizer.js
|
3366
3341
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
3367
3342
|
* --------------------------------------------------------------------------
|
3368
3343
|
*/
|
@@ -3475,7 +3450,7 @@
|
|
3475
3450
|
|
3476
3451
|
/**
|
3477
3452
|
* --------------------------------------------------------------------------
|
3478
|
-
* Bootstrap (v5.0.
|
3453
|
+
* Bootstrap (v5.0.1): tooltip.js
|
3479
3454
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
3480
3455
|
* --------------------------------------------------------------------------
|
3481
3456
|
*/
|
@@ -3578,7 +3553,7 @@
|
|
3578
3553
|
this._activeTrigger = {};
|
3579
3554
|
this._popper = null; // Protected
|
3580
3555
|
|
3581
|
-
this.
|
3556
|
+
this._config = this._getConfig(config);
|
3582
3557
|
this.tip = null;
|
3583
3558
|
|
3584
3559
|
this._setListeners();
|
@@ -3593,18 +3568,10 @@
|
|
3593
3568
|
return NAME$4;
|
3594
3569
|
}
|
3595
3570
|
|
3596
|
-
static get DATA_KEY() {
|
3597
|
-
return DATA_KEY$4;
|
3598
|
-
}
|
3599
|
-
|
3600
3571
|
static get Event() {
|
3601
3572
|
return Event$2;
|
3602
3573
|
}
|
3603
3574
|
|
3604
|
-
static get EVENT_KEY() {
|
3605
|
-
return EVENT_KEY$4;
|
3606
|
-
}
|
3607
|
-
|
3608
3575
|
static get DefaultType() {
|
3609
3576
|
return DefaultType$3;
|
3610
3577
|
} // Public
|
@@ -3656,18 +3623,10 @@
|
|
3656
3623
|
this.tip.parentNode.removeChild(this.tip);
|
3657
3624
|
}
|
3658
3625
|
|
3659
|
-
this._isEnabled = null;
|
3660
|
-
this._timeout = null;
|
3661
|
-
this._hoverState = null;
|
3662
|
-
this._activeTrigger = null;
|
3663
|
-
|
3664
3626
|
if (this._popper) {
|
3665
3627
|
this._popper.destroy();
|
3666
3628
|
}
|
3667
3629
|
|
3668
|
-
this._popper = null;
|
3669
|
-
this.config = null;
|
3670
|
-
this.tip = null;
|
3671
3630
|
super.dispose();
|
3672
3631
|
}
|
3673
3632
|
|
@@ -3696,18 +3655,19 @@
|
|
3696
3655
|
|
3697
3656
|
this.setContent();
|
3698
3657
|
|
3699
|
-
if (this.
|
3658
|
+
if (this._config.animation) {
|
3700
3659
|
tip.classList.add(CLASS_NAME_FADE$3);
|
3701
3660
|
}
|
3702
3661
|
|
3703
|
-
const placement = typeof this.
|
3662
|
+
const placement = typeof this._config.placement === 'function' ? this._config.placement.call(this, tip, this._element) : this._config.placement;
|
3704
3663
|
|
3705
3664
|
const attachment = this._getAttachment(placement);
|
3706
3665
|
|
3707
3666
|
this._addAttachmentClass(attachment);
|
3708
3667
|
|
3709
|
-
const
|
3710
|
-
|
3668
|
+
const {
|
3669
|
+
container
|
3670
|
+
} = this._config;
|
3711
3671
|
Data.set(tip, this.constructor.DATA_KEY, this);
|
3712
3672
|
|
3713
3673
|
if (!this._element.ownerDocument.documentElement.contains(this.tip)) {
|
@@ -3722,7 +3682,7 @@
|
|
3722
3682
|
}
|
3723
3683
|
|
3724
3684
|
tip.classList.add(CLASS_NAME_SHOW$3);
|
3725
|
-
const customClass = typeof this.
|
3685
|
+
const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass;
|
3726
3686
|
|
3727
3687
|
if (customClass) {
|
3728
3688
|
tip.classList.add(...customClass.split(' '));
|
@@ -3748,13 +3708,9 @@
|
|
3748
3708
|
}
|
3749
3709
|
};
|
3750
3710
|
|
3751
|
-
|
3752
|
-
|
3753
|
-
|
3754
|
-
emulateTransitionEnd(this.tip, transitionDuration);
|
3755
|
-
} else {
|
3756
|
-
complete();
|
3757
|
-
}
|
3711
|
+
const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE$3);
|
3712
|
+
|
3713
|
+
this._queueCallback(complete, this.tip, isAnimated);
|
3758
3714
|
}
|
3759
3715
|
|
3760
3716
|
hide() {
|
@@ -3802,14 +3758,9 @@
|
|
3802
3758
|
this._activeTrigger[TRIGGER_CLICK] = false;
|
3803
3759
|
this._activeTrigger[TRIGGER_FOCUS] = false;
|
3804
3760
|
this._activeTrigger[TRIGGER_HOVER] = false;
|
3761
|
+
const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE$3);
|
3805
3762
|
|
3806
|
-
|
3807
|
-
const transitionDuration = getTransitionDurationFromElement(tip);
|
3808
|
-
EventHandler.one(tip, 'transitionend', complete);
|
3809
|
-
emulateTransitionEnd(tip, transitionDuration);
|
3810
|
-
} else {
|
3811
|
-
complete();
|
3812
|
-
}
|
3763
|
+
this._queueCallback(complete, this.tip, isAnimated);
|
3813
3764
|
|
3814
3765
|
this._hoverState = '';
|
3815
3766
|
}
|
@@ -3831,7 +3782,7 @@
|
|
3831
3782
|
}
|
3832
3783
|
|
3833
3784
|
const element = document.createElement('div');
|
3834
|
-
element.innerHTML = this.
|
3785
|
+
element.innerHTML = this._config.template;
|
3835
3786
|
this.tip = element.children[0];
|
3836
3787
|
return this.tip;
|
3837
3788
|
}
|
@@ -3847,13 +3798,10 @@
|
|
3847
3798
|
return;
|
3848
3799
|
}
|
3849
3800
|
|
3850
|
-
if (
|
3851
|
-
|
3852
|
-
content = content[0];
|
3853
|
-
} // content is a DOM node or a jQuery
|
3801
|
+
if (isElement(content)) {
|
3802
|
+
content = getElement(content); // content is a DOM node or a jQuery
|
3854
3803
|
|
3855
|
-
|
3856
|
-
if (this.config.html) {
|
3804
|
+
if (this._config.html) {
|
3857
3805
|
if (content.parentNode !== element) {
|
3858
3806
|
element.innerHTML = '';
|
3859
3807
|
element.appendChild(content);
|
@@ -3865,9 +3813,9 @@
|
|
3865
3813
|
return;
|
3866
3814
|
}
|
3867
3815
|
|
3868
|
-
if (this.
|
3869
|
-
if (this.
|
3870
|
-
content = sanitizeHtml(content, this.
|
3816
|
+
if (this._config.html) {
|
3817
|
+
if (this._config.sanitize) {
|
3818
|
+
content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn);
|
3871
3819
|
}
|
3872
3820
|
|
3873
3821
|
element.innerHTML = content;
|
@@ -3880,7 +3828,7 @@
|
|
3880
3828
|
let title = this._element.getAttribute('data-bs-original-title');
|
3881
3829
|
|
3882
3830
|
if (!title) {
|
3883
|
-
title = typeof this.
|
3831
|
+
title = typeof this._config.title === 'function' ? this._config.title.call(this._element) : this._config.title;
|
3884
3832
|
}
|
3885
3833
|
|
3886
3834
|
return title;
|
@@ -3914,7 +3862,7 @@
|
|
3914
3862
|
_getOffset() {
|
3915
3863
|
const {
|
3916
3864
|
offset
|
3917
|
-
} = this.
|
3865
|
+
} = this._config;
|
3918
3866
|
|
3919
3867
|
if (typeof offset === 'string') {
|
3920
3868
|
return offset.split(',').map(val => Number.parseInt(val, 10));
|
@@ -3933,7 +3881,7 @@
|
|
3933
3881
|
modifiers: [{
|
3934
3882
|
name: 'flip',
|
3935
3883
|
options: {
|
3936
|
-
fallbackPlacements: this.
|
3884
|
+
fallbackPlacements: this._config.fallbackPlacements
|
3937
3885
|
}
|
3938
3886
|
}, {
|
3939
3887
|
name: 'offset',
|
@@ -3943,7 +3891,7 @@
|
|
3943
3891
|
}, {
|
3944
3892
|
name: 'preventOverflow',
|
3945
3893
|
options: {
|
3946
|
-
boundary: this.
|
3894
|
+
boundary: this._config.boundary
|
3947
3895
|
}
|
3948
3896
|
}, {
|
3949
3897
|
name: 'arrow',
|
@@ -3963,7 +3911,7 @@
|
|
3963
3911
|
}
|
3964
3912
|
};
|
3965
3913
|
return { ...defaultBsPopperConfig,
|
3966
|
-
...(typeof this.
|
3914
|
+
...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)
|
3967
3915
|
};
|
3968
3916
|
}
|
3969
3917
|
|
@@ -3971,32 +3919,21 @@
|
|
3971
3919
|
this.getTipElement().classList.add(`${CLASS_PREFIX$1}-${this.updateAttachment(attachment)}`);
|
3972
3920
|
}
|
3973
3921
|
|
3974
|
-
_getContainer() {
|
3975
|
-
if (this.config.container === false) {
|
3976
|
-
return document.body;
|
3977
|
-
}
|
3978
|
-
|
3979
|
-
if (isElement(this.config.container)) {
|
3980
|
-
return this.config.container;
|
3981
|
-
}
|
3982
|
-
|
3983
|
-
return SelectorEngine.findOne(this.config.container);
|
3984
|
-
}
|
3985
|
-
|
3986
3922
|
_getAttachment(placement) {
|
3987
3923
|
return AttachmentMap[placement.toUpperCase()];
|
3988
3924
|
}
|
3989
3925
|
|
3990
3926
|
_setListeners() {
|
3991
|
-
const triggers = this.
|
3927
|
+
const triggers = this._config.trigger.split(' ');
|
3928
|
+
|
3992
3929
|
triggers.forEach(trigger => {
|
3993
3930
|
if (trigger === 'click') {
|
3994
|
-
EventHandler.on(this._element, this.constructor.Event.CLICK, this.
|
3931
|
+
EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event));
|
3995
3932
|
} else if (trigger !== TRIGGER_MANUAL) {
|
3996
3933
|
const eventIn = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSEENTER : this.constructor.Event.FOCUSIN;
|
3997
3934
|
const eventOut = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSELEAVE : this.constructor.Event.FOCUSOUT;
|
3998
|
-
EventHandler.on(this._element, eventIn, this.
|
3999
|
-
EventHandler.on(this._element, eventOut, this.
|
3935
|
+
EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event));
|
3936
|
+
EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event));
|
4000
3937
|
}
|
4001
3938
|
});
|
4002
3939
|
|
@@ -4008,8 +3945,8 @@
|
|
4008
3945
|
|
4009
3946
|
EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler);
|
4010
3947
|
|
4011
|
-
if (this.
|
4012
|
-
this.
|
3948
|
+
if (this._config.selector) {
|
3949
|
+
this._config = { ...this._config,
|
4013
3950
|
trigger: 'manual',
|
4014
3951
|
selector: ''
|
4015
3952
|
};
|
@@ -4049,7 +3986,7 @@
|
|
4049
3986
|
clearTimeout(context._timeout);
|
4050
3987
|
context._hoverState = HOVER_STATE_SHOW;
|
4051
3988
|
|
4052
|
-
if (!context.
|
3989
|
+
if (!context._config.delay || !context._config.delay.show) {
|
4053
3990
|
context.show();
|
4054
3991
|
return;
|
4055
3992
|
}
|
@@ -4058,7 +3995,7 @@
|
|
4058
3995
|
if (context._hoverState === HOVER_STATE_SHOW) {
|
4059
3996
|
context.show();
|
4060
3997
|
}
|
4061
|
-
}, context.
|
3998
|
+
}, context._config.delay.show);
|
4062
3999
|
}
|
4063
4000
|
|
4064
4001
|
_leave(event, context) {
|
@@ -4075,7 +4012,7 @@
|
|
4075
4012
|
clearTimeout(context._timeout);
|
4076
4013
|
context._hoverState = HOVER_STATE_OUT;
|
4077
4014
|
|
4078
|
-
if (!context.
|
4015
|
+
if (!context._config.delay || !context._config.delay.hide) {
|
4079
4016
|
context.hide();
|
4080
4017
|
return;
|
4081
4018
|
}
|
@@ -4084,7 +4021,7 @@
|
|
4084
4021
|
if (context._hoverState === HOVER_STATE_OUT) {
|
4085
4022
|
context.hide();
|
4086
4023
|
}
|
4087
|
-
}, context.
|
4024
|
+
}, context._config.delay.hide);
|
4088
4025
|
}
|
4089
4026
|
|
4090
4027
|
_isWithActiveTrigger() {
|
@@ -4104,15 +4041,11 @@
|
|
4104
4041
|
delete dataAttributes[dataAttr];
|
4105
4042
|
}
|
4106
4043
|
});
|
4107
|
-
|
4108
|
-
if (config && typeof config.container === 'object' && config.container.jquery) {
|
4109
|
-
config.container = config.container[0];
|
4110
|
-
}
|
4111
|
-
|
4112
4044
|
config = { ...this.constructor.Default,
|
4113
4045
|
...dataAttributes,
|
4114
4046
|
...(typeof config === 'object' && config ? config : {})
|
4115
4047
|
};
|
4048
|
+
config.container = config.container === false ? document.body : getElement(config.container);
|
4116
4049
|
|
4117
4050
|
if (typeof config.delay === 'number') {
|
4118
4051
|
config.delay = {
|
@@ -4141,10 +4074,10 @@
|
|
4141
4074
|
_getDelegateConfig() {
|
4142
4075
|
const config = {};
|
4143
4076
|
|
4144
|
-
if (this.
|
4145
|
-
for (const key in this.
|
4146
|
-
if (this.constructor.Default[key] !== this.
|
4147
|
-
config[key] = this.
|
4077
|
+
if (this._config) {
|
4078
|
+
for (const key in this._config) {
|
4079
|
+
if (this.constructor.Default[key] !== this._config[key]) {
|
4080
|
+
config[key] = this._config[key];
|
4148
4081
|
}
|
4149
4082
|
}
|
4150
4083
|
}
|
@@ -4211,11 +4144,11 @@
|
|
4211
4144
|
*/
|
4212
4145
|
|
4213
4146
|
|
4214
|
-
defineJQueryPlugin(
|
4147
|
+
defineJQueryPlugin(Tooltip);
|
4215
4148
|
|
4216
4149
|
/**
|
4217
4150
|
* --------------------------------------------------------------------------
|
4218
|
-
* Bootstrap (v5.0.
|
4151
|
+
* Bootstrap (v5.0.1): popover.js
|
4219
4152
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
4220
4153
|
* --------------------------------------------------------------------------
|
4221
4154
|
*/
|
@@ -4272,18 +4205,10 @@
|
|
4272
4205
|
return NAME$3;
|
4273
4206
|
}
|
4274
4207
|
|
4275
|
-
static get DATA_KEY() {
|
4276
|
-
return DATA_KEY$3;
|
4277
|
-
}
|
4278
|
-
|
4279
4208
|
static get Event() {
|
4280
4209
|
return Event$1;
|
4281
4210
|
}
|
4282
4211
|
|
4283
|
-
static get EVENT_KEY() {
|
4284
|
-
return EVENT_KEY$3;
|
4285
|
-
}
|
4286
|
-
|
4287
4212
|
static get DefaultType() {
|
4288
4213
|
return DefaultType$2;
|
4289
4214
|
} // Overrides
|
@@ -4314,7 +4239,7 @@
|
|
4314
4239
|
}
|
4315
4240
|
|
4316
4241
|
_getContent() {
|
4317
|
-
return this._element.getAttribute('data-bs-content') || this.
|
4242
|
+
return this._element.getAttribute('data-bs-content') || this._config.content;
|
4318
4243
|
}
|
4319
4244
|
|
4320
4245
|
_cleanTipClass() {
|
@@ -4361,11 +4286,11 @@
|
|
4361
4286
|
*/
|
4362
4287
|
|
4363
4288
|
|
4364
|
-
defineJQueryPlugin(
|
4289
|
+
defineJQueryPlugin(Popover);
|
4365
4290
|
|
4366
4291
|
/**
|
4367
4292
|
* --------------------------------------------------------------------------
|
4368
|
-
* Bootstrap (v5.0.
|
4293
|
+
* Bootstrap (v5.0.1): scrollspy.js
|
4369
4294
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
4370
4295
|
* --------------------------------------------------------------------------
|
4371
4296
|
*/
|
@@ -4430,8 +4355,8 @@
|
|
4430
4355
|
return Default$1;
|
4431
4356
|
}
|
4432
4357
|
|
4433
|
-
static get
|
4434
|
-
return
|
4358
|
+
static get NAME() {
|
4359
|
+
return NAME$2;
|
4435
4360
|
} // Public
|
4436
4361
|
|
4437
4362
|
|
@@ -4464,15 +4389,8 @@
|
|
4464
4389
|
}
|
4465
4390
|
|
4466
4391
|
dispose() {
|
4467
|
-
super.dispose();
|
4468
4392
|
EventHandler.off(this._scrollElement, EVENT_KEY$2);
|
4469
|
-
|
4470
|
-
this._config = null;
|
4471
|
-
this._selector = null;
|
4472
|
-
this._offsets = null;
|
4473
|
-
this._targets = null;
|
4474
|
-
this._activeTarget = null;
|
4475
|
-
this._scrollHeight = null;
|
4393
|
+
super.dispose();
|
4476
4394
|
} // Private
|
4477
4395
|
|
4478
4396
|
|
@@ -4619,11 +4537,11 @@
|
|
4619
4537
|
* add .ScrollSpy to jQuery only if jQuery is present
|
4620
4538
|
*/
|
4621
4539
|
|
4622
|
-
defineJQueryPlugin(
|
4540
|
+
defineJQueryPlugin(ScrollSpy);
|
4623
4541
|
|
4624
4542
|
/**
|
4625
4543
|
* --------------------------------------------------------------------------
|
4626
|
-
* Bootstrap (v5.0.
|
4544
|
+
* Bootstrap (v5.0.1): tab.js
|
4627
4545
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
4628
4546
|
* --------------------------------------------------------------------------
|
4629
4547
|
*/
|
@@ -4661,8 +4579,8 @@
|
|
4661
4579
|
|
4662
4580
|
class Tab extends BaseComponent {
|
4663
4581
|
// Getters
|
4664
|
-
static get
|
4665
|
-
return
|
4582
|
+
static get NAME() {
|
4583
|
+
return NAME$1;
|
4666
4584
|
} // Public
|
4667
4585
|
|
4668
4586
|
|
@@ -4720,10 +4638,9 @@
|
|
4720
4638
|
const complete = () => this._transitionComplete(element, active, callback);
|
4721
4639
|
|
4722
4640
|
if (active && isTransitioning) {
|
4723
|
-
const transitionDuration = getTransitionDurationFromElement(active);
|
4724
4641
|
active.classList.remove(CLASS_NAME_SHOW$1);
|
4725
|
-
|
4726
|
-
|
4642
|
+
|
4643
|
+
this._queueCallback(complete, element, true);
|
4727
4644
|
} else {
|
4728
4645
|
complete();
|
4729
4646
|
}
|
@@ -4818,11 +4735,11 @@
|
|
4818
4735
|
* add .Tab to jQuery only if jQuery is present
|
4819
4736
|
*/
|
4820
4737
|
|
4821
|
-
defineJQueryPlugin(
|
4738
|
+
defineJQueryPlugin(Tab);
|
4822
4739
|
|
4823
4740
|
/**
|
4824
4741
|
* --------------------------------------------------------------------------
|
4825
|
-
* Bootstrap (v5.0.
|
4742
|
+
* Bootstrap (v5.0.1): toast.js
|
4826
4743
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
4827
4744
|
* --------------------------------------------------------------------------
|
4828
4745
|
*/
|
@@ -4836,6 +4753,10 @@
|
|
4836
4753
|
const DATA_KEY = 'bs.toast';
|
4837
4754
|
const EVENT_KEY = `.${DATA_KEY}`;
|
4838
4755
|
const EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`;
|
4756
|
+
const EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`;
|
4757
|
+
const EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`;
|
4758
|
+
const EVENT_FOCUSIN = `focusin${EVENT_KEY}`;
|
4759
|
+
const EVENT_FOCUSOUT = `focusout${EVENT_KEY}`;
|
4839
4760
|
const EVENT_HIDE = `hide${EVENT_KEY}`;
|
4840
4761
|
const EVENT_HIDDEN = `hidden${EVENT_KEY}`;
|
4841
4762
|
const EVENT_SHOW = `show${EVENT_KEY}`;
|
@@ -4866,6 +4787,8 @@
|
|
4866
4787
|
super(element);
|
4867
4788
|
this._config = this._getConfig(config);
|
4868
4789
|
this._timeout = null;
|
4790
|
+
this._hasMouseInteraction = false;
|
4791
|
+
this._hasKeyboardInteraction = false;
|
4869
4792
|
|
4870
4793
|
this._setListeners();
|
4871
4794
|
} // Getters
|
@@ -4879,8 +4802,8 @@
|
|
4879
4802
|
return Default;
|
4880
4803
|
}
|
4881
4804
|
|
4882
|
-
static get
|
4883
|
-
return
|
4805
|
+
static get NAME() {
|
4806
|
+
return NAME;
|
4884
4807
|
} // Public
|
4885
4808
|
|
4886
4809
|
|
@@ -4904,11 +4827,7 @@
|
|
4904
4827
|
|
4905
4828
|
EventHandler.trigger(this._element, EVENT_SHOWN);
|
4906
4829
|
|
4907
|
-
|
4908
|
-
this._timeout = setTimeout(() => {
|
4909
|
-
this.hide();
|
4910
|
-
}, this._config.delay);
|
4911
|
-
}
|
4830
|
+
this._maybeScheduleHide();
|
4912
4831
|
};
|
4913
4832
|
|
4914
4833
|
this._element.classList.remove(CLASS_NAME_HIDE);
|
@@ -4917,13 +4836,7 @@
|
|
4917
4836
|
|
4918
4837
|
this._element.classList.add(CLASS_NAME_SHOWING);
|
4919
4838
|
|
4920
|
-
|
4921
|
-
const transitionDuration = getTransitionDurationFromElement(this._element);
|
4922
|
-
EventHandler.one(this._element, 'transitionend', complete);
|
4923
|
-
emulateTransitionEnd(this._element, transitionDuration);
|
4924
|
-
} else {
|
4925
|
-
complete();
|
4926
|
-
}
|
4839
|
+
this._queueCallback(complete, this._element, this._config.animation);
|
4927
4840
|
}
|
4928
4841
|
|
4929
4842
|
hide() {
|
@@ -4945,13 +4858,7 @@
|
|
4945
4858
|
|
4946
4859
|
this._element.classList.remove(CLASS_NAME_SHOW);
|
4947
4860
|
|
4948
|
-
|
4949
|
-
const transitionDuration = getTransitionDurationFromElement(this._element);
|
4950
|
-
EventHandler.one(this._element, 'transitionend', complete);
|
4951
|
-
emulateTransitionEnd(this._element, transitionDuration);
|
4952
|
-
} else {
|
4953
|
-
complete();
|
4954
|
-
}
|
4861
|
+
this._queueCallback(complete, this._element, this._config.animation);
|
4955
4862
|
}
|
4956
4863
|
|
4957
4864
|
dispose() {
|
@@ -4962,7 +4869,6 @@
|
|
4962
4869
|
}
|
4963
4870
|
|
4964
4871
|
super.dispose();
|
4965
|
-
this._config = null;
|
4966
4872
|
} // Private
|
4967
4873
|
|
4968
4874
|
|
@@ -4975,8 +4881,54 @@
|
|
4975
4881
|
return config;
|
4976
4882
|
}
|
4977
4883
|
|
4884
|
+
_maybeScheduleHide() {
|
4885
|
+
if (!this._config.autohide) {
|
4886
|
+
return;
|
4887
|
+
}
|
4888
|
+
|
4889
|
+
if (this._hasMouseInteraction || this._hasKeyboardInteraction) {
|
4890
|
+
return;
|
4891
|
+
}
|
4892
|
+
|
4893
|
+
this._timeout = setTimeout(() => {
|
4894
|
+
this.hide();
|
4895
|
+
}, this._config.delay);
|
4896
|
+
}
|
4897
|
+
|
4898
|
+
_onInteraction(event, isInteracting) {
|
4899
|
+
switch (event.type) {
|
4900
|
+
case 'mouseover':
|
4901
|
+
case 'mouseout':
|
4902
|
+
this._hasMouseInteraction = isInteracting;
|
4903
|
+
break;
|
4904
|
+
|
4905
|
+
case 'focusin':
|
4906
|
+
case 'focusout':
|
4907
|
+
this._hasKeyboardInteraction = isInteracting;
|
4908
|
+
break;
|
4909
|
+
}
|
4910
|
+
|
4911
|
+
if (isInteracting) {
|
4912
|
+
this._clearTimeout();
|
4913
|
+
|
4914
|
+
return;
|
4915
|
+
}
|
4916
|
+
|
4917
|
+
const nextElement = event.relatedTarget;
|
4918
|
+
|
4919
|
+
if (this._element === nextElement || this._element.contains(nextElement)) {
|
4920
|
+
return;
|
4921
|
+
}
|
4922
|
+
|
4923
|
+
this._maybeScheduleHide();
|
4924
|
+
}
|
4925
|
+
|
4978
4926
|
_setListeners() {
|
4979
4927
|
EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide());
|
4928
|
+
EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true));
|
4929
|
+
EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false));
|
4930
|
+
EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true));
|
4931
|
+
EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false));
|
4980
4932
|
}
|
4981
4933
|
|
4982
4934
|
_clearTimeout() {
|
@@ -5014,11 +4966,11 @@
|
|
5014
4966
|
*/
|
5015
4967
|
|
5016
4968
|
|
5017
|
-
defineJQueryPlugin(
|
4969
|
+
defineJQueryPlugin(Toast);
|
5018
4970
|
|
5019
4971
|
/**
|
5020
4972
|
* --------------------------------------------------------------------------
|
5021
|
-
* Bootstrap (v5.0.
|
4973
|
+
* Bootstrap (v5.0.1): index.umd.js
|
5022
4974
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
5023
4975
|
* --------------------------------------------------------------------------
|
5024
4976
|
*/
|