From: GeoSot Date: Wed, 9 Jun 2021 22:16:54 +0000 (+0300) Subject: Add a helper function to check for showing X-Git-Tag: v5.1.0~31 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5882d5dbe85edc5e6d9ca1cdbf1fc94a0698ae82;p=thirdparty%2Fbootstrap.git Add a helper function to check for showing Also, remove the `isTransitioning()` helper. --- diff --git a/js/src/collapse.js b/js/src/collapse.js index fcb8be6d7d..c15bffa84f 100644 --- a/js/src/collapse.js +++ b/js/src/collapse.js @@ -113,7 +113,7 @@ class Collapse extends BaseComponent { // Public toggle() { - if (this._element.classList.contains(CLASS_NAME_SHOW)) { + if (this._isShown()) { this.hide() } else { this.show() @@ -121,7 +121,7 @@ class Collapse extends BaseComponent { } show() { - if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) { + if (this._isTransitioning || this._isShown()) { return } @@ -184,16 +184,16 @@ class Collapse extends BaseComponent { }) } - this.setTransitioning(true) + this._isTransitioning = true const complete = () => { + this._isTransitioning = false + this._element.classList.remove(CLASS_NAME_COLLAPSING) this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW) this._element.style[dimension] = '' - this.setTransitioning(false) - EventHandler.trigger(this._element, EVENT_SHOWN) } @@ -205,7 +205,7 @@ class Collapse extends BaseComponent { } hide() { - if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) { + if (this._isTransitioning || !this._isShown()) { return } @@ -229,17 +229,17 @@ class Collapse extends BaseComponent { const trigger = this._triggerArray[i] const elem = getElementFromSelector(trigger) - if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) { + if (elem && !this._isShown(elem)) { trigger.classList.add(CLASS_NAME_COLLAPSED) trigger.setAttribute('aria-expanded', false) } } } - this.setTransitioning(true) + this._isTransitioning = true const complete = () => { - this.setTransitioning(false) + this._isTransitioning = false this._element.classList.remove(CLASS_NAME_COLLAPSING) this._element.classList.add(CLASS_NAME_COLLAPSE) EventHandler.trigger(this._element, EVENT_HIDDEN) @@ -250,8 +250,8 @@ class Collapse extends BaseComponent { this._queueCallback(complete, this._element, true) } - setTransitioning(isTransitioning) { - this._isTransitioning = isTransitioning + _isShown(element = this._element) { + return element.classList.contains(CLASS_NAME_SHOW) } // Private @@ -296,7 +296,7 @@ class Collapse extends BaseComponent { return } - const isOpen = element.classList.contains(CLASS_NAME_SHOW) + const isOpen = this._isShown(element) triggerArray.forEach(elem => { if (isOpen) {