Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/twbs/bootstrap-rubygem.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'assets/javascripts/bootstrap/collapse.js')
-rw-r--r--assets/javascripts/bootstrap/collapse.js42
1 files changed, 25 insertions, 17 deletions
diff --git a/assets/javascripts/bootstrap/collapse.js b/assets/javascripts/bootstrap/collapse.js
index 9206bc4..9026fb7 100644
--- a/assets/javascripts/bootstrap/collapse.js
+++ b/assets/javascripts/bootstrap/collapse.js
@@ -8,7 +8,7 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
/**
* --------------------------------------------------------------------------
- * Bootstrap (v4.1.1): collapse.js
+ * Bootstrap (v4.1.2): collapse.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
@@ -19,7 +19,7 @@ var Collapse = function ($) {
* ------------------------------------------------------------------------
*/
var NAME = 'collapse';
- var VERSION = '4.1.1';
+ var VERSION = '4.1.2';
var DATA_KEY = 'bs.collapse';
var EVENT_KEY = "." + DATA_KEY;
var DATA_API_KEY = '.data-api';
@@ -67,14 +67,17 @@ var Collapse = function ($) {
this._isTransitioning = false;
this._element = element;
this._config = this._getConfig(config);
- this._triggerArray = $.makeArray($("[data-toggle=\"collapse\"][href=\"#" + element.id + "\"]," + ("[data-toggle=\"collapse\"][data-target=\"#" + element.id + "\"]")));
- var tabToggles = $(Selector.DATA_TOGGLE);
+ this._triggerArray = $.makeArray(document.querySelectorAll("[data-toggle=\"collapse\"][href=\"#" + element.id + "\"]," + ("[data-toggle=\"collapse\"][data-target=\"#" + element.id + "\"]")));
+ var toggleList = [].slice.call(document.querySelectorAll(Selector.DATA_TOGGLE));
- for (var i = 0; i < tabToggles.length; i++) {
- var elem = tabToggles[i];
+ for (var i = 0, len = toggleList.length; i < len; i++) {
+ var elem = toggleList[i];
var selector = Util.getSelectorFromElement(elem);
+ var filterElement = [].slice.call(document.querySelectorAll(selector)).filter(function (foundElem) {
+ return foundElem === element;
+ });
- if (selector !== null && $(selector).filter(element).length > 0) {
+ if (selector !== null && filterElement.length > 0) {
this._selector = selector;
this._triggerArray.push(elem);
@@ -115,7 +118,9 @@ var Collapse = function ($) {
var activesData;
if (this._parent) {
- actives = $.makeArray($(this._parent).find(Selector.ACTIVES).filter("[data-parent=\"" + this._config.parent + "\"]"));
+ actives = [].slice.call(this._parent.querySelectorAll(Selector.ACTIVES)).filter(function (elem) {
+ return elem.getAttribute('data-parent') === _this._config.parent;
+ });
if (actives.length === 0) {
actives = null;
@@ -150,7 +155,7 @@ var Collapse = function ($) {
$(this._element).removeClass(ClassName.COLLAPSE).addClass(ClassName.COLLAPSING);
this._element.style[dimension] = 0;
- if (this._triggerArray.length > 0) {
+ if (this._triggerArray.length) {
$(this._triggerArray).removeClass(ClassName.COLLAPSED).attr('aria-expanded', true);
}
@@ -191,14 +196,15 @@ var Collapse = function ($) {
this._element.style[dimension] = this._element.getBoundingClientRect()[dimension] + "px";
Util.reflow(this._element);
$(this._element).addClass(ClassName.COLLAPSING).removeClass(ClassName.COLLAPSE).removeClass(ClassName.SHOW);
+ var triggerArrayLength = this._triggerArray.length;
- if (this._triggerArray.length > 0) {
- for (var i = 0; i < this._triggerArray.length; i++) {
+ if (triggerArrayLength > 0) {
+ for (var i = 0; i < triggerArrayLength; i++) {
var trigger = this._triggerArray[i];
var selector = Util.getSelectorFromElement(trigger);
if (selector !== null) {
- var $elem = $(selector);
+ var $elem = $([].slice.call(document.querySelectorAll(selector)));
if (!$elem.hasClass(ClassName.SHOW)) {
$(trigger).addClass(ClassName.COLLAPSED).attr('aria-expanded', false);
@@ -259,11 +265,12 @@ var Collapse = function ($) {
parent = this._config.parent[0];
}
} else {
- parent = $(this._config.parent)[0];
+ parent = document.querySelector(this._config.parent);
}
var selector = "[data-toggle=\"collapse\"][data-parent=\"" + this._config.parent + "\"]";
- $(parent).find(selector).each(function (i, element) {
+ var children = [].slice.call(parent.querySelectorAll(selector));
+ $(children).each(function (i, element) {
_this3._addAriaAndCollapsedClass(Collapse._getTargetFromElement(element), [element]);
});
return parent;
@@ -273,7 +280,7 @@ var Collapse = function ($) {
if (element) {
var isOpen = $(element).hasClass(ClassName.SHOW);
- if (triggerArray.length > 0) {
+ if (triggerArray.length) {
$(triggerArray).toggleClass(ClassName.COLLAPSED, !isOpen).attr('aria-expanded', isOpen);
}
}
@@ -282,7 +289,7 @@ var Collapse = function ($) {
Collapse._getTargetFromElement = function _getTargetFromElement(element) {
var selector = Util.getSelectorFromElement(element);
- return selector ? $(selector)[0] : null;
+ return selector ? document.querySelector(selector) : null;
};
Collapse._jQueryInterface = function _jQueryInterface(config) {
@@ -340,7 +347,8 @@ var Collapse = function ($) {
var $trigger = $(this);
var selector = Util.getSelectorFromElement(this);
- $(selector).each(function () {
+ var selectors = [].slice.call(document.querySelectorAll(selector));
+ $(selectors).each(function () {
var $target = $(this);
var data = $target.data(DATA_KEY);
var config = data ? 'toggle' : $trigger.data();