@coreui/coreui 4.1.3 → 4.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -4
- package/dist/css/coreui-grid.css +2 -946
- package/dist/css/coreui-grid.css.map +1 -1
- package/dist/css/coreui-grid.min.css +3 -3
- package/dist/css/coreui-grid.min.css.map +1 -1
- package/dist/css/coreui-grid.rtl.css +4 -948
- package/dist/css/coreui-grid.rtl.css.map +1 -1
- package/dist/css/coreui-grid.rtl.min.css +5 -5
- package/dist/css/coreui-grid.rtl.min.css.map +1 -1
- package/dist/css/coreui-reboot.css +2 -2
- package/dist/css/coreui-reboot.css.map +1 -1
- package/dist/css/coreui-reboot.min.css +3 -3
- package/dist/css/coreui-reboot.min.css.map +1 -1
- package/dist/css/coreui-reboot.rtl.css +4 -4
- package/dist/css/coreui-reboot.rtl.css.map +1 -1
- package/dist/css/coreui-reboot.rtl.min.css +5 -5
- package/dist/css/coreui-reboot.rtl.min.css.map +1 -1
- package/dist/css/coreui-utilities.css +2 -789
- package/dist/css/coreui-utilities.css.map +1 -1
- package/dist/css/coreui-utilities.min.css +3 -3
- package/dist/css/coreui-utilities.min.css.map +1 -1
- package/dist/css/coreui-utilities.rtl.css +4 -791
- package/dist/css/coreui-utilities.rtl.css.map +1 -1
- package/dist/css/coreui-utilities.rtl.min.css +5 -5
- package/dist/css/coreui-utilities.rtl.min.css.map +1 -1
- package/dist/css/coreui.css +11 -1025
- package/dist/css/coreui.css.map +1 -1
- package/dist/css/coreui.min.css +3 -3
- package/dist/css/coreui.min.css.map +1 -1
- package/dist/css/coreui.rtl.css +16 -1031
- package/dist/css/coreui.rtl.css.map +1 -1
- package/dist/css/coreui.rtl.min.css +5 -5
- package/dist/css/coreui.rtl.min.css.map +1 -1
- package/dist/js/coreui.bundle.js +30 -26
- package/dist/js/coreui.bundle.js.map +1 -1
- package/dist/js/coreui.bundle.min.js +2 -2
- package/dist/js/coreui.bundle.min.js.map +1 -1
- package/dist/js/coreui.esm.js +23 -23
- package/dist/js/coreui.esm.js.map +1 -1
- package/dist/js/coreui.esm.min.js +2 -2
- package/dist/js/coreui.esm.min.js.map +1 -1
- package/dist/js/coreui.js +24 -24
- package/dist/js/coreui.js.map +1 -1
- package/dist/js/coreui.min.js +2 -2
- package/dist/js/coreui.min.js.map +1 -1
- package/js/dist/alert.js +3 -3
- package/js/dist/alert.js.map +1 -1
- package/js/dist/base-component.js +4 -4
- package/js/dist/base-component.js.map +1 -1
- package/js/dist/button.js +3 -3
- package/js/dist/button.js.map +1 -1
- package/js/dist/carousel.js +3 -3
- package/js/dist/carousel.js.map +1 -1
- package/js/dist/collapse.js +3 -3
- package/js/dist/collapse.js.map +1 -1
- package/js/dist/dom/data.js +2 -2
- package/js/dist/dom/data.js.map +1 -1
- package/js/dist/dom/event-handler.js +3 -3
- package/js/dist/dom/event-handler.js.map +1 -1
- package/js/dist/dom/manipulator.js +2 -2
- package/js/dist/dom/manipulator.js.map +1 -1
- package/js/dist/dom/selector-engine.js +3 -3
- package/js/dist/dom/selector-engine.js.map +1 -1
- package/js/dist/dropdown.js +3 -3
- package/js/dist/dropdown.js.map +1 -1
- package/js/dist/modal.js +3 -3
- package/js/dist/modal.js.map +1 -1
- package/js/dist/offcanvas.js +3 -3
- package/js/dist/offcanvas.js.map +1 -1
- package/js/dist/popover.js +3 -3
- package/js/dist/popover.js.map +1 -1
- package/js/dist/scrollspy.js +3 -3
- package/js/dist/scrollspy.js.map +1 -1
- package/js/dist/tab.js +3 -3
- package/js/dist/tab.js.map +1 -1
- package/js/dist/toast.js +3 -3
- package/js/dist/toast.js.map +1 -1
- package/js/dist/tooltip.js +4 -4
- package/js/dist/tooltip.js.map +1 -1
- package/js/src/alert.js +1 -1
- package/js/src/base-component.js +2 -2
- package/js/src/button.js +1 -1
- package/js/src/carousel.js +1 -1
- package/js/src/collapse.js +1 -1
- package/js/src/dom/data.js +1 -1
- package/js/src/dom/event-handler.js +1 -1
- package/js/src/dom/manipulator.js +1 -1
- package/js/src/dom/selector-engine.js +1 -1
- package/js/src/dropdown.js +1 -1
- package/js/src/modal.js +1 -1
- package/js/src/navigation.js +1 -1
- package/js/src/offcanvas.js +1 -1
- package/js/src/popover.js +1 -1
- package/js/src/scrollspy.js +1 -1
- package/js/src/sidebar.js +1 -1
- package/js/src/tab.js +1 -1
- package/js/src/toast.js +1 -1
- package/js/src/tooltip.js +1 -1
- package/js/src/util/index.js +1 -1
- package/js/src/util/sanitizer.js +1 -1
- package/package.json +6 -6
- package/scss/_modal.scss +2 -1
- package/scss/_offcanvas.scss +8 -8
- package/scss/_root.scss +0 -2
- package/scss/_toasts.scss +4 -2
- package/scss/_utilities.scss +0 -2
- package/scss/coreui-grid.rtl.scss +2 -2
- package/scss/coreui-grid.scss +2 -2
- package/scss/coreui-reboot.rtl.scss +2 -2
- package/scss/coreui-reboot.scss +2 -2
- package/scss/coreui-utilities.rtl.scss +2 -2
- package/scss/coreui-utilities.scss +2 -2
- package/scss/coreui.rtl.scss +2 -2
- package/scss/coreui.scss +2 -2
- package/scss/forms/_form-check.scss +1 -1
package/js/dist/tooltip.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.js","sources":["../src/util/index.js","../src/util/sanitizer.js","../src/tooltip.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI (v4.1.3): alert.js\n * Licensed under MIT (https://coreui.io/license)\n *\n * This component is a modified version of the Bootstrap's util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1_000_000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = object => {\n if (object === null || object === undefined) {\n return `${object}`\n }\n\n return Object.prototype.toString.call(object).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-coreui-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return document.querySelector(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n const elementIsVisible = getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n // Handle `details` element as its content may falsie appear visible when it is closed\n const closedDetails = element.closest('details:not([open])')\n\n if (!closedDetails) {\n return elementIsVisible\n }\n\n if (closedDetails !== element) {\n const summary = element.closest('summary')\n if (summary && summary.parentNode !== closedDetails) {\n return false\n }\n\n if (summary === null) {\n return false\n }\n }\n\n return elementIsVisible\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\n/**\n * Trick to restart an element's animation\n *\n * @param {HTMLElement} element\n * @return void\n *\n * @see https://www.charistheo.io/blog/2021/02/restart-a-css-animation-with-javascript/#restarting-a-css-animation\n */\nconst reflow = element => {\n // eslint-disable-next-line no-unused-expressions\n element.offsetHeight\n}\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-coreui-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * CoreUI (v4.1.3): alert.js\n * Licensed under MIT (https://coreui.io/license)\n *\n * This component is a modified version of the Bootstrap's util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttributes = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attribute, allowedAttributeList) => {\n const attributeName = attribute.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attributeName)) {\n if (uriAttributes.has(attributeName)) {\n return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue) || DATA_URL_PATTERN.test(attribute.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attributeName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const element = elements[i]\n const elementName = element.nodeName.toLowerCase()\n\n if (!Object.keys(allowList).includes(elementName)) {\n element.remove()\n\n continue\n }\n\n const attributeList = [].concat(...element.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elementName] || [])\n\n attributeList.forEach(attribute => {\n if (!allowedAttribute(attribute, allowedAttributes)) {\n element.removeAttribute(attribute.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * CoreUI (v4.1.3): tooltip.js\n * Licensed under MIT (https://coreui.io/license)\n *\n * This component is a modified version of the Bootstrap's tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport { DefaultAllowlist, sanitizeHtml } from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'coreui.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\nconst SELECTOR_MODAL = `.${CLASS_NAME_MODAL}`\n\nconst EVENT_MODAL_HIDE = 'hide.coreui.modal'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n this._disposePopper()\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n // A trick to recreate a tooltip in case a new title is given by using the NOT documented `data-coreui-original-title`\n // This will be removed later in favor of a `setContent` method\n if (this.constructor.NAME === 'tooltip' && this.tip && this.getTitle() !== this.tip.querySelector(SELECTOR_TOOLTIP_INNER).innerHTML) {\n this._disposePopper()\n this.tip.remove()\n this.tip = null\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.append(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = this._resolvePossibleFunction(this._config.customClass)\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n this._disposePopper()\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n const tip = element.children[0]\n this.setContent(tip)\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n\n this.tip = tip\n return this.tip\n }\n\n setContent(tip) {\n this._sanitizeAndSetContent(tip, this.getTitle(), SELECTOR_TOOLTIP_INNER)\n }\n\n _sanitizeAndSetContent(template, content, selector) {\n const templateElement = SelectorEngine.findOne(selector, template)\n\n if (!content && templateElement) {\n templateElement.remove()\n return\n }\n\n // we use append for html objects to maintain js events\n this.setElementContent(templateElement, content)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.append(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n const title = this._element.getAttribute('data-coreui-original-title') || this._config.title\n\n return this._resolvePossibleFunction(title)\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n return context || this.constructor.getOrCreateInstance(event.delegateTarget, this._getDelegateConfig())\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _resolvePossibleFunction(content) {\n return typeof content === 'function' ? content.call(this._element) : content\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-coreui-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-coreui-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n\n // In the future can be replaced with:\n // const keysWithDifferentValues = Object.entries(this._config).filter(entry => this.constructor.Default[entry[0]] !== this._config[entry[0]])\n // `Object.fromEntries(keysWithDifferentValues)`\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const basicClassPrefixRegex = new RegExp(`(^|\\\\s)${this._getBasicClassPrefix()}\\\\S+`, 'g')\n const tabClass = tip.getAttribute('class').match(basicClassPrefixRegex)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _getBasicClassPrefix() {\n return CLASS_PREFIX\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n _disposePopper() {\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n"],"names":["MAX_UID","toType","object","undefined","Object","prototype","toString","call","match","toLowerCase","getUID","prefix","Math","floor","random","document","getElementById","isElement","obj","jquery","nodeType","getElement","length","querySelector","typeCheckConfig","componentName","config","configTypes","keys","forEach","property","expectedTypes","value","valueType","RegExp","test","TypeError","toUpperCase","findShadowRoot","element","documentElement","attachShadow","getRootNode","root","ShadowRoot","parentNode","noop","getjQuery","jQuery","window","body","hasAttribute","DOMContentLoadedCallbacks","onDOMContentLoaded","callback","readyState","addEventListener","push","isRTL","dir","defineJQueryPlugin","plugin","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","uriAttributes","Set","ARIA_ATTRIBUTE_PATTERN","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attribute","allowedAttributeList","attributeName","nodeName","includes","has","Boolean","nodeValue","regExp","filter","attributeRegex","i","len","DefaultAllowlist","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","domParser","DOMParser","createdDocument","parseFromString","elements","concat","querySelectorAll","elementName","remove","attributeList","attributes","allowedAttributes","removeAttribute","innerHTML","DATA_KEY","EVENT_KEY","CLASS_PREFIX","DISALLOWED_ATTRIBUTES","DefaultType","animation","template","title","trigger","delay","html","selector","placement","offset","container","fallbackPlacements","boundary","customClass","sanitize","popperConfig","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","Default","Event","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_FADE","CLASS_NAME_MODAL","CLASS_NAME_SHOW","HOVER_STATE_SHOW","HOVER_STATE_OUT","SELECTOR_TOOLTIP_INNER","SELECTOR_MODAL","EVENT_MODAL_HIDE","TRIGGER_HOVER","TRIGGER_FOCUS","TRIGGER_CLICK","TRIGGER_MANUAL","Tooltip","BaseComponent","constructor","Popper","_isEnabled","_timeout","_hoverState","_activeTrigger","_popper","_config","_getConfig","tip","_setListeners","enable","disable","toggleEnabled","toggle","event","context","_initializeOnDelegatedTarget","click","_isWithActiveTrigger","_enter","_leave","getTipElement","classList","contains","dispose","clearTimeout","EventHandler","off","_element","closest","_hideModalHandler","_disposePopper","show","style","display","Error","isWithContent","showEvent","shadowRoot","isInTheDom","ownerDocument","defaultPrevented","getTitle","tipId","setAttribute","add","attachment","_getAttachment","_addAttachmentClass","Data","set","append","update","createPopper","_getPopperConfig","_resolvePossibleFunction","split","children","on","complete","prevHoverState","isAnimated","_queueCallback","hide","_cleanTipClass","hideEvent","createElement","setContent","_sanitizeAndSetContent","content","templateElement","SelectorEngine","findOne","setElementContent","textContent","getAttribute","updateAttachment","getOrCreateInstance","delegateTarget","_getDelegateConfig","_getOffset","map","val","Number","parseInt","popperData","defaultBsPopperConfig","modifiers","options","enabled","phase","data","_handlePopperPlacementChange","onFirstUpdate","_getBasicClassPrefix","triggers","eventIn","eventOut","_fixTitle","originalTitleType","type","setTimeout","relatedTarget","dataAttributes","Manipulator","getDataAttributes","dataAttr","key","basicClassPrefixRegex","tabClass","token","trim","tClass","state","popper","destroy","each"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tooltip.js","sources":["../src/util/index.js","../src/util/sanitizer.js","../src/tooltip.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI (v4.1.6): alert.js\n * Licensed under MIT (https://coreui.io/license)\n *\n * This component is a modified version of the Bootstrap's util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1_000_000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = object => {\n if (object === null || object === undefined) {\n return `${object}`\n }\n\n return Object.prototype.toString.call(object).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-coreui-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return document.querySelector(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n const elementIsVisible = getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n // Handle `details` element as its content may falsie appear visible when it is closed\n const closedDetails = element.closest('details:not([open])')\n\n if (!closedDetails) {\n return elementIsVisible\n }\n\n if (closedDetails !== element) {\n const summary = element.closest('summary')\n if (summary && summary.parentNode !== closedDetails) {\n return false\n }\n\n if (summary === null) {\n return false\n }\n }\n\n return elementIsVisible\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\n/**\n * Trick to restart an element's animation\n *\n * @param {HTMLElement} element\n * @return void\n *\n * @see https://www.charistheo.io/blog/2021/02/restart-a-css-animation-with-javascript/#restarting-a-css-animation\n */\nconst reflow = element => {\n // eslint-disable-next-line no-unused-expressions\n element.offsetHeight\n}\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-coreui-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * CoreUI (v4.1.6): alert.js\n * Licensed under MIT (https://coreui.io/license)\n *\n * This component is a modified version of the Bootstrap's util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttributes = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attribute, allowedAttributeList) => {\n const attributeName = attribute.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attributeName)) {\n if (uriAttributes.has(attributeName)) {\n return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue) || DATA_URL_PATTERN.test(attribute.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attributeName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const element = elements[i]\n const elementName = element.nodeName.toLowerCase()\n\n if (!Object.keys(allowList).includes(elementName)) {\n element.remove()\n\n continue\n }\n\n const attributeList = [].concat(...element.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elementName] || [])\n\n attributeList.forEach(attribute => {\n if (!allowedAttribute(attribute, allowedAttributes)) {\n element.removeAttribute(attribute.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * CoreUI (v4.1.6): tooltip.js\n * Licensed under MIT (https://coreui.io/license)\n *\n * This component is a modified version of the Bootstrap's tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport { DefaultAllowlist, sanitizeHtml } from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'coreui.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\nconst SELECTOR_MODAL = `.${CLASS_NAME_MODAL}`\n\nconst EVENT_MODAL_HIDE = 'hide.coreui.modal'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n this._disposePopper()\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n // A trick to recreate a tooltip in case a new title is given by using the NOT documented `data-coreui-original-title`\n // This will be removed later in favor of a `setContent` method\n if (this.constructor.NAME === 'tooltip' && this.tip && this.getTitle() !== this.tip.querySelector(SELECTOR_TOOLTIP_INNER).innerHTML) {\n this._disposePopper()\n this.tip.remove()\n this.tip = null\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.append(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = this._resolvePossibleFunction(this._config.customClass)\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n this._disposePopper()\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n const tip = element.children[0]\n this.setContent(tip)\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n\n this.tip = tip\n return this.tip\n }\n\n setContent(tip) {\n this._sanitizeAndSetContent(tip, this.getTitle(), SELECTOR_TOOLTIP_INNER)\n }\n\n _sanitizeAndSetContent(template, content, selector) {\n const templateElement = SelectorEngine.findOne(selector, template)\n\n if (!content && templateElement) {\n templateElement.remove()\n return\n }\n\n // we use append for html objects to maintain js events\n this.setElementContent(templateElement, content)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.append(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n const title = this._element.getAttribute('data-coreui-original-title') || this._config.title\n\n return this._resolvePossibleFunction(title)\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n return context || this.constructor.getOrCreateInstance(event.delegateTarget, this._getDelegateConfig())\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _resolvePossibleFunction(content) {\n return typeof content === 'function' ? content.call(this._element) : content\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-coreui-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-coreui-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n\n // In the future can be replaced with:\n // const keysWithDifferentValues = Object.entries(this._config).filter(entry => this.constructor.Default[entry[0]] !== this._config[entry[0]])\n // `Object.fromEntries(keysWithDifferentValues)`\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const basicClassPrefixRegex = new RegExp(`(^|\\\\s)${this._getBasicClassPrefix()}\\\\S+`, 'g')\n const tabClass = tip.getAttribute('class').match(basicClassPrefixRegex)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _getBasicClassPrefix() {\n return CLASS_PREFIX\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n _disposePopper() {\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n"],"names":["MAX_UID","toType","object","undefined","Object","prototype","toString","call","match","toLowerCase","getUID","prefix","Math","floor","random","document","getElementById","isElement","obj","jquery","nodeType","getElement","length","querySelector","typeCheckConfig","componentName","config","configTypes","keys","forEach","property","expectedTypes","value","valueType","RegExp","test","TypeError","toUpperCase","findShadowRoot","element","documentElement","attachShadow","getRootNode","root","ShadowRoot","parentNode","noop","getjQuery","jQuery","window","body","hasAttribute","DOMContentLoadedCallbacks","onDOMContentLoaded","callback","readyState","addEventListener","push","isRTL","dir","defineJQueryPlugin","plugin","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","uriAttributes","Set","ARIA_ATTRIBUTE_PATTERN","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attribute","allowedAttributeList","attributeName","nodeName","includes","has","Boolean","nodeValue","regExp","filter","attributeRegex","i","len","DefaultAllowlist","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","domParser","DOMParser","createdDocument","parseFromString","elements","concat","querySelectorAll","elementName","remove","attributeList","attributes","allowedAttributes","removeAttribute","innerHTML","DATA_KEY","EVENT_KEY","CLASS_PREFIX","DISALLOWED_ATTRIBUTES","DefaultType","animation","template","title","trigger","delay","html","selector","placement","offset","container","fallbackPlacements","boundary","customClass","sanitize","popperConfig","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","Default","Event","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_FADE","CLASS_NAME_MODAL","CLASS_NAME_SHOW","HOVER_STATE_SHOW","HOVER_STATE_OUT","SELECTOR_TOOLTIP_INNER","SELECTOR_MODAL","EVENT_MODAL_HIDE","TRIGGER_HOVER","TRIGGER_FOCUS","TRIGGER_CLICK","TRIGGER_MANUAL","Tooltip","BaseComponent","constructor","Popper","_isEnabled","_timeout","_hoverState","_activeTrigger","_popper","_config","_getConfig","tip","_setListeners","enable","disable","toggleEnabled","toggle","event","context","_initializeOnDelegatedTarget","click","_isWithActiveTrigger","_enter","_leave","getTipElement","classList","contains","dispose","clearTimeout","EventHandler","off","_element","closest","_hideModalHandler","_disposePopper","show","style","display","Error","isWithContent","showEvent","shadowRoot","isInTheDom","ownerDocument","defaultPrevented","getTitle","tipId","setAttribute","add","attachment","_getAttachment","_addAttachmentClass","Data","set","append","update","createPopper","_getPopperConfig","_resolvePossibleFunction","split","children","on","complete","prevHoverState","isAnimated","_queueCallback","hide","_cleanTipClass","hideEvent","createElement","setContent","_sanitizeAndSetContent","content","templateElement","SelectorEngine","findOne","setElementContent","textContent","getAttribute","updateAttachment","getOrCreateInstance","delegateTarget","_getDelegateConfig","_getOffset","map","val","Number","parseInt","popperData","defaultBsPopperConfig","modifiers","options","enabled","phase","data","_handlePopperPlacementChange","onFirstUpdate","_getBasicClassPrefix","triggers","eventIn","eventOut","_fixTitle","originalTitleType","type","setTimeout","relatedTarget","dataAttributes","Manipulator","getDataAttributes","dataAttr","key","basicClassPrefixRegex","tabClass","token","trim","tClass","state","popper","destroy","each"],"mappings":"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"}
|
package/js/src/alert.js
CHANGED
package/js/src/base-component.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): alert.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
*
|
|
6
6
|
* This component is a modified version of the Bootstrap's base-component.js
|
|
@@ -21,7 +21,7 @@ import EventHandler from './dom/event-handler'
|
|
|
21
21
|
* ------------------------------------------------------------------------
|
|
22
22
|
*/
|
|
23
23
|
|
|
24
|
-
const VERSION = '4.1.
|
|
24
|
+
const VERSION = '4.1.6'
|
|
25
25
|
|
|
26
26
|
class BaseComponent {
|
|
27
27
|
constructor(element) {
|
package/js/src/button.js
CHANGED
package/js/src/carousel.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): carousel.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
*
|
|
6
6
|
* This component is a modified version of the Bootstrap's carousel.js
|
package/js/src/collapse.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): collapse.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
*
|
|
6
6
|
* This component is a modified version of the Bootstrap's collapse.js
|
package/js/src/dom/data.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): dom/data.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
*
|
|
6
6
|
* This component is a modified version of the Bootstrap's dom/data.js
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): dom/event-handler.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
*
|
|
6
6
|
* This component is a modified version of the Bootstrap's dom/event-handler.js
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): dom/manipulator.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
*
|
|
6
6
|
* This component is a modified version of the Bootstrap's dom/manipulator.js
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): dom/selector-engine.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
*
|
|
6
6
|
* This component is a modified version of the Bootstrap's dom/selector-engine.js
|
package/js/src/dropdown.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): dropdown.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
*
|
|
6
6
|
* This component is a modified version of the Bootstrap's dropdown.js
|
package/js/src/modal.js
CHANGED
package/js/src/navigation.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): navigation.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
* --------------------------------------------------------------------------
|
|
6
6
|
*/
|
package/js/src/offcanvas.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): dropdown.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
*
|
|
6
6
|
* This component is a modified version of the Bootstrap's offcanvas.js
|
package/js/src/popover.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): popover.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
*
|
|
6
6
|
* This component is a modified version of the Bootstrap's popover.js
|
package/js/src/scrollspy.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): scrollspy.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
*
|
|
6
6
|
* This component is a modified version of the Bootstrap's scrollspy.js
|
package/js/src/sidebar.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): sidebar.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
* --------------------------------------------------------------------------
|
|
6
6
|
*/
|
package/js/src/tab.js
CHANGED
package/js/src/toast.js
CHANGED
package/js/src/tooltip.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): tooltip.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
*
|
|
6
6
|
* This component is a modified version of the Bootstrap's tooltip.js
|
package/js/src/util/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): alert.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
*
|
|
6
6
|
* This component is a modified version of the Bootstrap's util/index.js
|
package/js/src/util/sanitizer.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* CoreUI (v4.1.
|
|
3
|
+
* CoreUI (v4.1.6): alert.js
|
|
4
4
|
* Licensed under MIT (https://coreui.io/license)
|
|
5
5
|
*
|
|
6
6
|
* This component is a modified version of the Bootstrap's util/sanitizer.js
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coreui/coreui",
|
|
3
|
-
"description": "The most popular front-end framework for developing responsive, mobile-first projects on the web rewritten and
|
|
4
|
-
"version": "4.1.
|
|
3
|
+
"description": "The most popular front-end framework for developing responsive, mobile-first projects on the web rewritten and maintained by the CoreUI Team",
|
|
4
|
+
"version": "4.1.6",
|
|
5
5
|
"config": {
|
|
6
6
|
"version_short": "4.1"
|
|
7
7
|
},
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"scripts": {
|
|
20
20
|
"start": "npm-run-all --parallel watch docs-serve",
|
|
21
21
|
"bundlewatch": "bundlewatch --config .bundlewatch.config.json",
|
|
22
|
-
"changelog": "auto-changelog --template build/changelog-template.hbs --commit-limit false --package --backfill-limit 0 --starting-version v4.1.
|
|
22
|
+
"changelog": "auto-changelog --template build/changelog-template.hbs --commit-limit false --package --backfill-limit 0 --starting-version v4.1.6",
|
|
23
23
|
"css": "npm-run-all css-compile css-prefix css-minify",
|
|
24
24
|
"css-compile": "sass --style expanded --source-map --embed-sources --no-error-css scss/:dist/css/",
|
|
25
25
|
"css-lint": "npm-run-all --aggregate-output --continue-on-error --parallel css-lint-*",
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
},
|
|
84
84
|
"license": "MIT",
|
|
85
85
|
"peerDependencies": {
|
|
86
|
-
"@popperjs/core": "^2.11.
|
|
86
|
+
"@popperjs/core": "^2.11.5"
|
|
87
87
|
},
|
|
88
88
|
"devDependencies": {
|
|
89
89
|
"@babel/cli": "^7.17.6",
|
|
@@ -132,7 +132,7 @@
|
|
|
132
132
|
"sass": "^1.49.9",
|
|
133
133
|
"shelljs": "^0.8.5",
|
|
134
134
|
"stylelint": "^14.5.3",
|
|
135
|
-
"stylelint-config-twbs-bootstrap": "^
|
|
135
|
+
"stylelint-config-twbs-bootstrap": "^4.0.0",
|
|
136
136
|
"terser": "^5.12.0",
|
|
137
137
|
"vnu-jar": "21.10.12"
|
|
138
138
|
},
|
|
@@ -159,7 +159,7 @@
|
|
|
159
159
|
},
|
|
160
160
|
"dependencies": {},
|
|
161
161
|
"peerDependencies": {
|
|
162
|
-
"@popperjs/core": "^2.11.
|
|
162
|
+
"@popperjs/core": "^2.11.5"
|
|
163
163
|
}
|
|
164
164
|
}
|
|
165
165
|
}
|
package/scss/_modal.scss
CHANGED
|
@@ -101,7 +101,8 @@
|
|
|
101
101
|
|
|
102
102
|
.btn-close {
|
|
103
103
|
padding: ($modal-header-padding-y * .5) ($modal-header-padding-x * .5);
|
|
104
|
-
margin
|
|
104
|
+
@include ltr-rtl-value-only("margin", ($modal-header-padding-y * -.5) ($modal-header-padding-x * -.5) ($modal-header-padding-y * -.5) auto, ($modal-header-padding-y * -.5) auto ($modal-header-padding-y * -.5) ($modal-header-padding-x * -.5));
|
|
105
|
+
// margin: ($modal-header-padding-y * -.5) ($modal-header-padding-x * -.5) ($modal-header-padding-y * -.5) auto;
|
|
105
106
|
}
|
|
106
107
|
}
|
|
107
108
|
|