aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/twbs/bootstrap/js/src/popover.js
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/twbs/bootstrap/js/src/popover.js')
-rw-r--r--vendor/twbs/bootstrap/js/src/popover.js56
1 files changed, 7 insertions, 49 deletions
diff --git a/vendor/twbs/bootstrap/js/src/popover.js b/vendor/twbs/bootstrap/js/src/popover.js
index 5a3b32631..d499bedf1 100644
--- a/vendor/twbs/bootstrap/js/src/popover.js
+++ b/vendor/twbs/bootstrap/js/src/popover.js
@@ -1,12 +1,11 @@
/**
* --------------------------------------------------------------------------
- * Bootstrap (v5.0.2): popover.js
+ * Bootstrap (v5.1.2): popover.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* --------------------------------------------------------------------------
*/
import { defineJQueryPlugin } from './util/index'
-import SelectorEngine from './dom/selector-engine'
import Tooltip from './tooltip'
/**
@@ -19,7 +18,6 @@ const NAME = 'popover'
const DATA_KEY = 'bs.popover'
const EVENT_KEY = `.${DATA_KEY}`
const CLASS_PREFIX = 'bs-popover'
-const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g')
const Default = {
...Tooltip.Default,
@@ -52,9 +50,6 @@ const Event = {
MOUSELEAVE: `mouseleave${EVENT_KEY}`
}
-const CLASS_NAME_FADE = 'fade'
-const CLASS_NAME_SHOW = 'show'
-
const SELECTOR_TITLE = '.popover-header'
const SELECTOR_CONTENT = '.popover-body'
@@ -89,56 +84,19 @@ class Popover extends Tooltip {
return this.getTitle() || this._getContent()
}
- getTipElement() {
- if (this.tip) {
- return this.tip
- }
-
- this.tip = super.getTipElement()
-
- if (!this.getTitle()) {
- SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove()
- }
-
- if (!this._getContent()) {
- SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove()
- }
-
- return this.tip
- }
-
- setContent() {
- const tip = this.getTipElement()
-
- // we use append for html objects to maintain js events
- this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())
- let content = this._getContent()
- if (typeof content === 'function') {
- content = content.call(this._element)
- }
-
- this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)
-
- tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)
+ setContent(tip) {
+ this._sanitizeAndSetContent(tip, this.getTitle(), SELECTOR_TITLE)
+ this._sanitizeAndSetContent(tip, this._getContent(), SELECTOR_CONTENT)
}
// Private
- _addAttachmentClass(attachment) {
- this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)
- }
-
_getContent() {
- return this._element.getAttribute('data-bs-content') || this._config.content
+ return this._resolvePossibleFunction(this._config.content)
}
- _cleanTipClass() {
- const tip = this.getTipElement()
- const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)
- if (tabClass !== null && tabClass.length > 0) {
- tabClass.map(token => token.trim())
- .forEach(tClass => tip.classList.remove(tClass))
- }
+ _getBasicClassPrefix() {
+ return CLASS_PREFIX
}
// Static