bootstrap 4.4.1 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +11 -1
  3. data/README.md +1 -1
  4. data/assets/javascripts/bootstrap-sprockets.js +7 -7
  5. data/assets/javascripts/bootstrap.js +516 -617
  6. data/assets/javascripts/bootstrap.min.js +3 -3
  7. data/assets/javascripts/bootstrap/alert.js +19 -27
  8. data/assets/javascripts/bootstrap/button.js +50 -56
  9. data/assets/javascripts/bootstrap/carousel.js +88 -99
  10. data/assets/javascripts/bootstrap/collapse.js +43 -53
  11. data/assets/javascripts/bootstrap/dropdown.js +75 -93
  12. data/assets/javascripts/bootstrap/modal.js +87 -91
  13. data/assets/javascripts/bootstrap/popover.js +15 -21
  14. data/assets/javascripts/bootstrap/scrollspy.js +39 -53
  15. data/assets/javascripts/bootstrap/tab.js +44 -52
  16. data/assets/javascripts/bootstrap/toast.js +33 -41
  17. data/assets/javascripts/bootstrap/tooltip.js +53 -65
  18. data/assets/javascripts/bootstrap/util.js +9 -5
  19. data/assets/stylesheets/_bootstrap-grid.scss +3 -3
  20. data/assets/stylesheets/_bootstrap-reboot.scss +3 -3
  21. data/assets/stylesheets/_bootstrap.scss +3 -3
  22. data/assets/stylesheets/bootstrap/_breadcrumb.scss +2 -0
  23. data/assets/stylesheets/bootstrap/_buttons.scss +10 -7
  24. data/assets/stylesheets/bootstrap/_card.scss +11 -7
  25. data/assets/stylesheets/bootstrap/_close.scss +0 -1
  26. data/assets/stylesheets/bootstrap/_custom-forms.scss +2 -1
  27. data/assets/stylesheets/bootstrap/_dropdown.scss +2 -1
  28. data/assets/stylesheets/bootstrap/_forms.scss +9 -0
  29. data/assets/stylesheets/bootstrap/_functions.scss +12 -5
  30. data/assets/stylesheets/bootstrap/_grid.scss +9 -1
  31. data/assets/stylesheets/bootstrap/_input-group.scss +2 -1
  32. data/assets/stylesheets/bootstrap/_list-group.scss +9 -13
  33. data/assets/stylesheets/bootstrap/_modal.scss +2 -0
  34. data/assets/stylesheets/bootstrap/_nav.scss +1 -0
  35. data/assets/stylesheets/bootstrap/_pagination.scss +1 -0
  36. data/assets/stylesheets/bootstrap/_progress.scss +1 -0
  37. data/assets/stylesheets/bootstrap/_reboot.scss +10 -12
  38. data/assets/stylesheets/bootstrap/_spinners.scss +1 -0
  39. data/assets/stylesheets/bootstrap/_utilities.scss +2 -1
  40. data/assets/stylesheets/bootstrap/_variables.scss +4 -0
  41. data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +2 -1
  42. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +26 -13
  43. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +6 -6
  44. data/assets/stylesheets/bootstrap/mixins/_forms.scss +2 -2
  45. data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +25 -15
  46. data/assets/stylesheets/bootstrap/mixins/_transition.scss +17 -7
  47. data/assets/stylesheets/bootstrap/utilities/_background.scss +1 -1
  48. data/assets/stylesheets/bootstrap/utilities/_interactions.scss +5 -0
  49. data/assets/stylesheets/bootstrap/utilities/_text.scss +1 -2
  50. data/lib/bootstrap/version.rb +2 -2
  51. data/tasks/updater/network.rb +2 -2
  52. data/test/gemfiles/rails_6_0.gemfile +7 -0
  53. metadata +6 -3
@@ -1,6 +1,6 @@
1
1
  /*!
2
- * Bootstrap scrollspy.js v4.4.1 (https://getbootstrap.com/)
3
- * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
2
+ * Bootstrap scrollspy.js v4.5.0 (https://getbootstrap.com/)
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/master/LICENSE)
5
5
  */
6
6
  (function (global, factory) {
@@ -9,8 +9,8 @@
9
9
  (global = global || self, global.ScrollSpy = factory(global.jQuery, global.Util));
10
10
  }(this, (function ($, Util) { 'use strict';
11
11
 
12
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
13
- Util = Util && Util.hasOwnProperty('default') ? Util['default'] : Util;
12
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
13
+ Util = Util && Object.prototype.hasOwnProperty.call(Util, 'default') ? Util['default'] : Util;
14
14
 
15
15
  function _defineProperties(target, props) {
16
16
  for (var i = 0; i < props.length; i++) {
@@ -84,7 +84,7 @@
84
84
  */
85
85
 
86
86
  var NAME = 'scrollspy';
87
- var VERSION = '4.4.1';
87
+ var VERSION = '4.5.0';
88
88
  var DATA_KEY = 'bs.scrollspy';
89
89
  var EVENT_KEY = "." + DATA_KEY;
90
90
  var DATA_API_KEY = '.data-api';
@@ -99,52 +99,40 @@
99
99
  method: 'string',
100
100
  target: '(string|element)'
101
101
  };
102
- var Event = {
103
- ACTIVATE: "activate" + EVENT_KEY,
104
- SCROLL: "scroll" + EVENT_KEY,
105
- LOAD_DATA_API: "load" + EVENT_KEY + DATA_API_KEY
106
- };
107
- var ClassName = {
108
- DROPDOWN_ITEM: 'dropdown-item',
109
- DROPDOWN_MENU: 'dropdown-menu',
110
- ACTIVE: 'active'
111
- };
112
- var Selector = {
113
- DATA_SPY: '[data-spy="scroll"]',
114
- ACTIVE: '.active',
115
- NAV_LIST_GROUP: '.nav, .list-group',
116
- NAV_LINKS: '.nav-link',
117
- NAV_ITEMS: '.nav-item',
118
- LIST_ITEMS: '.list-group-item',
119
- DROPDOWN: '.dropdown',
120
- DROPDOWN_ITEMS: '.dropdown-item',
121
- DROPDOWN_TOGGLE: '.dropdown-toggle'
122
- };
123
- var OffsetMethod = {
124
- OFFSET: 'offset',
125
- POSITION: 'position'
126
- };
102
+ var EVENT_ACTIVATE = "activate" + EVENT_KEY;
103
+ var EVENT_SCROLL = "scroll" + EVENT_KEY;
104
+ var EVENT_LOAD_DATA_API = "load" + EVENT_KEY + DATA_API_KEY;
105
+ var CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item';
106
+ var CLASS_NAME_ACTIVE = 'active';
107
+ var SELECTOR_DATA_SPY = '[data-spy="scroll"]';
108
+ var SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';
109
+ var SELECTOR_NAV_LINKS = '.nav-link';
110
+ var SELECTOR_NAV_ITEMS = '.nav-item';
111
+ var SELECTOR_LIST_ITEMS = '.list-group-item';
112
+ var SELECTOR_DROPDOWN = '.dropdown';
113
+ var SELECTOR_DROPDOWN_ITEMS = '.dropdown-item';
114
+ var SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
115
+ var METHOD_OFFSET = 'offset';
116
+ var METHOD_POSITION = 'position';
127
117
  /**
128
118
  * ------------------------------------------------------------------------
129
119
  * Class Definition
130
120
  * ------------------------------------------------------------------------
131
121
  */
132
122
 
133
- var ScrollSpy =
134
- /*#__PURE__*/
135
- function () {
123
+ var ScrollSpy = /*#__PURE__*/function () {
136
124
  function ScrollSpy(element, config) {
137
125
  var _this = this;
138
126
 
139
127
  this._element = element;
140
128
  this._scrollElement = element.tagName === 'BODY' ? window : element;
141
129
  this._config = this._getConfig(config);
142
- this._selector = this._config.target + " " + Selector.NAV_LINKS + "," + (this._config.target + " " + Selector.LIST_ITEMS + ",") + (this._config.target + " " + Selector.DROPDOWN_ITEMS);
130
+ this._selector = this._config.target + " " + SELECTOR_NAV_LINKS + "," + (this._config.target + " " + SELECTOR_LIST_ITEMS + ",") + (this._config.target + " " + SELECTOR_DROPDOWN_ITEMS);
143
131
  this._offsets = [];
144
132
  this._targets = [];
145
133
  this._activeTarget = null;
146
134
  this._scrollHeight = 0;
147
- $(this._scrollElement).on(Event.SCROLL, function (event) {
135
+ $(this._scrollElement).on(EVENT_SCROLL, function (event) {
148
136
  return _this._process(event);
149
137
  });
150
138
  this.refresh();
@@ -159,9 +147,9 @@
159
147
  _proto.refresh = function refresh() {
160
148
  var _this2 = this;
161
149
 
162
- var autoMethod = this._scrollElement === this._scrollElement.window ? OffsetMethod.OFFSET : OffsetMethod.POSITION;
150
+ var autoMethod = this._scrollElement === this._scrollElement.window ? METHOD_OFFSET : METHOD_POSITION;
163
151
  var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method;
164
- var offsetBase = offsetMethod === OffsetMethod.POSITION ? this._getScrollTop() : 0;
152
+ var offsetBase = offsetMethod === METHOD_POSITION ? this._getScrollTop() : 0;
165
153
  this._offsets = [];
166
154
  this._targets = [];
167
155
  this._scrollHeight = this._getScrollHeight();
@@ -210,9 +198,9 @@
210
198
  ;
211
199
 
212
200
  _proto._getConfig = function _getConfig(config) {
213
- config = _objectSpread2({}, Default, {}, typeof config === 'object' && config ? config : {});
201
+ config = _objectSpread2(_objectSpread2({}, Default), typeof config === 'object' && config ? config : {});
214
202
 
215
- if (typeof config.target !== 'string') {
203
+ if (typeof config.target !== 'string' && Util.isElement(config.target)) {
216
204
  var id = $(config.target).attr('id');
217
205
 
218
206
  if (!id) {
@@ -268,9 +256,7 @@
268
256
  return;
269
257
  }
270
258
 
271
- var offsetLength = this._offsets.length;
272
-
273
- for (var i = offsetLength; i--;) {
259
+ for (var i = this._offsets.length; i--;) {
274
260
  var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]);
275
261
 
276
262
  if (isActiveTarget) {
@@ -290,29 +276,29 @@
290
276
 
291
277
  var $link = $([].slice.call(document.querySelectorAll(queries.join(','))));
292
278
 
293
- if ($link.hasClass(ClassName.DROPDOWN_ITEM)) {
294
- $link.closest(Selector.DROPDOWN).find(Selector.DROPDOWN_TOGGLE).addClass(ClassName.ACTIVE);
295
- $link.addClass(ClassName.ACTIVE);
279
+ if ($link.hasClass(CLASS_NAME_DROPDOWN_ITEM)) {
280
+ $link.closest(SELECTOR_DROPDOWN).find(SELECTOR_DROPDOWN_TOGGLE).addClass(CLASS_NAME_ACTIVE);
281
+ $link.addClass(CLASS_NAME_ACTIVE);
296
282
  } else {
297
283
  // Set triggered link as active
298
- $link.addClass(ClassName.ACTIVE); // Set triggered links parents as active
284
+ $link.addClass(CLASS_NAME_ACTIVE); // Set triggered links parents as active
299
285
  // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor
300
286
 
301
- $link.parents(Selector.NAV_LIST_GROUP).prev(Selector.NAV_LINKS + ", " + Selector.LIST_ITEMS).addClass(ClassName.ACTIVE); // Handle special case when .nav-link is inside .nav-item
287
+ $link.parents(SELECTOR_NAV_LIST_GROUP).prev(SELECTOR_NAV_LINKS + ", " + SELECTOR_LIST_ITEMS).addClass(CLASS_NAME_ACTIVE); // Handle special case when .nav-link is inside .nav-item
302
288
 
303
- $link.parents(Selector.NAV_LIST_GROUP).prev(Selector.NAV_ITEMS).children(Selector.NAV_LINKS).addClass(ClassName.ACTIVE);
289
+ $link.parents(SELECTOR_NAV_LIST_GROUP).prev(SELECTOR_NAV_ITEMS).children(SELECTOR_NAV_LINKS).addClass(CLASS_NAME_ACTIVE);
304
290
  }
305
291
 
306
- $(this._scrollElement).trigger(Event.ACTIVATE, {
292
+ $(this._scrollElement).trigger(EVENT_ACTIVATE, {
307
293
  relatedTarget: target
308
294
  });
309
295
  };
310
296
 
311
297
  _proto._clear = function _clear() {
312
298
  [].slice.call(document.querySelectorAll(this._selector)).filter(function (node) {
313
- return node.classList.contains(ClassName.ACTIVE);
299
+ return node.classList.contains(CLASS_NAME_ACTIVE);
314
300
  }).forEach(function (node) {
315
- return node.classList.remove(ClassName.ACTIVE);
301
+ return node.classList.remove(CLASS_NAME_ACTIVE);
316
302
  });
317
303
  } // Static
318
304
  ;
@@ -359,8 +345,8 @@
359
345
  */
360
346
 
361
347
 
362
- $(window).on(Event.LOAD_DATA_API, function () {
363
- var scrollSpys = [].slice.call(document.querySelectorAll(Selector.DATA_SPY));
348
+ $(window).on(EVENT_LOAD_DATA_API, function () {
349
+ var scrollSpys = [].slice.call(document.querySelectorAll(SELECTOR_DATA_SPY));
364
350
  var scrollSpysLength = scrollSpys.length;
365
351
 
366
352
  for (var i = scrollSpysLength; i--;) {
@@ -1,6 +1,6 @@
1
1
  /*!
2
- * Bootstrap tab.js v4.4.1 (https://getbootstrap.com/)
3
- * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
2
+ * Bootstrap tab.js v4.5.0 (https://getbootstrap.com/)
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/master/LICENSE)
5
5
  */
6
6
  (function (global, factory) {
@@ -9,8 +9,8 @@
9
9
  (global = global || self, global.Tab = factory(global.jQuery, global.Util));
10
10
  }(this, (function ($, Util) { 'use strict';
11
11
 
12
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
13
- Util = Util && Util.hasOwnProperty('default') ? Util['default'] : Util;
12
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
13
+ Util = Util && Object.prototype.hasOwnProperty.call(Util, 'default') ? Util['default'] : Util;
14
14
 
15
15
  function _defineProperties(target, props) {
16
16
  for (var i = 0; i < props.length; i++) {
@@ -35,43 +35,35 @@
35
35
  */
36
36
 
37
37
  var NAME = 'tab';
38
- var VERSION = '4.4.1';
38
+ var VERSION = '4.5.0';
39
39
  var DATA_KEY = 'bs.tab';
40
40
  var EVENT_KEY = "." + DATA_KEY;
41
41
  var DATA_API_KEY = '.data-api';
42
42
  var JQUERY_NO_CONFLICT = $.fn[NAME];
43
- var Event = {
44
- HIDE: "hide" + EVENT_KEY,
45
- HIDDEN: "hidden" + EVENT_KEY,
46
- SHOW: "show" + EVENT_KEY,
47
- SHOWN: "shown" + EVENT_KEY,
48
- CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
49
- };
50
- var ClassName = {
51
- DROPDOWN_MENU: 'dropdown-menu',
52
- ACTIVE: 'active',
53
- DISABLED: 'disabled',
54
- FADE: 'fade',
55
- SHOW: 'show'
56
- };
57
- var Selector = {
58
- DROPDOWN: '.dropdown',
59
- NAV_LIST_GROUP: '.nav, .list-group',
60
- ACTIVE: '.active',
61
- ACTIVE_UL: '> li > .active',
62
- DATA_TOGGLE: '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',
63
- DROPDOWN_TOGGLE: '.dropdown-toggle',
64
- DROPDOWN_ACTIVE_CHILD: '> .dropdown-menu .active'
65
- };
43
+ var EVENT_HIDE = "hide" + EVENT_KEY;
44
+ var EVENT_HIDDEN = "hidden" + EVENT_KEY;
45
+ var EVENT_SHOW = "show" + EVENT_KEY;
46
+ var EVENT_SHOWN = "shown" + EVENT_KEY;
47
+ var EVENT_CLICK_DATA_API = "click" + EVENT_KEY + DATA_API_KEY;
48
+ var CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu';
49
+ var CLASS_NAME_ACTIVE = 'active';
50
+ var CLASS_NAME_DISABLED = 'disabled';
51
+ var CLASS_NAME_FADE = 'fade';
52
+ var CLASS_NAME_SHOW = 'show';
53
+ var SELECTOR_DROPDOWN = '.dropdown';
54
+ var SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';
55
+ var SELECTOR_ACTIVE = '.active';
56
+ var SELECTOR_ACTIVE_UL = '> li > .active';
57
+ var SELECTOR_DATA_TOGGLE = '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]';
58
+ var SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
59
+ var SELECTOR_DROPDOWN_ACTIVE_CHILD = '> .dropdown-menu .active';
66
60
  /**
67
61
  * ------------------------------------------------------------------------
68
62
  * Class Definition
69
63
  * ------------------------------------------------------------------------
70
64
  */
71
65
 
72
- var Tab =
73
- /*#__PURE__*/
74
- function () {
66
+ var Tab = /*#__PURE__*/function () {
75
67
  function Tab(element) {
76
68
  this._element = element;
77
69
  } // Getters
@@ -83,25 +75,25 @@
83
75
  _proto.show = function show() {
84
76
  var _this = this;
85
77
 
86
- if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $(this._element).hasClass(ClassName.ACTIVE) || $(this._element).hasClass(ClassName.DISABLED)) {
78
+ if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $(this._element).hasClass(CLASS_NAME_ACTIVE) || $(this._element).hasClass(CLASS_NAME_DISABLED)) {
87
79
  return;
88
80
  }
89
81
 
90
82
  var target;
91
83
  var previous;
92
- var listElement = $(this._element).closest(Selector.NAV_LIST_GROUP)[0];
84
+ var listElement = $(this._element).closest(SELECTOR_NAV_LIST_GROUP)[0];
93
85
  var selector = Util.getSelectorFromElement(this._element);
94
86
 
95
87
  if (listElement) {
96
- var itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? Selector.ACTIVE_UL : Selector.ACTIVE;
88
+ var itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE;
97
89
  previous = $.makeArray($(listElement).find(itemSelector));
98
90
  previous = previous[previous.length - 1];
99
91
  }
100
92
 
101
- var hideEvent = $.Event(Event.HIDE, {
93
+ var hideEvent = $.Event(EVENT_HIDE, {
102
94
  relatedTarget: this._element
103
95
  });
104
- var showEvent = $.Event(Event.SHOW, {
96
+ var showEvent = $.Event(EVENT_SHOW, {
105
97
  relatedTarget: previous
106
98
  });
107
99
 
@@ -122,10 +114,10 @@
122
114
  this._activate(this._element, listElement);
123
115
 
124
116
  var complete = function complete() {
125
- var hiddenEvent = $.Event(Event.HIDDEN, {
117
+ var hiddenEvent = $.Event(EVENT_HIDDEN, {
126
118
  relatedTarget: _this._element
127
119
  });
128
- var shownEvent = $.Event(Event.SHOWN, {
120
+ var shownEvent = $.Event(EVENT_SHOWN, {
129
121
  relatedTarget: previous
130
122
  });
131
123
  $(previous).trigger(hiddenEvent);
@@ -148,9 +140,9 @@
148
140
  _proto._activate = function _activate(element, container, callback) {
149
141
  var _this2 = this;
150
142
 
151
- var activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? $(container).find(Selector.ACTIVE_UL) : $(container).children(Selector.ACTIVE);
143
+ var activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? $(container).find(SELECTOR_ACTIVE_UL) : $(container).children(SELECTOR_ACTIVE);
152
144
  var active = activeElements[0];
153
- var isTransitioning = callback && active && $(active).hasClass(ClassName.FADE);
145
+ var isTransitioning = callback && active && $(active).hasClass(CLASS_NAME_FADE);
154
146
 
155
147
  var complete = function complete() {
156
148
  return _this2._transitionComplete(element, active, callback);
@@ -158,7 +150,7 @@
158
150
 
159
151
  if (active && isTransitioning) {
160
152
  var transitionDuration = Util.getTransitionDurationFromElement(active);
161
- $(active).removeClass(ClassName.SHOW).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
153
+ $(active).removeClass(CLASS_NAME_SHOW).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
162
154
  } else {
163
155
  complete();
164
156
  }
@@ -166,11 +158,11 @@
166
158
 
167
159
  _proto._transitionComplete = function _transitionComplete(element, active, callback) {
168
160
  if (active) {
169
- $(active).removeClass(ClassName.ACTIVE);
170
- var dropdownChild = $(active.parentNode).find(Selector.DROPDOWN_ACTIVE_CHILD)[0];
161
+ $(active).removeClass(CLASS_NAME_ACTIVE);
162
+ var dropdownChild = $(active.parentNode).find(SELECTOR_DROPDOWN_ACTIVE_CHILD)[0];
171
163
 
172
164
  if (dropdownChild) {
173
- $(dropdownChild).removeClass(ClassName.ACTIVE);
165
+ $(dropdownChild).removeClass(CLASS_NAME_ACTIVE);
174
166
  }
175
167
 
176
168
  if (active.getAttribute('role') === 'tab') {
@@ -178,7 +170,7 @@
178
170
  }
179
171
  }
180
172
 
181
- $(element).addClass(ClassName.ACTIVE);
173
+ $(element).addClass(CLASS_NAME_ACTIVE);
182
174
 
183
175
  if (element.getAttribute('role') === 'tab') {
184
176
  element.setAttribute('aria-selected', true);
@@ -186,16 +178,16 @@
186
178
 
187
179
  Util.reflow(element);
188
180
 
189
- if (element.classList.contains(ClassName.FADE)) {
190
- element.classList.add(ClassName.SHOW);
181
+ if (element.classList.contains(CLASS_NAME_FADE)) {
182
+ element.classList.add(CLASS_NAME_SHOW);
191
183
  }
192
184
 
193
- if (element.parentNode && $(element.parentNode).hasClass(ClassName.DROPDOWN_MENU)) {
194
- var dropdownElement = $(element).closest(Selector.DROPDOWN)[0];
185
+ if (element.parentNode && $(element.parentNode).hasClass(CLASS_NAME_DROPDOWN_MENU)) {
186
+ var dropdownElement = $(element).closest(SELECTOR_DROPDOWN)[0];
195
187
 
196
188
  if (dropdownElement) {
197
- var dropdownToggleList = [].slice.call(dropdownElement.querySelectorAll(Selector.DROPDOWN_TOGGLE));
198
- $(dropdownToggleList).addClass(ClassName.ACTIVE);
189
+ var dropdownToggleList = [].slice.call(dropdownElement.querySelectorAll(SELECTOR_DROPDOWN_TOGGLE));
190
+ $(dropdownToggleList).addClass(CLASS_NAME_ACTIVE);
199
191
  }
200
192
 
201
193
  element.setAttribute('aria-expanded', true);
@@ -243,7 +235,7 @@
243
235
  */
244
236
 
245
237
 
246
- $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
238
+ $(document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
247
239
  event.preventDefault();
248
240
 
249
241
  Tab._jQueryInterface.call($(this), 'show');
@@ -1,6 +1,6 @@
1
1
  /*!
2
- * Bootstrap toast.js v4.4.1 (https://getbootstrap.com/)
3
- * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
2
+ * Bootstrap toast.js v4.5.0 (https://getbootstrap.com/)
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/master/LICENSE)
5
5
  */
6
6
  (function (global, factory) {
@@ -9,8 +9,8 @@
9
9
  (global = global || self, global.Toast = factory(global.jQuery, global.Util));
10
10
  }(this, (function ($, Util) { 'use strict';
11
11
 
12
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
13
- Util = Util && Util.hasOwnProperty('default') ? Util['default'] : Util;
12
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
13
+ Util = Util && Object.prototype.hasOwnProperty.call(Util, 'default') ? Util['default'] : Util;
14
14
 
15
15
  function _defineProperties(target, props) {
16
16
  for (var i = 0; i < props.length; i++) {
@@ -84,23 +84,19 @@
84
84
  */
85
85
 
86
86
  var NAME = 'toast';
87
- var VERSION = '4.4.1';
87
+ var VERSION = '4.5.0';
88
88
  var DATA_KEY = 'bs.toast';
89
89
  var EVENT_KEY = "." + DATA_KEY;
90
90
  var JQUERY_NO_CONFLICT = $.fn[NAME];
91
- var Event = {
92
- CLICK_DISMISS: "click.dismiss" + EVENT_KEY,
93
- HIDE: "hide" + EVENT_KEY,
94
- HIDDEN: "hidden" + EVENT_KEY,
95
- SHOW: "show" + EVENT_KEY,
96
- SHOWN: "shown" + EVENT_KEY
97
- };
98
- var ClassName = {
99
- FADE: 'fade',
100
- HIDE: 'hide',
101
- SHOW: 'show',
102
- SHOWING: 'showing'
103
- };
91
+ var EVENT_CLICK_DISMISS = "click.dismiss" + EVENT_KEY;
92
+ var EVENT_HIDE = "hide" + EVENT_KEY;
93
+ var EVENT_HIDDEN = "hidden" + EVENT_KEY;
94
+ var EVENT_SHOW = "show" + EVENT_KEY;
95
+ var EVENT_SHOWN = "shown" + EVENT_KEY;
96
+ var CLASS_NAME_FADE = 'fade';
97
+ var CLASS_NAME_HIDE = 'hide';
98
+ var CLASS_NAME_SHOW = 'show';
99
+ var CLASS_NAME_SHOWING = 'showing';
104
100
  var DefaultType = {
105
101
  animation: 'boolean',
106
102
  autohide: 'boolean',
@@ -111,18 +107,14 @@
111
107
  autohide: true,
112
108
  delay: 500
113
109
  };
114
- var Selector = {
115
- DATA_DISMISS: '[data-dismiss="toast"]'
116
- };
110
+ var SELECTOR_DATA_DISMISS = '[data-dismiss="toast"]';
117
111
  /**
118
112
  * ------------------------------------------------------------------------
119
113
  * Class Definition
120
114
  * ------------------------------------------------------------------------
121
115
  */
122
116
 
123
- var Toast =
124
- /*#__PURE__*/
125
- function () {
117
+ var Toast = /*#__PURE__*/function () {
126
118
  function Toast(element, config) {
127
119
  this._element = element;
128
120
  this._config = this._getConfig(config);
@@ -138,7 +130,7 @@
138
130
  _proto.show = function show() {
139
131
  var _this = this;
140
132
 
141
- var showEvent = $.Event(Event.SHOW);
133
+ var showEvent = $.Event(EVENT_SHOW);
142
134
  $(this._element).trigger(showEvent);
143
135
 
144
136
  if (showEvent.isDefaultPrevented()) {
@@ -146,15 +138,15 @@
146
138
  }
147
139
 
148
140
  if (this._config.animation) {
149
- this._element.classList.add(ClassName.FADE);
141
+ this._element.classList.add(CLASS_NAME_FADE);
150
142
  }
151
143
 
152
144
  var complete = function complete() {
153
- _this._element.classList.remove(ClassName.SHOWING);
145
+ _this._element.classList.remove(CLASS_NAME_SHOWING);
154
146
 
155
- _this._element.classList.add(ClassName.SHOW);
147
+ _this._element.classList.add(CLASS_NAME_SHOW);
156
148
 
157
- $(_this._element).trigger(Event.SHOWN);
149
+ $(_this._element).trigger(EVENT_SHOWN);
158
150
 
159
151
  if (_this._config.autohide) {
160
152
  _this._timeout = setTimeout(function () {
@@ -163,11 +155,11 @@
163
155
  }
164
156
  };
165
157
 
166
- this._element.classList.remove(ClassName.HIDE);
158
+ this._element.classList.remove(CLASS_NAME_HIDE);
167
159
 
168
160
  Util.reflow(this._element);
169
161
 
170
- this._element.classList.add(ClassName.SHOWING);
162
+ this._element.classList.add(CLASS_NAME_SHOWING);
171
163
 
172
164
  if (this._config.animation) {
173
165
  var transitionDuration = Util.getTransitionDurationFromElement(this._element);
@@ -178,11 +170,11 @@
178
170
  };
179
171
 
180
172
  _proto.hide = function hide() {
181
- if (!this._element.classList.contains(ClassName.SHOW)) {
173
+ if (!this._element.classList.contains(CLASS_NAME_SHOW)) {
182
174
  return;
183
175
  }
184
176
 
185
- var hideEvent = $.Event(Event.HIDE);
177
+ var hideEvent = $.Event(EVENT_HIDE);
186
178
  $(this._element).trigger(hideEvent);
187
179
 
188
180
  if (hideEvent.isDefaultPrevented()) {
@@ -196,11 +188,11 @@
196
188
  clearTimeout(this._timeout);
197
189
  this._timeout = null;
198
190
 
199
- if (this._element.classList.contains(ClassName.SHOW)) {
200
- this._element.classList.remove(ClassName.SHOW);
191
+ if (this._element.classList.contains(CLASS_NAME_SHOW)) {
192
+ this._element.classList.remove(CLASS_NAME_SHOW);
201
193
  }
202
194
 
203
- $(this._element).off(Event.CLICK_DISMISS);
195
+ $(this._element).off(EVENT_CLICK_DISMISS);
204
196
  $.removeData(this._element, DATA_KEY);
205
197
  this._element = null;
206
198
  this._config = null;
@@ -208,7 +200,7 @@
208
200
  ;
209
201
 
210
202
  _proto._getConfig = function _getConfig(config) {
211
- config = _objectSpread2({}, Default, {}, $(this._element).data(), {}, typeof config === 'object' && config ? config : {});
203
+ config = _objectSpread2(_objectSpread2(_objectSpread2({}, Default), $(this._element).data()), typeof config === 'object' && config ? config : {});
212
204
  Util.typeCheckConfig(NAME, config, this.constructor.DefaultType);
213
205
  return config;
214
206
  };
@@ -216,7 +208,7 @@
216
208
  _proto._setListeners = function _setListeners() {
217
209
  var _this2 = this;
218
210
 
219
- $(this._element).on(Event.CLICK_DISMISS, Selector.DATA_DISMISS, function () {
211
+ $(this._element).on(EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, function () {
220
212
  return _this2.hide();
221
213
  });
222
214
  };
@@ -225,12 +217,12 @@
225
217
  var _this3 = this;
226
218
 
227
219
  var complete = function complete() {
228
- _this3._element.classList.add(ClassName.HIDE);
220
+ _this3._element.classList.add(CLASS_NAME_HIDE);
229
221
 
230
- $(_this3._element).trigger(Event.HIDDEN);
222
+ $(_this3._element).trigger(EVENT_HIDDEN);
231
223
  };
232
224
 
233
- this._element.classList.remove(ClassName.SHOW);
225
+ this._element.classList.remove(CLASS_NAME_SHOW);
234
226
 
235
227
  if (this._config.animation) {
236
228
  var transitionDuration = Util.getTransitionDurationFromElement(this._element);