nex-bootstrap 4.6.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (163) hide show
  1. checksums.yaml +7 -0
  2. data/.gitattributes +14 -0
  3. data/.gitignore +19 -0
  4. data/.travis.yml +31 -0
  5. data/CHANGELOG.md +25 -0
  6. data/Gemfile +11 -0
  7. data/LICENSE +21 -0
  8. data/README.md +109 -0
  9. data/Rakefile +63 -0
  10. data/assets/javascripts/bootstrap/alert.js +183 -0
  11. data/assets/javascripts/bootstrap/button.js +225 -0
  12. data/assets/javascripts/bootstrap/carousel.js +640 -0
  13. data/assets/javascripts/bootstrap/collapse.js +394 -0
  14. data/assets/javascripts/bootstrap/dropdown.js +557 -0
  15. data/assets/javascripts/bootstrap/modal.js +660 -0
  16. data/assets/javascripts/bootstrap/popover.js +243 -0
  17. data/assets/javascripts/bootstrap/scrollspy.js +337 -0
  18. data/assets/javascripts/bootstrap/tab.js +259 -0
  19. data/assets/javascripts/bootstrap/toast.js +265 -0
  20. data/assets/javascripts/bootstrap/tooltip.js +886 -0
  21. data/assets/javascripts/bootstrap/util.js +189 -0
  22. data/assets/javascripts/bootstrap-sprockets.js +12 -0
  23. data/assets/javascripts/bootstrap.js +4356 -0
  24. data/assets/javascripts/bootstrap.min.js +6 -0
  25. data/assets/stylesheets/_bootstrap-grid.scss +30 -0
  26. data/assets/stylesheets/_bootstrap-reboot.scss +12 -0
  27. data/assets/stylesheets/_bootstrap.scss +44 -0
  28. data/assets/stylesheets/bootstrap/_alert.scss +52 -0
  29. data/assets/stylesheets/bootstrap/_badge.scss +54 -0
  30. data/assets/stylesheets/bootstrap/_breadcrumb.scss +42 -0
  31. data/assets/stylesheets/bootstrap/_button-group.scss +163 -0
  32. data/assets/stylesheets/bootstrap/_buttons.scss +142 -0
  33. data/assets/stylesheets/bootstrap/_card.scss +286 -0
  34. data/assets/stylesheets/bootstrap/_carousel.scss +200 -0
  35. data/assets/stylesheets/bootstrap/_close.scss +40 -0
  36. data/assets/stylesheets/bootstrap/_code.scss +48 -0
  37. data/assets/stylesheets/bootstrap/_custom-forms.scss +526 -0
  38. data/assets/stylesheets/bootstrap/_dropdown.scss +192 -0
  39. data/assets/stylesheets/bootstrap/_forms.scss +347 -0
  40. data/assets/stylesheets/bootstrap/_functions.scss +190 -0
  41. data/assets/stylesheets/bootstrap/_grid.scss +73 -0
  42. data/assets/stylesheets/bootstrap/_images.scss +42 -0
  43. data/assets/stylesheets/bootstrap/_input-group.scss +211 -0
  44. data/assets/stylesheets/bootstrap/_jumbotron.scss +17 -0
  45. data/assets/stylesheets/bootstrap/_list-group.scss +154 -0
  46. data/assets/stylesheets/bootstrap/_media.scss +8 -0
  47. data/assets/stylesheets/bootstrap/_mixins.scss +47 -0
  48. data/assets/stylesheets/bootstrap/_modal.scss +240 -0
  49. data/assets/stylesheets/bootstrap/_nav.scss +125 -0
  50. data/assets/stylesheets/bootstrap/_navbar.scss +332 -0
  51. data/assets/stylesheets/bootstrap/_pagination.scss +74 -0
  52. data/assets/stylesheets/bootstrap/_popover.scss +170 -0
  53. data/assets/stylesheets/bootstrap/_print.scss +132 -0
  54. data/assets/stylesheets/bootstrap/_progress.scss +47 -0
  55. data/assets/stylesheets/bootstrap/_reboot.scss +484 -0
  56. data/assets/stylesheets/bootstrap/_root.scss +19 -0
  57. data/assets/stylesheets/bootstrap/_spinners.scss +65 -0
  58. data/assets/stylesheets/bootstrap/_tables.scss +185 -0
  59. data/assets/stylesheets/bootstrap/_toasts.scss +46 -0
  60. data/assets/stylesheets/bootstrap/_tooltip.scss +115 -0
  61. data/assets/stylesheets/bootstrap/_transitions.scss +26 -0
  62. data/assets/stylesheets/bootstrap/_type.scss +125 -0
  63. data/assets/stylesheets/bootstrap/_utilities.scss +18 -0
  64. data/assets/stylesheets/bootstrap/_variables.scss +1149 -0
  65. data/assets/stylesheets/bootstrap/mixins/_alert.scss +13 -0
  66. data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +23 -0
  67. data/assets/stylesheets/bootstrap/mixins/_badge.scss +17 -0
  68. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +76 -0
  69. data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +20 -0
  70. data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +123 -0
  71. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +110 -0
  72. data/assets/stylesheets/bootstrap/mixins/_caret.scss +62 -0
  73. data/assets/stylesheets/bootstrap/mixins/_clearfix.scss +7 -0
  74. data/assets/stylesheets/bootstrap/mixins/_deprecate.scss +10 -0
  75. data/assets/stylesheets/bootstrap/mixins/_float.scss +14 -0
  76. data/assets/stylesheets/bootstrap/mixins/_forms.scss +195 -0
  77. data/assets/stylesheets/bootstrap/mixins/_gradients.scss +45 -0
  78. data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +80 -0
  79. data/assets/stylesheets/bootstrap/mixins/_grid.scss +69 -0
  80. data/assets/stylesheets/bootstrap/mixins/_hover.scss +37 -0
  81. data/assets/stylesheets/bootstrap/mixins/_image.scss +36 -0
  82. data/assets/stylesheets/bootstrap/mixins/_list-group.scss +21 -0
  83. data/assets/stylesheets/bootstrap/mixins/_lists.scss +7 -0
  84. data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +11 -0
  85. data/assets/stylesheets/bootstrap/mixins/_pagination.scss +22 -0
  86. data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +17 -0
  87. data/assets/stylesheets/bootstrap/mixins/_resize.scss +6 -0
  88. data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +34 -0
  89. data/assets/stylesheets/bootstrap/mixins/_size.scss +7 -0
  90. data/assets/stylesheets/bootstrap/mixins/_table-row.scss +39 -0
  91. data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +17 -0
  92. data/assets/stylesheets/bootstrap/mixins/_text-hide.scss +11 -0
  93. data/assets/stylesheets/bootstrap/mixins/_text-truncate.scss +8 -0
  94. data/assets/stylesheets/bootstrap/mixins/_transition.scss +26 -0
  95. data/assets/stylesheets/bootstrap/mixins/_visibility.scss +8 -0
  96. data/assets/stylesheets/bootstrap/utilities/_align.scss +8 -0
  97. data/assets/stylesheets/bootstrap/utilities/_background.scss +19 -0
  98. data/assets/stylesheets/bootstrap/utilities/_borders.scss +75 -0
  99. data/assets/stylesheets/bootstrap/utilities/_clearfix.scss +3 -0
  100. data/assets/stylesheets/bootstrap/utilities/_display.scss +26 -0
  101. data/assets/stylesheets/bootstrap/utilities/_embed.scss +39 -0
  102. data/assets/stylesheets/bootstrap/utilities/_flex.scss +51 -0
  103. data/assets/stylesheets/bootstrap/utilities/_float.scss +11 -0
  104. data/assets/stylesheets/bootstrap/utilities/_interactions.scss +5 -0
  105. data/assets/stylesheets/bootstrap/utilities/_overflow.scss +5 -0
  106. data/assets/stylesheets/bootstrap/utilities/_position.scss +32 -0
  107. data/assets/stylesheets/bootstrap/utilities/_screenreaders.scss +11 -0
  108. data/assets/stylesheets/bootstrap/utilities/_shadows.scss +6 -0
  109. data/assets/stylesheets/bootstrap/utilities/_sizing.scss +20 -0
  110. data/assets/stylesheets/bootstrap/utilities/_spacing.scss +73 -0
  111. data/assets/stylesheets/bootstrap/utilities/_stretched-link.scss +19 -0
  112. data/assets/stylesheets/bootstrap/utilities/_text.scss +72 -0
  113. data/assets/stylesheets/bootstrap/utilities/_visibility.scss +13 -0
  114. data/assets/stylesheets/bootstrap/vendor/_rfs.scss +228 -0
  115. data/bootstrap.gemspec +38 -0
  116. data/lib/bootstrap/engine.rb +15 -0
  117. data/lib/bootstrap/version.rb +6 -0
  118. data/lib/bootstrap.rb +75 -0
  119. data/tasks/updater/js.rb +68 -0
  120. data/tasks/updater/logger.rb +57 -0
  121. data/tasks/updater/network.rb +103 -0
  122. data/tasks/updater/scss.rb +26 -0
  123. data/tasks/updater.rb +67 -0
  124. data/test/dummy_rails/README.rdoc +3 -0
  125. data/test/dummy_rails/Rakefile +6 -0
  126. data/test/dummy_rails/app/assets/config/manifest.js +3 -0
  127. data/test/dummy_rails/app/assets/images/.keep +0 -0
  128. data/test/dummy_rails/app/assets/javascripts/application.js +7 -0
  129. data/test/dummy_rails/app/assets/stylesheets/.browserslistrc +1 -0
  130. data/test/dummy_rails/app/assets/stylesheets/application.sass +4 -0
  131. data/test/dummy_rails/app/controllers/application_controller.rb +5 -0
  132. data/test/dummy_rails/app/controllers/pages_controller.rb +4 -0
  133. data/test/dummy_rails/app/helpers/application_helper.rb +2 -0
  134. data/test/dummy_rails/app/views/layouts/application.html.erb +14 -0
  135. data/test/dummy_rails/app/views/pages/root.html.slim +58 -0
  136. data/test/dummy_rails/config/application.rb +35 -0
  137. data/test/dummy_rails/config/boot.rb +5 -0
  138. data/test/dummy_rails/config/environment.rb +5 -0
  139. data/test/dummy_rails/config/environments/development.rb +23 -0
  140. data/test/dummy_rails/config/environments/production.rb +82 -0
  141. data/test/dummy_rails/config/environments/test.rb +38 -0
  142. data/test/dummy_rails/config/initializers/backtrace_silencers.rb +7 -0
  143. data/test/dummy_rails/config/initializers/filter_parameter_logging.rb +4 -0
  144. data/test/dummy_rails/config/initializers/inflections.rb +16 -0
  145. data/test/dummy_rails/config/initializers/mime_types.rb +5 -0
  146. data/test/dummy_rails/config/initializers/secret_token.rb +18 -0
  147. data/test/dummy_rails/config/initializers/session_store.rb +3 -0
  148. data/test/dummy_rails/config/initializers/wrap_parameters.rb +14 -0
  149. data/test/dummy_rails/config/locales/en.yml +3 -0
  150. data/test/dummy_rails/config/locales/es.yml +3 -0
  151. data/test/dummy_rails/config/routes.rb +3 -0
  152. data/test/dummy_rails/config.ru +4 -0
  153. data/test/dummy_rails/log/.keep +0 -0
  154. data/test/gemfiles/rails_4_2.gemfile +7 -0
  155. data/test/gemfiles/rails_5_0.gemfile +8 -0
  156. data/test/gemfiles/rails_5_1.gemfile +8 -0
  157. data/test/gemfiles/rails_6_0.gemfile +7 -0
  158. data/test/rails_test.rb +24 -0
  159. data/test/support/dummy_rails_integration.rb +31 -0
  160. data/test/support/reporting.rb +27 -0
  161. data/test/test_helper.rb +41 -0
  162. data/test/test_helper_rails.rb +6 -0
  163. metadata +445 -0
@@ -0,0 +1,259 @@
1
+ /*!
2
+ * Bootstrap tab.js v4.6.1 (https://getbootstrap.com/)
3
+ * Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5
+ */
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';
11
+
12
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
+
14
+ var $__default = /*#__PURE__*/_interopDefaultLegacy($);
15
+ var Util__default = /*#__PURE__*/_interopDefaultLegacy(Util);
16
+
17
+ function _defineProperties(target, props) {
18
+ for (var i = 0; i < props.length; i++) {
19
+ var descriptor = props[i];
20
+ descriptor.enumerable = descriptor.enumerable || false;
21
+ descriptor.configurable = true;
22
+ if ("value" in descriptor) descriptor.writable = true;
23
+ Object.defineProperty(target, descriptor.key, descriptor);
24
+ }
25
+ }
26
+
27
+ function _createClass(Constructor, protoProps, staticProps) {
28
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
29
+ if (staticProps) _defineProperties(Constructor, staticProps);
30
+ return Constructor;
31
+ }
32
+
33
+ /**
34
+ * Constants
35
+ */
36
+
37
+ var NAME = 'tab';
38
+ var VERSION = '4.6.1';
39
+ var DATA_KEY = 'bs.tab';
40
+ var EVENT_KEY = "." + DATA_KEY;
41
+ var DATA_API_KEY = '.data-api';
42
+ var JQUERY_NO_CONFLICT = $__default["default"].fn[NAME];
43
+ var CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu';
44
+ var CLASS_NAME_ACTIVE = 'active';
45
+ var CLASS_NAME_DISABLED = 'disabled';
46
+ var CLASS_NAME_FADE = 'fade';
47
+ var CLASS_NAME_SHOW = 'show';
48
+ var EVENT_HIDE = "hide" + EVENT_KEY;
49
+ var EVENT_HIDDEN = "hidden" + EVENT_KEY;
50
+ var EVENT_SHOW = "show" + EVENT_KEY;
51
+ var EVENT_SHOWN = "shown" + EVENT_KEY;
52
+ var EVENT_CLICK_DATA_API = "click" + EVENT_KEY + DATA_API_KEY;
53
+ var SELECTOR_DROPDOWN = '.dropdown';
54
+ var SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';
55
+ var SELECTOR_ACTIVE = '.active';
56
+ var SELECTOR_ACTIVE_UL = '> li > .active';
57
+ var SELECTOR_DATA_TOGGLE = '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]';
58
+ var SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
59
+ var SELECTOR_DROPDOWN_ACTIVE_CHILD = '> .dropdown-menu .active';
60
+ /**
61
+ * Class definition
62
+ */
63
+
64
+ var Tab = /*#__PURE__*/function () {
65
+ function Tab(element) {
66
+ this._element = element;
67
+ } // Getters
68
+
69
+
70
+ var _proto = Tab.prototype;
71
+
72
+ // Public
73
+ _proto.show = function show() {
74
+ var _this = this;
75
+
76
+ 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)) {
77
+ return;
78
+ }
79
+
80
+ var target;
81
+ var previous;
82
+ var listElement = $__default["default"](this._element).closest(SELECTOR_NAV_LIST_GROUP)[0];
83
+ var selector = Util__default["default"].getSelectorFromElement(this._element);
84
+
85
+ if (listElement) {
86
+ var itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE;
87
+ previous = $__default["default"].makeArray($__default["default"](listElement).find(itemSelector));
88
+ previous = previous[previous.length - 1];
89
+ }
90
+
91
+ var hideEvent = $__default["default"].Event(EVENT_HIDE, {
92
+ relatedTarget: this._element
93
+ });
94
+ var showEvent = $__default["default"].Event(EVENT_SHOW, {
95
+ relatedTarget: previous
96
+ });
97
+
98
+ if (previous) {
99
+ $__default["default"](previous).trigger(hideEvent);
100
+ }
101
+
102
+ $__default["default"](this._element).trigger(showEvent);
103
+
104
+ if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) {
105
+ return;
106
+ }
107
+
108
+ if (selector) {
109
+ target = document.querySelector(selector);
110
+ }
111
+
112
+ this._activate(this._element, listElement);
113
+
114
+ var complete = function complete() {
115
+ var hiddenEvent = $__default["default"].Event(EVENT_HIDDEN, {
116
+ relatedTarget: _this._element
117
+ });
118
+ var shownEvent = $__default["default"].Event(EVENT_SHOWN, {
119
+ relatedTarget: previous
120
+ });
121
+ $__default["default"](previous).trigger(hiddenEvent);
122
+ $__default["default"](_this._element).trigger(shownEvent);
123
+ };
124
+
125
+ if (target) {
126
+ this._activate(target, target.parentNode, complete);
127
+ } else {
128
+ complete();
129
+ }
130
+ };
131
+
132
+ _proto.dispose = function dispose() {
133
+ $__default["default"].removeData(this._element, DATA_KEY);
134
+ this._element = null;
135
+ } // Private
136
+ ;
137
+
138
+ _proto._activate = function _activate(element, container, callback) {
139
+ var _this2 = this;
140
+
141
+ var activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? $__default["default"](container).find(SELECTOR_ACTIVE_UL) : $__default["default"](container).children(SELECTOR_ACTIVE);
142
+ var active = activeElements[0];
143
+ var isTransitioning = callback && active && $__default["default"](active).hasClass(CLASS_NAME_FADE);
144
+
145
+ var complete = function complete() {
146
+ return _this2._transitionComplete(element, active, callback);
147
+ };
148
+
149
+ if (active && isTransitioning) {
150
+ var transitionDuration = Util__default["default"].getTransitionDurationFromElement(active);
151
+ $__default["default"](active).removeClass(CLASS_NAME_SHOW).one(Util__default["default"].TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
152
+ } else {
153
+ complete();
154
+ }
155
+ };
156
+
157
+ _proto._transitionComplete = function _transitionComplete(element, active, callback) {
158
+ if (active) {
159
+ $__default["default"](active).removeClass(CLASS_NAME_ACTIVE);
160
+ var dropdownChild = $__default["default"](active.parentNode).find(SELECTOR_DROPDOWN_ACTIVE_CHILD)[0];
161
+
162
+ if (dropdownChild) {
163
+ $__default["default"](dropdownChild).removeClass(CLASS_NAME_ACTIVE);
164
+ }
165
+
166
+ if (active.getAttribute('role') === 'tab') {
167
+ active.setAttribute('aria-selected', false);
168
+ }
169
+ }
170
+
171
+ $__default["default"](element).addClass(CLASS_NAME_ACTIVE);
172
+
173
+ if (element.getAttribute('role') === 'tab') {
174
+ element.setAttribute('aria-selected', true);
175
+ }
176
+
177
+ Util__default["default"].reflow(element);
178
+
179
+ if (element.classList.contains(CLASS_NAME_FADE)) {
180
+ element.classList.add(CLASS_NAME_SHOW);
181
+ }
182
+
183
+ var parent = element.parentNode;
184
+
185
+ if (parent && parent.nodeName === 'LI') {
186
+ parent = parent.parentNode;
187
+ }
188
+
189
+ if (parent && $__default["default"](parent).hasClass(CLASS_NAME_DROPDOWN_MENU)) {
190
+ var dropdownElement = $__default["default"](element).closest(SELECTOR_DROPDOWN)[0];
191
+
192
+ if (dropdownElement) {
193
+ var dropdownToggleList = [].slice.call(dropdownElement.querySelectorAll(SELECTOR_DROPDOWN_TOGGLE));
194
+ $__default["default"](dropdownToggleList).addClass(CLASS_NAME_ACTIVE);
195
+ }
196
+
197
+ element.setAttribute('aria-expanded', true);
198
+ }
199
+
200
+ if (callback) {
201
+ callback();
202
+ }
203
+ } // Static
204
+ ;
205
+
206
+ Tab._jQueryInterface = function _jQueryInterface(config) {
207
+ return this.each(function () {
208
+ var $this = $__default["default"](this);
209
+ var data = $this.data(DATA_KEY);
210
+
211
+ if (!data) {
212
+ data = new Tab(this);
213
+ $this.data(DATA_KEY, data);
214
+ }
215
+
216
+ if (typeof config === 'string') {
217
+ if (typeof data[config] === 'undefined') {
218
+ throw new TypeError("No method named \"" + config + "\"");
219
+ }
220
+
221
+ data[config]();
222
+ }
223
+ });
224
+ };
225
+
226
+ _createClass(Tab, null, [{
227
+ key: "VERSION",
228
+ get: function get() {
229
+ return VERSION;
230
+ }
231
+ }]);
232
+
233
+ return Tab;
234
+ }();
235
+ /**
236
+ * Data API implementation
237
+ */
238
+
239
+
240
+ $__default["default"](document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
241
+ event.preventDefault();
242
+
243
+ Tab._jQueryInterface.call($__default["default"](this), 'show');
244
+ });
245
+ /**
246
+ * jQuery
247
+ */
248
+
249
+ $__default["default"].fn[NAME] = Tab._jQueryInterface;
250
+ $__default["default"].fn[NAME].Constructor = Tab;
251
+
252
+ $__default["default"].fn[NAME].noConflict = function () {
253
+ $__default["default"].fn[NAME] = JQUERY_NO_CONFLICT;
254
+ return Tab._jQueryInterface;
255
+ };
256
+
257
+ return Tab;
258
+
259
+ }));
@@ -0,0 +1,265 @@
1
+ /*!
2
+ * Bootstrap toast.js v4.6.1 (https://getbootstrap.com/)
3
+ * Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5
+ */
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';
11
+
12
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
+
14
+ var $__default = /*#__PURE__*/_interopDefaultLegacy($);
15
+ var Util__default = /*#__PURE__*/_interopDefaultLegacy(Util);
16
+
17
+ function _defineProperties(target, props) {
18
+ for (var i = 0; i < props.length; i++) {
19
+ var descriptor = props[i];
20
+ descriptor.enumerable = descriptor.enumerable || false;
21
+ descriptor.configurable = true;
22
+ if ("value" in descriptor) descriptor.writable = true;
23
+ Object.defineProperty(target, descriptor.key, descriptor);
24
+ }
25
+ }
26
+
27
+ function _createClass(Constructor, protoProps, staticProps) {
28
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
29
+ if (staticProps) _defineProperties(Constructor, staticProps);
30
+ return Constructor;
31
+ }
32
+
33
+ function _extends() {
34
+ _extends = Object.assign || function (target) {
35
+ for (var i = 1; i < arguments.length; i++) {
36
+ var source = arguments[i];
37
+
38
+ for (var key in source) {
39
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
40
+ target[key] = source[key];
41
+ }
42
+ }
43
+ }
44
+
45
+ return target;
46
+ };
47
+
48
+ return _extends.apply(this, arguments);
49
+ }
50
+
51
+ /**
52
+ * Constants
53
+ */
54
+
55
+ var NAME = 'toast';
56
+ var VERSION = '4.6.1';
57
+ var DATA_KEY = 'bs.toast';
58
+ var EVENT_KEY = "." + DATA_KEY;
59
+ var JQUERY_NO_CONFLICT = $__default["default"].fn[NAME];
60
+ var CLASS_NAME_FADE = 'fade';
61
+ var CLASS_NAME_HIDE = 'hide';
62
+ var CLASS_NAME_SHOW = 'show';
63
+ var CLASS_NAME_SHOWING = 'showing';
64
+ var EVENT_CLICK_DISMISS = "click.dismiss" + EVENT_KEY;
65
+ var EVENT_HIDE = "hide" + EVENT_KEY;
66
+ var EVENT_HIDDEN = "hidden" + EVENT_KEY;
67
+ var EVENT_SHOW = "show" + EVENT_KEY;
68
+ var EVENT_SHOWN = "shown" + EVENT_KEY;
69
+ var SELECTOR_DATA_DISMISS = '[data-dismiss="toast"]';
70
+ var Default = {
71
+ animation: true,
72
+ autohide: true,
73
+ delay: 500
74
+ };
75
+ var DefaultType = {
76
+ animation: 'boolean',
77
+ autohide: 'boolean',
78
+ delay: 'number'
79
+ };
80
+ /**
81
+ * Class definition
82
+ */
83
+
84
+ var Toast = /*#__PURE__*/function () {
85
+ function Toast(element, config) {
86
+ this._element = element;
87
+ this._config = this._getConfig(config);
88
+ this._timeout = null;
89
+
90
+ this._setListeners();
91
+ } // Getters
92
+
93
+
94
+ var _proto = Toast.prototype;
95
+
96
+ // Public
97
+ _proto.show = function show() {
98
+ var _this = this;
99
+
100
+ var showEvent = $__default["default"].Event(EVENT_SHOW);
101
+ $__default["default"](this._element).trigger(showEvent);
102
+
103
+ if (showEvent.isDefaultPrevented()) {
104
+ return;
105
+ }
106
+
107
+ this._clearTimeout();
108
+
109
+ if (this._config.animation) {
110
+ this._element.classList.add(CLASS_NAME_FADE);
111
+ }
112
+
113
+ var complete = function complete() {
114
+ _this._element.classList.remove(CLASS_NAME_SHOWING);
115
+
116
+ _this._element.classList.add(CLASS_NAME_SHOW);
117
+
118
+ $__default["default"](_this._element).trigger(EVENT_SHOWN);
119
+
120
+ if (_this._config.autohide) {
121
+ _this._timeout = setTimeout(function () {
122
+ _this.hide();
123
+ }, _this._config.delay);
124
+ }
125
+ };
126
+
127
+ this._element.classList.remove(CLASS_NAME_HIDE);
128
+
129
+ Util__default["default"].reflow(this._element);
130
+
131
+ this._element.classList.add(CLASS_NAME_SHOWING);
132
+
133
+ if (this._config.animation) {
134
+ var transitionDuration = Util__default["default"].getTransitionDurationFromElement(this._element);
135
+ $__default["default"](this._element).one(Util__default["default"].TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
136
+ } else {
137
+ complete();
138
+ }
139
+ };
140
+
141
+ _proto.hide = function hide() {
142
+ if (!this._element.classList.contains(CLASS_NAME_SHOW)) {
143
+ return;
144
+ }
145
+
146
+ var hideEvent = $__default["default"].Event(EVENT_HIDE);
147
+ $__default["default"](this._element).trigger(hideEvent);
148
+
149
+ if (hideEvent.isDefaultPrevented()) {
150
+ return;
151
+ }
152
+
153
+ this._close();
154
+ };
155
+
156
+ _proto.dispose = function dispose() {
157
+ this._clearTimeout();
158
+
159
+ if (this._element.classList.contains(CLASS_NAME_SHOW)) {
160
+ this._element.classList.remove(CLASS_NAME_SHOW);
161
+ }
162
+
163
+ $__default["default"](this._element).off(EVENT_CLICK_DISMISS);
164
+ $__default["default"].removeData(this._element, DATA_KEY);
165
+ this._element = null;
166
+ this._config = null;
167
+ } // Private
168
+ ;
169
+
170
+ _proto._getConfig = function _getConfig(config) {
171
+ config = _extends({}, Default, $__default["default"](this._element).data(), typeof config === 'object' && config ? config : {});
172
+ Util__default["default"].typeCheckConfig(NAME, config, this.constructor.DefaultType);
173
+ return config;
174
+ };
175
+
176
+ _proto._setListeners = function _setListeners() {
177
+ var _this2 = this;
178
+
179
+ $__default["default"](this._element).on(EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, function () {
180
+ return _this2.hide();
181
+ });
182
+ };
183
+
184
+ _proto._close = function _close() {
185
+ var _this3 = this;
186
+
187
+ var complete = function complete() {
188
+ _this3._element.classList.add(CLASS_NAME_HIDE);
189
+
190
+ $__default["default"](_this3._element).trigger(EVENT_HIDDEN);
191
+ };
192
+
193
+ this._element.classList.remove(CLASS_NAME_SHOW);
194
+
195
+ if (this._config.animation) {
196
+ var transitionDuration = Util__default["default"].getTransitionDurationFromElement(this._element);
197
+ $__default["default"](this._element).one(Util__default["default"].TRANSITION_END, complete).emulateTransitionEnd(transitionDuration);
198
+ } else {
199
+ complete();
200
+ }
201
+ };
202
+
203
+ _proto._clearTimeout = function _clearTimeout() {
204
+ clearTimeout(this._timeout);
205
+ this._timeout = null;
206
+ } // Static
207
+ ;
208
+
209
+ Toast._jQueryInterface = function _jQueryInterface(config) {
210
+ return this.each(function () {
211
+ var $element = $__default["default"](this);
212
+ var data = $element.data(DATA_KEY);
213
+
214
+ var _config = typeof config === 'object' && config;
215
+
216
+ if (!data) {
217
+ data = new Toast(this, _config);
218
+ $element.data(DATA_KEY, data);
219
+ }
220
+
221
+ if (typeof config === 'string') {
222
+ if (typeof data[config] === 'undefined') {
223
+ throw new TypeError("No method named \"" + config + "\"");
224
+ }
225
+
226
+ data[config](this);
227
+ }
228
+ });
229
+ };
230
+
231
+ _createClass(Toast, null, [{
232
+ key: "VERSION",
233
+ get: function get() {
234
+ return VERSION;
235
+ }
236
+ }, {
237
+ key: "DefaultType",
238
+ get: function get() {
239
+ return DefaultType;
240
+ }
241
+ }, {
242
+ key: "Default",
243
+ get: function get() {
244
+ return Default;
245
+ }
246
+ }]);
247
+
248
+ return Toast;
249
+ }();
250
+ /**
251
+ * jQuery
252
+ */
253
+
254
+
255
+ $__default["default"].fn[NAME] = Toast._jQueryInterface;
256
+ $__default["default"].fn[NAME].Constructor = Toast;
257
+
258
+ $__default["default"].fn[NAME].noConflict = function () {
259
+ $__default["default"].fn[NAME] = JQUERY_NO_CONFLICT;
260
+ return Toast._jQueryInterface;
261
+ };
262
+
263
+ return Toast;
264
+
265
+ }));