bootstrap 4.3.0 → 4.5.3

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.
Files changed (89) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +15 -1
  3. data/CHANGELOG.md +2 -14
  4. data/README.md +1 -1
  5. data/assets/javascripts/bootstrap-sprockets.js +7 -7
  6. data/assets/javascripts/bootstrap.js +1186 -1056
  7. data/assets/javascripts/bootstrap.min.js +4 -4
  8. data/assets/javascripts/bootstrap/alert.js +45 -65
  9. data/assets/javascripts/bootstrap/button.js +114 -80
  10. data/assets/javascripts/bootstrap/carousel.js +131 -186
  11. data/assets/javascripts/bootstrap/collapse.js +86 -140
  12. data/assets/javascripts/bootstrap/dropdown.js +152 -207
  13. data/assets/javascripts/bootstrap/modal.js +204 -214
  14. data/assets/javascripts/bootstrap/popover.js +41 -95
  15. data/assets/javascripts/bootstrap/scrollspy.js +69 -127
  16. data/assets/javascripts/bootstrap/tab.js +75 -95
  17. data/assets/javascripts/bootstrap/toast.js +87 -127
  18. data/assets/javascripts/bootstrap/tooltip.js +298 -198
  19. data/assets/javascripts/bootstrap/util.js +41 -20
  20. data/assets/stylesheets/_bootstrap-grid.scss +4 -4
  21. data/assets/stylesheets/_bootstrap-reboot.scss +4 -4
  22. data/assets/stylesheets/_bootstrap.scss +4 -4
  23. data/assets/stylesheets/bootstrap/_alert.scss +1 -0
  24. data/assets/stylesheets/bootstrap/_badge.scss +1 -1
  25. data/assets/stylesheets/bootstrap/_breadcrumb.scss +4 -1
  26. data/assets/stylesheets/bootstrap/_button-group.scss +1 -1
  27. data/assets/stylesheets/bootstrap/_buttons.scss +13 -8
  28. data/assets/stylesheets/bootstrap/_card.scss +42 -45
  29. data/assets/stylesheets/bootstrap/_carousel.scss +6 -6
  30. data/assets/stylesheets/bootstrap/_close.scss +2 -3
  31. data/assets/stylesheets/bootstrap/_code.scss +1 -1
  32. data/assets/stylesheets/bootstrap/_custom-forms.scss +34 -17
  33. data/assets/stylesheets/bootstrap/_dropdown.scss +6 -5
  34. data/assets/stylesheets/bootstrap/_forms.scss +26 -9
  35. data/assets/stylesheets/bootstrap/_functions.scss +63 -5
  36. data/assets/stylesheets/bootstrap/_grid.scss +32 -11
  37. data/assets/stylesheets/bootstrap/_images.scss +2 -2
  38. data/assets/stylesheets/bootstrap/_input-group.scss +1 -2
  39. data/assets/stylesheets/bootstrap/_list-group.scss +36 -31
  40. data/assets/stylesheets/bootstrap/_mixins.scss +3 -3
  41. data/assets/stylesheets/bootstrap/_modal.scss +26 -15
  42. data/assets/stylesheets/bootstrap/_nav.scss +6 -3
  43. data/assets/stylesheets/bootstrap/_navbar.scss +45 -15
  44. data/assets/stylesheets/bootstrap/_pagination.scss +3 -2
  45. data/assets/stylesheets/bootstrap/_popover.scss +8 -9
  46. data/assets/stylesheets/bootstrap/_print.scss +2 -2
  47. data/assets/stylesheets/bootstrap/_progress.scss +6 -2
  48. data/assets/stylesheets/bootstrap/_reboot.scss +32 -31
  49. data/assets/stylesheets/bootstrap/_root.scss +1 -0
  50. data/assets/stylesheets/bootstrap/_spinners.scss +3 -2
  51. data/assets/stylesheets/bootstrap/_tables.scss +3 -3
  52. data/assets/stylesheets/bootstrap/_toasts.scss +4 -2
  53. data/assets/stylesheets/bootstrap/_type.scss +2 -2
  54. data/assets/stylesheets/bootstrap/_utilities.scss +2 -1
  55. data/assets/stylesheets/bootstrap/_variables.scss +51 -32
  56. data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +5 -3
  57. data/assets/stylesheets/bootstrap/mixins/_badge.scss +1 -1
  58. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +27 -14
  59. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +11 -8
  60. data/assets/stylesheets/bootstrap/mixins/_caret.scss +8 -8
  61. data/assets/stylesheets/bootstrap/mixins/_float.scss +3 -3
  62. data/assets/stylesheets/bootstrap/mixins/_forms.scss +35 -49
  63. data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +29 -15
  64. data/assets/stylesheets/bootstrap/mixins/_grid.scss +25 -7
  65. data/assets/stylesheets/bootstrap/mixins/_hover.scss +4 -4
  66. data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -1
  67. data/assets/stylesheets/bootstrap/mixins/_list-group.scss +1 -1
  68. data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
  69. data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +2 -1
  70. data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +1 -1
  71. data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +4 -3
  72. data/assets/stylesheets/bootstrap/mixins/_table-row.scss +1 -1
  73. data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +3 -2
  74. data/assets/stylesheets/bootstrap/mixins/_transition.scss +18 -8
  75. data/assets/stylesheets/bootstrap/utilities/_background.scss +2 -2
  76. data/assets/stylesheets/bootstrap/utilities/_borders.scss +1 -1
  77. data/assets/stylesheets/bootstrap/utilities/_interactions.scss +5 -0
  78. data/assets/stylesheets/bootstrap/utilities/_text.scss +4 -4
  79. data/assets/stylesheets/bootstrap/vendor/_rfs.scss +0 -8
  80. data/bootstrap.gemspec +1 -1
  81. data/lib/bootstrap/version.rb +2 -2
  82. data/tasks/updater/js.rb +1 -1
  83. data/tasks/updater/network.rb +2 -2
  84. data/test/dummy_rails/app/assets/config/manifest.js +3 -0
  85. data/test/dummy_rails/app/assets/stylesheets/.browserslistrc +1 -0
  86. data/test/gemfiles/rails_6_0.gemfile +7 -0
  87. data/test/support/dummy_rails_integration.rb +3 -1
  88. data/test/test_helper.rb +18 -13
  89. metadata +11 -5
@@ -1,33 +1,22 @@
1
1
  /*!
2
- * Bootstrap tab.js v4.3.0 (https://getbootstrap.com/)
3
- * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
2
+ * Bootstrap tab.js v4.5.3 (https://getbootstrap.com/)
3
+ * Copyright 2011-2020 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
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('jquery'), require('./util.js')) :
8
8
  typeof define === 'function' && define.amd ? define(['jquery', './util.js'], factory) :
9
- (global = global || self, global.Tab = factory(global.jQuery, global.Util));
10
- }(this, function ($, Util) { 'use strict';
11
-
12
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
13
- Util = Util && Util.hasOwnProperty('default') ? Util['default'] : Util;
14
-
15
- function _defineProperties(target, props) {
16
- for (var i = 0; i < props.length; i++) {
17
- var descriptor = props[i];
18
- descriptor.enumerable = descriptor.enumerable || false;
19
- descriptor.configurable = true;
20
- if ("value" in descriptor) descriptor.writable = true;
21
- Object.defineProperty(target, descriptor.key, descriptor);
22
- }
23
- }
24
-
25
- function _createClass(Constructor, protoProps, staticProps) {
26
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
27
- if (staticProps) _defineProperties(Constructor, staticProps);
28
- return Constructor;
29
- }
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Tab = factory(global.jQuery, global.Util));
10
+ }(this, (function ($, Util) { 'use strict';
30
11
 
12
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
+
14
+ var $__default = /*#__PURE__*/_interopDefaultLegacy($);
15
+ var Util__default = /*#__PURE__*/_interopDefaultLegacy(Util);
16
+
17
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
18
+
19
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
31
20
  /**
32
21
  * ------------------------------------------------------------------------
33
22
  * Constants
@@ -35,44 +24,35 @@
35
24
  */
36
25
 
37
26
  var NAME = 'tab';
38
- var VERSION = '4.3.0';
27
+ var VERSION = '4.5.3';
39
28
  var DATA_KEY = 'bs.tab';
40
29
  var EVENT_KEY = "." + DATA_KEY;
41
30
  var DATA_API_KEY = '.data-api';
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
- /**
66
- * ------------------------------------------------------------------------
67
- * Class Definition
68
- * ------------------------------------------------------------------------
69
- */
70
-
71
- };
31
+ var JQUERY_NO_CONFLICT = $__default['default'].fn[NAME];
32
+ var EVENT_HIDE = "hide" + EVENT_KEY;
33
+ var EVENT_HIDDEN = "hidden" + EVENT_KEY;
34
+ var EVENT_SHOW = "show" + EVENT_KEY;
35
+ var EVENT_SHOWN = "shown" + EVENT_KEY;
36
+ var EVENT_CLICK_DATA_API = "click" + EVENT_KEY + DATA_API_KEY;
37
+ var CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu';
38
+ var CLASS_NAME_ACTIVE = 'active';
39
+ var CLASS_NAME_DISABLED = 'disabled';
40
+ var CLASS_NAME_FADE = 'fade';
41
+ var CLASS_NAME_SHOW = 'show';
42
+ var SELECTOR_DROPDOWN = '.dropdown';
43
+ var SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';
44
+ var SELECTOR_ACTIVE = '.active';
45
+ var SELECTOR_ACTIVE_UL = '> li > .active';
46
+ var SELECTOR_DATA_TOGGLE = '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]';
47
+ var SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
48
+ var SELECTOR_DROPDOWN_ACTIVE_CHILD = '> .dropdown-menu .active';
49
+ /**
50
+ * ------------------------------------------------------------------------
51
+ * Class Definition
52
+ * ------------------------------------------------------------------------
53
+ */
72
54
 
73
- var Tab =
74
- /*#__PURE__*/
75
- function () {
55
+ var Tab = /*#__PURE__*/function () {
76
56
  function Tab(element) {
77
57
  this._element = element;
78
58
  } // Getters
@@ -84,33 +64,33 @@
84
64
  _proto.show = function show() {
85
65
  var _this = this;
86
66
 
87
- if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $(this._element).hasClass(ClassName.ACTIVE) || $(this._element).hasClass(ClassName.DISABLED)) {
67
+ if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $__default['default'](this._element).hasClass(CLASS_NAME_ACTIVE) || $__default['default'](this._element).hasClass(CLASS_NAME_DISABLED)) {
88
68
  return;
89
69
  }
90
70
 
91
71
  var target;
92
72
  var previous;
93
- var listElement = $(this._element).closest(Selector.NAV_LIST_GROUP)[0];
94
- var selector = Util.getSelectorFromElement(this._element);
73
+ var listElement = $__default['default'](this._element).closest(SELECTOR_NAV_LIST_GROUP)[0];
74
+ var selector = Util__default['default'].getSelectorFromElement(this._element);
95
75
 
96
76
  if (listElement) {
97
- var itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? Selector.ACTIVE_UL : Selector.ACTIVE;
98
- previous = $.makeArray($(listElement).find(itemSelector));
77
+ var itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE;
78
+ previous = $__default['default'].makeArray($__default['default'](listElement).find(itemSelector));
99
79
  previous = previous[previous.length - 1];
100
80
  }
101
81
 
102
- var hideEvent = $.Event(Event.HIDE, {
82
+ var hideEvent = $__default['default'].Event(EVENT_HIDE, {
103
83
  relatedTarget: this._element
104
84
  });
105
- var showEvent = $.Event(Event.SHOW, {
85
+ var showEvent = $__default['default'].Event(EVENT_SHOW, {
106
86
  relatedTarget: previous
107
87
  });
108
88
 
109
89
  if (previous) {
110
- $(previous).trigger(hideEvent);
90
+ $__default['default'](previous).trigger(hideEvent);
111
91
  }
112
92
 
113
- $(this._element).trigger(showEvent);
93
+ $__default['default'](this._element).trigger(showEvent);
114
94
 
115
95
  if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) {
116
96
  return;
@@ -123,14 +103,14 @@
123
103
  this._activate(this._element, listElement);
124
104
 
125
105
  var complete = function complete() {
126
- var hiddenEvent = $.Event(Event.HIDDEN, {
106
+ var hiddenEvent = $__default['default'].Event(EVENT_HIDDEN, {
127
107
  relatedTarget: _this._element
128
108
  });
129
- var shownEvent = $.Event(Event.SHOWN, {
109
+ var shownEvent = $__default['default'].Event(EVENT_SHOWN, {
130
110
  relatedTarget: previous
131
111
  });
132
- $(previous).trigger(hiddenEvent);
133
- $(_this._element).trigger(shownEvent);
112
+ $__default['default'](previous).trigger(hiddenEvent);
113
+ $__default['default'](_this._element).trigger(shownEvent);
134
114
  };
135
115
 
136
116
  if (target) {
@@ -141,7 +121,7 @@
141
121
  };
142
122
 
143
123
  _proto.dispose = function dispose() {
144
- $.removeData(this._element, DATA_KEY);
124
+ $__default['default'].removeData(this._element, DATA_KEY);
145
125
  this._element = null;
146
126
  } // Private
147
127
  ;
@@ -149,17 +129,17 @@
149
129
  _proto._activate = function _activate(element, container, callback) {
150
130
  var _this2 = this;
151
131
 
152
- var activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? $(container).find(Selector.ACTIVE_UL) : $(container).children(Selector.ACTIVE);
132
+ var activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? $__default['default'](container).find(SELECTOR_ACTIVE_UL) : $__default['default'](container).children(SELECTOR_ACTIVE);
153
133
  var active = activeElements[0];
154
- var isTransitioning = callback && active && $(active).hasClass(ClassName.FADE);
134
+ var isTransitioning = callback && active && $__default['default'](active).hasClass(CLASS_NAME_FADE);
155
135
 
156
136
  var complete = function complete() {
157
137
  return _this2._transitionComplete(element, active, callback);
158
138
  };
159
139
 
160
140
  if (active && isTransitioning) {
161
- var transitionDuration = Util.getTransitionDurationFromElement(active);
162
- $(active).removeClass(ClassName.SHOW).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
141
+ var transitionDuration = Util__default['default'].getTransitionDurationFromElement(active);
142
+ $__default['default'](active).removeClass(CLASS_NAME_SHOW).one(Util__default['default'].TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
163
143
  } else {
164
144
  complete();
165
145
  }
@@ -167,11 +147,11 @@
167
147
 
168
148
  _proto._transitionComplete = function _transitionComplete(element, active, callback) {
169
149
  if (active) {
170
- $(active).removeClass(ClassName.ACTIVE);
171
- var dropdownChild = $(active.parentNode).find(Selector.DROPDOWN_ACTIVE_CHILD)[0];
150
+ $__default['default'](active).removeClass(CLASS_NAME_ACTIVE);
151
+ var dropdownChild = $__default['default'](active.parentNode).find(SELECTOR_DROPDOWN_ACTIVE_CHILD)[0];
172
152
 
173
153
  if (dropdownChild) {
174
- $(dropdownChild).removeClass(ClassName.ACTIVE);
154
+ $__default['default'](dropdownChild).removeClass(CLASS_NAME_ACTIVE);
175
155
  }
176
156
 
177
157
  if (active.getAttribute('role') === 'tab') {
@@ -179,24 +159,24 @@
179
159
  }
180
160
  }
181
161
 
182
- $(element).addClass(ClassName.ACTIVE);
162
+ $__default['default'](element).addClass(CLASS_NAME_ACTIVE);
183
163
 
184
164
  if (element.getAttribute('role') === 'tab') {
185
165
  element.setAttribute('aria-selected', true);
186
166
  }
187
167
 
188
- Util.reflow(element);
168
+ Util__default['default'].reflow(element);
189
169
 
190
- if (element.classList.contains(ClassName.FADE)) {
191
- element.classList.add(ClassName.SHOW);
170
+ if (element.classList.contains(CLASS_NAME_FADE)) {
171
+ element.classList.add(CLASS_NAME_SHOW);
192
172
  }
193
173
 
194
- if (element.parentNode && $(element.parentNode).hasClass(ClassName.DROPDOWN_MENU)) {
195
- var dropdownElement = $(element).closest(Selector.DROPDOWN)[0];
174
+ if (element.parentNode && $__default['default'](element.parentNode).hasClass(CLASS_NAME_DROPDOWN_MENU)) {
175
+ var dropdownElement = $__default['default'](element).closest(SELECTOR_DROPDOWN)[0];
196
176
 
197
177
  if (dropdownElement) {
198
- var dropdownToggleList = [].slice.call(dropdownElement.querySelectorAll(Selector.DROPDOWN_TOGGLE));
199
- $(dropdownToggleList).addClass(ClassName.ACTIVE);
178
+ var dropdownToggleList = [].slice.call(dropdownElement.querySelectorAll(SELECTOR_DROPDOWN_TOGGLE));
179
+ $__default['default'](dropdownToggleList).addClass(CLASS_NAME_ACTIVE);
200
180
  }
201
181
 
202
182
  element.setAttribute('aria-expanded', true);
@@ -210,7 +190,7 @@
210
190
 
211
191
  Tab._jQueryInterface = function _jQueryInterface(config) {
212
192
  return this.each(function () {
213
- var $this = $(this);
193
+ var $this = $__default['default'](this);
214
194
  var data = $this.data(DATA_KEY);
215
195
 
216
196
  if (!data) {
@@ -244,10 +224,10 @@
244
224
  */
245
225
 
246
226
 
247
- $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
227
+ $__default['default'](document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
248
228
  event.preventDefault();
249
229
 
250
- Tab._jQueryInterface.call($(this), 'show');
230
+ Tab._jQueryInterface.call($__default['default'](this), 'show');
251
231
  });
252
232
  /**
253
233
  * ------------------------------------------------------------------------
@@ -255,14 +235,14 @@
255
235
  * ------------------------------------------------------------------------
256
236
  */
257
237
 
258
- $.fn[NAME] = Tab._jQueryInterface;
259
- $.fn[NAME].Constructor = Tab;
238
+ $__default['default'].fn[NAME] = Tab._jQueryInterface;
239
+ $__default['default'].fn[NAME].Constructor = Tab;
260
240
 
261
- $.fn[NAME].noConflict = function () {
262
- $.fn[NAME] = JQUERY_NO_CONFLICT;
241
+ $__default['default'].fn[NAME].noConflict = function () {
242
+ $__default['default'].fn[NAME] = JQUERY_NO_CONFLICT;
263
243
  return Tab._jQueryInterface;
264
244
  };
265
245
 
266
246
  return Tab;
267
247
 
268
- }));
248
+ })));
@@ -1,67 +1,24 @@
1
1
  /*!
2
- * Bootstrap toast.js v4.3.0 (https://getbootstrap.com/)
3
- * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
2
+ * Bootstrap toast.js v4.5.3 (https://getbootstrap.com/)
3
+ * Copyright 2011-2020 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
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('jquery'), require('./util.js')) :
8
8
  typeof define === 'function' && define.amd ? define(['jquery', './util.js'], factory) :
9
- (global = global || self, global.Toast = factory(global.jQuery, global.Util));
10
- }(this, function ($, Util) { 'use strict';
11
-
12
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
13
- Util = Util && Util.hasOwnProperty('default') ? Util['default'] : Util;
14
-
15
- function _defineProperties(target, props) {
16
- for (var i = 0; i < props.length; i++) {
17
- var descriptor = props[i];
18
- descriptor.enumerable = descriptor.enumerable || false;
19
- descriptor.configurable = true;
20
- if ("value" in descriptor) descriptor.writable = true;
21
- Object.defineProperty(target, descriptor.key, descriptor);
22
- }
23
- }
24
-
25
- function _createClass(Constructor, protoProps, staticProps) {
26
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
27
- if (staticProps) _defineProperties(Constructor, staticProps);
28
- return Constructor;
29
- }
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 _objectSpread(target) {
47
- for (var i = 1; i < arguments.length; i++) {
48
- var source = arguments[i] != null ? arguments[i] : {};
49
- var ownKeys = Object.keys(source);
50
-
51
- if (typeof Object.getOwnPropertySymbols === 'function') {
52
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
53
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
54
- }));
55
- }
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Toast = factory(global.jQuery, global.Util));
10
+ }(this, (function ($, Util) { 'use strict';
56
11
 
57
- ownKeys.forEach(function (key) {
58
- _defineProperty(target, key, source[key]);
59
- });
60
- }
12
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
+
14
+ var $__default = /*#__PURE__*/_interopDefaultLegacy($);
15
+ var Util__default = /*#__PURE__*/_interopDefaultLegacy(Util);
61
16
 
62
- return target;
63
- }
17
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
64
18
 
19
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
20
+
21
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
65
22
  /**
66
23
  * ------------------------------------------------------------------------
67
24
  * Constants
@@ -69,23 +26,19 @@
69
26
  */
70
27
 
71
28
  var NAME = 'toast';
72
- var VERSION = '4.3.0';
29
+ var VERSION = '4.5.3';
73
30
  var DATA_KEY = 'bs.toast';
74
31
  var EVENT_KEY = "." + DATA_KEY;
75
- var JQUERY_NO_CONFLICT = $.fn[NAME];
76
- var Event = {
77
- CLICK_DISMISS: "click.dismiss" + EVENT_KEY,
78
- HIDE: "hide" + EVENT_KEY,
79
- HIDDEN: "hidden" + EVENT_KEY,
80
- SHOW: "show" + EVENT_KEY,
81
- SHOWN: "shown" + EVENT_KEY
82
- };
83
- var ClassName = {
84
- FADE: 'fade',
85
- HIDE: 'hide',
86
- SHOW: 'show',
87
- SHOWING: 'showing'
88
- };
32
+ var JQUERY_NO_CONFLICT = $__default['default'].fn[NAME];
33
+ var EVENT_CLICK_DISMISS = "click.dismiss" + EVENT_KEY;
34
+ var EVENT_HIDE = "hide" + EVENT_KEY;
35
+ var EVENT_HIDDEN = "hidden" + EVENT_KEY;
36
+ var EVENT_SHOW = "show" + EVENT_KEY;
37
+ var EVENT_SHOWN = "shown" + EVENT_KEY;
38
+ var CLASS_NAME_FADE = 'fade';
39
+ var CLASS_NAME_HIDE = 'hide';
40
+ var CLASS_NAME_SHOW = 'show';
41
+ var CLASS_NAME_SHOWING = 'showing';
89
42
  var DefaultType = {
90
43
  animation: 'boolean',
91
44
  autohide: 'boolean',
@@ -96,19 +49,14 @@
96
49
  autohide: true,
97
50
  delay: 500
98
51
  };
99
- var Selector = {
100
- DATA_DISMISS: '[data-dismiss="toast"]'
101
- /**
102
- * ------------------------------------------------------------------------
103
- * Class Definition
104
- * ------------------------------------------------------------------------
105
- */
106
-
107
- };
52
+ var SELECTOR_DATA_DISMISS = '[data-dismiss="toast"]';
53
+ /**
54
+ * ------------------------------------------------------------------------
55
+ * Class Definition
56
+ * ------------------------------------------------------------------------
57
+ */
108
58
 
109
- var Toast =
110
- /*#__PURE__*/
111
- function () {
59
+ var Toast = /*#__PURE__*/function () {
112
60
  function Toast(element, config) {
113
61
  this._element = element;
114
62
  this._config = this._getConfig(config);
@@ -124,106 +72,118 @@
124
72
  _proto.show = function show() {
125
73
  var _this = this;
126
74
 
127
- $(this._element).trigger(Event.SHOW);
75
+ var showEvent = $__default['default'].Event(EVENT_SHOW);
76
+ $__default['default'](this._element).trigger(showEvent);
77
+
78
+ if (showEvent.isDefaultPrevented()) {
79
+ return;
80
+ }
81
+
82
+ this._clearTimeout();
128
83
 
129
84
  if (this._config.animation) {
130
- this._element.classList.add(ClassName.FADE);
85
+ this._element.classList.add(CLASS_NAME_FADE);
131
86
  }
132
87
 
133
88
  var complete = function complete() {
134
- _this._element.classList.remove(ClassName.SHOWING);
89
+ _this._element.classList.remove(CLASS_NAME_SHOWING);
135
90
 
136
- _this._element.classList.add(ClassName.SHOW);
91
+ _this._element.classList.add(CLASS_NAME_SHOW);
137
92
 
138
- $(_this._element).trigger(Event.SHOWN);
93
+ $__default['default'](_this._element).trigger(EVENT_SHOWN);
139
94
 
140
95
  if (_this._config.autohide) {
141
- _this.hide();
96
+ _this._timeout = setTimeout(function () {
97
+ _this.hide();
98
+ }, _this._config.delay);
142
99
  }
143
100
  };
144
101
 
145
- this._element.classList.remove(ClassName.HIDE);
102
+ this._element.classList.remove(CLASS_NAME_HIDE);
103
+
104
+ Util__default['default'].reflow(this._element);
146
105
 
147
- this._element.classList.add(ClassName.SHOWING);
106
+ this._element.classList.add(CLASS_NAME_SHOWING);
148
107
 
149
108
  if (this._config.animation) {
150
- var transitionDuration = Util.getTransitionDurationFromElement(this._element);
151
- $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
109
+ var transitionDuration = Util__default['default'].getTransitionDurationFromElement(this._element);
110
+ $__default['default'](this._element).one(Util__default['default'].TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
152
111
  } else {
153
112
  complete();
154
113
  }
155
114
  };
156
115
 
157
- _proto.hide = function hide(withoutTimeout) {
158
- var _this2 = this;
159
-
160
- if (!this._element.classList.contains(ClassName.SHOW)) {
116
+ _proto.hide = function hide() {
117
+ if (!this._element.classList.contains(CLASS_NAME_SHOW)) {
161
118
  return;
162
119
  }
163
120
 
164
- $(this._element).trigger(Event.HIDE);
121
+ var hideEvent = $__default['default'].Event(EVENT_HIDE);
122
+ $__default['default'](this._element).trigger(hideEvent);
165
123
 
166
- if (withoutTimeout) {
167
- this._close();
168
- } else {
169
- this._timeout = setTimeout(function () {
170
- _this2._close();
171
- }, this._config.delay);
124
+ if (hideEvent.isDefaultPrevented()) {
125
+ return;
172
126
  }
127
+
128
+ this._close();
173
129
  };
174
130
 
175
131
  _proto.dispose = function dispose() {
176
- clearTimeout(this._timeout);
177
- this._timeout = null;
132
+ this._clearTimeout();
178
133
 
179
- if (this._element.classList.contains(ClassName.SHOW)) {
180
- this._element.classList.remove(ClassName.SHOW);
134
+ if (this._element.classList.contains(CLASS_NAME_SHOW)) {
135
+ this._element.classList.remove(CLASS_NAME_SHOW);
181
136
  }
182
137
 
183
- $(this._element).off(Event.CLICK_DISMISS);
184
- $.removeData(this._element, DATA_KEY);
138
+ $__default['default'](this._element).off(EVENT_CLICK_DISMISS);
139
+ $__default['default'].removeData(this._element, DATA_KEY);
185
140
  this._element = null;
186
141
  this._config = null;
187
142
  } // Private
188
143
  ;
189
144
 
190
145
  _proto._getConfig = function _getConfig(config) {
191
- config = _objectSpread({}, Default, $(this._element).data(), typeof config === 'object' && config ? config : {});
192
- Util.typeCheckConfig(NAME, config, this.constructor.DefaultType);
146
+ config = _extends({}, Default, $__default['default'](this._element).data(), typeof config === 'object' && config ? config : {});
147
+ Util__default['default'].typeCheckConfig(NAME, config, this.constructor.DefaultType);
193
148
  return config;
194
149
  };
195
150
 
196
151
  _proto._setListeners = function _setListeners() {
197
- var _this3 = this;
152
+ var _this2 = this;
198
153
 
199
- $(this._element).on(Event.CLICK_DISMISS, Selector.DATA_DISMISS, function () {
200
- return _this3.hide(true);
154
+ $__default['default'](this._element).on(EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, function () {
155
+ return _this2.hide();
201
156
  });
202
157
  };
203
158
 
204
159
  _proto._close = function _close() {
205
- var _this4 = this;
160
+ var _this3 = this;
206
161
 
207
162
  var complete = function complete() {
208
- _this4._element.classList.add(ClassName.HIDE);
163
+ _this3._element.classList.add(CLASS_NAME_HIDE);
209
164
 
210
- $(_this4._element).trigger(Event.HIDDEN);
165
+ $__default['default'](_this3._element).trigger(EVENT_HIDDEN);
211
166
  };
212
167
 
213
- this._element.classList.remove(ClassName.SHOW);
168
+ this._element.classList.remove(CLASS_NAME_SHOW);
214
169
 
215
170
  if (this._config.animation) {
216
- var transitionDuration = Util.getTransitionDurationFromElement(this._element);
217
- $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
171
+ var transitionDuration = Util__default['default'].getTransitionDurationFromElement(this._element);
172
+ $__default['default'](this._element).one(Util__default['default'].TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
218
173
  } else {
219
174
  complete();
220
175
  }
176
+ };
177
+
178
+ _proto._clearTimeout = function _clearTimeout() {
179
+ clearTimeout(this._timeout);
180
+ this._timeout = null;
221
181
  } // Static
222
182
  ;
223
183
 
224
184
  Toast._jQueryInterface = function _jQueryInterface(config) {
225
185
  return this.each(function () {
226
- var $element = $(this);
186
+ var $element = $__default['default'](this);
227
187
  var data = $element.data(DATA_KEY);
228
188
 
229
189
  var _config = typeof config === 'object' && config;
@@ -269,14 +229,14 @@
269
229
  */
270
230
 
271
231
 
272
- $.fn[NAME] = Toast._jQueryInterface;
273
- $.fn[NAME].Constructor = Toast;
232
+ $__default['default'].fn[NAME] = Toast._jQueryInterface;
233
+ $__default['default'].fn[NAME].Constructor = Toast;
274
234
 
275
- $.fn[NAME].noConflict = function () {
276
- $.fn[NAME] = JQUERY_NO_CONFLICT;
235
+ $__default['default'].fn[NAME].noConflict = function () {
236
+ $__default['default'].fn[NAME] = JQUERY_NO_CONFLICT;
277
237
  return Toast._jQueryInterface;
278
238
  };
279
239
 
280
240
  return Toast;
281
241
 
282
- }));
242
+ })));