bootstrap 4.3.1 → 4.6.2.1

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