bootstrap 5.0.0.alpha2 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.travis.yml +1 -0
- data/README.md +7 -4
- data/assets/javascripts/bootstrap-global-this-define.js +6 -0
- data/assets/javascripts/bootstrap-global-this-undefine.js +2 -0
- data/assets/javascripts/bootstrap-sprockets.js +10 -7
- data/assets/javascripts/bootstrap.js +2554 -2564
- data/assets/javascripts/bootstrap.min.js +3 -3
- data/assets/javascripts/bootstrap/alert.js +119 -115
- data/assets/javascripts/bootstrap/base-component.js +63 -0
- data/assets/javascripts/bootstrap/button.js +67 -69
- data/assets/javascripts/bootstrap/carousel.js +340 -331
- data/assets/javascripts/bootstrap/collapse.js +214 -209
- data/assets/javascripts/bootstrap/dom/data.js +35 -48
- data/assets/javascripts/bootstrap/dom/event-handler.js +105 -98
- data/assets/javascripts/bootstrap/dom/manipulator.js +26 -34
- data/assets/javascripts/bootstrap/dom/selector-engine.js +28 -41
- data/assets/javascripts/bootstrap/dropdown.js +392 -325
- data/assets/javascripts/bootstrap/modal.js +492 -434
- data/assets/javascripts/bootstrap/offcanvas.js +671 -0
- data/assets/javascripts/bootstrap/popover.js +114 -132
- data/assets/javascripts/bootstrap/scrollspy.js +172 -180
- data/assets/javascripts/bootstrap/tab.js +168 -144
- data/assets/javascripts/bootstrap/toast.js +141 -150
- data/assets/javascripts/bootstrap/tooltip.js +466 -452
- data/assets/stylesheets/_bootstrap-grid.scss +9 -9
- data/assets/stylesheets/_bootstrap-reboot.scss +3 -3
- data/assets/stylesheets/_bootstrap.scss +5 -3
- data/assets/stylesheets/bootstrap/_accordion.scss +118 -0
- data/assets/stylesheets/bootstrap/_alert.scss +10 -3
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +2 -4
- data/assets/stylesheets/bootstrap/_button-group.scss +5 -7
- data/assets/stylesheets/bootstrap/_buttons.scss +2 -15
- data/assets/stylesheets/bootstrap/_card.scss +2 -29
- data/assets/stylesheets/bootstrap/_carousel.scss +35 -18
- data/assets/stylesheets/bootstrap/_close.scss +2 -3
- data/assets/stylesheets/bootstrap/_dropdown.scss +33 -29
- data/assets/stylesheets/bootstrap/_forms.scss +1 -1
- data/assets/stylesheets/bootstrap/_functions.scss +11 -12
- data/assets/stylesheets/bootstrap/_list-group.scss +23 -6
- data/assets/stylesheets/bootstrap/_mixins.scss +1 -0
- data/assets/stylesheets/bootstrap/_modal.scss +2 -9
- data/assets/stylesheets/bootstrap/_nav.scss +12 -0
- data/assets/stylesheets/bootstrap/_navbar.scss +15 -2
- data/assets/stylesheets/bootstrap/_offcanvas.scss +77 -0
- data/assets/stylesheets/bootstrap/_pagination.scss +3 -3
- data/assets/stylesheets/bootstrap/_popover.scss +10 -22
- data/assets/stylesheets/bootstrap/_progress.scss +4 -1
- data/assets/stylesheets/bootstrap/_reboot.scss +48 -44
- data/assets/stylesheets/bootstrap/_root.scss +5 -5
- data/assets/stylesheets/bootstrap/_spinners.scss +18 -5
- data/assets/stylesheets/bootstrap/_tables.scss +15 -16
- data/assets/stylesheets/bootstrap/_toasts.scss +15 -12
- data/assets/stylesheets/bootstrap/_tooltip.scss +12 -12
- data/assets/stylesheets/bootstrap/_transitions.scss +2 -0
- data/assets/stylesheets/bootstrap/_utilities.scss +133 -70
- data/assets/stylesheets/bootstrap/_variables.scss +363 -207
- data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +5 -5
- data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +61 -0
- data/assets/stylesheets/bootstrap/forms/_form-check.scss +21 -11
- data/assets/stylesheets/bootstrap/forms/_form-control.scss +112 -9
- data/assets/stylesheets/bootstrap/forms/_form-range.scss +1 -46
- data/assets/stylesheets/bootstrap/forms/_form-select.scss +1 -16
- data/assets/stylesheets/bootstrap/forms/_input-group.scss +21 -40
- data/assets/stylesheets/bootstrap/forms/_validation.scss +1 -1
- data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +2 -2
- data/assets/stylesheets/bootstrap/helpers/_ratio.scss +2 -2
- data/assets/stylesheets/bootstrap/helpers/_visually-hidden.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_alert.scss +3 -1
- data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +8 -6
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +10 -5
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +8 -6
- data/assets/stylesheets/bootstrap/mixins/_color-scheme.scss +7 -0
- data/assets/stylesheets/bootstrap/mixins/_container.scss +2 -4
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +26 -22
- data/assets/stylesheets/bootstrap/mixins/_gradients.scss +5 -1
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +18 -13
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +3 -1
- data/assets/stylesheets/bootstrap/mixins/_pagination.scss +5 -3
- data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +7 -7
- data/assets/stylesheets/bootstrap/mixins/_utilities.scss +19 -0
- data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +3 -2
- data/assets/stylesheets/bootstrap/utilities/_api.scss +1 -1
- data/bootstrap.gemspec +1 -3
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +20 -5
- data/tasks/updater/network.rb +7 -1
- data/test/dummy_rails/app/assets/javascripts/application.js +4 -3
- data/test/dummy_rails/app/views/layouts/application.html.erb +3 -1
- data/test/dummy_rails/app/views/pages/root.html +89 -0
- data/test/dummy_rails/config/application.rb +0 -3
- data/test/gemfiles/rails_6_1.gemfile +7 -0
- metadata +20 -40
- data/assets/javascripts/bootstrap/dom/polyfill.js +0 -110
- data/assets/stylesheets/bootstrap/forms/_form-file.scss +0 -91
- 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
|
|
3
|
-
* Copyright 2011-
|
|
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
|
|
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
|
|
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
|
-
|
|
25
|
-
|
|
25
|
+
const MILLISECONDS_MULTIPLIER = 1000;
|
|
26
|
+
const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
|
|
26
27
|
|
|
27
|
-
|
|
28
|
+
const toType = obj => {
|
|
28
29
|
if (obj === null || obj === undefined) {
|
|
29
|
-
return
|
|
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
|
-
|
|
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
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
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
|
-
|
|
59
|
+
const triggerTransitionEnd = element => {
|
|
59
60
|
element.dispatchEvent(new Event(TRANSITION_END));
|
|
60
61
|
};
|
|
61
62
|
|
|
62
|
-
|
|
63
|
-
return (obj[0] || obj).nodeType;
|
|
64
|
-
};
|
|
63
|
+
const isElement = obj => (obj[0] || obj).nodeType;
|
|
65
64
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
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(
|
|
76
|
+
setTimeout(() => {
|
|
78
77
|
if (!called) {
|
|
79
78
|
triggerTransitionEnd(element);
|
|
80
79
|
}
|
|
81
80
|
}, emulatedDuration);
|
|
82
81
|
};
|
|
83
82
|
|
|
84
|
-
|
|
85
|
-
Object.keys(configTypes).forEach(
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
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
|
|
90
|
+
throw new TypeError(`${componentName.toUpperCase()}: Option "${property}" provided type "${valueType}" but expected type "${expectedTypes}".`);
|
|
92
91
|
}
|
|
93
92
|
});
|
|
94
93
|
};
|
|
95
94
|
|
|
96
|
-
|
|
97
|
-
return element.offsetHeight;
|
|
98
|
-
};
|
|
95
|
+
const reflow = element => element.offsetHeight;
|
|
99
96
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
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
|
-
|
|
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
|
-
|
|
127
|
+
$.fn[name].noConflict = () => {
|
|
128
|
+
$.fn[name] = JQUERY_NO_CONFLICT;
|
|
129
|
+
return plugin.jQueryInterface;
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
};
|
|
114
134
|
|
|
115
|
-
|
|
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
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
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
|
-
|
|
164
|
+
const Default = {
|
|
141
165
|
animation: true,
|
|
142
166
|
autohide: true,
|
|
143
167
|
delay: 5000
|
|
144
168
|
};
|
|
145
|
-
|
|
169
|
+
const SELECTOR_DATA_DISMISS = '[data-bs-dismiss="toast"]';
|
|
146
170
|
/**
|
|
147
171
|
* ------------------------------------------------------------------------
|
|
148
172
|
* Class Definition
|
|
149
173
|
* ------------------------------------------------------------------------
|
|
150
174
|
*/
|
|
151
175
|
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
183
|
-
|
|
212
|
+
const complete = () => {
|
|
213
|
+
this._element.classList.remove(CLASS_NAME_SHOWING);
|
|
184
214
|
|
|
185
|
-
|
|
215
|
+
this._element.classList.add(CLASS_NAME_SHOW);
|
|
186
216
|
|
|
187
|
-
EventHandler__default['default'].trigger(
|
|
217
|
+
EventHandler__default['default'].trigger(this._element, EVENT_SHOWN);
|
|
188
218
|
|
|
189
|
-
if (
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
},
|
|
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
|
-
|
|
204
|
-
EventHandler__default['default'].one(this._element,
|
|
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
|
-
|
|
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
|
-
|
|
225
|
-
|
|
252
|
+
const complete = () => {
|
|
253
|
+
this._element.classList.add(CLASS_NAME_HIDE);
|
|
226
254
|
|
|
227
|
-
EventHandler__default['default'].trigger(
|
|
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
|
-
|
|
234
|
-
EventHandler__default['default'].one(this._element,
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
256
|
-
|
|
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
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
};
|
|
290
|
+
_setListeners() {
|
|
291
|
+
EventHandler__default['default'].on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide());
|
|
292
|
+
}
|
|
268
293
|
|
|
269
|
-
|
|
294
|
+
_clearTimeout() {
|
|
270
295
|
clearTimeout(this._timeout);
|
|
271
296
|
this._timeout = null;
|
|
272
297
|
} // Static
|
|
273
|
-
;
|
|
274
298
|
|
|
275
|
-
|
|
299
|
+
|
|
300
|
+
static jQueryInterface(config) {
|
|
276
301
|
return this.each(function () {
|
|
277
|
-
|
|
302
|
+
let data = Data__default['default'].get(this, DATA_KEY);
|
|
278
303
|
|
|
279
|
-
|
|
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(
|
|
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
|
-
|
|
320
|
+
}
|
|
320
321
|
/**
|
|
321
322
|
* ------------------------------------------------------------------------
|
|
322
323
|
* jQuery
|
|
323
324
|
* ------------------------------------------------------------------------
|
|
324
|
-
*
|
|
325
|
+
* add .Toast to jQuery only if jQuery is present
|
|
325
326
|
*/
|
|
326
327
|
|
|
327
|
-
/* istanbul ignore if */
|
|
328
328
|
|
|
329
|
-
|
|
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
|
|