bootstrap 4.4.1 → 5.0.0.alpha2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +12 -2
  3. data/README.md +1 -1
  4. data/assets/javascripts/bootstrap-sprockets.js +12 -8
  5. data/assets/javascripts/bootstrap.js +2094 -1562
  6. data/assets/javascripts/bootstrap.min.js +4 -4
  7. data/assets/javascripts/bootstrap/alert.js +145 -83
  8. data/assets/javascripts/bootstrap/button.js +66 -152
  9. data/assets/javascripts/bootstrap/carousel.js +307 -241
  10. data/assets/javascripts/bootstrap/collapse.js +287 -183
  11. data/assets/javascripts/bootstrap/dom/data.js +81 -0
  12. data/assets/javascripts/bootstrap/dom/event-handler.js +315 -0
  13. data/assets/javascripts/bootstrap/dom/manipulator.js +96 -0
  14. data/assets/javascripts/bootstrap/dom/polyfill.js +110 -0
  15. data/assets/javascripts/bootstrap/dom/selector-engine.js +98 -0
  16. data/assets/javascripts/bootstrap/dropdown.js +255 -261
  17. data/assets/javascripts/bootstrap/modal.js +364 -270
  18. data/assets/javascripts/bootstrap/popover.js +72 -113
  19. data/assets/javascripts/bootstrap/scrollspy.js +162 -147
  20. data/assets/javascripts/bootstrap/tab.js +176 -108
  21. data/assets/javascripts/bootstrap/toast.js +179 -139
  22. data/assets/javascripts/bootstrap/tooltip.js +369 -259
  23. data/assets/stylesheets/_bootstrap-grid.scss +54 -18
  24. data/assets/stylesheets/_bootstrap-reboot.scss +7 -4
  25. data/assets/stylesheets/_bootstrap.scss +17 -11
  26. data/assets/stylesheets/bootstrap/_alert.scss +6 -7
  27. data/assets/stylesheets/bootstrap/_badge.scss +2 -27
  28. data/assets/stylesheets/bootstrap/_breadcrumb.scss +5 -17
  29. data/assets/stylesheets/bootstrap/_button-group.scss +16 -38
  30. data/assets/stylesheets/bootstrap/_buttons.scss +25 -40
  31. data/assets/stylesheets/bootstrap/_card.scss +43 -79
  32. data/assets/stylesheets/bootstrap/_carousel.scss +30 -15
  33. data/assets/stylesheets/bootstrap/_close.scss +31 -31
  34. data/assets/stylesheets/bootstrap/_containers.scss +41 -0
  35. data/assets/stylesheets/bootstrap/_dropdown.scss +54 -9
  36. data/assets/stylesheets/bootstrap/_forms.scss +9 -338
  37. data/assets/stylesheets/bootstrap/_functions.scss +97 -25
  38. data/assets/stylesheets/bootstrap/_grid.scss +3 -50
  39. data/assets/stylesheets/bootstrap/_helpers.scss +7 -0
  40. data/assets/stylesheets/bootstrap/_list-group.scss +16 -17
  41. data/assets/stylesheets/bootstrap/_mixins.scss +7 -13
  42. data/assets/stylesheets/bootstrap/_modal.scss +41 -45
  43. data/assets/stylesheets/bootstrap/_nav.scss +16 -9
  44. data/assets/stylesheets/bootstrap/_navbar.scss +43 -74
  45. data/assets/stylesheets/bootstrap/_pagination.scss +11 -20
  46. data/assets/stylesheets/bootstrap/_popover.scss +5 -5
  47. data/assets/stylesheets/bootstrap/_progress.scss +2 -3
  48. data/assets/stylesheets/bootstrap/_reboot.scss +310 -175
  49. data/assets/stylesheets/bootstrap/_root.scss +5 -9
  50. data/assets/stylesheets/bootstrap/_spinners.scss +5 -4
  51. data/assets/stylesheets/bootstrap/_tables.scss +80 -114
  52. data/assets/stylesheets/bootstrap/_toasts.scss +6 -2
  53. data/assets/stylesheets/bootstrap/_tooltip.scss +5 -5
  54. data/assets/stylesheets/bootstrap/_transitions.scss +0 -1
  55. data/assets/stylesheets/bootstrap/_type.scss +38 -59
  56. data/assets/stylesheets/bootstrap/_utilities.scss +531 -17
  57. data/assets/stylesheets/bootstrap/_variables.scss +609 -444
  58. data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +18 -0
  59. data/assets/stylesheets/bootstrap/forms/_form-check.scss +142 -0
  60. data/assets/stylesheets/bootstrap/forms/_form-control.scss +116 -0
  61. data/assets/stylesheets/bootstrap/forms/_form-file.scss +91 -0
  62. data/assets/stylesheets/bootstrap/forms/_form-range.scss +136 -0
  63. data/assets/stylesheets/bootstrap/forms/_form-select.scss +82 -0
  64. data/assets/stylesheets/bootstrap/forms/_form-text.scss +11 -0
  65. data/assets/stylesheets/bootstrap/forms/_input-group.scss +140 -0
  66. data/assets/stylesheets/bootstrap/forms/_labels.scss +36 -0
  67. data/assets/stylesheets/bootstrap/forms/_validation.scss +12 -0
  68. data/assets/stylesheets/bootstrap/{utilities → helpers}/_clearfix.scss +0 -0
  69. data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +12 -0
  70. data/assets/stylesheets/bootstrap/helpers/_position.scss +30 -0
  71. data/assets/stylesheets/bootstrap/helpers/_ratio.scss +26 -0
  72. data/assets/stylesheets/bootstrap/helpers/_stretched-link.scss +15 -0
  73. data/assets/stylesheets/bootstrap/helpers/_text-truncation.scss +7 -0
  74. data/assets/stylesheets/bootstrap/helpers/_visually-hidden.scss +8 -0
  75. data/assets/stylesheets/bootstrap/mixins/_alert.scss +0 -4
  76. data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +35 -22
  77. data/assets/stylesheets/bootstrap/mixins/_box-shadow.scss +7 -9
  78. data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +14 -10
  79. data/assets/stylesheets/bootstrap/mixins/_buttons.scss +69 -51
  80. data/assets/stylesheets/bootstrap/mixins/_caret.scss +4 -4
  81. data/assets/stylesheets/bootstrap/mixins/_clearfix.scss +2 -0
  82. data/assets/stylesheets/bootstrap/mixins/_container.scss +11 -0
  83. data/assets/stylesheets/bootstrap/mixins/_forms.scss +22 -66
  84. data/assets/stylesheets/bootstrap/mixins/_gradients.scss +9 -11
  85. data/assets/stylesheets/bootstrap/mixins/_grid.scss +84 -33
  86. data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -21
  87. data/assets/stylesheets/bootstrap/mixins/_list-group.scss +2 -1
  88. data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
  89. data/assets/stylesheets/bootstrap/mixins/_pagination.scss +15 -8
  90. data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +2 -2
  91. data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +21 -0
  92. data/assets/stylesheets/bootstrap/mixins/_transition.scss +18 -8
  93. data/assets/stylesheets/bootstrap/mixins/_utilities.scss +49 -0
  94. data/assets/stylesheets/bootstrap/mixins/_visually-hidden.scss +28 -0
  95. data/assets/stylesheets/bootstrap/utilities/_api.scss +47 -0
  96. data/assets/stylesheets/bootstrap/vendor/_rfs.scss +234 -126
  97. data/lib/bootstrap/version.rb +2 -2
  98. data/tasks/updater/js.rb +3 -3
  99. data/tasks/updater/network.rb +2 -2
  100. data/test/gemfiles/rails_6_0.gemfile +7 -0
  101. metadata +36 -41
  102. data/assets/javascripts/bootstrap/util.js +0 -188
  103. data/assets/stylesheets/bootstrap/_code.scss +0 -48
  104. data/assets/stylesheets/bootstrap/_custom-forms.scss +0 -521
  105. data/assets/stylesheets/bootstrap/_input-group.scss +0 -191
  106. data/assets/stylesheets/bootstrap/_jumbotron.scss +0 -17
  107. data/assets/stylesheets/bootstrap/_media.scss +0 -8
  108. data/assets/stylesheets/bootstrap/_print.scss +0 -141
  109. data/assets/stylesheets/bootstrap/mixins/_background-variant.scss +0 -22
  110. data/assets/stylesheets/bootstrap/mixins/_badge.scss +0 -17
  111. data/assets/stylesheets/bootstrap/mixins/_float.scss +0 -14
  112. data/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +0 -71
  113. data/assets/stylesheets/bootstrap/mixins/_hover.scss +0 -37
  114. data/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +0 -11
  115. data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +0 -34
  116. data/assets/stylesheets/bootstrap/mixins/_size.scss +0 -7
  117. data/assets/stylesheets/bootstrap/mixins/_table-row.scss +0 -39
  118. data/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +0 -17
  119. data/assets/stylesheets/bootstrap/mixins/_text-hide.scss +0 -11
  120. data/assets/stylesheets/bootstrap/mixins/_visibility.scss +0 -8
  121. data/assets/stylesheets/bootstrap/utilities/_align.scss +0 -8
  122. data/assets/stylesheets/bootstrap/utilities/_background.scss +0 -19
  123. data/assets/stylesheets/bootstrap/utilities/_borders.scss +0 -75
  124. data/assets/stylesheets/bootstrap/utilities/_display.scss +0 -26
  125. data/assets/stylesheets/bootstrap/utilities/_embed.scss +0 -39
  126. data/assets/stylesheets/bootstrap/utilities/_flex.scss +0 -51
  127. data/assets/stylesheets/bootstrap/utilities/_float.scss +0 -11
  128. data/assets/stylesheets/bootstrap/utilities/_overflow.scss +0 -5
  129. data/assets/stylesheets/bootstrap/utilities/_position.scss +0 -32
  130. data/assets/stylesheets/bootstrap/utilities/_screenreaders.scss +0 -11
  131. data/assets/stylesheets/bootstrap/utilities/_shadows.scss +0 -6
  132. data/assets/stylesheets/bootstrap/utilities/_sizing.scss +0 -20
  133. data/assets/stylesheets/bootstrap/utilities/_spacing.scss +0 -73
  134. data/assets/stylesheets/bootstrap/utilities/_stretched-link.scss +0 -19
  135. data/assets/stylesheets/bootstrap/utilities/_text.scss +0 -72
  136. data/assets/stylesheets/bootstrap/utilities/_visibility.scss +0 -13
@@ -0,0 +1,81 @@
1
+ /*!
2
+ * Bootstrap data.js v5.0.0-alpha2 (https://getbootstrap.com/)
3
+ * Copyright 2011-2020 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() :
8
+ typeof define === 'function' && define.amd ? define(factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Data = factory());
10
+ }(this, (function () { 'use strict';
11
+
12
+ /**
13
+ * --------------------------------------------------------------------------
14
+ * Bootstrap (v5.0.0-alpha2): dom/data.js
15
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
16
+ * --------------------------------------------------------------------------
17
+ */
18
+
19
+ /**
20
+ * ------------------------------------------------------------------------
21
+ * Constants
22
+ * ------------------------------------------------------------------------
23
+ */
24
+ var mapData = function () {
25
+ var storeData = {};
26
+ var id = 1;
27
+ return {
28
+ set: function set(element, key, data) {
29
+ if (typeof element.bsKey === 'undefined') {
30
+ element.bsKey = {
31
+ key: key,
32
+ id: id
33
+ };
34
+ id++;
35
+ }
36
+
37
+ storeData[element.bsKey.id] = data;
38
+ },
39
+ get: function get(element, key) {
40
+ if (!element || typeof element.bsKey === 'undefined') {
41
+ return null;
42
+ }
43
+
44
+ var keyProperties = element.bsKey;
45
+
46
+ if (keyProperties.key === key) {
47
+ return storeData[keyProperties.id];
48
+ }
49
+
50
+ return null;
51
+ },
52
+ delete: function _delete(element, key) {
53
+ if (typeof element.bsKey === 'undefined') {
54
+ return;
55
+ }
56
+
57
+ var keyProperties = element.bsKey;
58
+
59
+ if (keyProperties.key === key) {
60
+ delete storeData[keyProperties.id];
61
+ delete element.bsKey;
62
+ }
63
+ }
64
+ };
65
+ }();
66
+
67
+ var Data = {
68
+ setData: function setData(instance, key, data) {
69
+ mapData.set(instance, key, data);
70
+ },
71
+ getData: function getData(instance, key) {
72
+ return mapData.get(instance, key);
73
+ },
74
+ removeData: function removeData(instance, key) {
75
+ mapData.delete(instance, key);
76
+ }
77
+ };
78
+
79
+ return Data;
80
+
81
+ })));
@@ -0,0 +1,315 @@
1
+ /*!
2
+ * Bootstrap event-handler.js v5.0.0-alpha2 (https://getbootstrap.com/)
3
+ * Copyright 2011-2020 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('./polyfill.js')) :
8
+ typeof define === 'function' && define.amd ? define(['./polyfill.js'], factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.EventHandler = factory(global.Polyfill));
10
+ }(this, (function (polyfill_js) { 'use strict';
11
+
12
+ /**
13
+ * --------------------------------------------------------------------------
14
+ * Bootstrap (v5.0.0-alpha2): util/index.js
15
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
16
+ * --------------------------------------------------------------------------
17
+ */
18
+
19
+ var getjQuery = function getjQuery() {
20
+ var _window = window,
21
+ jQuery = _window.jQuery;
22
+
23
+ if (jQuery && !document.body.hasAttribute('data-no-jquery')) {
24
+ return jQuery;
25
+ }
26
+
27
+ return null;
28
+ };
29
+
30
+ /**
31
+ * --------------------------------------------------------------------------
32
+ * Bootstrap (v5.0.0-alpha2): dom/event-handler.js
33
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
34
+ * --------------------------------------------------------------------------
35
+ */
36
+ /**
37
+ * ------------------------------------------------------------------------
38
+ * Constants
39
+ * ------------------------------------------------------------------------
40
+ */
41
+
42
+ var $ = getjQuery();
43
+ var namespaceRegex = /[^.]*(?=\..*)\.|.*/;
44
+ var stripNameRegex = /\..*/;
45
+ var stripUidRegex = /::\d+$/;
46
+ var eventRegistry = {}; // Events storage
47
+
48
+ var uidEvent = 1;
49
+ var customEvents = {
50
+ mouseenter: 'mouseover',
51
+ mouseleave: 'mouseout'
52
+ };
53
+ var nativeEvents = ['click', 'dblclick', 'mouseup', 'mousedown', 'contextmenu', 'mousewheel', 'DOMMouseScroll', 'mouseover', 'mouseout', 'mousemove', 'selectstart', 'selectend', 'keydown', 'keypress', 'keyup', 'orientationchange', 'touchstart', 'touchmove', 'touchend', 'touchcancel', 'pointerdown', 'pointermove', 'pointerup', 'pointerleave', 'pointercancel', 'gesturestart', 'gesturechange', 'gestureend', 'focus', 'blur', 'change', 'reset', 'select', 'submit', 'focusin', 'focusout', 'load', 'unload', 'beforeunload', 'resize', 'move', 'DOMContentLoaded', 'readystatechange', 'error', 'abort', 'scroll'];
54
+ /**
55
+ * ------------------------------------------------------------------------
56
+ * Private methods
57
+ * ------------------------------------------------------------------------
58
+ */
59
+
60
+ function getUidEvent(element, uid) {
61
+ return uid && uid + "::" + uidEvent++ || element.uidEvent || uidEvent++;
62
+ }
63
+
64
+ function getEvent(element) {
65
+ var uid = getUidEvent(element);
66
+ element.uidEvent = uid;
67
+ eventRegistry[uid] = eventRegistry[uid] || {};
68
+ return eventRegistry[uid];
69
+ }
70
+
71
+ function bootstrapHandler(element, fn) {
72
+ return function handler(event) {
73
+ event.delegateTarget = element;
74
+
75
+ if (handler.oneOff) {
76
+ EventHandler.off(element, event.type, fn);
77
+ }
78
+
79
+ return fn.apply(element, [event]);
80
+ };
81
+ }
82
+
83
+ function bootstrapDelegationHandler(element, selector, fn) {
84
+ return function handler(event) {
85
+ var domElements = element.querySelectorAll(selector);
86
+
87
+ for (var target = event.target; target && target !== this; target = target.parentNode) {
88
+ for (var i = domElements.length; i--;) {
89
+ if (domElements[i] === target) {
90
+ event.delegateTarget = target;
91
+
92
+ if (handler.oneOff) {
93
+ EventHandler.off(element, event.type, fn);
94
+ }
95
+
96
+ return fn.apply(target, [event]);
97
+ }
98
+ }
99
+ } // To please ESLint
100
+
101
+
102
+ return null;
103
+ };
104
+ }
105
+
106
+ function findHandler(events, handler, delegationSelector) {
107
+ if (delegationSelector === void 0) {
108
+ delegationSelector = null;
109
+ }
110
+
111
+ var uidEventList = Object.keys(events);
112
+
113
+ for (var i = 0, len = uidEventList.length; i < len; i++) {
114
+ var event = events[uidEventList[i]];
115
+
116
+ if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {
117
+ return event;
118
+ }
119
+ }
120
+
121
+ return null;
122
+ }
123
+
124
+ function normalizeParams(originalTypeEvent, handler, delegationFn) {
125
+ var delegation = typeof handler === 'string';
126
+ var originalHandler = delegation ? delegationFn : handler; // allow to get the native events from namespaced events ('click.bs.button' --> 'click')
127
+
128
+ var typeEvent = originalTypeEvent.replace(stripNameRegex, '');
129
+ var custom = customEvents[typeEvent];
130
+
131
+ if (custom) {
132
+ typeEvent = custom;
133
+ }
134
+
135
+ var isNative = nativeEvents.indexOf(typeEvent) > -1;
136
+
137
+ if (!isNative) {
138
+ typeEvent = originalTypeEvent;
139
+ }
140
+
141
+ return [delegation, originalHandler, typeEvent];
142
+ }
143
+
144
+ function addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {
145
+ if (typeof originalTypeEvent !== 'string' || !element) {
146
+ return;
147
+ }
148
+
149
+ if (!handler) {
150
+ handler = delegationFn;
151
+ delegationFn = null;
152
+ }
153
+
154
+ var _normalizeParams = normalizeParams(originalTypeEvent, handler, delegationFn),
155
+ delegation = _normalizeParams[0],
156
+ originalHandler = _normalizeParams[1],
157
+ typeEvent = _normalizeParams[2];
158
+
159
+ var events = getEvent(element);
160
+ var handlers = events[typeEvent] || (events[typeEvent] = {});
161
+ var previousFn = findHandler(handlers, originalHandler, delegation ? handler : null);
162
+
163
+ if (previousFn) {
164
+ previousFn.oneOff = previousFn.oneOff && oneOff;
165
+ return;
166
+ }
167
+
168
+ var uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''));
169
+ var fn = delegation ? bootstrapDelegationHandler(element, handler, delegationFn) : bootstrapHandler(element, handler);
170
+ fn.delegationSelector = delegation ? handler : null;
171
+ fn.originalHandler = originalHandler;
172
+ fn.oneOff = oneOff;
173
+ fn.uidEvent = uid;
174
+ handlers[uid] = fn;
175
+ element.addEventListener(typeEvent, fn, delegation);
176
+ }
177
+
178
+ function removeHandler(element, events, typeEvent, handler, delegationSelector) {
179
+ var fn = findHandler(events[typeEvent], handler, delegationSelector);
180
+
181
+ if (!fn) {
182
+ return;
183
+ }
184
+
185
+ element.removeEventListener(typeEvent, fn, Boolean(delegationSelector));
186
+ delete events[typeEvent][fn.uidEvent];
187
+ }
188
+
189
+ function removeNamespacedHandlers(element, events, typeEvent, namespace) {
190
+ var storeElementEvent = events[typeEvent] || {};
191
+ Object.keys(storeElementEvent).forEach(function (handlerKey) {
192
+ if (handlerKey.indexOf(namespace) > -1) {
193
+ var event = storeElementEvent[handlerKey];
194
+ removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector);
195
+ }
196
+ });
197
+ }
198
+
199
+ var EventHandler = {
200
+ on: function on(element, event, handler, delegationFn) {
201
+ addHandler(element, event, handler, delegationFn, false);
202
+ },
203
+ one: function one(element, event, handler, delegationFn) {
204
+ addHandler(element, event, handler, delegationFn, true);
205
+ },
206
+ off: function off(element, originalTypeEvent, handler, delegationFn) {
207
+ if (typeof originalTypeEvent !== 'string' || !element) {
208
+ return;
209
+ }
210
+
211
+ var _normalizeParams2 = normalizeParams(originalTypeEvent, handler, delegationFn),
212
+ delegation = _normalizeParams2[0],
213
+ originalHandler = _normalizeParams2[1],
214
+ typeEvent = _normalizeParams2[2];
215
+
216
+ var inNamespace = typeEvent !== originalTypeEvent;
217
+ var events = getEvent(element);
218
+ var isNamespace = originalTypeEvent.charAt(0) === '.';
219
+
220
+ if (typeof originalHandler !== 'undefined') {
221
+ // Simplest case: handler is passed, remove that listener ONLY.
222
+ if (!events || !events[typeEvent]) {
223
+ return;
224
+ }
225
+
226
+ removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null);
227
+ return;
228
+ }
229
+
230
+ if (isNamespace) {
231
+ Object.keys(events).forEach(function (elementEvent) {
232
+ removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1));
233
+ });
234
+ }
235
+
236
+ var storeElementEvent = events[typeEvent] || {};
237
+ Object.keys(storeElementEvent).forEach(function (keyHandlers) {
238
+ var handlerKey = keyHandlers.replace(stripUidRegex, '');
239
+
240
+ if (!inNamespace || originalTypeEvent.indexOf(handlerKey) > -1) {
241
+ var event = storeElementEvent[keyHandlers];
242
+ removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector);
243
+ }
244
+ });
245
+ },
246
+ trigger: function trigger(element, event, args) {
247
+ if (typeof event !== 'string' || !element) {
248
+ return null;
249
+ }
250
+
251
+ var typeEvent = event.replace(stripNameRegex, '');
252
+ var inNamespace = event !== typeEvent;
253
+ var isNative = nativeEvents.indexOf(typeEvent) > -1;
254
+ var jQueryEvent;
255
+ var bubbles = true;
256
+ var nativeDispatch = true;
257
+ var defaultPrevented = false;
258
+ var evt = null;
259
+
260
+ if (inNamespace && $) {
261
+ jQueryEvent = $.Event(event, args);
262
+ $(element).trigger(jQueryEvent);
263
+ bubbles = !jQueryEvent.isPropagationStopped();
264
+ nativeDispatch = !jQueryEvent.isImmediatePropagationStopped();
265
+ defaultPrevented = jQueryEvent.isDefaultPrevented();
266
+ }
267
+
268
+ if (isNative) {
269
+ evt = document.createEvent('HTMLEvents');
270
+ evt.initEvent(typeEvent, bubbles, true);
271
+ } else {
272
+ evt = new CustomEvent(event, {
273
+ bubbles: bubbles,
274
+ cancelable: true
275
+ });
276
+ } // merge custom information in our event
277
+
278
+
279
+ if (typeof args !== 'undefined') {
280
+ Object.keys(args).forEach(function (key) {
281
+ Object.defineProperty(evt, key, {
282
+ get: function get() {
283
+ return args[key];
284
+ }
285
+ });
286
+ });
287
+ }
288
+
289
+ if (defaultPrevented) {
290
+ evt.preventDefault();
291
+
292
+ if (!polyfill_js.defaultPreventedPreservedOnDispatch) {
293
+ Object.defineProperty(evt, 'defaultPrevented', {
294
+ get: function get() {
295
+ return true;
296
+ }
297
+ });
298
+ }
299
+ }
300
+
301
+ if (nativeDispatch) {
302
+ element.dispatchEvent(evt);
303
+ }
304
+
305
+ if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {
306
+ jQueryEvent.preventDefault();
307
+ }
308
+
309
+ return evt;
310
+ }
311
+ };
312
+
313
+ return EventHandler;
314
+
315
+ })));
@@ -0,0 +1,96 @@
1
+ /*!
2
+ * Bootstrap manipulator.js v5.0.0-alpha2 (https://getbootstrap.com/)
3
+ * Copyright 2011-2020 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() :
8
+ typeof define === 'function' && define.amd ? define(factory) :
9
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Manipulator = factory());
10
+ }(this, (function () { 'use strict';
11
+
12
+ 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); }
13
+
14
+ /**
15
+ * --------------------------------------------------------------------------
16
+ * Bootstrap (v5.0.0-alpha2): dom/manipulator.js
17
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
18
+ * --------------------------------------------------------------------------
19
+ */
20
+ function normalizeData(val) {
21
+ if (val === 'true') {
22
+ return true;
23
+ }
24
+
25
+ if (val === 'false') {
26
+ return false;
27
+ }
28
+
29
+ if (val === Number(val).toString()) {
30
+ return Number(val);
31
+ }
32
+
33
+ if (val === '' || val === 'null') {
34
+ return null;
35
+ }
36
+
37
+ return val;
38
+ }
39
+
40
+ function normalizeDataKey(key) {
41
+ return key.replace(/[A-Z]/g, function (chr) {
42
+ return "-" + chr.toLowerCase();
43
+ });
44
+ }
45
+
46
+ var Manipulator = {
47
+ setDataAttribute: function setDataAttribute(element, key, value) {
48
+ element.setAttribute("data-" + normalizeDataKey(key), value);
49
+ },
50
+ removeDataAttribute: function removeDataAttribute(element, key) {
51
+ element.removeAttribute("data-" + normalizeDataKey(key));
52
+ },
53
+ getDataAttributes: function getDataAttributes(element) {
54
+ if (!element) {
55
+ return {};
56
+ }
57
+
58
+ var attributes = _extends({}, element.dataset);
59
+
60
+ Object.keys(attributes).forEach(function (key) {
61
+ attributes[key] = normalizeData(attributes[key]);
62
+ });
63
+ return attributes;
64
+ },
65
+ getDataAttribute: function getDataAttribute(element, key) {
66
+ return normalizeData(element.getAttribute("data-" + normalizeDataKey(key)));
67
+ },
68
+ offset: function offset(element) {
69
+ var rect = element.getBoundingClientRect();
70
+ return {
71
+ top: rect.top + document.body.scrollTop,
72
+ left: rect.left + document.body.scrollLeft
73
+ };
74
+ },
75
+ position: function position(element) {
76
+ return {
77
+ top: element.offsetTop,
78
+ left: element.offsetLeft
79
+ };
80
+ },
81
+ toggleClass: function toggleClass(element, className) {
82
+ if (!element) {
83
+ return;
84
+ }
85
+
86
+ if (element.classList.contains(className)) {
87
+ element.classList.remove(className);
88
+ } else {
89
+ element.classList.add(className);
90
+ }
91
+ }
92
+ };
93
+
94
+ return Manipulator;
95
+
96
+ })));