]> git.ipfire.org Git - thirdparty/bootstrap.git/commitdiff
add dispose in base component
authorJohann-S <johann.servoire@gmail.com>
Fri, 20 Nov 2020 10:13:11 +0000 (11:13 +0100)
committerXhmikosR <xhmikosr@gmail.com>
Sun, 29 Nov 2020 18:58:26 +0000 (20:58 +0200)
js/src/alert.js
js/src/base-component.js
js/src/button.js
js/src/carousel.js
js/src/collapse.js
js/src/dropdown.js
js/src/modal.js
js/src/scrollspy.js
js/src/tab.js
js/src/toast.js
js/src/tooltip.js

index 6f4c0be8dee9f3f004c7d9029a61e85ff0ffd31e..41cff54db2d9f46982080119ae0667ae7e241d37 100644 (file)
@@ -69,11 +69,6 @@ class Alert extends BaseComponent {
     this._removeElement(rootElement)
   }
 
-  dispose() {
-    Data.removeData(this._element, DATA_KEY)
-    this._element = null
-  }
-
   // Private
 
   _getRootElement(element) {
index a6c7f36bde0f31b3c6d594a72262f5495b633aad..b1b85a4ee75760c68f27d377766ea0c3aebc3674 100644 (file)
@@ -17,6 +17,11 @@ class BaseComponent {
     Data.setData(element, this.constructor.DATA_KEY, this)
   }
 
+  dispose() {
+    Data.removeData(this._element, this.constructor.DATA_KEY)
+    this._element = null
+  }
+
   /** Static */
 
   static getInstance(element) {
index 2694e7b786c7d00929591c145151a2e0f420bdb9..8b7c6c953c9b533fccbcd6bf0bfed66d973db42b 100644 (file)
@@ -52,11 +52,6 @@ class Button extends BaseComponent {
     this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))
   }
 
-  dispose() {
-    Data.removeData(this._element, DATA_KEY)
-    this._element = null
-  }
-
   // Static
 
   static jQueryInterface(config) {
index 6a035c9abda5def2dace645fc4017b4c511ecba7..35a1848f8732d074cf53a12a7cda329468053e49 100644 (file)
@@ -224,12 +224,11 @@ class Carousel extends BaseComponent {
   }
 
   dispose() {
+    super.dispose()
     EventHandler.off(this._element, EVENT_KEY)
-    Data.removeData(this._element, DATA_KEY)
 
     this._items = null
     this._config = null
-    this._element = null
     this._interval = null
     this._isPaused = null
     this._isSliding = null
index c76426c7c44132dd22bbdc4b3ce58a3777ea0261..9fb4d5edef2b6fa96b2937f41298fb57c2378634 100644 (file)
@@ -272,11 +272,9 @@ class Collapse extends BaseComponent {
   }
 
   dispose() {
-    Data.removeData(this._element, DATA_KEY)
-
+    super.dispose()
     this._config = null
     this._parent = null
-    this._element = null
     this._triggerArray = null
     this._isTransitioning = null
   }
index 16d35b911d069022394017a67203397ff90dc648..3641d9f9d20c90be645fb4efcaa3a0ee2d4a6e2c 100644 (file)
@@ -235,9 +235,8 @@ class Dropdown extends BaseComponent {
   }
 
   dispose() {
-    Data.removeData(this._element, DATA_KEY)
+    super.dispose()
     EventHandler.off(this._element, EVENT_KEY)
-    this._element = null
     this._menu = null
     if (this._popper) {
       this._popper.destroy()
index 1e7ce034692fce22c04eeff48da45ce0074e0d43..449721caf796ba25135a57f8c14f6a661addec41 100644 (file)
@@ -207,6 +207,8 @@ class Modal extends BaseComponent {
     [window, this._element, this._dialog]
       .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))
 
+    super.dispose()
+
     /**
      * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`
      * Do not move `document` in `htmlElements` array
@@ -214,10 +216,7 @@ class Modal extends BaseComponent {
      */
     EventHandler.off(document, EVENT_FOCUSIN)
 
-    Data.removeData(this._element, DATA_KEY)
-
     this._config = null
-    this._element = null
     this._dialog = null
     this._backdrop = null
     this._isShown = null
index 6eb66f3b4a32fc43ea18edfb51c2e845e2aab460..0df00e8f7bb79cbe12d1d1cf19bb9309133e68b4 100644 (file)
@@ -146,10 +146,9 @@ class ScrollSpy extends BaseComponent {
   }
 
   dispose() {
-    Data.removeData(this._element, DATA_KEY)
+    super.dispose()
     EventHandler.off(this._scrollElement, EVENT_KEY)
 
-    this._element = null
     this._scrollElement = null
     this._config = null
     this._selector = null
index 523810a392c7f4462dbaa4be7a56ed57e7816f47..a57d1b12ddf05eec6d988f3e08d4bc87372eb953 100644 (file)
@@ -126,11 +126,6 @@ class Tab extends BaseComponent {
     }
   }
 
-  dispose() {
-    Data.removeData(this._element, DATA_KEY)
-    this._element = null
-  }
-
   // Private
 
   _activate(element, container, callback) {
index c351139be0c7798a9bf726a5cc4e1b8ba017428d..04917869df3203445039eb3ba0a0fecf6daa63d6 100644 (file)
@@ -165,9 +165,8 @@ class Toast extends BaseComponent {
     }
 
     EventHandler.off(this._element, EVENT_CLICK_DISMISS)
-    Data.removeData(this._element, DATA_KEY)
 
-    this._element = null
+    super.dispose()
     this._config = null
   }
 
index 99f910efc782194780eaff8710927868c0a3cb63..b8443206530a2a477bb7df03c2ff99d587d58d4f 100644 (file)
@@ -229,8 +229,6 @@ class Tooltip extends BaseComponent {
   dispose() {
     clearTimeout(this._timeout)
 
-    Data.removeData(this._element, this.constructor.DATA_KEY)
-
     EventHandler.off(this._element, this.constructor.EVENT_KEY)
     EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)
 
@@ -247,9 +245,9 @@ class Tooltip extends BaseComponent {
     }
 
     this._popper = null
-    this._element = null
     this.config = null
     this.tip = null
+    super.dispose()
   }
 
   show() {