Skip to content

Commit 9e4f87a

Browse files
authored
Allow use of dispose/hide methods on Tooltip & Popover from jQueryInterface, when component does not exists. (#33371)
1 parent de0b797 commit 9e4f87a

File tree

4 files changed

+0
-38
lines changed

4 files changed

+0
-38
lines changed

js/src/popover.js

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -149,10 +149,6 @@ class Popover extends Tooltip {
149149
let data = Data.get(this, DATA_KEY)
150150
const _config = typeof config === 'object' ? config : null
151151

152-
if (!data && /dispose|hide/.test(config)) {
153-
return
154-
}
155-
156152
if (!data) {
157153
data = new Popover(this, _config)
158154
Data.set(this, DATA_KEY, data)

js/src/tooltip.js

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -725,10 +725,6 @@ class Tooltip extends BaseComponent {
725725
let data = Data.get(this, DATA_KEY)
726726
const _config = typeof config === 'object' && config
727727

728-
if (!data && /dispose|hide/.test(config)) {
729-
return
730-
}
731-
732728
if (!data) {
733729
data = new Tooltip(this, _config)
734730
}

js/tests/unit/popover.spec.js

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -266,21 +266,6 @@ describe('Popover', () => {
266266

267267
expect(popover.show).toHaveBeenCalled()
268268
})
269-
270-
it('should do nothing if dipose is called when a popover do not exist', () => {
271-
fixtureEl.innerHTML = '<a href="#" title="Popover" data-bs-content="https://twitter.com/getbootstrap">BS twitter</a>'
272-
273-
const popoverEl = fixtureEl.querySelector('a')
274-
275-
jQueryMock.fn.popover = Popover.jQueryInterface
276-
jQueryMock.elements = [popoverEl]
277-
278-
spyOn(Popover.prototype, 'dispose')
279-
280-
jQueryMock.fn.popover.call(jQueryMock, 'dispose')
281-
282-
expect(Popover.prototype.dispose).not.toHaveBeenCalled()
283-
})
284269
})
285270

286271
describe('getInstance', () => {

js/tests/unit/tooltip.spec.js

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1351,21 +1351,6 @@ describe('Tooltip', () => {
13511351
expect(tooltip.show).toHaveBeenCalled()
13521352
})
13531353

1354-
it('should do nothing when we call dispose or hide if there is no tooltip created', () => {
1355-
fixtureEl.innerHTML = '<div></div>'
1356-
1357-
const div = fixtureEl.querySelector('div')
1358-
1359-
spyOn(Tooltip.prototype, 'dispose')
1360-
1361-
jQueryMock.fn.tooltip = Tooltip.jQueryInterface
1362-
jQueryMock.elements = [div]
1363-
1364-
jQueryMock.fn.tooltip.call(jQueryMock, 'dispose')
1365-
1366-
expect(Tooltip.prototype.dispose).not.toHaveBeenCalled()
1367-
})
1368-
13691354
it('should throw error on undefined method', () => {
13701355
fixtureEl.innerHTML = '<div></div>'
13711356

0 commit comments

Comments
 (0)