bootstrap 4.5.0 → 4.5.2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of bootstrap might be problematic. Click here for more details.

Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/assets/javascripts/bootstrap-sprockets.js +5 -5
  4. data/assets/javascripts/bootstrap.js +79 -89
  5. data/assets/javascripts/bootstrap.min.js +3 -3
  6. data/assets/javascripts/bootstrap/alert.js +6 -19
  7. data/assets/javascripts/bootstrap/button.js +8 -23
  8. data/assets/javascripts/bootstrap/carousel.js +11 -71
  9. data/assets/javascripts/bootstrap/collapse.js +9 -69
  10. data/assets/javascripts/bootstrap/dropdown.js +10 -70
  11. data/assets/javascripts/bootstrap/modal.js +28 -71
  12. data/assets/javascripts/bootstrap/popover.js +10 -74
  13. data/assets/javascripts/bootstrap/scrollspy.js +8 -68
  14. data/assets/javascripts/bootstrap/tab.js +6 -19
  15. data/assets/javascripts/bootstrap/toast.js +16 -70
  16. data/assets/javascripts/bootstrap/tooltip.js +15 -75
  17. data/assets/javascripts/bootstrap/util.js +5 -5
  18. data/assets/stylesheets/_bootstrap-grid.scss +2 -2
  19. data/assets/stylesheets/_bootstrap-reboot.scss +2 -2
  20. data/assets/stylesheets/_bootstrap.scss +2 -2
  21. data/assets/stylesheets/bootstrap/_card.scss +10 -6
  22. data/assets/stylesheets/bootstrap/_custom-forms.scss +5 -4
  23. data/assets/stylesheets/bootstrap/_grid.scss +1 -5
  24. data/assets/stylesheets/bootstrap/_modal.scss +0 -1
  25. data/assets/stylesheets/bootstrap/_nav.scss +2 -0
  26. data/assets/stylesheets/bootstrap/_reboot.scss +1 -1
  27. data/assets/stylesheets/bootstrap/_toasts.scss +4 -2
  28. data/assets/stylesheets/bootstrap/_variables.scss +8 -15
  29. data/assets/stylesheets/bootstrap/mixins/_forms.scss +1 -0
  30. data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +0 -1
  31. data/assets/stylesheets/bootstrap/mixins/_grid.scss +7 -7
  32. data/assets/stylesheets/bootstrap/utilities/_text.scss +2 -1
  33. data/lib/bootstrap/version.rb +2 -2
  34. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7d44008d6eea3c834721d9eed4ad670eda16e3108f6c77698549f067dc613650
4
- data.tar.gz: e303c46e29b30c85fd55692d281a4f8b33b20c154a6c151d703a35dc72f2564f
3
+ metadata.gz: 2171d8ce117aff320aea2f3204a285ad130b4c2e78062fb0754c1b0696efea6d
4
+ data.tar.gz: df1049fb4cf2bba189cc638e1648fdc0853f83ad60a98442179bfbee3d43477b
5
5
  SHA512:
6
- metadata.gz: 28aef930d481ecd3643b289fad962c72252ca8f1d1856b161d336efe4054d6985c0759f7bafb86e5f668ce505c857156f31c4763c6a265ba5d59848750dc206e
7
- data.tar.gz: d828f42dc68d2ac0d1fd25d356836fe366b26aa35982bc8e362eb1d1e3746f258db7594304e0871082bf6120e9b10b7ccb4d79636b1eaa454433f249ddc7600e
6
+ metadata.gz: 2405404e4053bb1965a86ada95ad1c87f2d0b13ada60461ee8c338a0ae36feae54135acf84f5c20ffacd9dfd58b7c75ff2baed5416d785f062ae82112ee26dfd
7
+ data.tar.gz: 40a91880121bda2ecc860ca8ff4a23785526e0d918d0b968dd027f68350ad9e7001571455fa48eeef27b3d8d0782a55c9edbdc38d15fec16a500303e792b4153
data/README.md CHANGED
@@ -17,7 +17,7 @@ Please see the appropriate guide for your environment of choice:
17
17
  Add `bootstrap` to your Gemfile:
18
18
 
19
19
  ```ruby
20
- gem 'bootstrap', '~> 4.5.0'
20
+ gem 'bootstrap', '~> 4.5.2'
21
21
  ```
22
22
 
23
23
  Ensure that `sprockets-rails` is at least v2.3.2.
@@ -1,12 +1,12 @@
1
- //= require ./bootstrap/button
2
1
  //= require ./bootstrap/util
3
2
  //= require ./bootstrap/tooltip
3
+ //= require ./bootstrap/modal
4
4
  //= require ./bootstrap/popover
5
- //= require ./bootstrap/tab
6
5
  //= require ./bootstrap/alert
7
- //= require ./bootstrap/carousel
8
6
  //= require ./bootstrap/dropdown
9
- //= require ./bootstrap/modal
10
- //= require ./bootstrap/toast
11
7
  //= require ./bootstrap/collapse
8
+ //= require ./bootstrap/tab
9
+ //= require ./bootstrap/carousel
10
+ //= require ./bootstrap/toast
11
+ //= require ./bootstrap/button
12
12
  //= require ./bootstrap/scrollspy
@@ -1,12 +1,12 @@
1
1
  /*!
2
- * Bootstrap v4.5.0 (https://getbootstrap.com/)
2
+ * Bootstrap v4.5.2 (https://getbootstrap.com/)
3
3
  * Copyright 2011-2020 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5
5
  */
6
6
  (function (global, factory) {
7
7
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('jquery'), require('popper.js')) :
8
8
  typeof define === 'function' && define.amd ? define(['exports', 'jquery', 'popper.js'], factory) :
9
- (global = global || self, factory(global.bootstrap = {}, global.jQuery, global.Popper));
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.bootstrap = {}, global.jQuery, global.Popper));
10
10
  }(this, (function (exports, $, Popper) { 'use strict';
11
11
 
12
12
  $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
@@ -28,53 +28,22 @@
28
28
  return Constructor;
29
29
  }
30
30
 
31
- function _defineProperty(obj, key, value) {
32
- if (key in obj) {
33
- Object.defineProperty(obj, key, {
34
- value: value,
35
- enumerable: true,
36
- configurable: true,
37
- writable: true
38
- });
39
- } else {
40
- obj[key] = value;
41
- }
42
-
43
- return obj;
44
- }
45
-
46
- function ownKeys(object, enumerableOnly) {
47
- var keys = Object.keys(object);
48
-
49
- if (Object.getOwnPropertySymbols) {
50
- var symbols = Object.getOwnPropertySymbols(object);
51
- if (enumerableOnly) symbols = symbols.filter(function (sym) {
52
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
53
- });
54
- keys.push.apply(keys, symbols);
55
- }
31
+ function _extends() {
32
+ _extends = Object.assign || function (target) {
33
+ for (var i = 1; i < arguments.length; i++) {
34
+ var source = arguments[i];
56
35
 
57
- return keys;
58
- }
59
-
60
- function _objectSpread2(target) {
61
- for (var i = 1; i < arguments.length; i++) {
62
- var source = arguments[i] != null ? arguments[i] : {};
63
-
64
- if (i % 2) {
65
- ownKeys(Object(source), true).forEach(function (key) {
66
- _defineProperty(target, key, source[key]);
67
- });
68
- } else if (Object.getOwnPropertyDescriptors) {
69
- Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
70
- } else {
71
- ownKeys(Object(source)).forEach(function (key) {
72
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
73
- });
36
+ for (var key in source) {
37
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
38
+ target[key] = source[key];
39
+ }
40
+ }
74
41
  }
75
- }
76
42
 
77
- return target;
43
+ return target;
44
+ };
45
+
46
+ return _extends.apply(this, arguments);
78
47
  }
79
48
 
80
49
  function _inheritsLoose(subClass, superClass) {
@@ -85,8 +54,8 @@
85
54
 
86
55
  /**
87
56
  * --------------------------------------------------------------------------
88
- * Bootstrap (v4.5.0): util.js
89
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
57
+ * Bootstrap (v4.5.2): util.js
58
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
90
59
  * --------------------------------------------------------------------------
91
60
  */
92
61
  /**
@@ -266,7 +235,7 @@
266
235
  */
267
236
 
268
237
  var NAME = 'alert';
269
- var VERSION = '4.5.0';
238
+ var VERSION = '4.5.2';
270
239
  var DATA_KEY = 'bs.alert';
271
240
  var EVENT_KEY = "." + DATA_KEY;
272
241
  var DATA_API_KEY = '.data-api';
@@ -422,7 +391,7 @@
422
391
  */
423
392
 
424
393
  var NAME$1 = 'button';
425
- var VERSION$1 = '4.5.0';
394
+ var VERSION$1 = '4.5.2';
426
395
  var DATA_KEY$1 = 'bs.button';
427
396
  var EVENT_KEY$1 = "." + DATA_KEY$1;
428
397
  var DATA_API_KEY$1 = '.data-api';
@@ -557,11 +526,9 @@
557
526
  return;
558
527
  }
559
528
 
560
- if (initialButton.tagName === 'LABEL' && inputBtn && inputBtn.type === 'checkbox') {
561
- event.preventDefault(); // work around event sent to label and input
529
+ if (initialButton.tagName !== 'LABEL' || inputBtn && inputBtn.type !== 'checkbox') {
530
+ Button._jQueryInterface.call($(button), 'toggle');
562
531
  }
563
-
564
- Button._jQueryInterface.call($(button), 'toggle');
565
532
  }
566
533
  }).on(EVENT_FOCUS_BLUR_DATA_API, SELECTOR_DATA_TOGGLE_CARROT, function (event) {
567
534
  var button = $(event.target).closest(SELECTOR_BUTTON)[0];
@@ -617,7 +584,7 @@
617
584
  */
618
585
 
619
586
  var NAME$2 = 'carousel';
620
- var VERSION$2 = '4.5.0';
587
+ var VERSION$2 = '4.5.2';
621
588
  var DATA_KEY$2 = 'bs.carousel';
622
589
  var EVENT_KEY$2 = "." + DATA_KEY$2;
623
590
  var DATA_API_KEY$2 = '.data-api';
@@ -804,7 +771,7 @@
804
771
  ;
805
772
 
806
773
  _proto._getConfig = function _getConfig(config) {
807
- config = _objectSpread2(_objectSpread2({}, Default), config);
774
+ config = _extends({}, Default, config);
808
775
  Util.typeCheckConfig(NAME$2, config, DefaultType);
809
776
  return config;
810
777
  };
@@ -1094,10 +1061,10 @@
1094
1061
  return this.each(function () {
1095
1062
  var data = $(this).data(DATA_KEY$2);
1096
1063
 
1097
- var _config = _objectSpread2(_objectSpread2({}, Default), $(this).data());
1064
+ var _config = _extends({}, Default, $(this).data());
1098
1065
 
1099
1066
  if (typeof config === 'object') {
1100
- _config = _objectSpread2(_objectSpread2({}, _config), config);
1067
+ _config = _extends({}, _config, config);
1101
1068
  }
1102
1069
 
1103
1070
  var action = typeof config === 'string' ? config : _config.slide;
@@ -1135,7 +1102,7 @@
1135
1102
  return;
1136
1103
  }
1137
1104
 
1138
- var config = _objectSpread2(_objectSpread2({}, $(target).data()), $(this).data());
1105
+ var config = _extends({}, $(target).data(), $(this).data());
1139
1106
 
1140
1107
  var slideIndex = this.getAttribute('data-slide-to');
1141
1108
 
@@ -1204,7 +1171,7 @@
1204
1171
  */
1205
1172
 
1206
1173
  var NAME$3 = 'collapse';
1207
- var VERSION$3 = '4.5.0';
1174
+ var VERSION$3 = '4.5.2';
1208
1175
  var DATA_KEY$3 = 'bs.collapse';
1209
1176
  var EVENT_KEY$3 = "." + DATA_KEY$3;
1210
1177
  var DATA_API_KEY$3 = '.data-api';
@@ -1419,7 +1386,7 @@
1419
1386
  ;
1420
1387
 
1421
1388
  _proto._getConfig = function _getConfig(config) {
1422
- config = _objectSpread2(_objectSpread2({}, Default$1), config);
1389
+ config = _extends({}, Default$1, config);
1423
1390
  config.toggle = Boolean(config.toggle); // Coerce string values
1424
1391
 
1425
1392
  Util.typeCheckConfig(NAME$3, config, DefaultType$1);
@@ -1473,7 +1440,7 @@
1473
1440
  var $this = $(this);
1474
1441
  var data = $this.data(DATA_KEY$3);
1475
1442
 
1476
- var _config = _objectSpread2(_objectSpread2(_objectSpread2({}, Default$1), $this.data()), typeof config === 'object' && config ? config : {});
1443
+ var _config = _extends({}, Default$1, $this.data(), typeof config === 'object' && config ? config : {});
1477
1444
 
1478
1445
  if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {
1479
1446
  _config.toggle = false;
@@ -1553,7 +1520,7 @@
1553
1520
  */
1554
1521
 
1555
1522
  var NAME$4 = 'dropdown';
1556
- var VERSION$4 = '4.5.0';
1523
+ var VERSION$4 = '4.5.2';
1557
1524
  var DATA_KEY$4 = 'bs.dropdown';
1558
1525
  var EVENT_KEY$4 = "." + DATA_KEY$4;
1559
1526
  var DATA_API_KEY$4 = '.data-api';
@@ -1780,7 +1747,7 @@
1780
1747
  };
1781
1748
 
1782
1749
  _proto._getConfig = function _getConfig(config) {
1783
- config = _objectSpread2(_objectSpread2(_objectSpread2({}, this.constructor.Default), $(this._element).data()), config);
1750
+ config = _extends({}, this.constructor.Default, $(this._element).data(), config);
1784
1751
  Util.typeCheckConfig(NAME$4, config, this.constructor.DefaultType);
1785
1752
  return config;
1786
1753
  };
@@ -1825,7 +1792,7 @@
1825
1792
 
1826
1793
  if (typeof this._config.offset === 'function') {
1827
1794
  offset.fn = function (data) {
1828
- data.offsets = _objectSpread2(_objectSpread2({}, data.offsets), _this2._config.offset(data.offsets, _this2._element) || {});
1795
+ data.offsets = _extends({}, data.offsets, _this2._config.offset(data.offsets, _this2._element) || {});
1829
1796
  return data;
1830
1797
  };
1831
1798
  } else {
@@ -1855,7 +1822,7 @@
1855
1822
  };
1856
1823
  }
1857
1824
 
1858
- return _objectSpread2(_objectSpread2({}, popperConfig), this._config.popperConfig);
1825
+ return _extends({}, popperConfig, this._config.popperConfig);
1859
1826
  } // Static
1860
1827
  ;
1861
1828
 
@@ -2067,7 +2034,7 @@
2067
2034
  */
2068
2035
 
2069
2036
  var NAME$5 = 'modal';
2070
- var VERSION$5 = '4.5.0';
2037
+ var VERSION$5 = '4.5.2';
2071
2038
  var DATA_KEY$5 = 'bs.modal';
2072
2039
  var EVENT_KEY$5 = "." + DATA_KEY$5;
2073
2040
  var DATA_API_KEY$5 = '.data-api';
@@ -2259,7 +2226,7 @@
2259
2226
  ;
2260
2227
 
2261
2228
  _proto._getConfig = function _getConfig(config) {
2262
- config = _objectSpread2(_objectSpread2({}, Default$3), config);
2229
+ config = _extends({}, Default$3, config);
2263
2230
  Util.typeCheckConfig(NAME$5, config, DefaultType$3);
2264
2231
  return config;
2265
2232
  };
@@ -2275,11 +2242,24 @@
2275
2242
  return;
2276
2243
  }
2277
2244
 
2245
+ var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;
2246
+
2247
+ if (!isModalOverflowing) {
2248
+ this._element.style.overflowY = 'hidden';
2249
+ }
2250
+
2278
2251
  this._element.classList.add(CLASS_NAME_STATIC);
2279
2252
 
2280
- var modalTransitionDuration = Util.getTransitionDurationFromElement(this._element);
2253
+ var modalTransitionDuration = Util.getTransitionDurationFromElement(this._dialog);
2254
+ $(this._element).off(Util.TRANSITION_END);
2281
2255
  $(this._element).one(Util.TRANSITION_END, function () {
2282
2256
  _this3._element.classList.remove(CLASS_NAME_STATIC);
2257
+
2258
+ if (!isModalOverflowing) {
2259
+ $(_this3._element).one(Util.TRANSITION_END, function () {
2260
+ _this3._element.style.overflowY = '';
2261
+ }).emulateTransitionEnd(_this3._element, modalTransitionDuration);
2262
+ }
2283
2263
  }).emulateTransitionEnd(modalTransitionDuration);
2284
2264
 
2285
2265
  this._element.focus();
@@ -2305,6 +2285,8 @@
2305
2285
 
2306
2286
  this._element.setAttribute('aria-modal', true);
2307
2287
 
2288
+ this._element.setAttribute('role', 'dialog');
2289
+
2308
2290
  if ($(this._dialog).hasClass(CLASS_NAME_SCROLLABLE) && modalBody) {
2309
2291
  modalBody.scrollTop = 0;
2310
2292
  } else {
@@ -2392,6 +2374,8 @@
2392
2374
 
2393
2375
  this._element.removeAttribute('aria-modal');
2394
2376
 
2377
+ this._element.removeAttribute('role');
2378
+
2395
2379
  this._isTransitioning = false;
2396
2380
 
2397
2381
  this._showBackdrop(function () {
@@ -2573,7 +2557,7 @@
2573
2557
  return this.each(function () {
2574
2558
  var data = $(this).data(DATA_KEY$5);
2575
2559
 
2576
- var _config = _objectSpread2(_objectSpread2(_objectSpread2({}, Default$3), $(this).data()), typeof config === 'object' && config ? config : {});
2560
+ var _config = _extends({}, Default$3, $(this).data(), typeof config === 'object' && config ? config : {});
2577
2561
 
2578
2562
  if (!data) {
2579
2563
  data = new Modal(this, _config);
@@ -2623,7 +2607,7 @@
2623
2607
  target = document.querySelector(selector);
2624
2608
  }
2625
2609
 
2626
- var config = $(target).data(DATA_KEY$5) ? 'toggle' : _objectSpread2(_objectSpread2({}, $(target).data()), $(this).data());
2610
+ var config = $(target).data(DATA_KEY$5) ? 'toggle' : _extends({}, $(target).data(), $(this).data());
2627
2611
 
2628
2612
  if (this.tagName === 'A' || this.tagName === 'AREA') {
2629
2613
  event.preventDefault();
@@ -2660,8 +2644,8 @@
2660
2644
 
2661
2645
  /**
2662
2646
  * --------------------------------------------------------------------------
2663
- * Bootstrap (v4.5.0): tools/sanitizer.js
2664
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
2647
+ * Bootstrap (v4.5.2): tools/sanitizer.js
2648
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
2665
2649
  * --------------------------------------------------------------------------
2666
2650
  */
2667
2651
  var uriAttrs = ['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href'];
@@ -2786,7 +2770,7 @@
2786
2770
  */
2787
2771
 
2788
2772
  var NAME$6 = 'tooltip';
2789
- var VERSION$6 = '4.5.0';
2773
+ var VERSION$6 = '4.5.2';
2790
2774
  var DATA_KEY$6 = 'bs.tooltip';
2791
2775
  var EVENT_KEY$6 = "." + DATA_KEY$6;
2792
2776
  var JQUERY_NO_CONFLICT$6 = $.fn[NAME$6];
@@ -3174,7 +3158,7 @@
3174
3158
  return _this3._handlePopperPlacementChange(data);
3175
3159
  }
3176
3160
  };
3177
- return _objectSpread2(_objectSpread2({}, defaultBsConfig), this.config.popperConfig);
3161
+ return _extends({}, defaultBsConfig, this.config.popperConfig);
3178
3162
  };
3179
3163
 
3180
3164
  _proto._getOffset = function _getOffset() {
@@ -3184,7 +3168,7 @@
3184
3168
 
3185
3169
  if (typeof this.config.offset === 'function') {
3186
3170
  offset.fn = function (data) {
3187
- data.offsets = _objectSpread2(_objectSpread2({}, data.offsets), _this4.config.offset(data.offsets, _this4.element) || {});
3171
+ data.offsets = _extends({}, data.offsets, _this4.config.offset(data.offsets, _this4.element) || {});
3188
3172
  return data;
3189
3173
  };
3190
3174
  } else {
@@ -3239,7 +3223,7 @@
3239
3223
  $(this.element).closest('.modal').on('hide.bs.modal', this._hideModalHandler);
3240
3224
 
3241
3225
  if (this.config.selector) {
3242
- this.config = _objectSpread2(_objectSpread2({}, this.config), {}, {
3226
+ this.config = _extends({}, this.config, {
3243
3227
  trigger: 'manual',
3244
3228
  selector: ''
3245
3229
  });
@@ -3339,7 +3323,7 @@
3339
3323
  delete dataAttributes[dataAttr];
3340
3324
  }
3341
3325
  });
3342
- config = _objectSpread2(_objectSpread2(_objectSpread2({}, this.constructor.Default), dataAttributes), typeof config === 'object' && config ? config : {});
3326
+ config = _extends({}, this.constructor.Default, dataAttributes, typeof config === 'object' && config ? config : {});
3343
3327
 
3344
3328
  if (typeof config.delay === 'number') {
3345
3329
  config.delay = {
@@ -3498,21 +3482,21 @@
3498
3482
  */
3499
3483
 
3500
3484
  var NAME$7 = 'popover';
3501
- var VERSION$7 = '4.5.0';
3485
+ var VERSION$7 = '4.5.2';
3502
3486
  var DATA_KEY$7 = 'bs.popover';
3503
3487
  var EVENT_KEY$7 = "." + DATA_KEY$7;
3504
3488
  var JQUERY_NO_CONFLICT$7 = $.fn[NAME$7];
3505
3489
  var CLASS_PREFIX$1 = 'bs-popover';
3506
3490
  var BSCLS_PREFIX_REGEX$1 = new RegExp("(^|\\s)" + CLASS_PREFIX$1 + "\\S+", 'g');
3507
3491
 
3508
- var Default$5 = _objectSpread2(_objectSpread2({}, Tooltip.Default), {}, {
3492
+ var Default$5 = _extends({}, Tooltip.Default, {
3509
3493
  placement: 'right',
3510
3494
  trigger: 'click',
3511
3495
  content: '',
3512
3496
  template: '<div class="popover" role="tooltip">' + '<div class="arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>'
3513
3497
  });
3514
3498
 
3515
- var DefaultType$5 = _objectSpread2(_objectSpread2({}, Tooltip.DefaultType), {}, {
3499
+ var DefaultType$5 = _extends({}, Tooltip.DefaultType, {
3516
3500
  content: '(string|element|function)'
3517
3501
  });
3518
3502
 
@@ -3678,7 +3662,7 @@
3678
3662
  */
3679
3663
 
3680
3664
  var NAME$8 = 'scrollspy';
3681
- var VERSION$8 = '4.5.0';
3665
+ var VERSION$8 = '4.5.2';
3682
3666
  var DATA_KEY$8 = 'bs.scrollspy';
3683
3667
  var EVENT_KEY$8 = "." + DATA_KEY$8;
3684
3668
  var DATA_API_KEY$6 = '.data-api';
@@ -3792,7 +3776,7 @@
3792
3776
  ;
3793
3777
 
3794
3778
  _proto._getConfig = function _getConfig(config) {
3795
- config = _objectSpread2(_objectSpread2({}, Default$6), typeof config === 'object' && config ? config : {});
3779
+ config = _extends({}, Default$6, typeof config === 'object' && config ? config : {});
3796
3780
 
3797
3781
  if (typeof config.target !== 'string' && Util.isElement(config.target)) {
3798
3782
  var id = $(config.target).attr('id');
@@ -3970,7 +3954,7 @@
3970
3954
  */
3971
3955
 
3972
3956
  var NAME$9 = 'tab';
3973
- var VERSION$9 = '4.5.0';
3957
+ var VERSION$9 = '4.5.2';
3974
3958
  var DATA_KEY$9 = 'bs.tab';
3975
3959
  var EVENT_KEY$9 = "." + DATA_KEY$9;
3976
3960
  var DATA_API_KEY$7 = '.data-api';
@@ -4196,7 +4180,7 @@
4196
4180
  */
4197
4181
 
4198
4182
  var NAME$a = 'toast';
4199
- var VERSION$a = '4.5.0';
4183
+ var VERSION$a = '4.5.2';
4200
4184
  var DATA_KEY$a = 'bs.toast';
4201
4185
  var EVENT_KEY$a = "." + DATA_KEY$a;
4202
4186
  var JQUERY_NO_CONFLICT$a = $.fn[NAME$a];
@@ -4249,6 +4233,8 @@
4249
4233
  return;
4250
4234
  }
4251
4235
 
4236
+ this._clearTimeout();
4237
+
4252
4238
  if (this._config.animation) {
4253
4239
  this._element.classList.add(CLASS_NAME_FADE$5);
4254
4240
  }
@@ -4297,8 +4283,7 @@
4297
4283
  };
4298
4284
 
4299
4285
  _proto.dispose = function dispose() {
4300
- clearTimeout(this._timeout);
4301
- this._timeout = null;
4286
+ this._clearTimeout();
4302
4287
 
4303
4288
  if (this._element.classList.contains(CLASS_NAME_SHOW$7)) {
4304
4289
  this._element.classList.remove(CLASS_NAME_SHOW$7);
@@ -4312,7 +4297,7 @@
4312
4297
  ;
4313
4298
 
4314
4299
  _proto._getConfig = function _getConfig(config) {
4315
- config = _objectSpread2(_objectSpread2(_objectSpread2({}, Default$7), $(this._element).data()), typeof config === 'object' && config ? config : {});
4300
+ config = _extends({}, Default$7, $(this._element).data(), typeof config === 'object' && config ? config : {});
4316
4301
  Util.typeCheckConfig(NAME$a, config, this.constructor.DefaultType);
4317
4302
  return config;
4318
4303
  };
@@ -4342,6 +4327,11 @@
4342
4327
  } else {
4343
4328
  complete();
4344
4329
  }
4330
+ };
4331
+
4332
+ _proto._clearTimeout = function _clearTimeout() {
4333
+ clearTimeout(this._timeout);
4334
+ this._timeout = null;
4345
4335
  } // Static
4346
4336
  ;
4347
4337