bootstrap 4.6.0 → 5.0.0.beta2

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 (145) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +2 -1
  3. data/README.md +7 -4
  4. data/assets/javascripts/bootstrap-global-this-define.js +6 -0
  5. data/assets/javascripts/bootstrap-global-this-undefine.js +2 -0
  6. data/assets/javascripts/bootstrap-sprockets.js +14 -8
  7. data/assets/javascripts/bootstrap.js +2152 -1633
  8. data/assets/javascripts/bootstrap.min.js +2 -2
  9. data/assets/javascripts/bootstrap/alert.js +179 -64
  10. data/assets/javascripts/bootstrap/base-component.js +75 -0
  11. data/assets/javascripts/bootstrap/button.js +94 -143
  12. data/assets/javascripts/bootstrap/carousel.js +386 -202
  13. data/assets/javascripts/bootstrap/collapse.js +349 -132
  14. data/assets/javascripts/bootstrap/dom/data.js +81 -0
  15. data/assets/javascripts/bootstrap/dom/event-handler.js +310 -0
  16. data/assets/javascripts/bootstrap/dom/manipulator.js +86 -0
  17. data/assets/javascripts/bootstrap/dom/selector-engine.js +93 -0
  18. data/assets/javascripts/bootstrap/dropdown.js +387 -224
  19. data/assets/javascripts/bootstrap/modal.js +391 -220
  20. data/assets/javascripts/bootstrap/popover.js +94 -49
  21. data/assets/javascripts/bootstrap/scrollspy.js +212 -80
  22. data/assets/javascripts/bootstrap/tab.js +198 -79
  23. data/assets/javascripts/bootstrap/toast.js +211 -78
  24. data/assets/javascripts/bootstrap/tooltip.js +558 -300
  25. data/assets/stylesheets/_bootstrap-grid.scss +51 -16
  26. data/assets/stylesheets/_bootstrap-reboot.scss +4 -1
  27. data/assets/stylesheets/_bootstrap.scss +15 -8
  28. data/assets/stylesheets/bootstrap/_accordion.scss +126 -0
  29. data/assets/stylesheets/bootstrap/_alert.scss +15 -10
  30. data/assets/stylesheets/bootstrap/_badge.scss +2 -27
  31. data/assets/stylesheets/bootstrap/_breadcrumb.scss +3 -17
  32. data/assets/stylesheets/bootstrap/_button-group.scss +21 -45
  33. data/assets/stylesheets/bootstrap/_buttons.scss +27 -60
  34. data/assets/stylesheets/bootstrap/_card.scss +21 -92
  35. data/assets/stylesheets/bootstrap/_carousel.scss +65 -33
  36. data/assets/stylesheets/bootstrap/_close.scss +30 -30
  37. data/assets/stylesheets/bootstrap/_containers.scss +41 -0
  38. data/assets/stylesheets/bootstrap/_dropdown.scss +95 -38
  39. data/assets/stylesheets/bootstrap/_forms.scss +9 -347
  40. data/assets/stylesheets/bootstrap/_functions.scss +84 -23
  41. data/assets/stylesheets/bootstrap/_grid.scss +3 -54
  42. data/assets/stylesheets/bootstrap/_helpers.scss +7 -0
  43. data/assets/stylesheets/bootstrap/_list-group.scss +17 -8
  44. data/assets/stylesheets/bootstrap/_mixins.scss +7 -13
  45. data/assets/stylesheets/bootstrap/_modal.scss +41 -46
  46. data/assets/stylesheets/bootstrap/_nav.scss +16 -4
  47. data/assets/stylesheets/bootstrap/_navbar.scss +43 -71
  48. data/assets/stylesheets/bootstrap/_pagination.scss +10 -20
  49. data/assets/stylesheets/bootstrap/_popover.scss +15 -27
  50. data/assets/stylesheets/bootstrap/_progress.scss +2 -4
  51. data/assets/stylesheets/bootstrap/_reboot.scss +314 -163
  52. data/assets/stylesheets/bootstrap/_root.scss +5 -8
  53. data/assets/stylesheets/bootstrap/_spinners.scss +5 -5
  54. data/assets/stylesheets/bootstrap/_tables.scss +79 -114
  55. data/assets/stylesheets/bootstrap/_toasts.scss +20 -15
  56. data/assets/stylesheets/bootstrap/_tooltip.scss +17 -17
  57. data/assets/stylesheets/bootstrap/_transitions.scss +0 -1
  58. data/assets/stylesheets/bootstrap/_type.scss +38 -59
  59. data/assets/stylesheets/bootstrap/_utilities.scss +566 -18
  60. data/assets/stylesheets/bootstrap/_variables.scss +673 -463
  61. data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +18 -0
  62. data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +61 -0
  63. data/assets/stylesheets/bootstrap/forms/_form-check.scss +152 -0
  64. data/assets/stylesheets/bootstrap/forms/_form-control.scss +223 -0
  65. data/assets/stylesheets/bootstrap/forms/_form-range.scss +91 -0
  66. data/assets/stylesheets/bootstrap/forms/_form-select.scss +67 -0
  67. data/assets/stylesheets/bootstrap/forms/_form-text.scss +11 -0
  68. data/assets/stylesheets/bootstrap/forms/_input-group.scss +121 -0
  69. data/assets/stylesheets/bootstrap/forms/_labels.scss +36 -0
  70. data/assets/stylesheets/bootstrap/forms/_validation.scss +12 -0
  71. data/assets/stylesheets/bootstrap/{utilities → helpers}/_clearfix.scss +0 -0
  72. data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +12 -0
  73. data/assets/stylesheets/bootstrap/helpers/_position.scss +30 -0
  74. data/assets/stylesheets/bootstrap/helpers/_ratio.scss +26 -0
  75. data/assets/stylesheets/bootstrap/helpers/_stretched-link.scss +15 -0
  76. data/assets/stylesheets/bootstrap/helpers/_text-truncation.scss +7 -0
  77. data/assets/stylesheets/bootstrap/helpers/_visually-hidden.scss +8 -0
  78. data/assets/stylesheets/bootstrap/mixins/_alert.scss +1 -5
  79. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +8 -8
  80. data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +7 -9
  81. data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +14 -10
  82. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +65 -47
  83. data/assets/stylesheets/bootstrap/mixins/_caret.scss +8 -8
  84. data/assets/stylesheets/bootstrap/mixins/_clearfix.scss +2 -0
  85. data/assets/stylesheets/bootstrap/mixins/_container.scss +9 -0
  86. data/assets/stylesheets/bootstrap/mixins/_forms.scss +27 -88
  87. data/assets/stylesheets/bootstrap/mixins/_gradients.scss +13 -11
  88. data/assets/stylesheets/bootstrap/mixins/_grid.scss +83 -32
  89. data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -21
  90. data/assets/stylesheets/bootstrap/mixins/_list-group.scss +3 -2
  91. data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
  92. data/assets/stylesheets/bootstrap/mixins/_pagination.scss +15 -8
  93. data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +2 -2
  94. data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +21 -0
  95. data/assets/stylesheets/bootstrap/mixins/_transition.scss +1 -1
  96. data/assets/stylesheets/bootstrap/mixins/_utilities.scss +68 -0
  97. data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +29 -0
  98. data/assets/stylesheets/bootstrap/utilities/_api.scss +47 -0
  99. data/assets/stylesheets/bootstrap/vendor/_rfs.scss +234 -126
  100. data/bootstrap.gemspec +1 -3
  101. data/lib/bootstrap/version.rb +2 -2
  102. data/tasks/updater/js.rb +20 -5
  103. data/test/dummy_rails/app/assets/javascripts/application.js +4 -3
  104. data/test/dummy_rails/app/views/layouts/application.html.erb +3 -1
  105. data/test/dummy_rails/app/views/pages/root.html +89 -0
  106. data/test/dummy_rails/config/application.rb +0 -3
  107. data/test/gemfiles/rails_6_1.gemfile +7 -0
  108. metadata +44 -75
  109. data/assets/javascripts/bootstrap/util.js +0 -192
  110. data/assets/stylesheets/bootstrap/_code.scss +0 -48
  111. data/assets/stylesheets/bootstrap/_custom-forms.scss +0 -526
  112. data/assets/stylesheets/bootstrap/_input-group.scss +0 -208
  113. data/assets/stylesheets/bootstrap/_jumbotron.scss +0 -17
  114. data/assets/stylesheets/bootstrap/_media.scss +0 -8
  115. data/assets/stylesheets/bootstrap/_print.scss +0 -141
  116. data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +0 -23
  117. data/assets/stylesheets/bootstrap/mixins/_badge.scss +0 -17
  118. data/assets/stylesheets/bootstrap/mixins/_float.scss +0 -14
  119. data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +0 -80
  120. data/assets/stylesheets/bootstrap/mixins/_hover.scss +0 -37
  121. data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +0 -11
  122. data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +0 -34
  123. data/assets/stylesheets/bootstrap/mixins/_size.scss +0 -7
  124. data/assets/stylesheets/bootstrap/mixins/_table-row.scss +0 -39
  125. data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +0 -17
  126. data/assets/stylesheets/bootstrap/mixins/_text-hide.scss +0 -11
  127. data/assets/stylesheets/bootstrap/mixins/_visibility.scss +0 -8
  128. data/assets/stylesheets/bootstrap/utilities/_align.scss +0 -8
  129. data/assets/stylesheets/bootstrap/utilities/_background.scss +0 -19
  130. data/assets/stylesheets/bootstrap/utilities/_borders.scss +0 -75
  131. data/assets/stylesheets/bootstrap/utilities/_display.scss +0 -26
  132. data/assets/stylesheets/bootstrap/utilities/_embed.scss +0 -39
  133. data/assets/stylesheets/bootstrap/utilities/_flex.scss +0 -51
  134. data/assets/stylesheets/bootstrap/utilities/_float.scss +0 -11
  135. data/assets/stylesheets/bootstrap/utilities/_interactions.scss +0 -5
  136. data/assets/stylesheets/bootstrap/utilities/_overflow.scss +0 -5
  137. data/assets/stylesheets/bootstrap/utilities/_position.scss +0 -32
  138. data/assets/stylesheets/bootstrap/utilities/_screenreaders.scss +0 -11
  139. data/assets/stylesheets/bootstrap/utilities/_shadows.scss +0 -6
  140. data/assets/stylesheets/bootstrap/utilities/_sizing.scss +0 -20
  141. data/assets/stylesheets/bootstrap/utilities/_spacing.scss +0 -73
  142. data/assets/stylesheets/bootstrap/utilities/_stretched-link.scss +0 -19
  143. data/assets/stylesheets/bootstrap/utilities/_text.scss +0 -72
  144. data/assets/stylesheets/bootstrap/utilities/_visibility.scss +0 -13
  145. data/test/dummy_rails/app/views/pages/root.html.slim +0 -58
@@ -1,18 +1,20 @@
1
1
  /*!
2
- * Bootstrap tab.js v4.6.0 (https://getbootstrap.com/)
2
+ * Bootstrap tab.js v5.0.0-beta2 (https://getbootstrap.com/)
3
3
  * Copyright 2011-2021 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
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery'), require('./util.js')) :
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';
7
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/selector-engine.js'), require('./base-component.js')) :
8
+ typeof define === 'function' && define.amd ? define(['./dom/data', './dom/event-handler', './dom/selector-engine', './base-component'], factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Tab = factory(global.Data, global.EventHandler, global.SelectorEngine, global.Base));
10
+ }(this, (function (Data, EventHandler, SelectorEngine, BaseComponent) { 'use strict';
11
11
 
12
12
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
13
 
14
- var $__default = /*#__PURE__*/_interopDefaultLegacy($);
15
- var Util__default = /*#__PURE__*/_interopDefaultLegacy(Util);
14
+ var Data__default = /*#__PURE__*/_interopDefaultLegacy(Data);
15
+ var EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
16
+ var SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine);
17
+ var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
16
18
 
17
19
  function _defineProperties(target, props) {
18
20
  for (var i = 0; i < props.length; i++) {
@@ -30,6 +32,148 @@
30
32
  return Constructor;
31
33
  }
32
34
 
35
+ function _inheritsLoose(subClass, superClass) {
36
+ subClass.prototype = Object.create(superClass.prototype);
37
+ subClass.prototype.constructor = subClass;
38
+
39
+ _setPrototypeOf(subClass, superClass);
40
+ }
41
+
42
+ function _setPrototypeOf(o, p) {
43
+ _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
44
+ o.__proto__ = p;
45
+ return o;
46
+ };
47
+
48
+ return _setPrototypeOf(o, p);
49
+ }
50
+
51
+ /**
52
+ * --------------------------------------------------------------------------
53
+ * Bootstrap (v5.0.0-beta2): util/index.js
54
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
55
+ * --------------------------------------------------------------------------
56
+ */
57
+ var MILLISECONDS_MULTIPLIER = 1000;
58
+ var TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
59
+
60
+ var getSelector = function getSelector(element) {
61
+ var selector = element.getAttribute('data-bs-target');
62
+
63
+ if (!selector || selector === '#') {
64
+ var hrefAttr = element.getAttribute('href'); // The only valid content that could double as a selector are IDs or classes,
65
+ // so everything starting with `#` or `.`. If a "real" URL is used as the selector,
66
+ // `document.querySelector` will rightfully complain it is invalid.
67
+ // See https://github.com/twbs/bootstrap/issues/32273
68
+
69
+ if (!hrefAttr || !hrefAttr.includes('#') && !hrefAttr.startsWith('.')) {
70
+ return null;
71
+ } // Just in case some CMS puts out a full URL with the anchor appended
72
+
73
+
74
+ if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {
75
+ hrefAttr = '#' + hrefAttr.split('#')[1];
76
+ }
77
+
78
+ selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null;
79
+ }
80
+
81
+ return selector;
82
+ };
83
+
84
+ var getElementFromSelector = function getElementFromSelector(element) {
85
+ var selector = getSelector(element);
86
+ return selector ? document.querySelector(selector) : null;
87
+ };
88
+
89
+ var getTransitionDurationFromElement = function getTransitionDurationFromElement(element) {
90
+ if (!element) {
91
+ return 0;
92
+ } // Get transition-duration of the element
93
+
94
+
95
+ var _window$getComputedSt = window.getComputedStyle(element),
96
+ transitionDuration = _window$getComputedSt.transitionDuration,
97
+ transitionDelay = _window$getComputedSt.transitionDelay;
98
+
99
+ var floatTransitionDuration = Number.parseFloat(transitionDuration);
100
+ var floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found
101
+
102
+ if (!floatTransitionDuration && !floatTransitionDelay) {
103
+ return 0;
104
+ } // If multiple durations are defined, take the first
105
+
106
+
107
+ transitionDuration = transitionDuration.split(',')[0];
108
+ transitionDelay = transitionDelay.split(',')[0];
109
+ return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;
110
+ };
111
+
112
+ var triggerTransitionEnd = function triggerTransitionEnd(element) {
113
+ element.dispatchEvent(new Event(TRANSITION_END));
114
+ };
115
+
116
+ var emulateTransitionEnd = function emulateTransitionEnd(element, duration) {
117
+ var called = false;
118
+ var durationPadding = 5;
119
+ var emulatedDuration = duration + durationPadding;
120
+
121
+ function listener() {
122
+ called = true;
123
+ element.removeEventListener(TRANSITION_END, listener);
124
+ }
125
+
126
+ element.addEventListener(TRANSITION_END, listener);
127
+ setTimeout(function () {
128
+ if (!called) {
129
+ triggerTransitionEnd(element);
130
+ }
131
+ }, emulatedDuration);
132
+ };
133
+
134
+ var reflow = function reflow(element) {
135
+ return element.offsetHeight;
136
+ };
137
+
138
+ var getjQuery = function getjQuery() {
139
+ var _window = window,
140
+ jQuery = _window.jQuery;
141
+
142
+ if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {
143
+ return jQuery;
144
+ }
145
+
146
+ return null;
147
+ };
148
+
149
+ var onDOMContentLoaded = function onDOMContentLoaded(callback) {
150
+ if (document.readyState === 'loading') {
151
+ document.addEventListener('DOMContentLoaded', callback);
152
+ } else {
153
+ callback();
154
+ }
155
+ };
156
+
157
+ document.documentElement.dir === 'rtl';
158
+
159
+ var defineJQueryPlugin = function defineJQueryPlugin(name, plugin) {
160
+ onDOMContentLoaded(function () {
161
+ var $ = getjQuery();
162
+ /* istanbul ignore if */
163
+
164
+ if ($) {
165
+ var JQUERY_NO_CONFLICT = $.fn[name];
166
+ $.fn[name] = plugin.jQueryInterface;
167
+ $.fn[name].Constructor = plugin;
168
+
169
+ $.fn[name].noConflict = function () {
170
+ $.fn[name] = JQUERY_NO_CONFLICT;
171
+ return plugin.jQueryInterface;
172
+ };
173
+ }
174
+ });
175
+ };
176
+
33
177
  /**
34
178
  * ------------------------------------------------------------------------
35
179
  * Constants
@@ -37,11 +181,9 @@
37
181
  */
38
182
 
39
183
  var NAME = 'tab';
40
- var VERSION = '4.6.0';
41
184
  var DATA_KEY = 'bs.tab';
42
185
  var EVENT_KEY = "." + DATA_KEY;
43
186
  var DATA_API_KEY = '.data-api';
44
- var JQUERY_NO_CONFLICT = $__default['default'].fn[NAME];
45
187
  var EVENT_HIDE = "hide" + EVENT_KEY;
46
188
  var EVENT_HIDDEN = "hidden" + EVENT_KEY;
47
189
  var EVENT_SHOW = "show" + EVENT_KEY;
@@ -55,21 +197,22 @@
55
197
  var SELECTOR_DROPDOWN = '.dropdown';
56
198
  var SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';
57
199
  var SELECTOR_ACTIVE = '.active';
58
- var SELECTOR_ACTIVE_UL = '> li > .active';
59
- var SELECTOR_DATA_TOGGLE = '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]';
200
+ var SELECTOR_ACTIVE_UL = ':scope > li > .active';
201
+ var SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]';
60
202
  var SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
61
- var SELECTOR_DROPDOWN_ACTIVE_CHILD = '> .dropdown-menu .active';
203
+ var SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active';
62
204
  /**
63
205
  * ------------------------------------------------------------------------
64
206
  * Class Definition
65
207
  * ------------------------------------------------------------------------
66
208
  */
67
209
 
68
- var Tab = /*#__PURE__*/function () {
69
- function Tab(element) {
70
- this._element = element;
71
- } // Getters
210
+ var Tab = /*#__PURE__*/function (_BaseComponent) {
211
+ _inheritsLoose(Tab, _BaseComponent);
72
212
 
213
+ function Tab() {
214
+ return _BaseComponent.apply(this, arguments) || this;
215
+ }
73
216
 
74
217
  var _proto = Tab.prototype;
75
218
 
@@ -77,53 +220,41 @@
77
220
  _proto.show = function show() {
78
221
  var _this = this;
79
222
 
80
- 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)) {
223
+ if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && this._element.classList.contains(CLASS_NAME_ACTIVE) || this._element.classList.contains(CLASS_NAME_DISABLED)) {
81
224
  return;
82
225
  }
83
226
 
84
- var target;
85
227
  var previous;
86
- var listElement = $__default['default'](this._element).closest(SELECTOR_NAV_LIST_GROUP)[0];
87
- var selector = Util__default['default'].getSelectorFromElement(this._element);
228
+ var target = getElementFromSelector(this._element);
229
+
230
+ var listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP);
88
231
 
89
232
  if (listElement) {
90
233
  var itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE;
91
- previous = $__default['default'].makeArray($__default['default'](listElement).find(itemSelector));
234
+ previous = SelectorEngine__default['default'].find(itemSelector, listElement);
92
235
  previous = previous[previous.length - 1];
93
236
  }
94
237
 
95
- var hideEvent = $__default['default'].Event(EVENT_HIDE, {
238
+ var hideEvent = previous ? EventHandler__default['default'].trigger(previous, EVENT_HIDE, {
96
239
  relatedTarget: this._element
97
- });
98
- var showEvent = $__default['default'].Event(EVENT_SHOW, {
240
+ }) : null;
241
+ var showEvent = EventHandler__default['default'].trigger(this._element, EVENT_SHOW, {
99
242
  relatedTarget: previous
100
243
  });
101
244
 
102
- if (previous) {
103
- $__default['default'](previous).trigger(hideEvent);
104
- }
105
-
106
- $__default['default'](this._element).trigger(showEvent);
107
-
108
- if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) {
245
+ if (showEvent.defaultPrevented || hideEvent !== null && hideEvent.defaultPrevented) {
109
246
  return;
110
247
  }
111
248
 
112
- if (selector) {
113
- target = document.querySelector(selector);
114
- }
115
-
116
249
  this._activate(this._element, listElement);
117
250
 
118
251
  var complete = function complete() {
119
- var hiddenEvent = $__default['default'].Event(EVENT_HIDDEN, {
252
+ EventHandler__default['default'].trigger(previous, EVENT_HIDDEN, {
120
253
  relatedTarget: _this._element
121
254
  });
122
- var shownEvent = $__default['default'].Event(EVENT_SHOWN, {
255
+ EventHandler__default['default'].trigger(_this._element, EVENT_SHOWN, {
123
256
  relatedTarget: previous
124
257
  });
125
- $__default['default'](previous).trigger(hiddenEvent);
126
- $__default['default'](_this._element).trigger(shownEvent);
127
258
  };
128
259
 
129
260
  if (target) {
@@ -131,28 +262,25 @@
131
262
  } else {
132
263
  complete();
133
264
  }
134
- };
135
-
136
- _proto.dispose = function dispose() {
137
- $__default['default'].removeData(this._element, DATA_KEY);
138
- this._element = null;
139
265
  } // Private
140
266
  ;
141
267
 
142
268
  _proto._activate = function _activate(element, container, callback) {
143
269
  var _this2 = this;
144
270
 
145
- var activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? $__default['default'](container).find(SELECTOR_ACTIVE_UL) : $__default['default'](container).children(SELECTOR_ACTIVE);
271
+ var activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? SelectorEngine__default['default'].find(SELECTOR_ACTIVE_UL, container) : SelectorEngine__default['default'].children(container, SELECTOR_ACTIVE);
146
272
  var active = activeElements[0];
147
- var isTransitioning = callback && active && $__default['default'](active).hasClass(CLASS_NAME_FADE);
273
+ var isTransitioning = callback && active && active.classList.contains(CLASS_NAME_FADE);
148
274
 
149
275
  var complete = function complete() {
150
276
  return _this2._transitionComplete(element, active, callback);
151
277
  };
152
278
 
153
279
  if (active && isTransitioning) {
154
- var transitionDuration = Util__default['default'].getTransitionDurationFromElement(active);
155
- $__default['default'](active).removeClass(CLASS_NAME_SHOW).one(Util__default['default'].TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
280
+ var transitionDuration = getTransitionDurationFromElement(active);
281
+ active.classList.remove(CLASS_NAME_SHOW);
282
+ EventHandler__default['default'].one(active, 'transitionend', complete);
283
+ emulateTransitionEnd(active, transitionDuration);
156
284
  } else {
157
285
  complete();
158
286
  }
@@ -160,11 +288,11 @@
160
288
 
161
289
  _proto._transitionComplete = function _transitionComplete(element, active, callback) {
162
290
  if (active) {
163
- $__default['default'](active).removeClass(CLASS_NAME_ACTIVE);
164
- var dropdownChild = $__default['default'](active.parentNode).find(SELECTOR_DROPDOWN_ACTIVE_CHILD)[0];
291
+ active.classList.remove(CLASS_NAME_ACTIVE);
292
+ var dropdownChild = SelectorEngine__default['default'].findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode);
165
293
 
166
294
  if (dropdownChild) {
167
- $__default['default'](dropdownChild).removeClass(CLASS_NAME_ACTIVE);
295
+ dropdownChild.classList.remove(CLASS_NAME_ACTIVE);
168
296
  }
169
297
 
170
298
  if (active.getAttribute('role') === 'tab') {
@@ -172,24 +300,25 @@
172
300
  }
173
301
  }
174
302
 
175
- $__default['default'](element).addClass(CLASS_NAME_ACTIVE);
303
+ element.classList.add(CLASS_NAME_ACTIVE);
176
304
 
177
305
  if (element.getAttribute('role') === 'tab') {
178
306
  element.setAttribute('aria-selected', true);
179
307
  }
180
308
 
181
- Util__default['default'].reflow(element);
309
+ reflow(element);
182
310
 
183
311
  if (element.classList.contains(CLASS_NAME_FADE)) {
184
312
  element.classList.add(CLASS_NAME_SHOW);
185
313
  }
186
314
 
187
- if (element.parentNode && $__default['default'](element.parentNode).hasClass(CLASS_NAME_DROPDOWN_MENU)) {
188
- var dropdownElement = $__default['default'](element).closest(SELECTOR_DROPDOWN)[0];
315
+ if (element.parentNode && element.parentNode.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {
316
+ var dropdownElement = element.closest(SELECTOR_DROPDOWN);
189
317
 
190
318
  if (dropdownElement) {
191
- var dropdownToggleList = [].slice.call(dropdownElement.querySelectorAll(SELECTOR_DROPDOWN_TOGGLE));
192
- $__default['default'](dropdownToggleList).addClass(CLASS_NAME_ACTIVE);
319
+ SelectorEngine__default['default'].find(SELECTOR_DROPDOWN_TOGGLE).forEach(function (dropdown) {
320
+ return dropdown.classList.add(CLASS_NAME_ACTIVE);
321
+ });
193
322
  }
194
323
 
195
324
  element.setAttribute('aria-expanded', true);
@@ -201,15 +330,9 @@
201
330
  } // Static
202
331
  ;
203
332
 
204
- Tab._jQueryInterface = function _jQueryInterface(config) {
333
+ Tab.jQueryInterface = function jQueryInterface(config) {
205
334
  return this.each(function () {
206
- var $this = $__default['default'](this);
207
- var data = $this.data(DATA_KEY);
208
-
209
- if (!data) {
210
- data = new Tab(this);
211
- $this.data(DATA_KEY, data);
212
- }
335
+ var data = Data__default['default'].getData(this, DATA_KEY) || new Tab(this);
213
336
 
214
337
  if (typeof config === 'string') {
215
338
  if (typeof data[config] === 'undefined') {
@@ -222,14 +345,15 @@
222
345
  };
223
346
 
224
347
  _createClass(Tab, null, [{
225
- key: "VERSION",
226
- get: function get() {
227
- return VERSION;
348
+ key: "DATA_KEY",
349
+ get: // Getters
350
+ function get() {
351
+ return DATA_KEY;
228
352
  }
229
353
  }]);
230
354
 
231
355
  return Tab;
232
- }();
356
+ }(BaseComponent__default['default']);
233
357
  /**
234
358
  * ------------------------------------------------------------------------
235
359
  * Data Api implementation
@@ -237,24 +361,19 @@
237
361
  */
238
362
 
239
363
 
240
- $__default['default'](document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
364
+ EventHandler__default['default'].on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
241
365
  event.preventDefault();
242
-
243
- Tab._jQueryInterface.call($__default['default'](this), 'show');
366
+ var data = Data__default['default'].getData(this, DATA_KEY) || new Tab(this);
367
+ data.show();
244
368
  });
245
369
  /**
246
370
  * ------------------------------------------------------------------------
247
371
  * jQuery
248
372
  * ------------------------------------------------------------------------
373
+ * add .Tab to jQuery only if jQuery is present
249
374
  */
250
375
 
251
- $__default['default'].fn[NAME] = Tab._jQueryInterface;
252
- $__default['default'].fn[NAME].Constructor = Tab;
253
-
254
- $__default['default'].fn[NAME].noConflict = function () {
255
- $__default['default'].fn[NAME] = JQUERY_NO_CONFLICT;
256
- return Tab._jQueryInterface;
257
- };
376
+ defineJQueryPlugin(NAME, Tab);
258
377
 
259
378
  return Tab;
260
379
 
@@ -1,18 +1,20 @@
1
1
  /*!
2
- * Bootstrap toast.js v4.6.0 (https://getbootstrap.com/)
2
+ * Bootstrap toast.js v5.0.0-beta2 (https://getbootstrap.com/)
3
3
  * Copyright 2011-2021 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
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery'), require('./util.js')) :
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';
7
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('./base-component.js')) :
8
+ typeof define === 'function' && define.amd ? define(['./dom/data', './dom/event-handler', './dom/manipulator', './base-component'], factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Toast = factory(global.Data, global.EventHandler, global.Manipulator, global.Base));
10
+ }(this, (function (Data, EventHandler, Manipulator, BaseComponent) { 'use strict';
11
11
 
12
12
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
13
 
14
- var $__default = /*#__PURE__*/_interopDefaultLegacy($);
15
- var Util__default = /*#__PURE__*/_interopDefaultLegacy(Util);
14
+ var Data__default = /*#__PURE__*/_interopDefaultLegacy(Data);
15
+ var EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
16
+ var Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator);
17
+ var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
16
18
 
17
19
  function _defineProperties(target, props) {
18
20
  for (var i = 0; i < props.length; i++) {
@@ -48,6 +50,143 @@
48
50
  return _extends.apply(this, arguments);
49
51
  }
50
52
 
53
+ function _inheritsLoose(subClass, superClass) {
54
+ subClass.prototype = Object.create(superClass.prototype);
55
+ subClass.prototype.constructor = subClass;
56
+
57
+ _setPrototypeOf(subClass, superClass);
58
+ }
59
+
60
+ function _setPrototypeOf(o, p) {
61
+ _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
62
+ o.__proto__ = p;
63
+ return o;
64
+ };
65
+
66
+ return _setPrototypeOf(o, p);
67
+ }
68
+
69
+ /**
70
+ * --------------------------------------------------------------------------
71
+ * Bootstrap (v5.0.0-beta2): util/index.js
72
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
73
+ * --------------------------------------------------------------------------
74
+ */
75
+ var MILLISECONDS_MULTIPLIER = 1000;
76
+ var TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
77
+
78
+ var toType = function toType(obj) {
79
+ if (obj === null || obj === undefined) {
80
+ return "" + obj;
81
+ }
82
+
83
+ return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase();
84
+ };
85
+
86
+ var getTransitionDurationFromElement = function getTransitionDurationFromElement(element) {
87
+ if (!element) {
88
+ return 0;
89
+ } // Get transition-duration of the element
90
+
91
+
92
+ var _window$getComputedSt = window.getComputedStyle(element),
93
+ transitionDuration = _window$getComputedSt.transitionDuration,
94
+ transitionDelay = _window$getComputedSt.transitionDelay;
95
+
96
+ var floatTransitionDuration = Number.parseFloat(transitionDuration);
97
+ var floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found
98
+
99
+ if (!floatTransitionDuration && !floatTransitionDelay) {
100
+ return 0;
101
+ } // If multiple durations are defined, take the first
102
+
103
+
104
+ transitionDuration = transitionDuration.split(',')[0];
105
+ transitionDelay = transitionDelay.split(',')[0];
106
+ return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;
107
+ };
108
+
109
+ var triggerTransitionEnd = function triggerTransitionEnd(element) {
110
+ element.dispatchEvent(new Event(TRANSITION_END));
111
+ };
112
+
113
+ var isElement = function isElement(obj) {
114
+ return (obj[0] || obj).nodeType;
115
+ };
116
+
117
+ var emulateTransitionEnd = function emulateTransitionEnd(element, duration) {
118
+ var called = false;
119
+ var durationPadding = 5;
120
+ var emulatedDuration = duration + durationPadding;
121
+
122
+ function listener() {
123
+ called = true;
124
+ element.removeEventListener(TRANSITION_END, listener);
125
+ }
126
+
127
+ element.addEventListener(TRANSITION_END, listener);
128
+ setTimeout(function () {
129
+ if (!called) {
130
+ triggerTransitionEnd(element);
131
+ }
132
+ }, emulatedDuration);
133
+ };
134
+
135
+ var typeCheckConfig = function typeCheckConfig(componentName, config, configTypes) {
136
+ Object.keys(configTypes).forEach(function (property) {
137
+ var expectedTypes = configTypes[property];
138
+ var value = config[property];
139
+ var valueType = value && isElement(value) ? 'element' : toType(value);
140
+
141
+ if (!new RegExp(expectedTypes).test(valueType)) {
142
+ throw new TypeError(componentName.toUpperCase() + ": " + ("Option \"" + property + "\" provided type \"" + valueType + "\" ") + ("but expected type \"" + expectedTypes + "\"."));
143
+ }
144
+ });
145
+ };
146
+
147
+ var reflow = function reflow(element) {
148
+ return element.offsetHeight;
149
+ };
150
+
151
+ var getjQuery = function getjQuery() {
152
+ var _window = window,
153
+ jQuery = _window.jQuery;
154
+
155
+ if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {
156
+ return jQuery;
157
+ }
158
+
159
+ return null;
160
+ };
161
+
162
+ var onDOMContentLoaded = function onDOMContentLoaded(callback) {
163
+ if (document.readyState === 'loading') {
164
+ document.addEventListener('DOMContentLoaded', callback);
165
+ } else {
166
+ callback();
167
+ }
168
+ };
169
+
170
+ document.documentElement.dir === 'rtl';
171
+
172
+ var defineJQueryPlugin = function defineJQueryPlugin(name, plugin) {
173
+ onDOMContentLoaded(function () {
174
+ var $ = getjQuery();
175
+ /* istanbul ignore if */
176
+
177
+ if ($) {
178
+ var JQUERY_NO_CONFLICT = $.fn[name];
179
+ $.fn[name] = plugin.jQueryInterface;
180
+ $.fn[name].Constructor = plugin;
181
+
182
+ $.fn[name].noConflict = function () {
183
+ $.fn[name] = JQUERY_NO_CONFLICT;
184
+ return plugin.jQueryInterface;
185
+ };
186
+ }
187
+ });
188
+ };
189
+
51
190
  /**
52
191
  * ------------------------------------------------------------------------
53
192
  * Constants
@@ -55,10 +194,8 @@
55
194
  */
56
195
 
57
196
  var NAME = 'toast';
58
- var VERSION = '4.6.0';
59
197
  var DATA_KEY = 'bs.toast';
60
198
  var EVENT_KEY = "." + DATA_KEY;
61
- var JQUERY_NO_CONFLICT = $__default['default'].fn[NAME];
62
199
  var EVENT_CLICK_DISMISS = "click.dismiss" + EVENT_KEY;
63
200
  var EVENT_HIDE = "hide" + EVENT_KEY;
64
201
  var EVENT_HIDDEN = "hidden" + EVENT_KEY;
@@ -76,22 +213,28 @@
76
213
  var Default = {
77
214
  animation: true,
78
215
  autohide: true,
79
- delay: 500
216
+ delay: 5000
80
217
  };
81
- var SELECTOR_DATA_DISMISS = '[data-dismiss="toast"]';
218
+ var SELECTOR_DATA_DISMISS = '[data-bs-dismiss="toast"]';
82
219
  /**
83
220
  * ------------------------------------------------------------------------
84
221
  * Class Definition
85
222
  * ------------------------------------------------------------------------
86
223
  */
87
224
 
88
- var Toast = /*#__PURE__*/function () {
225
+ var Toast = /*#__PURE__*/function (_BaseComponent) {
226
+ _inheritsLoose(Toast, _BaseComponent);
227
+
89
228
  function Toast(element, config) {
90
- this._element = element;
91
- this._config = this._getConfig(config);
92
- this._timeout = null;
229
+ var _this;
93
230
 
94
- this._setListeners();
231
+ _this = _BaseComponent.call(this, element) || this;
232
+ _this._config = _this._getConfig(config);
233
+ _this._timeout = null;
234
+
235
+ _this._setListeners();
236
+
237
+ return _this;
95
238
  } // Getters
96
239
 
97
240
 
@@ -99,12 +242,11 @@
99
242
 
100
243
  // Public
101
244
  _proto.show = function show() {
102
- var _this = this;
245
+ var _this2 = this;
103
246
 
104
- var showEvent = $__default['default'].Event(EVENT_SHOW);
105
- $__default['default'](this._element).trigger(showEvent);
247
+ var showEvent = EventHandler__default['default'].trigger(this._element, EVENT_SHOW);
106
248
 
107
- if (showEvent.isDefaultPrevented()) {
249
+ if (showEvent.defaultPrevented) {
108
250
  return;
109
251
  }
110
252
 
@@ -115,46 +257,62 @@
115
257
  }
116
258
 
117
259
  var complete = function complete() {
118
- _this._element.classList.remove(CLASS_NAME_SHOWING);
260
+ _this2._element.classList.remove(CLASS_NAME_SHOWING);
119
261
 
120
- _this._element.classList.add(CLASS_NAME_SHOW);
262
+ _this2._element.classList.add(CLASS_NAME_SHOW);
121
263
 
122
- $__default['default'](_this._element).trigger(EVENT_SHOWN);
264
+ EventHandler__default['default'].trigger(_this2._element, EVENT_SHOWN);
123
265
 
124
- if (_this._config.autohide) {
125
- _this._timeout = setTimeout(function () {
126
- _this.hide();
127
- }, _this._config.delay);
266
+ if (_this2._config.autohide) {
267
+ _this2._timeout = setTimeout(function () {
268
+ _this2.hide();
269
+ }, _this2._config.delay);
128
270
  }
129
271
  };
130
272
 
131
273
  this._element.classList.remove(CLASS_NAME_HIDE);
132
274
 
133
- Util__default['default'].reflow(this._element);
275
+ reflow(this._element);
134
276
 
135
277
  this._element.classList.add(CLASS_NAME_SHOWING);
136
278
 
137
279
  if (this._config.animation) {
138
- var transitionDuration = Util__default['default'].getTransitionDurationFromElement(this._element);
139
- $__default['default'](this._element).one(Util__default['default'].TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
280
+ var transitionDuration = getTransitionDurationFromElement(this._element);
281
+ EventHandler__default['default'].one(this._element, 'transitionend', complete);
282
+ emulateTransitionEnd(this._element, transitionDuration);
140
283
  } else {
141
284
  complete();
142
285
  }
143
286
  };
144
287
 
145
288
  _proto.hide = function hide() {
289
+ var _this3 = this;
290
+
146
291
  if (!this._element.classList.contains(CLASS_NAME_SHOW)) {
147
292
  return;
148
293
  }
149
294
 
150
- var hideEvent = $__default['default'].Event(EVENT_HIDE);
151
- $__default['default'](this._element).trigger(hideEvent);
295
+ var hideEvent = EventHandler__default['default'].trigger(this._element, EVENT_HIDE);
152
296
 
153
- if (hideEvent.isDefaultPrevented()) {
297
+ if (hideEvent.defaultPrevented) {
154
298
  return;
155
299
  }
156
300
 
157
- this._close();
301
+ var complete = function complete() {
302
+ _this3._element.classList.add(CLASS_NAME_HIDE);
303
+
304
+ EventHandler__default['default'].trigger(_this3._element, EVENT_HIDDEN);
305
+ };
306
+
307
+ this._element.classList.remove(CLASS_NAME_SHOW);
308
+
309
+ if (this._config.animation) {
310
+ var transitionDuration = getTransitionDurationFromElement(this._element);
311
+ EventHandler__default['default'].one(this._element, 'transitionend', complete);
312
+ emulateTransitionEnd(this._element, transitionDuration);
313
+ } else {
314
+ complete();
315
+ }
158
316
  };
159
317
 
160
318
  _proto.dispose = function dispose() {
@@ -164,62 +322,42 @@
164
322
  this._element.classList.remove(CLASS_NAME_SHOW);
165
323
  }
166
324
 
167
- $__default['default'](this._element).off(EVENT_CLICK_DISMISS);
168
- $__default['default'].removeData(this._element, DATA_KEY);
169
- this._element = null;
325
+ EventHandler__default['default'].off(this._element, EVENT_CLICK_DISMISS);
326
+
327
+ _BaseComponent.prototype.dispose.call(this);
328
+
170
329
  this._config = null;
171
330
  } // Private
172
331
  ;
173
332
 
174
333
  _proto._getConfig = function _getConfig(config) {
175
- config = _extends({}, Default, $__default['default'](this._element).data(), typeof config === 'object' && config ? config : {});
176
- Util__default['default'].typeCheckConfig(NAME, config, this.constructor.DefaultType);
334
+ config = _extends({}, Default, Manipulator__default['default'].getDataAttributes(this._element), typeof config === 'object' && config ? config : {});
335
+ typeCheckConfig(NAME, config, this.constructor.DefaultType);
177
336
  return config;
178
337
  };
179
338
 
180
339
  _proto._setListeners = function _setListeners() {
181
- var _this2 = this;
340
+ var _this4 = this;
182
341
 
183
- $__default['default'](this._element).on(EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, function () {
184
- return _this2.hide();
342
+ EventHandler__default['default'].on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, function () {
343
+ return _this4.hide();
185
344
  });
186
345
  };
187
346
 
188
- _proto._close = function _close() {
189
- var _this3 = this;
190
-
191
- var complete = function complete() {
192
- _this3._element.classList.add(CLASS_NAME_HIDE);
193
-
194
- $__default['default'](_this3._element).trigger(EVENT_HIDDEN);
195
- };
196
-
197
- this._element.classList.remove(CLASS_NAME_SHOW);
198
-
199
- if (this._config.animation) {
200
- var transitionDuration = Util__default['default'].getTransitionDurationFromElement(this._element);
201
- $__default['default'](this._element).one(Util__default['default'].TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
202
- } else {
203
- complete();
204
- }
205
- };
206
-
207
347
  _proto._clearTimeout = function _clearTimeout() {
208
348
  clearTimeout(this._timeout);
209
349
  this._timeout = null;
210
350
  } // Static
211
351
  ;
212
352
 
213
- Toast._jQueryInterface = function _jQueryInterface(config) {
353
+ Toast.jQueryInterface = function jQueryInterface(config) {
214
354
  return this.each(function () {
215
- var $element = $__default['default'](this);
216
- var data = $element.data(DATA_KEY);
355
+ var data = Data__default['default'].getData(this, DATA_KEY);
217
356
 
218
357
  var _config = typeof config === 'object' && config;
219
358
 
220
359
  if (!data) {
221
360
  data = new Toast(this, _config);
222
- $element.data(DATA_KEY, data);
223
361
  }
224
362
 
225
363
  if (typeof config === 'string') {
@@ -233,11 +371,6 @@
233
371
  };
234
372
 
235
373
  _createClass(Toast, null, [{
236
- key: "VERSION",
237
- get: function get() {
238
- return VERSION;
239
- }
240
- }, {
241
374
  key: "DefaultType",
242
375
  get: function get() {
243
376
  return DefaultType;
@@ -247,24 +380,24 @@
247
380
  get: function get() {
248
381
  return Default;
249
382
  }
383
+ }, {
384
+ key: "DATA_KEY",
385
+ get: function get() {
386
+ return DATA_KEY;
387
+ }
250
388
  }]);
251
389
 
252
390
  return Toast;
253
- }();
391
+ }(BaseComponent__default['default']);
254
392
  /**
255
393
  * ------------------------------------------------------------------------
256
394
  * jQuery
257
395
  * ------------------------------------------------------------------------
396
+ * add .Toast to jQuery only if jQuery is present
258
397
  */
259
398
 
260
399
 
261
- $__default['default'].fn[NAME] = Toast._jQueryInterface;
262
- $__default['default'].fn[NAME].Constructor = Toast;
263
-
264
- $__default['default'].fn[NAME].noConflict = function () {
265
- $__default['default'].fn[NAME] = JQUERY_NO_CONFLICT;
266
- return Toast._jQueryInterface;
267
- };
400
+ defineJQueryPlugin(NAME, Toast);
268
401
 
269
402
  return Toast;
270
403