aboutsummaryrefslogtreecommitdiff
path: root/js
diff options
context:
space:
mode:
authorGeoSot <[email protected]>2021-05-20 16:16:55 +0300
committerGitHub <[email protected]>2021-05-20 16:16:55 +0300
commit9e4f87ae8f2e32bb31795ece8f9ab3e7b823dd7d (patch)
treea8ae05c59e1e245dc9fa52ea85863c844879b8a1 /js
parentde0b797ab2bb80e4576c15f1992dc5755378edcd (diff)
downloadbootstrap-9e4f87ae8f2e32bb31795ece8f9ab3e7b823dd7d.tar.xz
bootstrap-9e4f87ae8f2e32bb31795ece8f9ab3e7b823dd7d.zip
Allow use of `dispose/hide` methods on Tooltip & Popover from jQueryInterface, when component does not exists. (#33371)
Diffstat (limited to 'js')
-rw-r--r--js/src/popover.js4
-rw-r--r--js/src/tooltip.js4
-rw-r--r--js/tests/unit/popover.spec.js15
-rw-r--r--js/tests/unit/tooltip.spec.js15
4 files changed, 0 insertions, 38 deletions
diff --git a/js/src/popover.js b/js/src/popover.js
index 6ab31d6e4..e8614156c 100644
--- a/js/src/popover.js
+++ b/js/src/popover.js
@@ -149,10 +149,6 @@ class Popover extends Tooltip {
let data = Data.get(this, DATA_KEY)
const _config = typeof config === 'object' ? config : null
- if (!data && /dispose|hide/.test(config)) {
- return
- }
-
if (!data) {
data = new Popover(this, _config)
Data.set(this, DATA_KEY, data)
diff --git a/js/src/tooltip.js b/js/src/tooltip.js
index d164da2b3..84379c88f 100644
--- a/js/src/tooltip.js
+++ b/js/src/tooltip.js
@@ -725,10 +725,6 @@ class Tooltip extends BaseComponent {
let data = Data.get(this, DATA_KEY)
const _config = typeof config === 'object' && config
- if (!data && /dispose|hide/.test(config)) {
- return
- }
-
if (!data) {
data = new Tooltip(this, _config)
}
diff --git a/js/tests/unit/popover.spec.js b/js/tests/unit/popover.spec.js
index 7c741fe47..def0f5f04 100644
--- a/js/tests/unit/popover.spec.js
+++ b/js/tests/unit/popover.spec.js
@@ -266,21 +266,6 @@ describe('Popover', () => {
expect(popover.show).toHaveBeenCalled()
})
-
- it('should do nothing if dipose is called when a popover do not exist', () => {
- fixtureEl.innerHTML = '<a href="#" title="Popover" data-bs-content="https://twitter.com/getbootstrap">BS twitter</a>'
-
- const popoverEl = fixtureEl.querySelector('a')
-
- jQueryMock.fn.popover = Popover.jQueryInterface
- jQueryMock.elements = [popoverEl]
-
- spyOn(Popover.prototype, 'dispose')
-
- jQueryMock.fn.popover.call(jQueryMock, 'dispose')
-
- expect(Popover.prototype.dispose).not.toHaveBeenCalled()
- })
})
describe('getInstance', () => {
diff --git a/js/tests/unit/tooltip.spec.js b/js/tests/unit/tooltip.spec.js
index 80fb6a8a1..27c7a350b 100644
--- a/js/tests/unit/tooltip.spec.js
+++ b/js/tests/unit/tooltip.spec.js
@@ -1351,21 +1351,6 @@ describe('Tooltip', () => {
expect(tooltip.show).toHaveBeenCalled()
})
- it('should do nothing when we call dispose or hide if there is no tooltip created', () => {
- fixtureEl.innerHTML = '<div></div>'
-
- const div = fixtureEl.querySelector('div')
-
- spyOn(Tooltip.prototype, 'dispose')
-
- jQueryMock.fn.tooltip = Tooltip.jQueryInterface
- jQueryMock.elements = [div]
-
- jQueryMock.fn.tooltip.call(jQueryMock, 'dispose')
-
- expect(Tooltip.prototype.dispose).not.toHaveBeenCalled()
- })
-
it('should throw error on undefined method', () => {
fixtureEl.innerHTML = '<div></div>'