bootstrap 5.0.0.alpha1 → 5.0.0.alpha2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -1
  3. data/README.md +1 -1
  4. data/assets/javascripts/bootstrap-sprockets.js +6 -6
  5. data/assets/javascripts/bootstrap.js +142 -155
  6. data/assets/javascripts/bootstrap.min.js +2 -2
  7. data/assets/javascripts/bootstrap/alert.js +17 -19
  8. data/assets/javascripts/bootstrap/button.js +14 -12
  9. data/assets/javascripts/bootstrap/carousel.js +47 -49
  10. data/assets/javascripts/bootstrap/collapse.js +50 -55
  11. data/assets/javascripts/bootstrap/dom/data.js +11 -11
  12. data/assets/javascripts/bootstrap/dom/event-handler.js +9 -5
  13. data/assets/javascripts/bootstrap/dom/manipulator.js +5 -9
  14. data/assets/javascripts/bootstrap/dom/polyfill.js +3 -3
  15. data/assets/javascripts/bootstrap/dom/selector-engine.js +3 -3
  16. data/assets/javascripts/bootstrap/dropdown.js +46 -48
  17. data/assets/javascripts/bootstrap/modal.js +77 -65
  18. data/assets/javascripts/bootstrap/popover.js +21 -23
  19. data/assets/javascripts/bootstrap/scrollspy.js +33 -39
  20. data/assets/javascripts/bootstrap/tab.js +24 -22
  21. data/assets/javascripts/bootstrap/toast.js +32 -28
  22. data/assets/javascripts/bootstrap/tooltip.js +67 -66
  23. data/assets/stylesheets/_bootstrap-grid.scss +2 -2
  24. data/assets/stylesheets/_bootstrap-reboot.scss +1 -1
  25. data/assets/stylesheets/_bootstrap.scss +1 -1
  26. data/assets/stylesheets/bootstrap/_alert.scss +3 -4
  27. data/assets/stylesheets/bootstrap/_card.scss +6 -4
  28. data/assets/stylesheets/bootstrap/_carousel.scss +17 -0
  29. data/assets/stylesheets/bootstrap/_close.scss +25 -20
  30. data/assets/stylesheets/bootstrap/_dropdown.scss +42 -1
  31. data/assets/stylesheets/bootstrap/_functions.scss +4 -1
  32. data/assets/stylesheets/bootstrap/_helpers.scss +2 -2
  33. data/assets/stylesheets/bootstrap/_list-group.scss +1 -1
  34. data/assets/stylesheets/bootstrap/_mixins.scss +1 -1
  35. data/assets/stylesheets/bootstrap/_modal.scss +7 -7
  36. data/assets/stylesheets/bootstrap/_nav.scss +4 -0
  37. data/assets/stylesheets/bootstrap/_navbar.scss +1 -0
  38. data/assets/stylesheets/bootstrap/_pagination.scss +3 -0
  39. data/assets/stylesheets/bootstrap/_reboot.scss +7 -6
  40. data/assets/stylesheets/bootstrap/_spinners.scss +2 -2
  41. data/assets/stylesheets/bootstrap/_tables.scss +1 -1
  42. data/assets/stylesheets/bootstrap/_toasts.scss +6 -2
  43. data/assets/stylesheets/bootstrap/_utilities.scss +29 -1
  44. data/assets/stylesheets/bootstrap/_variables.scss +92 -44
  45. data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +1 -1
  46. data/assets/stylesheets/bootstrap/forms/_form-check.scss +1 -1
  47. data/assets/stylesheets/bootstrap/forms/_input-group.scss +2 -2
  48. data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +1 -1
  49. data/assets/stylesheets/bootstrap/helpers/_ratio.scss +26 -0
  50. data/assets/stylesheets/bootstrap/helpers/_visually-hidden.scss +8 -0
  51. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +9 -9
  52. data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +7 -9
  53. data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +4 -3
  54. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +11 -8
  55. data/assets/stylesheets/bootstrap/mixins/_container.scss +5 -3
  56. data/assets/stylesheets/bootstrap/mixins/_grid.scss +6 -7
  57. data/assets/stylesheets/bootstrap/mixins/_transition.scss +1 -1
  58. data/assets/stylesheets/bootstrap/mixins/{_screen-reader.scss → _visually-hidden.scss} +5 -5
  59. data/lib/bootstrap/version.rb +2 -2
  60. metadata +5 -5
  61. data/assets/stylesheets/bootstrap/helpers/_embed.scss +0 -31
  62. data/assets/stylesheets/bootstrap/helpers/_screenreaders.scss +0 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: da3029d47624ce88dca2ddb395d250b689f2bea68844f66718189fd25dff9b24
4
- data.tar.gz: 99158148a82693decf171b07d999e45eeff3ab6fa157084b5b592ecda230426c
3
+ metadata.gz: 5d82d17b7c1e4618af15d37b06361560d575c967688b5e95b50d8d68c20ece5b
4
+ data.tar.gz: 89e8445ac7043ca51f704f76e54d791892a6606a00fb44f5e94a443b8bd031d4
5
5
  SHA512:
6
- metadata.gz: e1790921eb6fefab26c74b036f316daec352870f6a9b2dfb795f0a51ae0fd65cd3c3b23f082d2de6b17bf59045bcf3db000f9ffc41c0ebfe809cabc370b79600
7
- data.tar.gz: e2b21f142c4761d751d964b12fe4ed27b045f8df89ce87c6ad09a0d403e9e5d3ea9744f64d13a99bba76ce9058fe1e5f3f892804ff55a388dd630d2a1a60dfa0
6
+ metadata.gz: 5a16b3c4232f431af4d9e76f32d24a24eefd58b357724090486df3a8201a936513ff12eca44605e39fa69c1c7dd39fa42cc01823e5e38c63148648e2b3765a75
7
+ data.tar.gz: 6effd1cececdf9a4a5580be195032dbdba25486777114714b203030d07a275c55345fc7f09fa2bd1f7c310cd17ecd149a5af8941877e0b5952aec5c209a6c7e9
@@ -1,5 +1,5 @@
1
1
  language: ruby
2
- sudo: false
2
+ dist: focal
3
3
  addons:
4
4
  apt:
5
5
  packages:
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', '~> 5.0.0.alpha1'
20
+ gem 'bootstrap', '~> 5.0.0.alpha2'
21
21
  ```
22
22
 
23
23
  Ensure that `sprockets-rails` is at least v2.3.2.
@@ -1,16 +1,16 @@
1
1
  //= require ./bootstrap/dom/data
2
2
  //= require ./bootstrap/dom/event-handler
3
- //= require ./bootstrap/alert
4
- //= require ./bootstrap/button
5
3
  //= require ./bootstrap/dom/manipulator
6
4
  //= require ./bootstrap/dom/selector-engine
7
- //= require ./bootstrap/carousel
8
5
  //= require ./bootstrap/collapse
9
6
  //= require ./bootstrap/dom/polyfill
10
- //= require ./bootstrap/dropdown
11
7
  //= require ./bootstrap/modal
8
+ //= require ./bootstrap/alert
9
+ //= require ./bootstrap/dropdown
12
10
  //= require ./bootstrap/tooltip
13
- //= require ./bootstrap/popover
11
+ //= require ./bootstrap/toast
14
12
  //= require ./bootstrap/scrollspy
13
+ //= require ./bootstrap/button
14
+ //= require ./bootstrap/popover
15
15
  //= require ./bootstrap/tab
16
- //= require ./bootstrap/toast
16
+ //= require ./bootstrap/carousel
@@ -1,15 +1,17 @@
1
1
  /*!
2
- * Bootstrap v5.0.0-alpha1 (https://getbootstrap.com/)
2
+ * Bootstrap v5.0.0-alpha2 (https://getbootstrap.com/)
3
3
  * Copyright 2011-2020 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
4
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5
5
  */
6
6
  (function (global, factory) {
7
7
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('popper.js')) :
8
8
  typeof define === 'function' && define.amd ? define(['popper.js'], factory) :
9
- (global = global || self, global.bootstrap = factory(global.Popper));
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.bootstrap = factory(global.Popper));
10
10
  }(this, (function (Popper) { 'use strict';
11
11
 
12
- Popper = Popper && Object.prototype.hasOwnProperty.call(Popper, 'default') ? Popper['default'] : Popper;
12
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
+
14
+ var Popper__default = /*#__PURE__*/_interopDefaultLegacy(Popper);
13
15
 
14
16
  function _defineProperties(target, props) {
15
17
  for (var i = 0; i < props.length; i++) {
@@ -27,53 +29,22 @@
27
29
  return Constructor;
28
30
  }
29
31
 
30
- function _defineProperty(obj, key, value) {
31
- if (key in obj) {
32
- Object.defineProperty(obj, key, {
33
- value: value,
34
- enumerable: true,
35
- configurable: true,
36
- writable: true
37
- });
38
- } else {
39
- obj[key] = value;
40
- }
41
-
42
- return obj;
43
- }
44
-
45
- function ownKeys(object, enumerableOnly) {
46
- var keys = Object.keys(object);
32
+ function _extends() {
33
+ _extends = Object.assign || function (target) {
34
+ for (var i = 1; i < arguments.length; i++) {
35
+ var source = arguments[i];
47
36
 
48
- if (Object.getOwnPropertySymbols) {
49
- var symbols = Object.getOwnPropertySymbols(object);
50
- if (enumerableOnly) symbols = symbols.filter(function (sym) {
51
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
52
- });
53
- keys.push.apply(keys, symbols);
54
- }
55
-
56
- return keys;
57
- }
58
-
59
- function _objectSpread2(target) {
60
- for (var i = 1; i < arguments.length; i++) {
61
- var source = arguments[i] != null ? arguments[i] : {};
62
-
63
- if (i % 2) {
64
- ownKeys(Object(source), true).forEach(function (key) {
65
- _defineProperty(target, key, source[key]);
66
- });
67
- } else if (Object.getOwnPropertyDescriptors) {
68
- Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
69
- } else {
70
- ownKeys(Object(source)).forEach(function (key) {
71
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
72
- });
37
+ for (var key in source) {
38
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
39
+ target[key] = source[key];
40
+ }
41
+ }
73
42
  }
74
- }
75
43
 
76
- return target;
44
+ return target;
45
+ };
46
+
47
+ return _extends.apply(this, arguments);
77
48
  }
78
49
 
79
50
  function _inheritsLoose(subClass, superClass) {
@@ -84,7 +55,7 @@
84
55
 
85
56
  /**
86
57
  * --------------------------------------------------------------------------
87
- * Bootstrap (v5.0.0-alpha1): util/index.js
58
+ * Bootstrap (v5.0.0-alpha2): util/index.js
88
59
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
89
60
  * --------------------------------------------------------------------------
90
61
  */
@@ -259,7 +230,7 @@
259
230
 
260
231
  /**
261
232
  * --------------------------------------------------------------------------
262
- * Bootstrap (v5.0.0-alpha1): dom/data.js
233
+ * Bootstrap (v5.0.0-alpha2): dom/data.js
263
234
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
264
235
  * --------------------------------------------------------------------------
265
236
  */
@@ -274,22 +245,22 @@
274
245
  var id = 1;
275
246
  return {
276
247
  set: function set(element, key, data) {
277
- if (typeof element.key === 'undefined') {
278
- element.key = {
248
+ if (typeof element.bsKey === 'undefined') {
249
+ element.bsKey = {
279
250
  key: key,
280
251
  id: id
281
252
  };
282
253
  id++;
283
254
  }
284
255
 
285
- storeData[element.key.id] = data;
256
+ storeData[element.bsKey.id] = data;
286
257
  },
287
258
  get: function get(element, key) {
288
- if (!element || typeof element.key === 'undefined') {
259
+ if (!element || typeof element.bsKey === 'undefined') {
289
260
  return null;
290
261
  }
291
262
 
292
- var keyProperties = element.key;
263
+ var keyProperties = element.bsKey;
293
264
 
294
265
  if (keyProperties.key === key) {
295
266
  return storeData[keyProperties.id];
@@ -298,15 +269,15 @@
298
269
  return null;
299
270
  },
300
271
  delete: function _delete(element, key) {
301
- if (typeof element.key === 'undefined') {
272
+ if (typeof element.bsKey === 'undefined') {
302
273
  return;
303
274
  }
304
275
 
305
- var keyProperties = element.key;
276
+ var keyProperties = element.bsKey;
306
277
 
307
278
  if (keyProperties.key === key) {
308
279
  delete storeData[keyProperties.id];
309
- delete element.key;
280
+ delete element.bsKey;
310
281
  }
311
282
  }
312
283
  };
@@ -398,7 +369,7 @@
398
369
 
399
370
  /**
400
371
  * --------------------------------------------------------------------------
401
- * Bootstrap (v5.0.0-alpha1): dom/event-handler.js
372
+ * Bootstrap (v5.0.0-alpha2): dom/event-handler.js
402
373
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
403
374
  * --------------------------------------------------------------------------
404
375
  */
@@ -439,6 +410,8 @@
439
410
 
440
411
  function bootstrapHandler(element, fn) {
441
412
  return function handler(event) {
413
+ event.delegateTarget = element;
414
+
442
415
  if (handler.oneOff) {
443
416
  EventHandler.off(element, event.type, fn);
444
417
  }
@@ -454,6 +427,8 @@
454
427
  for (var target = event.target; target && target !== this; target = target.parentNode) {
455
428
  for (var i = domElements.length; i--;) {
456
429
  if (domElements[i] === target) {
430
+ event.delegateTarget = target;
431
+
457
432
  if (handler.oneOff) {
458
433
  EventHandler.off(element, event.type, fn);
459
434
  }
@@ -638,7 +613,7 @@
638
613
  bubbles: bubbles,
639
614
  cancelable: true
640
615
  });
641
- } // merge custom informations in our event
616
+ } // merge custom information in our event
642
617
 
643
618
 
644
619
  if (typeof args !== 'undefined') {
@@ -682,7 +657,7 @@
682
657
  */
683
658
 
684
659
  var NAME = 'alert';
685
- var VERSION = '5.0.0-alpha1';
660
+ var VERSION = '5.0.0-alpha2';
686
661
  var DATA_KEY = 'bs.alert';
687
662
  var EVENT_KEY = "." + DATA_KEY;
688
663
  var DATA_API_KEY = '.data-api';
@@ -713,11 +688,7 @@
713
688
 
714
689
  // Public
715
690
  _proto.close = function close(element) {
716
- var rootElement = this._element;
717
-
718
- if (element) {
719
- rootElement = this._getRootElement(element);
720
- }
691
+ var rootElement = element ? this._getRootElement(element) : this._element;
721
692
 
722
693
  var customEvent = this._triggerCloseEvent(rootElement);
723
694
 
@@ -842,7 +813,7 @@
842
813
  */
843
814
 
844
815
  var NAME$1 = 'button';
845
- var VERSION$1 = '5.0.0-alpha1';
816
+ var VERSION$1 = '5.0.0-alpha2';
846
817
  var DATA_KEY$1 = 'bs.button';
847
818
  var EVENT_KEY$1 = "." + DATA_KEY$1;
848
819
  var DATA_API_KEY$1 = '.data-api';
@@ -944,7 +915,7 @@
944
915
 
945
916
  /**
946
917
  * --------------------------------------------------------------------------
947
- * Bootstrap (v5.0.0-alpha1): dom/manipulator.js
918
+ * Bootstrap (v5.0.0-alpha2): dom/manipulator.js
948
919
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
949
920
  * --------------------------------------------------------------------------
950
921
  */
@@ -986,7 +957,7 @@
986
957
  return {};
987
958
  }
988
959
 
989
- var attributes = _objectSpread2({}, element.dataset);
960
+ var attributes = _extends({}, element.dataset);
990
961
 
991
962
  Object.keys(attributes).forEach(function (key) {
992
963
  attributes[key] = normalizeData(attributes[key]);
@@ -1024,7 +995,7 @@
1024
995
 
1025
996
  /**
1026
997
  * --------------------------------------------------------------------------
1027
- * Bootstrap (v5.0.0-alpha1): dom/selector-engine.js
998
+ * Bootstrap (v5.0.0-alpha2): dom/selector-engine.js
1028
999
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
1029
1000
  * --------------------------------------------------------------------------
1030
1001
  */
@@ -1113,7 +1084,7 @@
1113
1084
  */
1114
1085
 
1115
1086
  var NAME$2 = 'carousel';
1116
- var VERSION$2 = '5.0.0-alpha1';
1087
+ var VERSION$2 = '5.0.0-alpha2';
1117
1088
  var DATA_KEY$2 = 'bs.carousel';
1118
1089
  var EVENT_KEY$2 = "." + DATA_KEY$2;
1119
1090
  var DATA_API_KEY$2 = '.data-api';
@@ -1299,7 +1270,7 @@
1299
1270
  ;
1300
1271
 
1301
1272
  _proto._getConfig = function _getConfig(config) {
1302
- config = _objectSpread2(_objectSpread2({}, Default), config);
1273
+ config = _extends({}, Default, config);
1303
1274
  typeCheckConfig(NAME$2, config, DefaultType);
1304
1275
  return config;
1305
1276
  };
@@ -1593,10 +1564,10 @@
1593
1564
  Carousel.carouselInterface = function carouselInterface(element, config) {
1594
1565
  var data = Data.getData(element, DATA_KEY$2);
1595
1566
 
1596
- var _config = _objectSpread2(_objectSpread2({}, Default), Manipulator.getDataAttributes(element));
1567
+ var _config = _extends({}, Default, Manipulator.getDataAttributes(element));
1597
1568
 
1598
1569
  if (typeof config === 'object') {
1599
- _config = _objectSpread2(_objectSpread2({}, _config), config);
1570
+ _config = _extends({}, _config, config);
1600
1571
  }
1601
1572
 
1602
1573
  var action = typeof config === 'string' ? config : _config.slide;
@@ -1632,7 +1603,7 @@
1632
1603
  return;
1633
1604
  }
1634
1605
 
1635
- var config = _objectSpread2(_objectSpread2({}, Manipulator.getDataAttributes(target)), Manipulator.getDataAttributes(this));
1606
+ var config = _extends({}, Manipulator.getDataAttributes(target), Manipulator.getDataAttributes(this));
1636
1607
 
1637
1608
  var slideIndex = this.getAttribute('data-slide-to');
1638
1609
 
@@ -1710,7 +1681,7 @@
1710
1681
  */
1711
1682
 
1712
1683
  var NAME$3 = 'collapse';
1713
- var VERSION$3 = '5.0.0-alpha1';
1684
+ var VERSION$3 = '5.0.0-alpha2';
1714
1685
  var DATA_KEY$3 = 'bs.collapse';
1715
1686
  var EVENT_KEY$3 = "." + DATA_KEY$3;
1716
1687
  var DATA_API_KEY$3 = '.data-api';
@@ -1949,7 +1920,7 @@
1949
1920
  ;
1950
1921
 
1951
1922
  _proto._getConfig = function _getConfig(config) {
1952
- config = _objectSpread2(_objectSpread2({}, Default$1), config);
1923
+ config = _extends({}, Default$1, config);
1953
1924
  config.toggle = Boolean(config.toggle); // Coerce string values
1954
1925
 
1955
1926
  typeCheckConfig(NAME$3, config, DefaultType$1);
@@ -1957,9 +1928,7 @@
1957
1928
  };
1958
1929
 
1959
1930
  _proto._getDimension = function _getDimension() {
1960
- var hasWidth = this._element.classList.contains(WIDTH);
1961
-
1962
- return hasWidth ? WIDTH : HEIGHT;
1931
+ return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT;
1963
1932
  };
1964
1933
 
1965
1934
  _proto._getParent = function _getParent() {
@@ -1986,28 +1955,27 @@
1986
1955
  };
1987
1956
 
1988
1957
  _proto._addAriaAndCollapsedClass = function _addAriaAndCollapsedClass(element, triggerArray) {
1989
- if (element) {
1990
- var isOpen = element.classList.contains(CLASS_NAME_SHOW);
1991
-
1992
- if (triggerArray.length) {
1993
- triggerArray.forEach(function (elem) {
1994
- if (isOpen) {
1995
- elem.classList.remove(CLASS_NAME_COLLAPSED);
1996
- } else {
1997
- elem.classList.add(CLASS_NAME_COLLAPSED);
1998
- }
1958
+ if (!element || !triggerArray.length) {
1959
+ return;
1960
+ }
1999
1961
 
2000
- elem.setAttribute('aria-expanded', isOpen);
2001
- });
1962
+ var isOpen = element.classList.contains(CLASS_NAME_SHOW);
1963
+ triggerArray.forEach(function (elem) {
1964
+ if (isOpen) {
1965
+ elem.classList.remove(CLASS_NAME_COLLAPSED);
1966
+ } else {
1967
+ elem.classList.add(CLASS_NAME_COLLAPSED);
2002
1968
  }
2003
- }
1969
+
1970
+ elem.setAttribute('aria-expanded', isOpen);
1971
+ });
2004
1972
  } // Static
2005
1973
  ;
2006
1974
 
2007
1975
  Collapse.collapseInterface = function collapseInterface(element, config) {
2008
1976
  var data = Data.getData(element, DATA_KEY$3);
2009
1977
 
2010
- var _config = _objectSpread2(_objectSpread2(_objectSpread2({}, Default$1), Manipulator.getDataAttributes(element)), typeof config === 'object' && config ? config : {});
1978
+ var _config = _extends({}, Default$1, Manipulator.getDataAttributes(element), typeof config === 'object' && config ? config : {});
2011
1979
 
2012
1980
  if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {
2013
1981
  _config.toggle = false;
@@ -2113,7 +2081,7 @@
2113
2081
  */
2114
2082
 
2115
2083
  var NAME$4 = 'dropdown';
2116
- var VERSION$4 = '5.0.0-alpha1';
2084
+ var VERSION$4 = '5.0.0-alpha2';
2117
2085
  var DATA_KEY$4 = 'bs.dropdown';
2118
2086
  var EVENT_KEY$4 = "." + DATA_KEY$4;
2119
2087
  var DATA_API_KEY$4 = '.data-api';
@@ -2224,7 +2192,7 @@
2224
2192
 
2225
2193
 
2226
2194
  if (!this._inNavbar) {
2227
- if (typeof Popper === 'undefined') {
2195
+ if (typeof Popper__default['default'] === 'undefined') {
2228
2196
  throw new TypeError('Bootstrap\'s dropdowns require Popper.js (https://popper.js.org)');
2229
2197
  }
2230
2198
 
@@ -2247,7 +2215,7 @@
2247
2215
  parent.classList.add(CLASS_NAME_POSITION_STATIC);
2248
2216
  }
2249
2217
 
2250
- this._popper = new Popper(referenceElement, this._menu, this._getPopperConfig());
2218
+ this._popper = new Popper__default['default'](referenceElement, this._menu, this._getPopperConfig());
2251
2219
  } // If this is a touch-enabled device we add extra
2252
2220
  // empty mouseover listeners to the body's immediate children;
2253
2221
  // only needed because of broken event delegation on iOS
@@ -2329,7 +2297,7 @@
2329
2297
  };
2330
2298
 
2331
2299
  _proto._getConfig = function _getConfig(config) {
2332
- config = _objectSpread2(_objectSpread2(_objectSpread2({}, this.constructor.Default), Manipulator.getDataAttributes(this._element)), config);
2300
+ config = _extends({}, this.constructor.Default, Manipulator.getDataAttributes(this._element), config);
2333
2301
  typeCheckConfig(NAME$4, config, this.constructor.DefaultType);
2334
2302
  return config;
2335
2303
  };
@@ -2370,7 +2338,7 @@
2370
2338
 
2371
2339
  if (typeof this._config.offset === 'function') {
2372
2340
  offset.fn = function (data) {
2373
- data.offsets = _objectSpread2(_objectSpread2({}, data.offsets), _this2._config.offset(data.offsets, _this2._element) || {});
2341
+ data.offsets = _extends({}, data.offsets, _this2._config.offset(data.offsets, _this2._element) || {});
2374
2342
  return data;
2375
2343
  };
2376
2344
  } else {
@@ -2400,7 +2368,7 @@
2400
2368
  };
2401
2369
  }
2402
2370
 
2403
- return _objectSpread2(_objectSpread2({}, popperConfig), this._config.popperConfig);
2371
+ return _extends({}, popperConfig, this._config.popperConfig);
2404
2372
  } // Static
2405
2373
  ;
2406
2374
 
@@ -2619,7 +2587,7 @@
2619
2587
  */
2620
2588
 
2621
2589
  var NAME$5 = 'modal';
2622
- var VERSION$5 = '5.0.0-alpha1';
2590
+ var VERSION$5 = '5.0.0-alpha2';
2623
2591
  var DATA_KEY$5 = 'bs.modal';
2624
2592
  var EVENT_KEY$5 = "." + DATA_KEY$5;
2625
2593
  var DATA_API_KEY$5 = '.data-api';
@@ -2811,7 +2779,7 @@
2811
2779
  ;
2812
2780
 
2813
2781
  _proto._getConfig = function _getConfig(config) {
2814
- config = _objectSpread2(_objectSpread2({}, Default$3), config);
2782
+ config = _extends({}, Default$3, config);
2815
2783
  typeCheckConfig(NAME$5, config, DefaultType$3);
2816
2784
  return config;
2817
2785
  };
@@ -3017,11 +2985,25 @@
3017
2985
  return;
3018
2986
  }
3019
2987
 
2988
+ var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;
2989
+
2990
+ if (!isModalOverflowing) {
2991
+ this._element.style.overflowY = 'hidden';
2992
+ }
2993
+
3020
2994
  this._element.classList.add(CLASS_NAME_STATIC);
3021
2995
 
3022
- var modalTransitionDuration = getTransitionDurationFromElement(this._element);
2996
+ var modalTransitionDuration = getTransitionDurationFromElement(this._dialog);
2997
+ EventHandler.off(this._element, TRANSITION_END);
3023
2998
  EventHandler.one(this._element, TRANSITION_END, function () {
3024
2999
  _this9._element.classList.remove(CLASS_NAME_STATIC);
3000
+
3001
+ if (!isModalOverflowing) {
3002
+ EventHandler.one(_this9._element, TRANSITION_END, function () {
3003
+ _this9._element.style.overflowY = '';
3004
+ });
3005
+ emulateTransitionEnd(_this9._element, modalTransitionDuration);
3006
+ }
3025
3007
  });
3026
3008
  emulateTransitionEnd(this._element, modalTransitionDuration);
3027
3009
 
@@ -3132,7 +3114,7 @@
3132
3114
  return this.each(function () {
3133
3115
  var data = Data.getData(this, DATA_KEY$5);
3134
3116
 
3135
- var _config = _objectSpread2(_objectSpread2(_objectSpread2({}, Default$3), Manipulator.getDataAttributes(this)), typeof config === 'object' && config ? config : {});
3117
+ var _config = _extends({}, Default$3, Manipulator.getDataAttributes(this), typeof config === 'object' && config ? config : {});
3136
3118
 
3137
3119
  if (!data) {
3138
3120
  data = new Modal(this, _config);
@@ -3199,7 +3181,7 @@
3199
3181
  var data = Data.getData(target, DATA_KEY$5);
3200
3182
 
3201
3183
  if (!data) {
3202
- var config = _objectSpread2(_objectSpread2({}, Manipulator.getDataAttributes(target)), Manipulator.getDataAttributes(this));
3184
+ var config = _extends({}, Manipulator.getDataAttributes(target), Manipulator.getDataAttributes(this));
3203
3185
 
3204
3186
  data = new Modal(target, config);
3205
3187
  }
@@ -3229,7 +3211,7 @@
3229
3211
 
3230
3212
  /**
3231
3213
  * --------------------------------------------------------------------------
3232
- * Bootstrap (v5.0.0-alpha1): util/sanitizer.js
3214
+ * Bootstrap (v5.0.0-alpha2): util/sanitizer.js
3233
3215
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
3234
3216
  * --------------------------------------------------------------------------
3235
3217
  */
@@ -3274,7 +3256,7 @@
3274
3256
  return false;
3275
3257
  };
3276
3258
 
3277
- var DefaultWhitelist = {
3259
+ var DefaultAllowlist = {
3278
3260
  // Global attributes allowed on any supplied element below.
3279
3261
  '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],
3280
3262
  a: ['target', 'href', 'title', 'rel'],
@@ -3307,7 +3289,7 @@
3307
3289
  u: [],
3308
3290
  ul: []
3309
3291
  };
3310
- function sanitizeHtml(unsafeHtml, whiteList, sanitizeFn) {
3292
+ function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {
3311
3293
  var _ref;
3312
3294
 
3313
3295
  if (!unsafeHtml.length) {
@@ -3320,7 +3302,7 @@
3320
3302
 
3321
3303
  var domParser = new window.DOMParser();
3322
3304
  var createdDocument = domParser.parseFromString(unsafeHtml, 'text/html');
3323
- var whitelistKeys = Object.keys(whiteList);
3305
+ var allowlistKeys = Object.keys(allowList);
3324
3306
 
3325
3307
  var elements = (_ref = []).concat.apply(_ref, createdDocument.body.querySelectorAll('*'));
3326
3308
 
@@ -3330,16 +3312,16 @@
3330
3312
  var el = elements[i];
3331
3313
  var elName = el.nodeName.toLowerCase();
3332
3314
 
3333
- if (whitelistKeys.indexOf(elName) === -1) {
3315
+ if (allowlistKeys.indexOf(elName) === -1) {
3334
3316
  el.parentNode.removeChild(el);
3335
3317
  return "continue";
3336
3318
  }
3337
3319
 
3338
3320
  var attributeList = (_ref2 = []).concat.apply(_ref2, el.attributes);
3339
3321
 
3340
- var whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || []);
3322
+ var allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || []);
3341
3323
  attributeList.forEach(function (attr) {
3342
- if (!allowedAttribute(attr, whitelistedAttributes)) {
3324
+ if (!allowedAttribute(attr, allowedAttributes)) {
3343
3325
  el.removeAttribute(attr.nodeName);
3344
3326
  }
3345
3327
  });
@@ -3361,12 +3343,12 @@
3361
3343
  */
3362
3344
 
3363
3345
  var NAME$6 = 'tooltip';
3364
- var VERSION$6 = '5.0.0-alpha1';
3346
+ var VERSION$6 = '5.0.0-alpha2';
3365
3347
  var DATA_KEY$6 = 'bs.tooltip';
3366
3348
  var EVENT_KEY$6 = "." + DATA_KEY$6;
3367
3349
  var CLASS_PREFIX = 'bs-tooltip';
3368
3350
  var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
3369
- var DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn'];
3351
+ var DISALLOWED_ATTRIBUTES = ['sanitize', 'allowList', 'sanitizeFn'];
3370
3352
  var DefaultType$4 = {
3371
3353
  animation: 'boolean',
3372
3354
  template: 'string',
@@ -3382,7 +3364,7 @@
3382
3364
  boundary: '(string|element)',
3383
3365
  sanitize: 'boolean',
3384
3366
  sanitizeFn: '(null|function)',
3385
- whiteList: 'object',
3367
+ allowList: 'object',
3386
3368
  popperConfig: '(null|object)'
3387
3369
  };
3388
3370
  var AttachmentMap = {
@@ -3407,7 +3389,7 @@
3407
3389
  boundary: 'scrollParent',
3408
3390
  sanitize: true,
3409
3391
  sanitizeFn: null,
3410
- whiteList: DefaultWhitelist,
3392
+ allowList: DefaultAllowlist,
3411
3393
  popperConfig: null
3412
3394
  };
3413
3395
  var Event$1 = {
@@ -3440,7 +3422,7 @@
3440
3422
 
3441
3423
  var Tooltip = /*#__PURE__*/function () {
3442
3424
  function Tooltip(element, config) {
3443
- if (typeof Popper === 'undefined') {
3425
+ if (typeof Popper__default['default'] === 'undefined') {
3444
3426
  throw new TypeError('Bootstrap\'s tooltips require Popper.js (https://popper.js.org)');
3445
3427
  } // private
3446
3428
 
@@ -3483,11 +3465,11 @@
3483
3465
 
3484
3466
  if (event) {
3485
3467
  var dataKey = this.constructor.DATA_KEY;
3486
- var context = Data.getData(event.target, dataKey);
3468
+ var context = Data.getData(event.delegateTarget, dataKey);
3487
3469
 
3488
3470
  if (!context) {
3489
- context = new this.constructor(event.target, this._getDelegateConfig());
3490
- Data.setData(event.target, dataKey, context);
3471
+ context = new this.constructor(event.delegateTarget, this._getDelegateConfig());
3472
+ Data.setData(event.delegateTarget, dataKey, context);
3491
3473
  }
3492
3474
 
3493
3475
  context._activeTrigger.click = !context._activeTrigger.click;
@@ -3574,7 +3556,7 @@
3574
3556
  }
3575
3557
 
3576
3558
  EventHandler.trigger(this.element, this.constructor.Event.INSERTED);
3577
- this._popper = new Popper(this.element, tip, this._getPopperConfig(attachment));
3559
+ this._popper = new Popper__default['default'](this.element, tip, this._getPopperConfig(attachment));
3578
3560
  tip.classList.add(CLASS_NAME_SHOW$3); // If this is a touch-enabled device we add extra
3579
3561
  // empty mouseover listeners to the body's immediate children;
3580
3562
  // only needed because of broken event delegation on iOS
@@ -3615,6 +3597,10 @@
3615
3597
  _proto.hide = function hide() {
3616
3598
  var _this2 = this;
3617
3599
 
3600
+ if (!this._popper) {
3601
+ return;
3602
+ }
3603
+
3618
3604
  var tip = this.getTipElement();
3619
3605
 
3620
3606
  var complete = function complete() {
@@ -3716,7 +3702,7 @@
3716
3702
 
3717
3703
  if (this.config.html) {
3718
3704
  if (this.config.sanitize) {
3719
- content = sanitizeHtml(content, this.config.whiteList, this.config.sanitizeFn);
3705
+ content = sanitizeHtml(content, this.config.allowList, this.config.sanitizeFn);
3720
3706
  }
3721
3707
 
3722
3708
  element.innerHTML = content;
@@ -3762,7 +3748,7 @@
3762
3748
  return _this3._handlePopperPlacementChange(data);
3763
3749
  }
3764
3750
  };
3765
- return _objectSpread2(_objectSpread2({}, defaultBsConfig), this.config.popperConfig);
3751
+ return _extends({}, defaultBsConfig, this.config.popperConfig);
3766
3752
  };
3767
3753
 
3768
3754
  _proto._addAttachmentClass = function _addAttachmentClass(attachment) {
@@ -3776,7 +3762,7 @@
3776
3762
 
3777
3763
  if (typeof this.config.offset === 'function') {
3778
3764
  offset.fn = function (data) {
3779
- data.offsets = _objectSpread2(_objectSpread2({}, data.offsets), _this4.config.offset(data.offsets, _this4.element) || {});
3765
+ data.offsets = _extends({}, data.offsets, _this4.config.offset(data.offsets, _this4.element) || {});
3780
3766
  return data;
3781
3767
  };
3782
3768
  } else {
@@ -3832,7 +3818,7 @@
3832
3818
  EventHandler.on(this.element.closest("." + CLASS_NAME_MODAL), 'hide.bs.modal', this._hideModalHandler);
3833
3819
 
3834
3820
  if (this.config.selector) {
3835
- this.config = _objectSpread2(_objectSpread2({}, this.config), {}, {
3821
+ this.config = _extends({}, this.config, {
3836
3822
  trigger: 'manual',
3837
3823
  selector: ''
3838
3824
  });
@@ -3852,11 +3838,11 @@
3852
3838
 
3853
3839
  _proto._enter = function _enter(event, context) {
3854
3840
  var dataKey = this.constructor.DATA_KEY;
3855
- context = context || Data.getData(event.target, dataKey);
3841
+ context = context || Data.getData(event.delegateTarget, dataKey);
3856
3842
 
3857
3843
  if (!context) {
3858
- context = new this.constructor(event.target, this._getDelegateConfig());
3859
- Data.setData(event.target, dataKey, context);
3844
+ context = new this.constructor(event.delegateTarget, this._getDelegateConfig());
3845
+ Data.setData(event.delegateTarget, dataKey, context);
3860
3846
  }
3861
3847
 
3862
3848
  if (event) {
@@ -3885,11 +3871,11 @@
3885
3871
 
3886
3872
  _proto._leave = function _leave(event, context) {
3887
3873
  var dataKey = this.constructor.DATA_KEY;
3888
- context = context || Data.getData(event.target, dataKey);
3874
+ context = context || Data.getData(event.delegateTarget, dataKey);
3889
3875
 
3890
3876
  if (!context) {
3891
- context = new this.constructor(event.target, this._getDelegateConfig());
3892
- Data.setData(event.target, dataKey, context);
3877
+ context = new this.constructor(event.delegateTarget, this._getDelegateConfig());
3878
+ Data.setData(event.delegateTarget, dataKey, context);
3893
3879
  }
3894
3880
 
3895
3881
  if (event) {
@@ -3937,7 +3923,7 @@
3937
3923
  config.container = config.container[0];
3938
3924
  }
3939
3925
 
3940
- config = _objectSpread2(_objectSpread2(_objectSpread2({}, this.constructor.Default), dataAttributes), typeof config === 'object' && config ? config : {});
3926
+ config = _extends({}, this.constructor.Default, dataAttributes, typeof config === 'object' && config ? config : {});
3941
3927
 
3942
3928
  if (typeof config.delay === 'number') {
3943
3929
  config.delay = {
@@ -3957,7 +3943,7 @@
3957
3943
  typeCheckConfig(NAME$6, config, this.constructor.DefaultType);
3958
3944
 
3959
3945
  if (config.sanitize) {
3960
- config.template = sanitizeHtml(config.template, config.whiteList, config.sanitizeFn);
3946
+ config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn);
3961
3947
  }
3962
3948
 
3963
3949
  return config;
@@ -3991,8 +3977,7 @@
3991
3977
  };
3992
3978
 
3993
3979
  _proto._handlePopperPlacementChange = function _handlePopperPlacementChange(popperData) {
3994
- var popperInstance = popperData.instance;
3995
- this.tip = popperInstance.popper;
3980
+ this.tip = popperData.instance.popper;
3996
3981
 
3997
3982
  this._cleanTipClass();
3998
3983
 
@@ -4111,20 +4096,20 @@
4111
4096
  */
4112
4097
 
4113
4098
  var NAME$7 = 'popover';
4114
- var VERSION$7 = '5.0.0-alpha1';
4099
+ var VERSION$7 = '5.0.0-alpha2';
4115
4100
  var DATA_KEY$7 = 'bs.popover';
4116
4101
  var EVENT_KEY$7 = "." + DATA_KEY$7;
4117
4102
  var CLASS_PREFIX$1 = 'bs-popover';
4118
4103
  var BSCLS_PREFIX_REGEX$1 = new RegExp("(^|\\s)" + CLASS_PREFIX$1 + "\\S+", 'g');
4119
4104
 
4120
- var Default$5 = _objectSpread2(_objectSpread2({}, Tooltip.Default), {}, {
4105
+ var Default$5 = _extends({}, Tooltip.Default, {
4121
4106
  placement: 'right',
4122
4107
  trigger: 'click',
4123
4108
  content: '',
4124
4109
  template: '<div class="popover" role="tooltip">' + '<div class="popover-arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>'
4125
4110
  });
4126
4111
 
4127
- var DefaultType$5 = _objectSpread2(_objectSpread2({}, Tooltip.DefaultType), {}, {
4112
+ var DefaultType$5 = _extends({}, Tooltip.DefaultType, {
4128
4113
  content: '(string|element|function)'
4129
4114
  });
4130
4115
 
@@ -4177,12 +4162,12 @@
4177
4162
 
4178
4163
  this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content);
4179
4164
  tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$4);
4180
- };
4165
+ } // Private
4166
+ ;
4181
4167
 
4182
4168
  _proto._addAttachmentClass = function _addAttachmentClass(attachment) {
4183
4169
  this.getTipElement().classList.add(CLASS_PREFIX$1 + "-" + attachment);
4184
- } // Private
4185
- ;
4170
+ };
4186
4171
 
4187
4172
  _proto._getContent = function _getContent() {
4188
4173
  return this.element.getAttribute('data-content') || this.config.content;
@@ -4299,7 +4284,7 @@
4299
4284
  */
4300
4285
 
4301
4286
  var NAME$8 = 'scrollspy';
4302
- var VERSION$8 = '5.0.0-alpha1';
4287
+ var VERSION$8 = '5.0.0-alpha2';
4303
4288
  var DATA_KEY$8 = 'bs.scrollspy';
4304
4289
  var EVENT_KEY$8 = "." + DATA_KEY$8;
4305
4290
  var DATA_API_KEY$6 = '.data-api';
@@ -4340,7 +4325,7 @@
4340
4325
  this._element = element;
4341
4326
  this._scrollElement = element.tagName === 'BODY' ? window : element;
4342
4327
  this._config = this._getConfig(config);
4343
- this._selector = this._config.target + " " + SELECTOR_NAV_LINKS + "," + (this._config.target + " " + SELECTOR_LIST_ITEMS + ",") + (this._config.target + " ." + CLASS_NAME_DROPDOWN_ITEM);
4328
+ this._selector = this._config.target + " " + SELECTOR_NAV_LINKS + ", " + this._config.target + " " + SELECTOR_LIST_ITEMS + ", " + this._config.target + " ." + CLASS_NAME_DROPDOWN_ITEM;
4344
4329
  this._offsets = [];
4345
4330
  this._targets = [];
4346
4331
  this._activeTarget = null;
@@ -4370,12 +4355,8 @@
4370
4355
  this._scrollHeight = this._getScrollHeight();
4371
4356
  var targets = SelectorEngine.find(this._selector);
4372
4357
  targets.map(function (element) {
4373
- var target;
4374
4358
  var targetSelector = getSelectorFromElement(element);
4375
-
4376
- if (targetSelector) {
4377
- target = SelectorEngine.findOne(targetSelector);
4378
- }
4359
+ var target = targetSelector ? SelectorEngine.findOne(targetSelector) : null;
4379
4360
 
4380
4361
  if (target) {
4381
4362
  var targetBCR = target.getBoundingClientRect();
@@ -4412,7 +4393,7 @@
4412
4393
  ;
4413
4394
 
4414
4395
  _proto._getConfig = function _getConfig(config) {
4415
- config = _objectSpread2(_objectSpread2({}, Default$6), typeof config === 'object' && config ? config : {});
4396
+ config = _extends({}, Default$6, typeof config === 'object' && config ? config : {});
4416
4397
 
4417
4398
  if (typeof config.target !== 'string' && isElement(config.target)) {
4418
4399
  var id = config.target.id;
@@ -4602,7 +4583,7 @@
4602
4583
  */
4603
4584
 
4604
4585
  var NAME$9 = 'tab';
4605
- var VERSION$9 = '5.0.0-alpha1';
4586
+ var VERSION$9 = '5.0.0-alpha2';
4606
4587
  var DATA_KEY$9 = 'bs.tab';
4607
4588
  var EVENT_KEY$9 = "." + DATA_KEY$9;
4608
4589
  var DATA_API_KEY$7 = '.data-api';
@@ -4829,7 +4810,7 @@
4829
4810
  */
4830
4811
 
4831
4812
  var NAME$a = 'toast';
4832
- var VERSION$a = '5.0.0-alpha1';
4813
+ var VERSION$a = '5.0.0-alpha2';
4833
4814
  var DATA_KEY$a = 'bs.toast';
4834
4815
  var EVENT_KEY$a = "." + DATA_KEY$a;
4835
4816
  var EVENT_CLICK_DISMISS$1 = "click.dismiss" + EVENT_KEY$a;
@@ -4849,7 +4830,7 @@
4849
4830
  var Default$7 = {
4850
4831
  animation: true,
4851
4832
  autohide: true,
4852
- delay: 500
4833
+ delay: 5000
4853
4834
  };
4854
4835
  var SELECTOR_DATA_DISMISS$1 = '[data-dismiss="toast"]';
4855
4836
  /**
@@ -4882,6 +4863,8 @@
4882
4863
  return;
4883
4864
  }
4884
4865
 
4866
+ this._clearTimeout();
4867
+
4885
4868
  if (this._config.animation) {
4886
4869
  this._element.classList.add(CLASS_NAME_FADE$4);
4887
4870
  }
@@ -4946,8 +4929,7 @@
4946
4929
  };
4947
4930
 
4948
4931
  _proto.dispose = function dispose() {
4949
- clearTimeout(this._timeout);
4950
- this._timeout = null;
4932
+ this._clearTimeout();
4951
4933
 
4952
4934
  if (this._element.classList.contains(CLASS_NAME_SHOW$6)) {
4953
4935
  this._element.classList.remove(CLASS_NAME_SHOW$6);
@@ -4961,7 +4943,7 @@
4961
4943
  ;
4962
4944
 
4963
4945
  _proto._getConfig = function _getConfig(config) {
4964
- config = _objectSpread2(_objectSpread2(_objectSpread2({}, Default$7), Manipulator.getDataAttributes(this._element)), typeof config === 'object' && config ? config : {});
4946
+ config = _extends({}, Default$7, Manipulator.getDataAttributes(this._element), typeof config === 'object' && config ? config : {});
4965
4947
  typeCheckConfig(NAME$a, config, this.constructor.DefaultType);
4966
4948
  return config;
4967
4949
  };
@@ -4972,6 +4954,11 @@
4972
4954
  EventHandler.on(this._element, EVENT_CLICK_DISMISS$1, SELECTOR_DATA_DISMISS$1, function () {
4973
4955
  return _this3.hide();
4974
4956
  });
4957
+ };
4958
+
4959
+ _proto._clearTimeout = function _clearTimeout() {
4960
+ clearTimeout(this._timeout);
4961
+ this._timeout = null;
4975
4962
  } // Static
4976
4963
  ;
4977
4964
 
@@ -5042,7 +5029,7 @@
5042
5029
 
5043
5030
  /**
5044
5031
  * --------------------------------------------------------------------------
5045
- * Bootstrap (v5.0.0-alpha1): index.umd.js
5032
+ * Bootstrap (v5.0.0-alpha2): index.umd.js
5046
5033
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5047
5034
  * --------------------------------------------------------------------------
5048
5035
  */