bootstrap 4.6.1 → 5.0.0.alpha1
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/README.md +1 -1
- data/assets/javascripts/bootstrap/alert.js +148 -70
- data/assets/javascripts/bootstrap/button.js +71 -151
- data/assets/javascripts/bootstrap/carousel.js +314 -206
- data/assets/javascripts/bootstrap/collapse.js +306 -150
- data/assets/javascripts/bootstrap/dom/data.js +81 -0
- data/assets/javascripts/bootstrap/dom/event-handler.js +311 -0
- data/assets/javascripts/bootstrap/dom/manipulator.js +100 -0
- data/assets/javascripts/bootstrap/dom/polyfill.js +110 -0
- data/assets/javascripts/bootstrap/dom/selector-engine.js +98 -0
- data/assets/javascripts/bootstrap/dropdown.js +256 -202
- data/assets/javascripts/bootstrap/modal.js +353 -247
- data/assets/javascripts/bootstrap/popover.js +83 -91
- data/assets/javascripts/bootstrap/scrollspy.js +175 -103
- data/assets/javascripts/bootstrap/tab.js +170 -96
- data/assets/javascripts/bootstrap/toast.js +180 -107
- data/assets/javascripts/bootstrap/tooltip.js +374 -223
- data/assets/javascripts/bootstrap-sprockets.js +11 -7
- data/assets/javascripts/bootstrap.js +2257 -1548
- data/assets/javascripts/bootstrap.min.js +3 -3
- data/assets/stylesheets/_bootstrap-grid.scss +53 -18
- data/assets/stylesheets/_bootstrap-reboot.scss +6 -3
- data/assets/stylesheets/_bootstrap.scss +16 -10
- data/assets/stylesheets/bootstrap/_alert.scss +3 -4
- data/assets/stylesheets/bootstrap/_badge.scss +2 -27
- data/assets/stylesheets/bootstrap/_breadcrumb.scss +5 -17
- data/assets/stylesheets/bootstrap/_button-group.scss +16 -38
- data/assets/stylesheets/bootstrap/_buttons.scss +27 -45
- data/assets/stylesheets/bootstrap/_card.scss +22 -68
- data/assets/stylesheets/bootstrap/_carousel.scss +15 -20
- data/assets/stylesheets/bootstrap/_close.scss +9 -13
- data/assets/stylesheets/bootstrap/_containers.scss +41 -0
- data/assets/stylesheets/bootstrap/_dropdown.scss +12 -9
- data/assets/stylesheets/bootstrap/_forms.scss +9 -347
- data/assets/stylesheets/bootstrap/_functions.scss +82 -69
- data/assets/stylesheets/bootstrap/_grid.scss +3 -54
- data/assets/stylesheets/bootstrap/_helpers.scss +7 -0
- data/assets/stylesheets/bootstrap/_images.scss +1 -1
- data/assets/stylesheets/bootstrap/_list-group.scss +7 -4
- data/assets/stylesheets/bootstrap/_mixins.scss +6 -12
- data/assets/stylesheets/bootstrap/_modal.scss +36 -41
- data/assets/stylesheets/bootstrap/_nav.scss +7 -4
- data/assets/stylesheets/bootstrap/_navbar.scss +42 -82
- data/assets/stylesheets/bootstrap/_pagination.scss +7 -20
- data/assets/stylesheets/bootstrap/_popover.scss +14 -14
- data/assets/stylesheets/bootstrap/_progress.scss +3 -5
- data/assets/stylesheets/bootstrap/_reboot.scss +304 -172
- data/assets/stylesheets/bootstrap/_root.scss +5 -8
- data/assets/stylesheets/bootstrap/_spinners.scss +6 -15
- data/assets/stylesheets/bootstrap/_tables.scss +80 -114
- data/assets/stylesheets/bootstrap/_toasts.scss +2 -4
- data/assets/stylesheets/bootstrap/_tooltip.scss +9 -9
- data/assets/stylesheets/bootstrap/_transitions.scss +0 -1
- data/assets/stylesheets/bootstrap/_type.scss +38 -59
- data/assets/stylesheets/bootstrap/_utilities.scss +503 -18
- data/assets/stylesheets/bootstrap/_variables.scss +548 -436
- data/assets/stylesheets/bootstrap/bootstrap-utilities.scss +18 -0
- data/assets/stylesheets/bootstrap/forms/_form-check.scss +142 -0
- data/assets/stylesheets/bootstrap/forms/_form-control.scss +116 -0
- data/assets/stylesheets/bootstrap/forms/_form-file.scss +91 -0
- data/assets/stylesheets/bootstrap/forms/_form-range.scss +136 -0
- data/assets/stylesheets/bootstrap/forms/_form-select.scss +82 -0
- data/assets/stylesheets/bootstrap/forms/_form-text.scss +11 -0
- data/assets/stylesheets/bootstrap/forms/_input-group.scss +140 -0
- data/assets/stylesheets/bootstrap/forms/_labels.scss +36 -0
- data/assets/stylesheets/bootstrap/forms/_validation.scss +12 -0
- data/assets/stylesheets/bootstrap/{utilities → helpers}/_clearfix.scss +0 -0
- data/assets/stylesheets/bootstrap/helpers/_colored-links.scss +12 -0
- data/assets/stylesheets/bootstrap/helpers/_embed.scss +31 -0
- data/assets/stylesheets/bootstrap/helpers/_position.scss +30 -0
- data/assets/stylesheets/bootstrap/helpers/_screenreaders.scss +8 -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/mixins/_alert.scss +0 -4
- data/assets/stylesheets/bootstrap/mixins/_border-radius.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_breakpoints.scss +11 -8
- data/assets/stylesheets/bootstrap/mixins/_buttons.scss +62 -47
- data/assets/stylesheets/bootstrap/mixins/_caret.scss +4 -4
- data/assets/stylesheets/bootstrap/mixins/_clearfix.scss +2 -0
- data/assets/stylesheets/bootstrap/mixins/_container.scss +9 -0
- data/assets/stylesheets/bootstrap/mixins/_forms.scss +23 -85
- data/assets/stylesheets/bootstrap/mixins/_gradients.scss +9 -11
- data/assets/stylesheets/bootstrap/mixins/_grid.scss +86 -34
- data/assets/stylesheets/bootstrap/mixins/_image.scss +1 -21
- data/assets/stylesheets/bootstrap/mixins/_list-group.scss +2 -1
- data/assets/stylesheets/bootstrap/mixins/_lists.scss +1 -1
- data/assets/stylesheets/bootstrap/mixins/_pagination.scss +15 -8
- data/assets/stylesheets/bootstrap/mixins/_reset-text.scss +2 -2
- data/assets/stylesheets/bootstrap/mixins/_screen-reader.scss +18 -24
- data/assets/stylesheets/bootstrap/mixins/_table-variants.scss +21 -0
- data/assets/stylesheets/bootstrap/mixins/_transition.scss +2 -2
- data/assets/stylesheets/bootstrap/mixins/_utilities.scss +49 -0
- data/assets/stylesheets/bootstrap/utilities/_api.scss +47 -0
- data/assets/stylesheets/bootstrap/vendor/_rfs.scss +214 -130
- data/lib/bootstrap/version.rb +2 -2
- data/tasks/updater/js.rb +3 -3
- metadata +32 -40
- data/assets/javascripts/bootstrap/util.js +0 -189
- 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 -211
- data/assets/stylesheets/bootstrap/_jumbotron.scss +0 -17
- data/assets/stylesheets/bootstrap/_media.scss +0 -8
- data/assets/stylesheets/bootstrap/_print.scss +0 -132
- 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/_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
|
@@ -1,84 +1,124 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Bootstrap dropdown.js
|
|
3
|
-
* Copyright 2011-
|
|
2
|
+
* Bootstrap dropdown.js v5.0.0-alpha1 (https://getbootstrap.com/)
|
|
3
|
+
* Copyright 2011-2020 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 =
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./dom/data.js'), require('./dom/event-handler.js'), require('./dom/manipulator.js'), require('popper.js'), require('./dom/selector-engine.js')) :
|
|
8
|
+
typeof define === 'function' && define.amd ? define(['./dom/data.js', './dom/event-handler.js', './dom/manipulator.js', 'popper.js', './dom/selector-engine.js'], factory) :
|
|
9
|
+
(global = global || self, global.Dropdown = factory(global.Data, global.EventHandler, global.Manipulator, global.Popper, global.SelectorEngine));
|
|
10
|
+
}(this, (function (Data, EventHandler, Manipulator, Popper, SelectorEngine) { 'use strict';
|
|
11
|
+
|
|
12
|
+
Data = Data && Object.prototype.hasOwnProperty.call(Data, 'default') ? Data['default'] : Data;
|
|
13
|
+
EventHandler = EventHandler && Object.prototype.hasOwnProperty.call(EventHandler, 'default') ? EventHandler['default'] : EventHandler;
|
|
14
|
+
Manipulator = Manipulator && Object.prototype.hasOwnProperty.call(Manipulator, 'default') ? Manipulator['default'] : Manipulator;
|
|
15
|
+
Popper = Popper && Object.prototype.hasOwnProperty.call(Popper, 'default') ? Popper['default'] : Popper;
|
|
16
|
+
SelectorEngine = SelectorEngine && Object.prototype.hasOwnProperty.call(SelectorEngine, 'default') ? SelectorEngine['default'] : SelectorEngine;
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* --------------------------------------------------------------------------
|
|
20
|
+
* Bootstrap (v5.0.0-alpha1): util/index.js
|
|
21
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
22
|
+
* --------------------------------------------------------------------------
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
var toType = function toType(obj) {
|
|
26
|
+
if (obj === null || obj === undefined) {
|
|
27
|
+
return "" + obj;
|
|
25
28
|
}
|
|
26
|
-
}
|
|
27
29
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
31
|
-
return Constructor;
|
|
32
|
-
}
|
|
30
|
+
return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase();
|
|
31
|
+
};
|
|
33
32
|
|
|
34
|
-
function
|
|
35
|
-
|
|
36
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
37
|
-
var source = arguments[i];
|
|
33
|
+
var getSelector = function getSelector(element) {
|
|
34
|
+
var selector = element.getAttribute('data-target');
|
|
38
35
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
36
|
+
if (!selector || selector === '#') {
|
|
37
|
+
var hrefAttr = element.getAttribute('href');
|
|
38
|
+
selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
return selector;
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
var getElementFromSelector = function getElementFromSelector(element) {
|
|
45
|
+
var selector = getSelector(element);
|
|
46
|
+
return selector ? document.querySelector(selector) : null;
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
var isElement = function isElement(obj) {
|
|
50
|
+
return (obj[0] || obj).nodeType;
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
var typeCheckConfig = function typeCheckConfig(componentName, config, configTypes) {
|
|
54
|
+
Object.keys(configTypes).forEach(function (property) {
|
|
55
|
+
var expectedTypes = configTypes[property];
|
|
56
|
+
var value = config[property];
|
|
57
|
+
var valueType = value && isElement(value) ? 'element' : toType(value);
|
|
58
|
+
|
|
59
|
+
if (!new RegExp(expectedTypes).test(valueType)) {
|
|
60
|
+
throw new Error(componentName.toUpperCase() + ": " + ("Option \"" + property + "\" provided type \"" + valueType + "\" ") + ("but expected type \"" + expectedTypes + "\"."));
|
|
44
61
|
}
|
|
62
|
+
});
|
|
63
|
+
};
|
|
45
64
|
|
|
46
|
-
|
|
47
|
-
|
|
65
|
+
var isVisible = function isVisible(element) {
|
|
66
|
+
if (!element) {
|
|
67
|
+
return false;
|
|
68
|
+
}
|
|
48
69
|
|
|
49
|
-
|
|
50
|
-
|
|
70
|
+
if (element.style && element.parentNode && element.parentNode.style) {
|
|
71
|
+
var elementStyle = getComputedStyle(element);
|
|
72
|
+
var parentNodeStyle = getComputedStyle(element.parentNode);
|
|
73
|
+
return elementStyle.display !== 'none' && parentNodeStyle.display !== 'none' && elementStyle.visibility !== 'hidden';
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
return false;
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
var noop = function noop() {
|
|
80
|
+
return function () {};
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
var getjQuery = function getjQuery() {
|
|
84
|
+
var _window = window,
|
|
85
|
+
jQuery = _window.jQuery;
|
|
86
|
+
|
|
87
|
+
if (jQuery && !document.body.hasAttribute('data-no-jquery')) {
|
|
88
|
+
return jQuery;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
return null;
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
51
95
|
|
|
96
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
97
|
+
|
|
98
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
99
|
+
|
|
100
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
101
|
+
|
|
102
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
52
103
|
/**
|
|
104
|
+
* ------------------------------------------------------------------------
|
|
53
105
|
* Constants
|
|
106
|
+
* ------------------------------------------------------------------------
|
|
54
107
|
*/
|
|
55
108
|
|
|
56
109
|
var NAME = 'dropdown';
|
|
57
|
-
var VERSION = '
|
|
110
|
+
var VERSION = '5.0.0-alpha1';
|
|
58
111
|
var DATA_KEY = 'bs.dropdown';
|
|
59
112
|
var EVENT_KEY = "." + DATA_KEY;
|
|
60
113
|
var DATA_API_KEY = '.data-api';
|
|
61
|
-
var
|
|
62
|
-
var
|
|
63
|
-
|
|
64
|
-
var
|
|
65
|
-
|
|
66
|
-
var
|
|
67
|
-
|
|
68
|
-
var
|
|
69
|
-
|
|
70
|
-
var ARROW_DOWN_KEYCODE = 40; // KeyboardEvent.which value for down arrow key
|
|
71
|
-
|
|
72
|
-
var RIGHT_MOUSE_BUTTON_WHICH = 3; // MouseEvent.which value for the right button (assuming a right-handed mouse)
|
|
73
|
-
|
|
74
|
-
var REGEXP_KEYDOWN = new RegExp(ARROW_UP_KEYCODE + "|" + ARROW_DOWN_KEYCODE + "|" + ESCAPE_KEYCODE);
|
|
75
|
-
var CLASS_NAME_DISABLED = 'disabled';
|
|
76
|
-
var CLASS_NAME_SHOW = 'show';
|
|
77
|
-
var CLASS_NAME_DROPUP = 'dropup';
|
|
78
|
-
var CLASS_NAME_DROPRIGHT = 'dropright';
|
|
79
|
-
var CLASS_NAME_DROPLEFT = 'dropleft';
|
|
80
|
-
var CLASS_NAME_MENURIGHT = 'dropdown-menu-right';
|
|
81
|
-
var CLASS_NAME_POSITION_STATIC = 'position-static';
|
|
114
|
+
var ESCAPE_KEY = 'Escape';
|
|
115
|
+
var SPACE_KEY = 'Space';
|
|
116
|
+
var TAB_KEY = 'Tab';
|
|
117
|
+
var ARROW_UP_KEY = 'ArrowUp';
|
|
118
|
+
var ARROW_DOWN_KEY = 'ArrowDown';
|
|
119
|
+
var RIGHT_MOUSE_BUTTON = 2; // MouseEvent.button value for the secondary button, usually the right button
|
|
120
|
+
|
|
121
|
+
var REGEXP_KEYDOWN = new RegExp(ARROW_UP_KEY + "|" + ARROW_DOWN_KEY + "|" + ESCAPE_KEY);
|
|
82
122
|
var EVENT_HIDE = "hide" + EVENT_KEY;
|
|
83
123
|
var EVENT_HIDDEN = "hidden" + EVENT_KEY;
|
|
84
124
|
var EVENT_SHOW = "show" + EVENT_KEY;
|
|
@@ -87,6 +127,14 @@
|
|
|
87
127
|
var EVENT_CLICK_DATA_API = "click" + EVENT_KEY + DATA_API_KEY;
|
|
88
128
|
var EVENT_KEYDOWN_DATA_API = "keydown" + EVENT_KEY + DATA_API_KEY;
|
|
89
129
|
var EVENT_KEYUP_DATA_API = "keyup" + EVENT_KEY + DATA_API_KEY;
|
|
130
|
+
var CLASS_NAME_DISABLED = 'disabled';
|
|
131
|
+
var CLASS_NAME_SHOW = 'show';
|
|
132
|
+
var CLASS_NAME_DROPUP = 'dropup';
|
|
133
|
+
var CLASS_NAME_DROPRIGHT = 'dropright';
|
|
134
|
+
var CLASS_NAME_DROPLEFT = 'dropleft';
|
|
135
|
+
var CLASS_NAME_MENURIGHT = 'dropdown-menu-right';
|
|
136
|
+
var CLASS_NAME_NAVBAR = 'navbar';
|
|
137
|
+
var CLASS_NAME_POSITION_STATIC = 'position-static';
|
|
90
138
|
var SELECTOR_DATA_TOGGLE = '[data-toggle="dropdown"]';
|
|
91
139
|
var SELECTOR_FORM_CHILD = '.dropdown form';
|
|
92
140
|
var SELECTOR_MENU = '.dropdown-menu';
|
|
@@ -115,7 +163,9 @@
|
|
|
115
163
|
popperConfig: '(null|object)'
|
|
116
164
|
};
|
|
117
165
|
/**
|
|
118
|
-
*
|
|
166
|
+
* ------------------------------------------------------------------------
|
|
167
|
+
* Class Definition
|
|
168
|
+
* ------------------------------------------------------------------------
|
|
119
169
|
*/
|
|
120
170
|
|
|
121
171
|
var Dropdown = /*#__PURE__*/function () {
|
|
@@ -127,6 +177,8 @@
|
|
|
127
177
|
this._inNavbar = this._detectNavbar();
|
|
128
178
|
|
|
129
179
|
this._addEventListeners();
|
|
180
|
+
|
|
181
|
+
Data.setData(element, DATA_KEY, this);
|
|
130
182
|
} // Getters
|
|
131
183
|
|
|
132
184
|
|
|
@@ -134,55 +186,47 @@
|
|
|
134
186
|
|
|
135
187
|
// Public
|
|
136
188
|
_proto.toggle = function toggle() {
|
|
137
|
-
if (this._element.disabled ||
|
|
189
|
+
if (this._element.disabled || this._element.classList.contains(CLASS_NAME_DISABLED)) {
|
|
138
190
|
return;
|
|
139
191
|
}
|
|
140
192
|
|
|
141
|
-
var isActive =
|
|
193
|
+
var isActive = this._element.classList.contains(CLASS_NAME_SHOW);
|
|
142
194
|
|
|
143
|
-
Dropdown.
|
|
195
|
+
Dropdown.clearMenus();
|
|
144
196
|
|
|
145
197
|
if (isActive) {
|
|
146
198
|
return;
|
|
147
199
|
}
|
|
148
200
|
|
|
149
|
-
this.show(
|
|
201
|
+
this.show();
|
|
150
202
|
};
|
|
151
203
|
|
|
152
|
-
_proto.show = function show(
|
|
153
|
-
if (
|
|
154
|
-
usePopper = false;
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
if (this._element.disabled || $__default["default"](this._element).hasClass(CLASS_NAME_DISABLED) || $__default["default"](this._menu).hasClass(CLASS_NAME_SHOW)) {
|
|
204
|
+
_proto.show = function show() {
|
|
205
|
+
if (this._element.disabled || this._element.classList.contains(CLASS_NAME_DISABLED) || this._menu.classList.contains(CLASS_NAME_SHOW)) {
|
|
158
206
|
return;
|
|
159
207
|
}
|
|
160
208
|
|
|
209
|
+
var parent = Dropdown.getParentFromElement(this._element);
|
|
161
210
|
var relatedTarget = {
|
|
162
211
|
relatedTarget: this._element
|
|
163
212
|
};
|
|
164
|
-
var showEvent =
|
|
165
|
-
|
|
166
|
-
var parent = Dropdown._getParentFromElement(this._element);
|
|
213
|
+
var showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget);
|
|
167
214
|
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
if (showEvent.isDefaultPrevented()) {
|
|
215
|
+
if (showEvent.defaultPrevented) {
|
|
171
216
|
return;
|
|
172
|
-
} //
|
|
217
|
+
} // Disable totally Popper.js for Dropdown in Navbar
|
|
173
218
|
|
|
174
219
|
|
|
175
|
-
if (!this._inNavbar
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
throw new TypeError('Bootstrap\'s dropdowns require Popper (https://popper.js.org)');
|
|
220
|
+
if (!this._inNavbar) {
|
|
221
|
+
if (typeof Popper === 'undefined') {
|
|
222
|
+
throw new TypeError('Bootstrap\'s dropdowns require Popper.js (https://popper.js.org)');
|
|
179
223
|
}
|
|
180
224
|
|
|
181
225
|
var referenceElement = this._element;
|
|
182
226
|
|
|
183
227
|
if (this._config.reference === 'parent') {
|
|
184
228
|
referenceElement = parent;
|
|
185
|
-
} else if (
|
|
229
|
+
} else if (isElement(this._config.reference)) {
|
|
186
230
|
referenceElement = this._config.reference; // Check if it's jQuery element
|
|
187
231
|
|
|
188
232
|
if (typeof this._config.reference.jquery !== 'undefined') {
|
|
@@ -194,43 +238,45 @@
|
|
|
194
238
|
|
|
195
239
|
|
|
196
240
|
if (this._config.boundary !== 'scrollParent') {
|
|
197
|
-
|
|
241
|
+
parent.classList.add(CLASS_NAME_POSITION_STATIC);
|
|
198
242
|
}
|
|
199
243
|
|
|
200
|
-
this._popper = new
|
|
244
|
+
this._popper = new Popper(referenceElement, this._menu, this._getPopperConfig());
|
|
201
245
|
} // If this is a touch-enabled device we add extra
|
|
202
246
|
// empty mouseover listeners to the body's immediate children;
|
|
203
247
|
// only needed because of broken event delegation on iOS
|
|
204
248
|
// https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html
|
|
205
249
|
|
|
206
250
|
|
|
207
|
-
if ('ontouchstart' in document.documentElement &&
|
|
208
|
-
|
|
251
|
+
if ('ontouchstart' in document.documentElement && !parent.closest(SELECTOR_NAVBAR_NAV)) {
|
|
252
|
+
var _ref;
|
|
253
|
+
|
|
254
|
+
(_ref = []).concat.apply(_ref, document.body.children).forEach(function (elem) {
|
|
255
|
+
return EventHandler.on(elem, 'mouseover', null, noop());
|
|
256
|
+
});
|
|
209
257
|
}
|
|
210
258
|
|
|
211
259
|
this._element.focus();
|
|
212
260
|
|
|
213
261
|
this._element.setAttribute('aria-expanded', true);
|
|
214
262
|
|
|
215
|
-
|
|
216
|
-
|
|
263
|
+
Manipulator.toggleClass(this._menu, CLASS_NAME_SHOW);
|
|
264
|
+
Manipulator.toggleClass(this._element, CLASS_NAME_SHOW);
|
|
265
|
+
EventHandler.trigger(parent, EVENT_SHOWN, relatedTarget);
|
|
217
266
|
};
|
|
218
267
|
|
|
219
268
|
_proto.hide = function hide() {
|
|
220
|
-
if (this._element.disabled ||
|
|
269
|
+
if (this._element.disabled || this._element.classList.contains(CLASS_NAME_DISABLED) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {
|
|
221
270
|
return;
|
|
222
271
|
}
|
|
223
272
|
|
|
273
|
+
var parent = Dropdown.getParentFromElement(this._element);
|
|
224
274
|
var relatedTarget = {
|
|
225
275
|
relatedTarget: this._element
|
|
226
276
|
};
|
|
227
|
-
var hideEvent =
|
|
228
|
-
|
|
229
|
-
var parent = Dropdown._getParentFromElement(this._element);
|
|
230
|
-
|
|
231
|
-
$__default["default"](parent).trigger(hideEvent);
|
|
277
|
+
var hideEvent = EventHandler.trigger(parent, EVENT_HIDE, relatedTarget);
|
|
232
278
|
|
|
233
|
-
if (hideEvent.
|
|
279
|
+
if (hideEvent.defaultPrevented) {
|
|
234
280
|
return;
|
|
235
281
|
}
|
|
236
282
|
|
|
@@ -238,17 +284,18 @@
|
|
|
238
284
|
this._popper.destroy();
|
|
239
285
|
}
|
|
240
286
|
|
|
241
|
-
|
|
242
|
-
|
|
287
|
+
Manipulator.toggleClass(this._menu, CLASS_NAME_SHOW);
|
|
288
|
+
Manipulator.toggleClass(this._element, CLASS_NAME_SHOW);
|
|
289
|
+
EventHandler.trigger(parent, EVENT_HIDDEN, relatedTarget);
|
|
243
290
|
};
|
|
244
291
|
|
|
245
292
|
_proto.dispose = function dispose() {
|
|
246
|
-
|
|
247
|
-
|
|
293
|
+
Data.removeData(this._element, DATA_KEY);
|
|
294
|
+
EventHandler.off(this._element, EVENT_KEY);
|
|
248
295
|
this._element = null;
|
|
249
296
|
this._menu = null;
|
|
250
297
|
|
|
251
|
-
if (this._popper
|
|
298
|
+
if (this._popper) {
|
|
252
299
|
this._popper.destroy();
|
|
253
300
|
|
|
254
301
|
this._popper = null;
|
|
@@ -258,7 +305,7 @@
|
|
|
258
305
|
_proto.update = function update() {
|
|
259
306
|
this._inNavbar = this._detectNavbar();
|
|
260
307
|
|
|
261
|
-
if (this._popper
|
|
308
|
+
if (this._popper) {
|
|
262
309
|
this._popper.scheduleUpdate();
|
|
263
310
|
}
|
|
264
311
|
} // Private
|
|
@@ -267,7 +314,7 @@
|
|
|
267
314
|
_proto._addEventListeners = function _addEventListeners() {
|
|
268
315
|
var _this = this;
|
|
269
316
|
|
|
270
|
-
|
|
317
|
+
EventHandler.on(this._element, EVENT_CLICK, function (event) {
|
|
271
318
|
event.preventDefault();
|
|
272
319
|
event.stopPropagation();
|
|
273
320
|
|
|
@@ -276,34 +323,30 @@
|
|
|
276
323
|
};
|
|
277
324
|
|
|
278
325
|
_proto._getConfig = function _getConfig(config) {
|
|
279
|
-
config =
|
|
280
|
-
|
|
326
|
+
config = _objectSpread(_objectSpread(_objectSpread({}, this.constructor.Default), Manipulator.getDataAttributes(this._element)), config);
|
|
327
|
+
typeCheckConfig(NAME, config, this.constructor.DefaultType);
|
|
281
328
|
return config;
|
|
282
329
|
};
|
|
283
330
|
|
|
284
331
|
_proto._getMenuElement = function _getMenuElement() {
|
|
285
|
-
|
|
286
|
-
var parent = Dropdown._getParentFromElement(this._element);
|
|
287
|
-
|
|
288
|
-
if (parent) {
|
|
289
|
-
this._menu = parent.querySelector(SELECTOR_MENU);
|
|
290
|
-
}
|
|
291
|
-
}
|
|
292
|
-
|
|
293
|
-
return this._menu;
|
|
332
|
+
return SelectorEngine.next(this._element, SELECTOR_MENU)[0];
|
|
294
333
|
};
|
|
295
334
|
|
|
296
335
|
_proto._getPlacement = function _getPlacement() {
|
|
297
|
-
var
|
|
336
|
+
var parentDropdown = this._element.parentNode;
|
|
298
337
|
var placement = PLACEMENT_BOTTOM; // Handle dropup
|
|
299
338
|
|
|
300
|
-
if (
|
|
301
|
-
placement =
|
|
302
|
-
|
|
339
|
+
if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {
|
|
340
|
+
placement = PLACEMENT_TOP;
|
|
341
|
+
|
|
342
|
+
if (this._menu.classList.contains(CLASS_NAME_MENURIGHT)) {
|
|
343
|
+
placement = PLACEMENT_TOPEND;
|
|
344
|
+
}
|
|
345
|
+
} else if (parentDropdown.classList.contains(CLASS_NAME_DROPRIGHT)) {
|
|
303
346
|
placement = PLACEMENT_RIGHT;
|
|
304
|
-
} else if (
|
|
347
|
+
} else if (parentDropdown.classList.contains(CLASS_NAME_DROPLEFT)) {
|
|
305
348
|
placement = PLACEMENT_LEFT;
|
|
306
|
-
} else if (
|
|
349
|
+
} else if (this._menu.classList.contains(CLASS_NAME_MENURIGHT)) {
|
|
307
350
|
placement = PLACEMENT_BOTTOMEND;
|
|
308
351
|
}
|
|
309
352
|
|
|
@@ -311,7 +354,7 @@
|
|
|
311
354
|
};
|
|
312
355
|
|
|
313
356
|
_proto._detectNavbar = function _detectNavbar() {
|
|
314
|
-
return
|
|
357
|
+
return Boolean(this._element.closest("." + CLASS_NAME_NAVBAR));
|
|
315
358
|
};
|
|
316
359
|
|
|
317
360
|
_proto._getOffset = function _getOffset() {
|
|
@@ -321,7 +364,7 @@
|
|
|
321
364
|
|
|
322
365
|
if (typeof this._config.offset === 'function') {
|
|
323
366
|
offset.fn = function (data) {
|
|
324
|
-
data.offsets =
|
|
367
|
+
data.offsets = _objectSpread(_objectSpread({}, data.offsets), _this2._config.offset(data.offsets, _this2._element) || {});
|
|
325
368
|
return data;
|
|
326
369
|
};
|
|
327
370
|
} else {
|
|
@@ -343,7 +386,7 @@
|
|
|
343
386
|
boundariesElement: this._config.boundary
|
|
344
387
|
}
|
|
345
388
|
}
|
|
346
|
-
}; // Disable Popper if we have a static display
|
|
389
|
+
}; // Disable Popper.js if we have a static display
|
|
347
390
|
|
|
348
391
|
if (this._config.display === 'static') {
|
|
349
392
|
popperConfig.modifiers.applyStyle = {
|
|
@@ -351,42 +394,44 @@
|
|
|
351
394
|
};
|
|
352
395
|
}
|
|
353
396
|
|
|
354
|
-
return
|
|
397
|
+
return _objectSpread(_objectSpread({}, popperConfig), this._config.popperConfig);
|
|
355
398
|
} // Static
|
|
356
399
|
;
|
|
357
400
|
|
|
358
|
-
Dropdown.
|
|
359
|
-
|
|
360
|
-
var data = $__default["default"](this).data(DATA_KEY);
|
|
401
|
+
Dropdown.dropdownInterface = function dropdownInterface(element, config) {
|
|
402
|
+
var data = Data.getData(element, DATA_KEY);
|
|
361
403
|
|
|
362
|
-
|
|
404
|
+
var _config = typeof config === 'object' ? config : null;
|
|
363
405
|
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
406
|
+
if (!data) {
|
|
407
|
+
data = new Dropdown(element, _config);
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
if (typeof config === 'string') {
|
|
411
|
+
if (typeof data[config] === 'undefined') {
|
|
412
|
+
throw new TypeError("No method named \"" + config + "\"");
|
|
367
413
|
}
|
|
368
414
|
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
}
|
|
415
|
+
data[config]();
|
|
416
|
+
}
|
|
417
|
+
};
|
|
373
418
|
|
|
374
|
-
|
|
375
|
-
|
|
419
|
+
Dropdown.jQueryInterface = function jQueryInterface(config) {
|
|
420
|
+
return this.each(function () {
|
|
421
|
+
Dropdown.dropdownInterface(this, config);
|
|
376
422
|
});
|
|
377
423
|
};
|
|
378
424
|
|
|
379
|
-
Dropdown.
|
|
380
|
-
if (event && (event.
|
|
425
|
+
Dropdown.clearMenus = function clearMenus(event) {
|
|
426
|
+
if (event && (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY)) {
|
|
381
427
|
return;
|
|
382
428
|
}
|
|
383
429
|
|
|
384
|
-
var toggles =
|
|
430
|
+
var toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE);
|
|
385
431
|
|
|
386
432
|
for (var i = 0, len = toggles.length; i < len; i++) {
|
|
387
|
-
var parent = Dropdown.
|
|
388
|
-
|
|
389
|
-
var context = $__default["default"](toggles[i]).data(DATA_KEY);
|
|
433
|
+
var parent = Dropdown.getParentFromElement(toggles[i]);
|
|
434
|
+
var context = Data.getData(toggles[i], DATA_KEY);
|
|
390
435
|
var relatedTarget = {
|
|
391
436
|
relatedTarget: toggles[i]
|
|
392
437
|
};
|
|
@@ -401,25 +446,28 @@
|
|
|
401
446
|
|
|
402
447
|
var dropdownMenu = context._menu;
|
|
403
448
|
|
|
404
|
-
if (
|
|
449
|
+
if (!toggles[i].classList.contains(CLASS_NAME_SHOW)) {
|
|
405
450
|
continue;
|
|
406
451
|
}
|
|
407
452
|
|
|
408
|
-
if (event && (event.type === 'click' && /input|textarea/i.test(event.target.tagName) || event.type === 'keyup' && event.
|
|
453
|
+
if (event && (event.type === 'click' && /input|textarea/i.test(event.target.tagName) || event.type === 'keyup' && event.key === TAB_KEY) && dropdownMenu.contains(event.target)) {
|
|
409
454
|
continue;
|
|
410
455
|
}
|
|
411
456
|
|
|
412
|
-
var hideEvent =
|
|
413
|
-
$__default["default"](parent).trigger(hideEvent);
|
|
457
|
+
var hideEvent = EventHandler.trigger(parent, EVENT_HIDE, relatedTarget);
|
|
414
458
|
|
|
415
|
-
if (hideEvent.
|
|
459
|
+
if (hideEvent.defaultPrevented) {
|
|
416
460
|
continue;
|
|
417
461
|
} // If this is a touch-enabled device we remove the extra
|
|
418
462
|
// empty mouseover listeners we added for iOS support
|
|
419
463
|
|
|
420
464
|
|
|
421
465
|
if ('ontouchstart' in document.documentElement) {
|
|
422
|
-
|
|
466
|
+
var _ref2;
|
|
467
|
+
|
|
468
|
+
(_ref2 = []).concat.apply(_ref2, document.body.children).forEach(function (elem) {
|
|
469
|
+
return EventHandler.off(elem, 'mouseover', null, noop());
|
|
470
|
+
});
|
|
423
471
|
}
|
|
424
472
|
|
|
425
473
|
toggles[i].setAttribute('aria-expanded', 'false');
|
|
@@ -428,24 +476,17 @@
|
|
|
428
476
|
context._popper.destroy();
|
|
429
477
|
}
|
|
430
478
|
|
|
431
|
-
|
|
432
|
-
|
|
479
|
+
dropdownMenu.classList.remove(CLASS_NAME_SHOW);
|
|
480
|
+
toggles[i].classList.remove(CLASS_NAME_SHOW);
|
|
481
|
+
EventHandler.trigger(parent, EVENT_HIDDEN, relatedTarget);
|
|
433
482
|
}
|
|
434
483
|
};
|
|
435
484
|
|
|
436
|
-
Dropdown.
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
if (selector) {
|
|
441
|
-
parent = document.querySelector(selector);
|
|
442
|
-
}
|
|
443
|
-
|
|
444
|
-
return parent || element.parentNode;
|
|
445
|
-
} // eslint-disable-next-line complexity
|
|
446
|
-
;
|
|
485
|
+
Dropdown.getParentFromElement = function getParentFromElement(element) {
|
|
486
|
+
return getElementFromSelector(element) || element.parentNode;
|
|
487
|
+
};
|
|
447
488
|
|
|
448
|
-
Dropdown.
|
|
489
|
+
Dropdown.dataApiKeydownHandler = function dataApiKeydownHandler(event) {
|
|
449
490
|
// If not input/textarea:
|
|
450
491
|
// - And not a key in REGEXP_KEYDOWN => not a dropdown command
|
|
451
492
|
// If input/textarea:
|
|
@@ -453,61 +494,59 @@
|
|
|
453
494
|
// - If key is other than escape
|
|
454
495
|
// - If key is not up or down => not a dropdown command
|
|
455
496
|
// - If trigger inside the menu => not a dropdown command
|
|
456
|
-
if (/input|textarea/i.test(event.target.tagName) ? event.
|
|
497
|
+
if (/input|textarea/i.test(event.target.tagName) ? event.key === SPACE_KEY || event.key !== ESCAPE_KEY && (event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY || event.target.closest(SELECTOR_MENU)) : !REGEXP_KEYDOWN.test(event.key)) {
|
|
457
498
|
return;
|
|
458
499
|
}
|
|
459
500
|
|
|
460
|
-
|
|
501
|
+
event.preventDefault();
|
|
502
|
+
event.stopPropagation();
|
|
503
|
+
|
|
504
|
+
if (this.disabled || this.classList.contains(CLASS_NAME_DISABLED)) {
|
|
461
505
|
return;
|
|
462
506
|
}
|
|
463
507
|
|
|
464
|
-
var parent = Dropdown.
|
|
465
|
-
|
|
466
|
-
var isActive = $__default["default"](parent).hasClass(CLASS_NAME_SHOW);
|
|
508
|
+
var parent = Dropdown.getParentFromElement(this);
|
|
509
|
+
var isActive = this.classList.contains(CLASS_NAME_SHOW);
|
|
467
510
|
|
|
468
|
-
if (
|
|
511
|
+
if (event.key === ESCAPE_KEY) {
|
|
512
|
+
var button = this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0];
|
|
513
|
+
button.focus();
|
|
514
|
+
Dropdown.clearMenus();
|
|
469
515
|
return;
|
|
470
516
|
}
|
|
471
517
|
|
|
472
|
-
event.
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
if (!isActive || event.which === ESCAPE_KEYCODE || event.which === SPACE_KEYCODE) {
|
|
476
|
-
if (event.which === ESCAPE_KEYCODE) {
|
|
477
|
-
$__default["default"](parent.querySelector(SELECTOR_DATA_TOGGLE)).trigger('focus');
|
|
478
|
-
}
|
|
479
|
-
|
|
480
|
-
$__default["default"](this).trigger('click');
|
|
518
|
+
if (!isActive || event.key === SPACE_KEY) {
|
|
519
|
+
Dropdown.clearMenus();
|
|
481
520
|
return;
|
|
482
521
|
}
|
|
483
522
|
|
|
484
|
-
var items =
|
|
485
|
-
return $__default["default"](item).is(':visible');
|
|
486
|
-
});
|
|
523
|
+
var items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, parent).filter(isVisible);
|
|
487
524
|
|
|
488
|
-
if (items.length
|
|
525
|
+
if (!items.length) {
|
|
489
526
|
return;
|
|
490
527
|
}
|
|
491
528
|
|
|
492
529
|
var index = items.indexOf(event.target);
|
|
493
530
|
|
|
494
|
-
if (event.
|
|
531
|
+
if (event.key === ARROW_UP_KEY && index > 0) {
|
|
495
532
|
// Up
|
|
496
533
|
index--;
|
|
497
534
|
}
|
|
498
535
|
|
|
499
|
-
if (event.
|
|
536
|
+
if (event.key === ARROW_DOWN_KEY && index < items.length - 1) {
|
|
500
537
|
// Down
|
|
501
538
|
index++;
|
|
502
|
-
}
|
|
539
|
+
} // index is -1 if the first keydown is an ArrowUp
|
|
503
540
|
|
|
504
|
-
if (index < 0) {
|
|
505
|
-
index = 0;
|
|
506
|
-
}
|
|
507
541
|
|
|
542
|
+
index = index === -1 ? 0 : index;
|
|
508
543
|
items[index].focus();
|
|
509
544
|
};
|
|
510
545
|
|
|
546
|
+
Dropdown.getInstance = function getInstance(element) {
|
|
547
|
+
return Data.getData(element, DATA_KEY);
|
|
548
|
+
};
|
|
549
|
+
|
|
511
550
|
_createClass(Dropdown, null, [{
|
|
512
551
|
key: "VERSION",
|
|
513
552
|
get: function get() {
|
|
@@ -528,30 +567,45 @@
|
|
|
528
567
|
return Dropdown;
|
|
529
568
|
}();
|
|
530
569
|
/**
|
|
531
|
-
*
|
|
570
|
+
* ------------------------------------------------------------------------
|
|
571
|
+
* Data Api implementation
|
|
572
|
+
* ------------------------------------------------------------------------
|
|
532
573
|
*/
|
|
533
574
|
|
|
534
575
|
|
|
535
|
-
|
|
576
|
+
EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler);
|
|
577
|
+
EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler);
|
|
578
|
+
EventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus);
|
|
579
|
+
EventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus);
|
|
580
|
+
EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
|
|
536
581
|
event.preventDefault();
|
|
537
582
|
event.stopPropagation();
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
e.stopPropagation();
|
|
583
|
+
Dropdown.dropdownInterface(this, 'toggle');
|
|
584
|
+
});
|
|
585
|
+
EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_FORM_CHILD, function (e) {
|
|
586
|
+
return e.stopPropagation();
|
|
542
587
|
});
|
|
588
|
+
var $ = getjQuery();
|
|
543
589
|
/**
|
|
590
|
+
* ------------------------------------------------------------------------
|
|
544
591
|
* jQuery
|
|
592
|
+
* ------------------------------------------------------------------------
|
|
593
|
+
* add .dropdown to jQuery only if jQuery is present
|
|
545
594
|
*/
|
|
546
595
|
|
|
547
|
-
|
|
548
|
-
$__default["default"].fn[NAME].Constructor = Dropdown;
|
|
596
|
+
/* istanbul ignore if */
|
|
549
597
|
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
598
|
+
if ($) {
|
|
599
|
+
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
|
600
|
+
$.fn[NAME] = Dropdown.jQueryInterface;
|
|
601
|
+
$.fn[NAME].Constructor = Dropdown;
|
|
602
|
+
|
|
603
|
+
$.fn[NAME].noConflict = function () {
|
|
604
|
+
$.fn[NAME] = JQUERY_NO_CONFLICT;
|
|
605
|
+
return Dropdown.jQueryInterface;
|
|
606
|
+
};
|
|
607
|
+
}
|
|
554
608
|
|
|
555
609
|
return Dropdown;
|
|
556
610
|
|
|
557
|
-
}));
|
|
611
|
+
})));
|