bootstrap 5.0.0.alpha2 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (96) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -0
  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 +10 -7
  7. data/assets/javascripts/bootstrap.js +2554 -2564
  8. data/assets/javascripts/bootstrap.min.js +3 -3
  9. data/assets/javascripts/bootstrap/alert.js +119 -115
  10. data/assets/javascripts/bootstrap/base-component.js +63 -0
  11. data/assets/javascripts/bootstrap/button.js +67 -69
  12. data/assets/javascripts/bootstrap/carousel.js +340 -331
  13. data/assets/javascripts/bootstrap/collapse.js +214 -209
  14. data/assets/javascripts/bootstrap/dom/data.js +35 -48
  15. data/assets/javascripts/bootstrap/dom/event-handler.js +105 -98
  16. data/assets/javascripts/bootstrap/dom/manipulator.js +26 -34
  17. data/assets/javascripts/bootstrap/dom/selector-engine.js +28 -41
  18. data/assets/javascripts/bootstrap/dropdown.js +392 -325
  19. data/assets/javascripts/bootstrap/modal.js +492 -434
  20. data/assets/javascripts/bootstrap/offcanvas.js +671 -0
  21. data/assets/javascripts/bootstrap/popover.js +114 -132
  22. data/assets/javascripts/bootstrap/scrollspy.js +172 -180
  23. data/assets/javascripts/bootstrap/tab.js +168 -144
  24. data/assets/javascripts/bootstrap/toast.js +141 -150
  25. data/assets/javascripts/bootstrap/tooltip.js +466 -452
  26. data/assets/stylesheets/_bootstrap-grid.scss +9 -9
  27. data/assets/stylesheets/_bootstrap-reboot.scss +3 -3
  28. data/assets/stylesheets/_bootstrap.scss +5 -3
  29. data/assets/stylesheets/bootstrap/_accordion.scss +118 -0
  30. data/assets/stylesheets/bootstrap/_alert.scss +10 -3
  31. data/assets/stylesheets/bootstrap/_breadcrumb.scss +2 -4
  32. data/assets/stylesheets/bootstrap/_button-group.scss +5 -7
  33. data/assets/stylesheets/bootstrap/_buttons.scss +2 -15
  34. data/assets/stylesheets/bootstrap/_card.scss +2 -29
  35. data/assets/stylesheets/bootstrap/_carousel.scss +35 -18
  36. data/assets/stylesheets/bootstrap/_close.scss +2 -3
  37. data/assets/stylesheets/bootstrap/_dropdown.scss +33 -29
  38. data/assets/stylesheets/bootstrap/_forms.scss +1 -1
  39. data/assets/stylesheets/bootstrap/_functions.scss +11 -12
  40. data/assets/stylesheets/bootstrap/_list-group.scss +23 -6
  41. data/assets/stylesheets/bootstrap/_mixins.scss +1 -0
  42. data/assets/stylesheets/bootstrap/_modal.scss +2 -9
  43. data/assets/stylesheets/bootstrap/_nav.scss +12 -0
  44. data/assets/stylesheets/bootstrap/_navbar.scss +15 -2
  45. data/assets/stylesheets/bootstrap/_offcanvas.scss +77 -0
  46. data/assets/stylesheets/bootstrap/_pagination.scss +3 -3
  47. data/assets/stylesheets/bootstrap/_popover.scss +10 -22
  48. data/assets/stylesheets/bootstrap/_progress.scss +4 -1
  49. data/assets/stylesheets/bootstrap/_reboot.scss +48 -44
  50. data/assets/stylesheets/bootstrap/_root.scss +5 -5
  51. data/assets/stylesheets/bootstrap/_spinners.scss +18 -5
  52. data/assets/stylesheets/bootstrap/_tables.scss +15 -16
  53. data/assets/stylesheets/bootstrap/_toasts.scss +15 -12
  54. data/assets/stylesheets/bootstrap/_tooltip.scss +12 -12
  55. data/assets/stylesheets/bootstrap/_transitions.scss +2 -0
  56. data/assets/stylesheets/bootstrap/_utilities.scss +133 -70
  57. data/assets/stylesheets/bootstrap/_variables.scss +363 -207
  58. data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +5 -5
  59. data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +61 -0
  60. data/assets/stylesheets/bootstrap/forms/_form-check.scss +21 -11
  61. data/assets/stylesheets/bootstrap/forms/_form-control.scss +112 -9
  62. data/assets/stylesheets/bootstrap/forms/_form-range.scss +1 -46
  63. data/assets/stylesheets/bootstrap/forms/_form-select.scss +1 -16
  64. data/assets/stylesheets/bootstrap/forms/_input-group.scss +21 -40
  65. data/assets/stylesheets/bootstrap/forms/_validation.scss +1 -1
  66. data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +2 -2
  67. data/assets/stylesheets/bootstrap/helpers/_ratio.scss +2 -2
  68. data/assets/stylesheets/bootstrap/helpers/_visually-hidden.scss +1 -1
  69. data/assets/stylesheets/bootstrap/mixins/_alert.scss +3 -1
  70. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +8 -6
  71. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +10 -5
  72. data/assets/stylesheets/bootstrap/mixins/_caret.scss +8 -6
  73. data/assets/stylesheets/bootstrap/mixins/_color-scheme.scss +7 -0
  74. data/assets/stylesheets/bootstrap/mixins/_container.scss +2 -4
  75. data/assets/stylesheets/bootstrap/mixins/_forms.scss +26 -22
  76. data/assets/stylesheets/bootstrap/mixins/_gradients.scss +5 -1
  77. data/assets/stylesheets/bootstrap/mixins/_grid.scss +18 -13
  78. data/assets/stylesheets/bootstrap/mixins/_list-group.scss +3 -1
  79. data/assets/stylesheets/bootstrap/mixins/_pagination.scss +5 -3
  80. data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +7 -7
  81. data/assets/stylesheets/bootstrap/mixins/_utilities.scss +19 -0
  82. data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +3 -2
  83. data/assets/stylesheets/bootstrap/utilities/_api.scss +1 -1
  84. data/bootstrap.gemspec +1 -3
  85. data/lib/bootstrap/version.rb +2 -2
  86. data/tasks/updater/js.rb +20 -5
  87. data/tasks/updater/network.rb +7 -1
  88. data/test/dummy_rails/app/assets/javascripts/application.js +4 -3
  89. data/test/dummy_rails/app/views/layouts/application.html.erb +3 -1
  90. data/test/dummy_rails/app/views/pages/root.html +89 -0
  91. data/test/dummy_rails/config/application.rb +0 -3
  92. data/test/gemfiles/rails_6_1.gemfile +7 -0
  93. metadata +20 -40
  94. data/assets/javascripts/bootstrap/dom/polyfill.js +0 -110
  95. data/assets/stylesheets/bootstrap/forms/_form-file.scss +0 -91
  96. data/test/dummy_rails/app/views/pages/root.html.slim +0 -58
@@ -1,49 +1,50 @@
1
1
  /*!
2
- * Bootstrap toast.js v5.0.0-alpha2 (https://getbootstrap.com/)
3
- * Copyright 2011-2020 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
2
+ * Bootstrap toast.js v5.0.0 (https://getbootstrap.com/)
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('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js')) :
8
- typeof define === 'function' && define.amd ? define(['./dom/data.js', './dom/event-handler.js', './dom/manipulator.js'], factory) :
9
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Toast = factory(global.Data, global.EventHandler, global.Manipulator));
10
- }(this, (function (Data, EventHandler, Manipulator) { '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
14
  var Data__default = /*#__PURE__*/_interopDefaultLegacy(Data);
15
15
  var EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
16
16
  var Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator);
17
+ var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
17
18
 
18
19
  /**
19
20
  * --------------------------------------------------------------------------
20
- * Bootstrap (v5.0.0-alpha2): util/index.js
21
+ * Bootstrap (v5.0.0): util/index.js
21
22
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
22
23
  * --------------------------------------------------------------------------
23
24
  */
24
- var MILLISECONDS_MULTIPLIER = 1000;
25
- var TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
25
+ const MILLISECONDS_MULTIPLIER = 1000;
26
+ const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
26
27
 
27
- var toType = function toType(obj) {
28
+ const toType = obj => {
28
29
  if (obj === null || obj === undefined) {
29
- return "" + obj;
30
+ return `${obj}`;
30
31
  }
31
32
 
32
33
  return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase();
33
34
  };
34
35
 
35
- var getTransitionDurationFromElement = function getTransitionDurationFromElement(element) {
36
+ const getTransitionDurationFromElement = element => {
36
37
  if (!element) {
37
38
  return 0;
38
39
  } // Get transition-duration of the element
39
40
 
40
41
 
41
- var _window$getComputedSt = window.getComputedStyle(element),
42
- transitionDuration = _window$getComputedSt.transitionDuration,
43
- transitionDelay = _window$getComputedSt.transitionDelay;
44
-
45
- var floatTransitionDuration = parseFloat(transitionDuration);
46
- var floatTransitionDelay = parseFloat(transitionDelay); // Return 0 if element or transition duration is not found
42
+ let {
43
+ transitionDuration,
44
+ transitionDelay
45
+ } = window.getComputedStyle(element);
46
+ const floatTransitionDuration = Number.parseFloat(transitionDuration);
47
+ const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found
47
48
 
48
49
  if (!floatTransitionDuration && !floatTransitionDelay) {
49
50
  return 0;
@@ -52,21 +53,19 @@
52
53
 
53
54
  transitionDuration = transitionDuration.split(',')[0];
54
55
  transitionDelay = transitionDelay.split(',')[0];
55
- return (parseFloat(transitionDuration) + parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;
56
+ return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;
56
57
  };
57
58
 
58
- var triggerTransitionEnd = function triggerTransitionEnd(element) {
59
+ const triggerTransitionEnd = element => {
59
60
  element.dispatchEvent(new Event(TRANSITION_END));
60
61
  };
61
62
 
62
- var isElement = function isElement(obj) {
63
- return (obj[0] || obj).nodeType;
64
- };
63
+ const isElement = obj => (obj[0] || obj).nodeType;
65
64
 
66
- var emulateTransitionEnd = function emulateTransitionEnd(element, duration) {
67
- var called = false;
68
- var durationPadding = 5;
69
- var emulatedDuration = duration + durationPadding;
65
+ const emulateTransitionEnd = (element, duration) => {
66
+ let called = false;
67
+ const durationPadding = 5;
68
+ const emulatedDuration = duration + durationPadding;
70
69
 
71
70
  function listener() {
72
71
  called = true;
@@ -74,100 +73,131 @@
74
73
  }
75
74
 
76
75
  element.addEventListener(TRANSITION_END, listener);
77
- setTimeout(function () {
76
+ setTimeout(() => {
78
77
  if (!called) {
79
78
  triggerTransitionEnd(element);
80
79
  }
81
80
  }, emulatedDuration);
82
81
  };
83
82
 
84
- var typeCheckConfig = function typeCheckConfig(componentName, config, configTypes) {
85
- Object.keys(configTypes).forEach(function (property) {
86
- var expectedTypes = configTypes[property];
87
- var value = config[property];
88
- var valueType = value && isElement(value) ? 'element' : toType(value);
83
+ const typeCheckConfig = (componentName, config, configTypes) => {
84
+ Object.keys(configTypes).forEach(property => {
85
+ const expectedTypes = configTypes[property];
86
+ const value = config[property];
87
+ const valueType = value && isElement(value) ? 'element' : toType(value);
89
88
 
90
89
  if (!new RegExp(expectedTypes).test(valueType)) {
91
- throw new Error(componentName.toUpperCase() + ": " + ("Option \"" + property + "\" provided type \"" + valueType + "\" ") + ("but expected type \"" + expectedTypes + "\"."));
90
+ throw new TypeError(`${componentName.toUpperCase()}: Option "${property}" provided type "${valueType}" but expected type "${expectedTypes}".`);
92
91
  }
93
92
  });
94
93
  };
95
94
 
96
- var reflow = function reflow(element) {
97
- return element.offsetHeight;
98
- };
95
+ const reflow = element => element.offsetHeight;
99
96
 
100
- var getjQuery = function getjQuery() {
101
- var _window = window,
102
- jQuery = _window.jQuery;
97
+ const getjQuery = () => {
98
+ const {
99
+ jQuery
100
+ } = window;
103
101
 
104
- if (jQuery && !document.body.hasAttribute('data-no-jquery')) {
102
+ if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {
105
103
  return jQuery;
106
104
  }
107
105
 
108
106
  return null;
109
107
  };
110
108
 
111
- 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); }
109
+ const onDOMContentLoaded = callback => {
110
+ if (document.readyState === 'loading') {
111
+ document.addEventListener('DOMContentLoaded', callback);
112
+ } else {
113
+ callback();
114
+ }
115
+ };
116
+
117
+ const defineJQueryPlugin = (name, plugin) => {
118
+ onDOMContentLoaded(() => {
119
+ const $ = getjQuery();
120
+ /* istanbul ignore if */
121
+
122
+ if ($) {
123
+ const JQUERY_NO_CONFLICT = $.fn[name];
124
+ $.fn[name] = plugin.jQueryInterface;
125
+ $.fn[name].Constructor = plugin;
112
126
 
113
- 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); } }
127
+ $.fn[name].noConflict = () => {
128
+ $.fn[name] = JQUERY_NO_CONFLICT;
129
+ return plugin.jQueryInterface;
130
+ };
131
+ }
132
+ });
133
+ };
114
134
 
115
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
135
+ /**
136
+ * --------------------------------------------------------------------------
137
+ * Bootstrap (v5.0.0): toast.js
138
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
139
+ * --------------------------------------------------------------------------
140
+ */
116
141
  /**
117
142
  * ------------------------------------------------------------------------
118
143
  * Constants
119
144
  * ------------------------------------------------------------------------
120
145
  */
121
146
 
122
- var NAME = 'toast';
123
- var VERSION = '5.0.0-alpha2';
124
- var DATA_KEY = 'bs.toast';
125
- var EVENT_KEY = "." + DATA_KEY;
126
- var EVENT_CLICK_DISMISS = "click.dismiss" + EVENT_KEY;
127
- var EVENT_HIDE = "hide" + EVENT_KEY;
128
- var EVENT_HIDDEN = "hidden" + EVENT_KEY;
129
- var EVENT_SHOW = "show" + EVENT_KEY;
130
- var EVENT_SHOWN = "shown" + EVENT_KEY;
131
- var CLASS_NAME_FADE = 'fade';
132
- var CLASS_NAME_HIDE = 'hide';
133
- var CLASS_NAME_SHOW = 'show';
134
- var CLASS_NAME_SHOWING = 'showing';
135
- var DefaultType = {
147
+ const NAME = 'toast';
148
+ const DATA_KEY = 'bs.toast';
149
+ const EVENT_KEY = `.${DATA_KEY}`;
150
+ const EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`;
151
+ const EVENT_HIDE = `hide${EVENT_KEY}`;
152
+ const EVENT_HIDDEN = `hidden${EVENT_KEY}`;
153
+ const EVENT_SHOW = `show${EVENT_KEY}`;
154
+ const EVENT_SHOWN = `shown${EVENT_KEY}`;
155
+ const CLASS_NAME_FADE = 'fade';
156
+ const CLASS_NAME_HIDE = 'hide';
157
+ const CLASS_NAME_SHOW = 'show';
158
+ const CLASS_NAME_SHOWING = 'showing';
159
+ const DefaultType = {
136
160
  animation: 'boolean',
137
161
  autohide: 'boolean',
138
162
  delay: 'number'
139
163
  };
140
- var Default = {
164
+ const Default = {
141
165
  animation: true,
142
166
  autohide: true,
143
167
  delay: 5000
144
168
  };
145
- var SELECTOR_DATA_DISMISS = '[data-dismiss="toast"]';
169
+ const SELECTOR_DATA_DISMISS = '[data-bs-dismiss="toast"]';
146
170
  /**
147
171
  * ------------------------------------------------------------------------
148
172
  * Class Definition
149
173
  * ------------------------------------------------------------------------
150
174
  */
151
175
 
152
- var Toast = /*#__PURE__*/function () {
153
- function Toast(element, config) {
154
- this._element = element;
176
+ class Toast extends BaseComponent__default['default'] {
177
+ constructor(element, config) {
178
+ super(element);
155
179
  this._config = this._getConfig(config);
156
180
  this._timeout = null;
157
181
 
158
182
  this._setListeners();
159
-
160
- Data__default['default'].setData(element, DATA_KEY, this);
161
183
  } // Getters
162
184
 
163
185
 
164
- var _proto = Toast.prototype;
186
+ static get DefaultType() {
187
+ return DefaultType;
188
+ }
189
+
190
+ static get Default() {
191
+ return Default;
192
+ }
193
+
194
+ static get DATA_KEY() {
195
+ return DATA_KEY;
196
+ } // Public
165
197
 
166
- // Public
167
- _proto.show = function show() {
168
- var _this = this;
169
198
 
170
- var showEvent = EventHandler__default['default'].trigger(this._element, EVENT_SHOW);
199
+ show() {
200
+ const showEvent = EventHandler__default['default'].trigger(this._element, EVENT_SHOW);
171
201
 
172
202
  if (showEvent.defaultPrevented) {
173
203
  return;
@@ -179,17 +209,17 @@
179
209
  this._element.classList.add(CLASS_NAME_FADE);
180
210
  }
181
211
 
182
- var complete = function complete() {
183
- _this._element.classList.remove(CLASS_NAME_SHOWING);
212
+ const complete = () => {
213
+ this._element.classList.remove(CLASS_NAME_SHOWING);
184
214
 
185
- _this._element.classList.add(CLASS_NAME_SHOW);
215
+ this._element.classList.add(CLASS_NAME_SHOW);
186
216
 
187
- EventHandler__default['default'].trigger(_this._element, EVENT_SHOWN);
217
+ EventHandler__default['default'].trigger(this._element, EVENT_SHOWN);
188
218
 
189
- if (_this._config.autohide) {
190
- _this._timeout = setTimeout(function () {
191
- _this.hide();
192
- }, _this._config.delay);
219
+ if (this._config.autohide) {
220
+ this._timeout = setTimeout(() => {
221
+ this.hide();
222
+ }, this._config.delay);
193
223
  }
194
224
  };
195
225
 
@@ -200,83 +230,78 @@
200
230
  this._element.classList.add(CLASS_NAME_SHOWING);
201
231
 
202
232
  if (this._config.animation) {
203
- var transitionDuration = getTransitionDurationFromElement(this._element);
204
- EventHandler__default['default'].one(this._element, TRANSITION_END, complete);
233
+ const transitionDuration = getTransitionDurationFromElement(this._element);
234
+ EventHandler__default['default'].one(this._element, 'transitionend', complete);
205
235
  emulateTransitionEnd(this._element, transitionDuration);
206
236
  } else {
207
237
  complete();
208
238
  }
209
- };
210
-
211
- _proto.hide = function hide() {
212
- var _this2 = this;
239
+ }
213
240
 
241
+ hide() {
214
242
  if (!this._element.classList.contains(CLASS_NAME_SHOW)) {
215
243
  return;
216
244
  }
217
245
 
218
- var hideEvent = EventHandler__default['default'].trigger(this._element, EVENT_HIDE);
246
+ const hideEvent = EventHandler__default['default'].trigger(this._element, EVENT_HIDE);
219
247
 
220
248
  if (hideEvent.defaultPrevented) {
221
249
  return;
222
250
  }
223
251
 
224
- var complete = function complete() {
225
- _this2._element.classList.add(CLASS_NAME_HIDE);
252
+ const complete = () => {
253
+ this._element.classList.add(CLASS_NAME_HIDE);
226
254
 
227
- EventHandler__default['default'].trigger(_this2._element, EVENT_HIDDEN);
255
+ EventHandler__default['default'].trigger(this._element, EVENT_HIDDEN);
228
256
  };
229
257
 
230
258
  this._element.classList.remove(CLASS_NAME_SHOW);
231
259
 
232
260
  if (this._config.animation) {
233
- var transitionDuration = getTransitionDurationFromElement(this._element);
234
- EventHandler__default['default'].one(this._element, TRANSITION_END, complete);
261
+ const transitionDuration = getTransitionDurationFromElement(this._element);
262
+ EventHandler__default['default'].one(this._element, 'transitionend', complete);
235
263
  emulateTransitionEnd(this._element, transitionDuration);
236
264
  } else {
237
265
  complete();
238
266
  }
239
- };
267
+ }
240
268
 
241
- _proto.dispose = function dispose() {
269
+ dispose() {
242
270
  this._clearTimeout();
243
271
 
244
272
  if (this._element.classList.contains(CLASS_NAME_SHOW)) {
245
273
  this._element.classList.remove(CLASS_NAME_SHOW);
246
274
  }
247
275
 
248
- EventHandler__default['default'].off(this._element, EVENT_CLICK_DISMISS);
249
- Data__default['default'].removeData(this._element, DATA_KEY);
250
- this._element = null;
276
+ super.dispose();
251
277
  this._config = null;
252
278
  } // Private
253
- ;
254
279
 
255
- _proto._getConfig = function _getConfig(config) {
256
- config = _extends({}, Default, Manipulator__default['default'].getDataAttributes(this._element), typeof config === 'object' && config ? config : {});
280
+
281
+ _getConfig(config) {
282
+ config = { ...Default,
283
+ ...Manipulator__default['default'].getDataAttributes(this._element),
284
+ ...(typeof config === 'object' && config ? config : {})
285
+ };
257
286
  typeCheckConfig(NAME, config, this.constructor.DefaultType);
258
287
  return config;
259
- };
260
-
261
- _proto._setListeners = function _setListeners() {
262
- var _this3 = this;
288
+ }
263
289
 
264
- EventHandler__default['default'].on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, function () {
265
- return _this3.hide();
266
- });
267
- };
290
+ _setListeners() {
291
+ EventHandler__default['default'].on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide());
292
+ }
268
293
 
269
- _proto._clearTimeout = function _clearTimeout() {
294
+ _clearTimeout() {
270
295
  clearTimeout(this._timeout);
271
296
  this._timeout = null;
272
297
  } // Static
273
- ;
274
298
 
275
- Toast.jQueryInterface = function jQueryInterface(config) {
299
+
300
+ static jQueryInterface(config) {
276
301
  return this.each(function () {
277
- var data = Data__default['default'].getData(this, DATA_KEY);
302
+ let data = Data__default['default'].get(this, DATA_KEY);
278
303
 
279
- var _config = typeof config === 'object' && config;
304
+ const _config = typeof config === 'object' && config;
280
305
 
281
306
  if (!data) {
282
307
  data = new Toast(this, _config);
@@ -284,58 +309,24 @@
284
309
 
285
310
  if (typeof config === 'string') {
286
311
  if (typeof data[config] === 'undefined') {
287
- throw new TypeError("No method named \"" + config + "\"");
312
+ throw new TypeError(`No method named "${config}"`);
288
313
  }
289
314
 
290
315
  data[config](this);
291
316
  }
292
317
  });
293
- };
294
-
295
- Toast.getInstance = function getInstance(element) {
296
- return Data__default['default'].getData(element, DATA_KEY);
297
- };
298
-
299
- _createClass(Toast, null, [{
300
- key: "VERSION",
301
- get: function get() {
302
- return VERSION;
303
- }
304
- }, {
305
- key: "DefaultType",
306
- get: function get() {
307
- return DefaultType;
308
- }
309
- }, {
310
- key: "Default",
311
- get: function get() {
312
- return Default;
313
- }
314
- }]);
315
-
316
- return Toast;
317
- }();
318
+ }
318
319
 
319
- var $ = getjQuery();
320
+ }
320
321
  /**
321
322
  * ------------------------------------------------------------------------
322
323
  * jQuery
323
324
  * ------------------------------------------------------------------------
324
- * add .toast to jQuery only if jQuery is present
325
+ * add .Toast to jQuery only if jQuery is present
325
326
  */
326
327
 
327
- /* istanbul ignore if */
328
328
 
329
- if ($) {
330
- var JQUERY_NO_CONFLICT = $.fn[NAME];
331
- $.fn[NAME] = Toast.jQueryInterface;
332
- $.fn[NAME].Constructor = Toast;
333
-
334
- $.fn[NAME].noConflict = function () {
335
- $.fn[NAME] = JQUERY_NO_CONFLICT;
336
- return Toast.jQueryInterface;
337
- };
338
- }
329
+ defineJQueryPlugin(NAME, Toast);
339
330
 
340
331
  return Toast;
341
332