bootstrap 4.6.0 → 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 +2 -1
- data/README.md +7 -4
- data/assets/javascripts/bootstrap/alert.js +181 -109
- data/assets/javascripts/bootstrap/base-component.js +63 -0
- data/assets/javascripts/bootstrap/button.js +85 -173
- data/assets/javascripts/bootstrap/carousel.js +458 -355
- data/assets/javascripts/bootstrap/collapse.js +366 -218
- data/assets/javascripts/bootstrap/dom/data.js +68 -0
- data/assets/javascripts/bootstrap/dom/event-handler.js +322 -0
- data/assets/javascripts/bootstrap/dom/manipulator.js +88 -0
- data/assets/javascripts/bootstrap/dom/selector-engine.js +85 -0
- data/assets/javascripts/bootstrap/dropdown.js +459 -351
- data/assets/javascripts/bootstrap/modal.js +597 -429
- data/assets/javascripts/bootstrap/offcanvas.js +671 -0
- data/assets/javascripts/bootstrap/popover.js +130 -154
- data/assets/javascripts/bootstrap/scrollspy.js +238 -188
- data/assets/javascripts/bootstrap/tab.js +235 -137
- data/assets/javascripts/bootstrap/toast.js +210 -148
- data/assets/javascripts/bootstrap/tooltip.js +627 -466
- 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 +15 -8
- data/assets/javascripts/bootstrap.js +3174 -2563
- data/assets/javascripts/bootstrap.min.js +2 -2
- data/assets/stylesheets/_bootstrap-grid.scss +51 -16
- data/assets/stylesheets/_bootstrap-reboot.scss +4 -1
- data/assets/stylesheets/_bootstrap.scss +16 -8
- data/assets/stylesheets/bootstrap/_accordion.scss +118 -0
- data/assets/stylesheets/bootstrap/_alert.scss +15 -10
- data/assets/stylesheets/bootstrap/_badge.scss +2 -27
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +3 -17
- data/assets/stylesheets/bootstrap/_button-group.scss +21 -45
- data/assets/stylesheets/bootstrap/_buttons.scss +29 -60
- data/assets/stylesheets/bootstrap/_card.scss +20 -91
- data/assets/stylesheets/bootstrap/_carousel.scss +65 -33
- data/assets/stylesheets/bootstrap/_close.scss +30 -30
- data/assets/stylesheets/bootstrap/_containers.scss +41 -0
- data/assets/stylesheets/bootstrap/_dropdown.scss +84 -36
- data/assets/stylesheets/bootstrap/_forms.scss +9 -347
- data/assets/stylesheets/bootstrap/_functions.scss +84 -23
- data/assets/stylesheets/bootstrap/_grid.scss +3 -54
- data/assets/stylesheets/bootstrap/_helpers.scss +7 -0
- data/assets/stylesheets/bootstrap/_list-group.scss +28 -8
- data/assets/stylesheets/bootstrap/_mixins.scss +8 -13
- data/assets/stylesheets/bootstrap/_modal.scss +43 -55
- data/assets/stylesheets/bootstrap/_nav.scss +23 -4
- data/assets/stylesheets/bootstrap/_navbar.scss +45 -71
- data/assets/stylesheets/bootstrap/_offcanvas.scss +77 -0
- data/assets/stylesheets/bootstrap/_pagination.scss +10 -20
- data/assets/stylesheets/bootstrap/_popover.scss +15 -27
- data/assets/stylesheets/bootstrap/_progress.scss +5 -4
- data/assets/stylesheets/bootstrap/_reboot.scss +316 -179
- data/assets/stylesheets/bootstrap/_root.scss +5 -8
- data/assets/stylesheets/bootstrap/_spinners.scss +11 -7
- data/assets/stylesheets/bootstrap/_tables.scss +79 -114
- data/assets/stylesheets/bootstrap/_toasts.scss +20 -15
- data/assets/stylesheets/bootstrap/_tooltip.scss +17 -17
- data/assets/stylesheets/bootstrap/_transitions.scss +2 -1
- data/assets/stylesheets/bootstrap/_type.scss +38 -59
- data/assets/stylesheets/bootstrap/_utilities.scss +594 -18
- data/assets/stylesheets/bootstrap/_variables.scss +800 -482
- data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +18 -0
- data/assets/stylesheets/bootstrap/forms/_floating-labels.scss +61 -0
- data/assets/stylesheets/bootstrap/forms/_form-check.scss +152 -0
- data/assets/stylesheets/bootstrap/forms/_form-control.scss +219 -0
- data/assets/stylesheets/bootstrap/forms/_form-range.scss +91 -0
- data/assets/stylesheets/bootstrap/forms/_form-select.scss +67 -0
- data/assets/stylesheets/bootstrap/forms/_form-text.scss +11 -0
- data/assets/stylesheets/bootstrap/forms/_input-group.scss +121 -0
- data/assets/stylesheets/bootstrap/forms/_labels.scss +36 -0
- data/assets/stylesheets/bootstrap/forms/_validation.scss +12 -0
- data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +12 -0
- data/assets/stylesheets/bootstrap/helpers/_position.scss +30 -0
- data/assets/stylesheets/bootstrap/helpers/_ratio.scss +26 -0
- data/assets/stylesheets/bootstrap/helpers/_stretched-link.scss +15 -0
- data/assets/stylesheets/bootstrap/helpers/_text-truncation.scss +7 -0
- data/assets/stylesheets/bootstrap/helpers/_visually-hidden.scss +8 -0
- data/assets/stylesheets/bootstrap/mixins/_alert.scss +3 -5
- data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +10 -8
- data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +7 -9
- data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +14 -10
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +71 -48
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +10 -8
- data/assets/stylesheets/bootstrap/mixins/_clearfix.scss +2 -0
- data/assets/stylesheets/bootstrap/mixins/_color-scheme.scss +7 -0
- data/assets/stylesheets/bootstrap/mixins/_container.scss +9 -0
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +38 -86
- data/assets/stylesheets/bootstrap/mixins/_gradients.scss +13 -11
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +89 -33
- data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -21
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +5 -2
- data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_pagination.scss +17 -8
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +2 -2
- data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +21 -0
- data/assets/stylesheets/bootstrap/mixins/_transition.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_utilities.scss +68 -0
- data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +29 -0
- data/assets/stylesheets/bootstrap/utilities/_api.scss +47 -0
- data/assets/stylesheets/bootstrap/vendor/_rfs.scss +234 -126
- 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 +45 -73
- data/assets/javascripts/bootstrap/util.js +0 -192
- data/assets/stylesheets/bootstrap/_code.scss +0 -48
- data/assets/stylesheets/bootstrap/_custom-forms.scss +0 -526
- data/assets/stylesheets/bootstrap/_input-group.scss +0 -208
- data/assets/stylesheets/bootstrap/_jumbotron.scss +0 -17
- data/assets/stylesheets/bootstrap/_media.scss +0 -8
- data/assets/stylesheets/bootstrap/_print.scss +0 -141
- data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +0 -23
- data/assets/stylesheets/bootstrap/mixins/_badge.scss +0 -17
- data/assets/stylesheets/bootstrap/mixins/_float.scss +0 -14
- data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +0 -80
- data/assets/stylesheets/bootstrap/mixins/_hover.scss +0 -37
- data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +0 -11
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +0 -34
- data/assets/stylesheets/bootstrap/mixins/_size.scss +0 -7
- data/assets/stylesheets/bootstrap/mixins/_table-row.scss +0 -39
- data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +0 -17
- data/assets/stylesheets/bootstrap/mixins/_text-hide.scss +0 -11
- data/assets/stylesheets/bootstrap/mixins/_visibility.scss +0 -8
- data/assets/stylesheets/bootstrap/utilities/_align.scss +0 -8
- data/assets/stylesheets/bootstrap/utilities/_background.scss +0 -19
- data/assets/stylesheets/bootstrap/utilities/_borders.scss +0 -75
- data/assets/stylesheets/bootstrap/utilities/_display.scss +0 -26
- data/assets/stylesheets/bootstrap/utilities/_embed.scss +0 -39
- data/assets/stylesheets/bootstrap/utilities/_flex.scss +0 -51
- data/assets/stylesheets/bootstrap/utilities/_float.scss +0 -11
- data/assets/stylesheets/bootstrap/utilities/_interactions.scss +0 -5
- data/assets/stylesheets/bootstrap/utilities/_overflow.scss +0 -5
- data/assets/stylesheets/bootstrap/utilities/_position.scss +0 -32
- data/assets/stylesheets/bootstrap/utilities/_screenreaders.scss +0 -11
- data/assets/stylesheets/bootstrap/utilities/_shadows.scss +0 -6
- data/assets/stylesheets/bootstrap/utilities/_sizing.scss +0 -20
- data/assets/stylesheets/bootstrap/utilities/_spacing.scss +0 -73
- data/assets/stylesheets/bootstrap/utilities/_stretched-link.scss +0 -19
- data/assets/stylesheets/bootstrap/utilities/_text.scss +0 -72
- data/assets/stylesheets/bootstrap/utilities/_visibility.scss +0 -13
- data/test/dummy_rails/app/views/pages/root.html.slim +0 -58
- /data/assets/stylesheets/bootstrap/{utilities → helpers}/_clearfix.scss +0 -0
|
@@ -1,93 +1,181 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Bootstrap toast.js
|
|
2
|
+
* Bootstrap toast.js v5.0.0 (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('
|
|
8
|
-
typeof define === 'function' && define.amd ? define(['
|
|
9
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Toast = factory(global.
|
|
10
|
-
}(this, (function (
|
|
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
|
|
15
|
-
var
|
|
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
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
/**
|
|
20
|
+
* --------------------------------------------------------------------------
|
|
21
|
+
* Bootstrap (v5.0.0): util/index.js
|
|
22
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
23
|
+
* --------------------------------------------------------------------------
|
|
24
|
+
*/
|
|
25
|
+
const MILLISECONDS_MULTIPLIER = 1000;
|
|
26
|
+
const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
|
|
27
|
+
|
|
28
|
+
const toType = obj => {
|
|
29
|
+
if (obj === null || obj === undefined) {
|
|
30
|
+
return `${obj}`;
|
|
24
31
|
}
|
|
25
|
-
}
|
|
26
32
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
30
|
-
return Constructor;
|
|
31
|
-
}
|
|
33
|
+
return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase();
|
|
34
|
+
};
|
|
32
35
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
36
|
+
const getTransitionDurationFromElement = element => {
|
|
37
|
+
if (!element) {
|
|
38
|
+
return 0;
|
|
39
|
+
} // Get transition-duration of the element
|
|
37
40
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
|
|
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
|
|
48
|
+
|
|
49
|
+
if (!floatTransitionDuration && !floatTransitionDelay) {
|
|
50
|
+
return 0;
|
|
51
|
+
} // If multiple durations are defined, take the first
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
transitionDuration = transitionDuration.split(',')[0];
|
|
55
|
+
transitionDelay = transitionDelay.split(',')[0];
|
|
56
|
+
return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
const triggerTransitionEnd = element => {
|
|
60
|
+
element.dispatchEvent(new Event(TRANSITION_END));
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
const isElement = obj => (obj[0] || obj).nodeType;
|
|
64
|
+
|
|
65
|
+
const emulateTransitionEnd = (element, duration) => {
|
|
66
|
+
let called = false;
|
|
67
|
+
const durationPadding = 5;
|
|
68
|
+
const emulatedDuration = duration + durationPadding;
|
|
69
|
+
|
|
70
|
+
function listener() {
|
|
71
|
+
called = true;
|
|
72
|
+
element.removeEventListener(TRANSITION_END, listener);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
element.addEventListener(TRANSITION_END, listener);
|
|
76
|
+
setTimeout(() => {
|
|
77
|
+
if (!called) {
|
|
78
|
+
triggerTransitionEnd(element);
|
|
43
79
|
}
|
|
80
|
+
}, emulatedDuration);
|
|
81
|
+
};
|
|
44
82
|
|
|
45
|
-
|
|
46
|
-
|
|
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);
|
|
47
88
|
|
|
48
|
-
|
|
49
|
-
|
|
89
|
+
if (!new RegExp(expectedTypes).test(valueType)) {
|
|
90
|
+
throw new TypeError(`${componentName.toUpperCase()}: Option "${property}" provided type "${valueType}" but expected type "${expectedTypes}".`);
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
const reflow = element => element.offsetHeight;
|
|
96
|
+
|
|
97
|
+
const getjQuery = () => {
|
|
98
|
+
const {
|
|
99
|
+
jQuery
|
|
100
|
+
} = window;
|
|
101
|
+
|
|
102
|
+
if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {
|
|
103
|
+
return jQuery;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
return null;
|
|
107
|
+
};
|
|
50
108
|
|
|
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;
|
|
126
|
+
|
|
127
|
+
$.fn[name].noConflict = () => {
|
|
128
|
+
$.fn[name] = JQUERY_NO_CONFLICT;
|
|
129
|
+
return plugin.jQueryInterface;
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* --------------------------------------------------------------------------
|
|
137
|
+
* Bootstrap (v5.0.0): toast.js
|
|
138
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
139
|
+
* --------------------------------------------------------------------------
|
|
140
|
+
*/
|
|
51
141
|
/**
|
|
52
142
|
* ------------------------------------------------------------------------
|
|
53
143
|
* Constants
|
|
54
144
|
* ------------------------------------------------------------------------
|
|
55
145
|
*/
|
|
56
146
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
var CLASS_NAME_SHOWING = 'showing';
|
|
71
|
-
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 = {
|
|
72
160
|
animation: 'boolean',
|
|
73
161
|
autohide: 'boolean',
|
|
74
162
|
delay: 'number'
|
|
75
163
|
};
|
|
76
|
-
|
|
164
|
+
const Default = {
|
|
77
165
|
animation: true,
|
|
78
166
|
autohide: true,
|
|
79
|
-
delay:
|
|
167
|
+
delay: 5000
|
|
80
168
|
};
|
|
81
|
-
|
|
169
|
+
const SELECTOR_DATA_DISMISS = '[data-bs-dismiss="toast"]';
|
|
82
170
|
/**
|
|
83
171
|
* ------------------------------------------------------------------------
|
|
84
172
|
* Class Definition
|
|
85
173
|
* ------------------------------------------------------------------------
|
|
86
174
|
*/
|
|
87
175
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
176
|
+
class Toast extends BaseComponent__default['default'] {
|
|
177
|
+
constructor(element, config) {
|
|
178
|
+
super(element);
|
|
91
179
|
this._config = this._getConfig(config);
|
|
92
180
|
this._timeout = null;
|
|
93
181
|
|
|
@@ -95,16 +183,23 @@
|
|
|
95
183
|
} // Getters
|
|
96
184
|
|
|
97
185
|
|
|
98
|
-
|
|
186
|
+
static get DefaultType() {
|
|
187
|
+
return DefaultType;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
static get Default() {
|
|
191
|
+
return Default;
|
|
192
|
+
}
|
|
99
193
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
194
|
+
static get DATA_KEY() {
|
|
195
|
+
return DATA_KEY;
|
|
196
|
+
} // Public
|
|
103
197
|
|
|
104
|
-
var showEvent = $__default['default'].Event(EVENT_SHOW);
|
|
105
|
-
$__default['default'](this._element).trigger(showEvent);
|
|
106
198
|
|
|
107
|
-
|
|
199
|
+
show() {
|
|
200
|
+
const showEvent = EventHandler__default['default'].trigger(this._element, EVENT_SHOW);
|
|
201
|
+
|
|
202
|
+
if (showEvent.defaultPrevented) {
|
|
108
203
|
return;
|
|
109
204
|
}
|
|
110
205
|
|
|
@@ -114,157 +209,124 @@
|
|
|
114
209
|
this._element.classList.add(CLASS_NAME_FADE);
|
|
115
210
|
}
|
|
116
211
|
|
|
117
|
-
|
|
118
|
-
|
|
212
|
+
const complete = () => {
|
|
213
|
+
this._element.classList.remove(CLASS_NAME_SHOWING);
|
|
119
214
|
|
|
120
|
-
|
|
215
|
+
this._element.classList.add(CLASS_NAME_SHOW);
|
|
121
216
|
|
|
122
|
-
|
|
217
|
+
EventHandler__default['default'].trigger(this._element, EVENT_SHOWN);
|
|
123
218
|
|
|
124
|
-
if (
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
},
|
|
219
|
+
if (this._config.autohide) {
|
|
220
|
+
this._timeout = setTimeout(() => {
|
|
221
|
+
this.hide();
|
|
222
|
+
}, this._config.delay);
|
|
128
223
|
}
|
|
129
224
|
};
|
|
130
225
|
|
|
131
226
|
this._element.classList.remove(CLASS_NAME_HIDE);
|
|
132
227
|
|
|
133
|
-
|
|
228
|
+
reflow(this._element);
|
|
134
229
|
|
|
135
230
|
this._element.classList.add(CLASS_NAME_SHOWING);
|
|
136
231
|
|
|
137
232
|
if (this._config.animation) {
|
|
138
|
-
|
|
139
|
-
|
|
233
|
+
const transitionDuration = getTransitionDurationFromElement(this._element);
|
|
234
|
+
EventHandler__default['default'].one(this._element, 'transitionend', complete);
|
|
235
|
+
emulateTransitionEnd(this._element, transitionDuration);
|
|
140
236
|
} else {
|
|
141
237
|
complete();
|
|
142
238
|
}
|
|
143
|
-
}
|
|
239
|
+
}
|
|
144
240
|
|
|
145
|
-
|
|
241
|
+
hide() {
|
|
146
242
|
if (!this._element.classList.contains(CLASS_NAME_SHOW)) {
|
|
147
243
|
return;
|
|
148
244
|
}
|
|
149
245
|
|
|
150
|
-
|
|
151
|
-
$__default['default'](this._element).trigger(hideEvent);
|
|
246
|
+
const hideEvent = EventHandler__default['default'].trigger(this._element, EVENT_HIDE);
|
|
152
247
|
|
|
153
|
-
if (hideEvent.
|
|
248
|
+
if (hideEvent.defaultPrevented) {
|
|
154
249
|
return;
|
|
155
250
|
}
|
|
156
251
|
|
|
157
|
-
|
|
158
|
-
|
|
252
|
+
const complete = () => {
|
|
253
|
+
this._element.classList.add(CLASS_NAME_HIDE);
|
|
254
|
+
|
|
255
|
+
EventHandler__default['default'].trigger(this._element, EVENT_HIDDEN);
|
|
256
|
+
};
|
|
257
|
+
|
|
258
|
+
this._element.classList.remove(CLASS_NAME_SHOW);
|
|
259
|
+
|
|
260
|
+
if (this._config.animation) {
|
|
261
|
+
const transitionDuration = getTransitionDurationFromElement(this._element);
|
|
262
|
+
EventHandler__default['default'].one(this._element, 'transitionend', complete);
|
|
263
|
+
emulateTransitionEnd(this._element, transitionDuration);
|
|
264
|
+
} else {
|
|
265
|
+
complete();
|
|
266
|
+
}
|
|
267
|
+
}
|
|
159
268
|
|
|
160
|
-
|
|
269
|
+
dispose() {
|
|
161
270
|
this._clearTimeout();
|
|
162
271
|
|
|
163
272
|
if (this._element.classList.contains(CLASS_NAME_SHOW)) {
|
|
164
273
|
this._element.classList.remove(CLASS_NAME_SHOW);
|
|
165
274
|
}
|
|
166
275
|
|
|
167
|
-
|
|
168
|
-
$__default['default'].removeData(this._element, DATA_KEY);
|
|
169
|
-
this._element = null;
|
|
276
|
+
super.dispose();
|
|
170
277
|
this._config = null;
|
|
171
278
|
} // Private
|
|
172
|
-
;
|
|
173
|
-
|
|
174
|
-
_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);
|
|
177
|
-
return config;
|
|
178
|
-
};
|
|
179
|
-
|
|
180
|
-
_proto._setListeners = function _setListeners() {
|
|
181
|
-
var _this2 = this;
|
|
182
|
-
|
|
183
|
-
$__default['default'](this._element).on(EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, function () {
|
|
184
|
-
return _this2.hide();
|
|
185
|
-
});
|
|
186
|
-
};
|
|
187
279
|
|
|
188
|
-
_proto._close = function _close() {
|
|
189
|
-
var _this3 = this;
|
|
190
280
|
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
281
|
+
_getConfig(config) {
|
|
282
|
+
config = { ...Default,
|
|
283
|
+
...Manipulator__default['default'].getDataAttributes(this._element),
|
|
284
|
+
...(typeof config === 'object' && config ? config : {})
|
|
195
285
|
};
|
|
286
|
+
typeCheckConfig(NAME, config, this.constructor.DefaultType);
|
|
287
|
+
return config;
|
|
288
|
+
}
|
|
196
289
|
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
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
|
-
};
|
|
290
|
+
_setListeners() {
|
|
291
|
+
EventHandler__default['default'].on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide());
|
|
292
|
+
}
|
|
206
293
|
|
|
207
|
-
|
|
294
|
+
_clearTimeout() {
|
|
208
295
|
clearTimeout(this._timeout);
|
|
209
296
|
this._timeout = null;
|
|
210
297
|
} // Static
|
|
211
|
-
;
|
|
212
298
|
|
|
213
|
-
|
|
299
|
+
|
|
300
|
+
static jQueryInterface(config) {
|
|
214
301
|
return this.each(function () {
|
|
215
|
-
|
|
216
|
-
var data = $element.data(DATA_KEY);
|
|
302
|
+
let data = Data__default['default'].get(this, DATA_KEY);
|
|
217
303
|
|
|
218
|
-
|
|
304
|
+
const _config = typeof config === 'object' && config;
|
|
219
305
|
|
|
220
306
|
if (!data) {
|
|
221
307
|
data = new Toast(this, _config);
|
|
222
|
-
$element.data(DATA_KEY, data);
|
|
223
308
|
}
|
|
224
309
|
|
|
225
310
|
if (typeof config === 'string') {
|
|
226
311
|
if (typeof data[config] === 'undefined') {
|
|
227
|
-
throw new TypeError(
|
|
312
|
+
throw new TypeError(`No method named "${config}"`);
|
|
228
313
|
}
|
|
229
314
|
|
|
230
315
|
data[config](this);
|
|
231
316
|
}
|
|
232
317
|
});
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
_createClass(Toast, null, [{
|
|
236
|
-
key: "VERSION",
|
|
237
|
-
get: function get() {
|
|
238
|
-
return VERSION;
|
|
239
|
-
}
|
|
240
|
-
}, {
|
|
241
|
-
key: "DefaultType",
|
|
242
|
-
get: function get() {
|
|
243
|
-
return DefaultType;
|
|
244
|
-
}
|
|
245
|
-
}, {
|
|
246
|
-
key: "Default",
|
|
247
|
-
get: function get() {
|
|
248
|
-
return Default;
|
|
249
|
-
}
|
|
250
|
-
}]);
|
|
318
|
+
}
|
|
251
319
|
|
|
252
|
-
|
|
253
|
-
}();
|
|
320
|
+
}
|
|
254
321
|
/**
|
|
255
322
|
* ------------------------------------------------------------------------
|
|
256
323
|
* jQuery
|
|
257
324
|
* ------------------------------------------------------------------------
|
|
325
|
+
* add .Toast to jQuery only if jQuery is present
|
|
258
326
|
*/
|
|
259
327
|
|
|
260
328
|
|
|
261
|
-
|
|
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
|
-
};
|
|
329
|
+
defineJQueryPlugin(NAME, Toast);
|
|
268
330
|
|
|
269
331
|
return Toast;
|
|
270
332
|
|