aboutsummaryrefslogtreecommitdiff
path: root/js/src/popover.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/popover.js')
-rw-r--r--js/src/popover.js67
1 files changed, 25 insertions, 42 deletions
diff --git a/js/src/popover.js b/js/src/popover.js
index 19c1e42a4..612c5218f 100644
--- a/js/src/popover.js
+++ b/js/src/popover.js
@@ -1,53 +1,38 @@
/**
* --------------------------------------------------------------------------
- * Bootstrap (v5.1.3): popover.js
+ * Bootstrap popover.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* --------------------------------------------------------------------------
*/
-import { defineJQueryPlugin } from './util/index'
-import Tooltip from './tooltip'
+import Tooltip from './tooltip.js'
+import { defineJQueryPlugin } from './util/index.js'
/**
* Constants
*/
const NAME = 'popover'
-const DATA_KEY = 'bs.popover'
-const EVENT_KEY = `.${DATA_KEY}`
const SELECTOR_TITLE = '.popover-header'
const SELECTOR_CONTENT = '.popover-body'
const Default = {
...Tooltip.Default,
- placement: 'right',
- offset: [0, 8],
- trigger: 'click',
content: '',
+ offset: [0, 8],
+ placement: 'right',
template: '<div class="popover" role="tooltip">' +
- '<div class="popover-arrow"></div>' +
- '<h3 class="popover-header"></h3>' +
- '<div class="popover-body"></div>' +
- '</div>'
+ '<div class="popover-arrow"></div>' +
+ '<h3 class="popover-header"></h3>' +
+ '<div class="popover-body"></div>' +
+ '</div>',
+ trigger: 'click'
}
const DefaultType = {
...Tooltip.DefaultType,
- content: '(string|element|function)'
-}
-
-const Event = {
- HIDE: `hide${EVENT_KEY}`,
- HIDDEN: `hidden${EVENT_KEY}`,
- SHOW: `show${EVENT_KEY}`,
- SHOWN: `shown${EVENT_KEY}`,
- INSERTED: `inserted${EVENT_KEY}`,
- CLICK: `click${EVENT_KEY}`,
- FOCUSIN: `focusin${EVENT_KEY}`,
- FOCUSOUT: `focusout${EVENT_KEY}`,
- MOUSEENTER: `mouseenter${EVENT_KEY}`,
- MOUSELEAVE: `mouseleave${EVENT_KEY}`
+ content: '(null|string|element|function)'
}
/**
@@ -60,27 +45,23 @@ class Popover extends Tooltip {
return Default
}
- static get NAME() {
- return NAME
- }
-
- static get Event() {
- return Event
- }
-
static get DefaultType() {
return DefaultType
}
+ static get NAME() {
+ return NAME
+ }
+
// Overrides
- isWithContent() {
- return this.getTitle() || this._getContent()
+ _isWithContent() {
+ return this._getTitle() || this._getContent()
}
// Private
_getContentForTemplate() {
return {
- [SELECTOR_TITLE]: this.getTitle(),
+ [SELECTOR_TITLE]: this._getTitle(),
[SELECTOR_CONTENT]: this._getContent()
}
}
@@ -94,13 +75,15 @@ class Popover extends Tooltip {
return this.each(function () {
const data = Popover.getOrCreateInstance(this, config)
- if (typeof config === 'string') {
- if (typeof data[config] === 'undefined') {
- throw new TypeError(`No method named "${config}"`)
- }
+ if (typeof config !== 'string') {
+ return
+ }
- data[config]()
+ if (typeof data[config] === 'undefined') {
+ throw new TypeError(`No method named "${config}"`)
}
+
+ data[config]()
})
}
}